Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:45263 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 1110 invoked from network); 11 Aug 2009 06:49:10 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 11 Aug 2009 06:49:10 -0000 Authentication-Results: pb1.pair.com smtp.mail=dmitry@zend.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=dmitry@zend.com; sender-id=pass Received-SPF: pass (pb1.pair.com: domain zend.com designates 212.25.124.185 as permitted sender) X-PHP-List-Original-Sender: dmitry@zend.com X-Host-Fingerprint: 212.25.124.185 il-mr1.zend.com Received: from [212.25.124.185] ([212.25.124.185:38965] helo=il-mr1.zend.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 45/02-25203-364118A4 for ; Tue, 11 Aug 2009 02:49:09 -0400 Received: from il-gw1.zend.com (unknown [10.1.1.21]) by il-mr1.zend.com (Postfix) with ESMTP id 3B2375046B; Tue, 11 Aug 2009 09:48:45 +0300 (IDT) Received: from ws.home ([10.1.10.48]) by il-gw1.zend.com with Microsoft SMTPSVC(6.0.3790.3959); Tue, 11 Aug 2009 09:50:08 +0300 Message-ID: <4A81145F.6050504@zend.com> Date: Tue, 11 Aug 2009 10:49:03 +0400 User-Agent: Thunderbird 2.0.0.21 (X11/20090320) MIME-Version: 1.0 To: =?ISO-8859-1?Q?David_Z=FClke?= CC: jani.taskinen@iki.fi, php-dev List References: <67DEF003-A344-4BE6-9C23-6BB48935786F@bitextender.com> <4A6EE1BF.8080409@zend.com> <4A6F027B.3040608@zend.com> <4A6F3211.40801@sci.fi> <467D68D2-E465-4A25-B123-655A632B17AD@bitextender.com> In-Reply-To: <467D68D2-E465-4A25-B123-655A632B17AD@bitextender.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed X-OriginalArrivalTime: 11 Aug 2009 06:50:08.0768 (UTC) FILETIME=[F753C000:01CA1A4F] Content-Transfer-Encoding: quoted-printable Subject: Re: [PHP-DEV] Re: SOAP_MARSHAL_DATETIME (or: bug #44383) From: dmitry@zend.com (Dmitry Stogov) Hi David, sorry for delay. The patch can't be used as it breaks ext/soap build as shared extension. timelib function are compiled into php and aren't exported :( May be you will be able to change the patch using ext/date public API. Also we will need a patch for PHP6 to commit it into both branches, but=20 it's the second priority. Thanks. Dmitry. David Z=FClke wrote: > On 28.07.2009, at 19:14, Jani Taskinen wrote: >=20 >> Dmitry Stogov wrote: >>> David Z=FClke wrote: >>>> On 28.07.2009, at 13:32, Dmitry Stogov wrote: >>>> >>>>> Hi David, >>>>> >>>>> I took only a quick look, but I like the patch. >>>>> In case it doesn't break any tests, it should be committed at least= =20 >>>>> into >>>>> HEAD. I agree to commit it into 5.3 too, but RMs take the final=20 >>>>> decision. >>>>> >>>>> The only thing I didn't understood - why win32/php_stdint.h is need= ed. >>>> Ah, yes, that's probably an oversight. Good catch. The headers were >>>> copy-pasted from some ext/date file :) >>>> >>>> Another thing that just occured to me is that we now have a dependen= cy >>>> on ext/date; I think I had trouble compiling ext/soap as a standalon= e >>>> extension like this. Must check again. Any hints? >>> I think ext/date can't be removed or compiled as shared extension. >>> If it's the case, the only problem may be with unexported symbols. >>> Just try to compile/test it as shared extension on Linux and Windows. >> >> ext/date is not an extension, it's part of core, just like=20 >> ext/standard so you shouldn't have any problems with it. >=20 > Attached (and also posted here: http://pastie.org/575559 and here:=20 > http://bugs.php.net/44383) is an update of the patch. It has the=20 > following updates: > 1) all tests adjusted, reviewed and changed to work in sequence (only=20 > one of the several variants was not commented out before) > 2) fixed handling of unix timestamp longs >=20 > There are the following outstanding issues (I'm going on a holiday=20 > tomorrow, so I figured I'd shoot you an update in the meantime): > 1) there seem to be problems with negative timezone offsets (see tests=20 > ext/soap/tests/schema/schema0(89|91).phpt) unless I'm confused > 2) at the minute, it breaks ext/soap/tests/schema/schema064.phpt. Excep= t=20 > for one of the cases where the formatting is indeed wrong, it's due to=20 > time zones not being included. That obviously needs fixing, but I'd lik= e=20 > to point out that the current tests do not seem to be in compliance wit= h=20 > the XML Schema specification, which for gMonthDay, gDay and gMonth=20 > states: "An optional following time zone qualifier is allowed as for=20 > date". The rule for "date" and timezone postfixes is "For timezoned=20 > values, append the canonical representation of the =B7recoverable=20 > timezone=B7". A recoverable timezone is an offset value in the format=20 > "[+-]hh:mm". http://www.w3.org/TR/xmlschema-2/ has all the details, but= =20 > maybe I'm missing something. For gYearMonth and gYear, I think the=20 > "dateTime" timezone rules apply, which means the canonical=20 > representation must always be in UTC (and thus carry "Z" as the timezon= e=20 > identifier, which is what the tests currently expect, so those are=20 > correct). >=20 > Finally, when I compile as an extension, I get the following error once= =20 > I reach tests that execute code relying on timelib: >=20 > dyld: lazy symbol binding failed: Symbol not found: _timelib_time_ctor > Referenced from: .../extensions/no-debug-non-zts-20090626/soap.so > Expected in: flat namespace >=20 > dyld: Symbol not found: _timelib_time_ctor > Referenced from: .../extensions/no-debug-non-zts-20090626/soap.so > Expected in: flat namespace >=20 > I compiled without --enable-soap, then used the correct "phpize" in=20 > ext/soap, ran configure with the correct=20 > --with-php-config=3D.../blah/php-config, make install and enabled the=20 > extension in php.ini. >=20 > Feedback/thoughts/advice appreciated. I'll be back in ~2 weeks. >=20 > Cheers, >=20 > - David >=20 >=20 > -----------------------------------------------------------------------= - >=20 >=20 >=20 >=20 >=20 >=20 >=20