Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:64922 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 47625 invoked from network); 14 Jan 2013 05:57:08 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 14 Jan 2013 05:57:07 -0000 Authentication-Results: pb1.pair.com header.from=theanomaly.is@gmail.com; sender-id=pass Authentication-Results: pb1.pair.com smtp.mail=theanomaly.is@gmail.com; spf=pass; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.212.173 as permitted sender) X-PHP-List-Original-Sender: theanomaly.is@gmail.com X-Host-Fingerprint: 209.85.212.173 mail-wi0-f173.google.com Received: from [209.85.212.173] ([209.85.212.173:43151] helo=mail-wi0-f173.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 05/E2-27428-03E93F05 for ; Mon, 14 Jan 2013 00:57:06 -0500 Received: by mail-wi0-f173.google.com with SMTP id hn17so1007111wib.0 for ; Sun, 13 Jan 2013 21:57:02 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=5IUSOFxGmT4bUnVZ6EZW7pmqpQwXA4O+zRWsFViLAoM=; b=Q+RVzqEw6nkPI/KjxYLaN5HjxnVKZJsjl/H/+622xJEoD97ZJYr0q05yNbGUXbLqJd fGLr25tCAFPWqxu7i0nZ2k+RME4n7ZzkhkYnlnQIjheM2vcDOIlJH8dhO1wttala2Nuu p6WrTvYo7vaP06BFXNteJ6hx8t8MUjFduZxx6YG2wspdk/iFHxHnOnxkY/rNE/9J5USi 9KC362CCI09wS/klWBB/Gsrk2YX6/I69O57Dd+4wIECX5UtFpZQjSSf3zhSUWXRS2LRa us0iDGvBkirpAjqUEsM8xQfrlwC0cQ/nsv3EKOrc1UcBjkQ19GzpEyI4V1X8dEC71BdJ 2WLA== MIME-Version: 1.0 Received: by 10.194.172.228 with SMTP id bf4mr41530241wjc.38.1358143022042; Sun, 13 Jan 2013 21:57:02 -0800 (PST) Received: by 10.227.43.19 with HTTP; Sun, 13 Jan 2013 21:57:01 -0800 (PST) In-Reply-To: <50F38B27.3080801@oracle.com> References: <50DD61A0.30502@fedoraproject.org> <50F38B27.3080801@oracle.com> Date: Mon, 14 Jan 2013 00:57:01 -0500 Message-ID: To: Christopher Jones Cc: Remi Collet , PHP Internals , =?ISO-8859-1?Q?Gustavo_Andr=E9_dos_Santos_Lopes?= Content-Type: multipart/alternative; boundary=089e013c6c12620e1804d339507e Subject: Re: [PHP-DEV] PHP-5.5 unpack change broke pecl/pear From: theanomaly.is@gmail.com (Sherif Ramadan) --089e013c6c12620e1804d339507e Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable On Sun, Jan 13, 2013 at 11:35 PM, Christopher Jones < christopher.jones@oracle.com> wrote: > > > On 12/28/2012 01:08 AM, Remi Collet wrote: > >> Le 24/12/2012 04:16, Igor Wiedler a =E9crit : >> >>> Hi Internals, >>> >>> When test driving PHP-5.5 I ran into issues with a change of unpack >>> behaviour. Archive_Tar which is used by pecl and pear (`pecl install`) = uses >>> unpack with the "a" format character. On 5.4 it strips trailing NUL byt= es, >>> on 5.5 it does not. There is a new "Z" format character that can be use= d to >>> get the old behaviour. The point is, this change broke pecl, and will >>> likely break many other things in existence. >>> >> >> >>> Anthony has asked me to post to internals, so that you can re-visit the >>> issue and perhaps consider not breaking BC. >>> >>> If you decide that you want to keep the BC break, I will gladly submit = a >>> patch for Archive_Tar. >>> >> >> See http://pear.php.net/bugs/bug.**php?id=3D19746 >> >> Remi. >> >> >>> Thanks, >>> >>> Igor >>> >>> >> >> > Sherif, > > Are you "owning" this issue? > I assigned bug https://bugs.php.net/bug.php?**id=3D63073to you in case you are. > It was discussed on IRC that this change was applied in order to bring PHP's implementation of pack() to be more inline with Perl's implementation (see https://bugs.php.net/61038 for details) and thus why the change was introduced in PHP 5.5 instead of 5.4, which was already final at the time. The BC was taken into consideration, but the manual never specified that this was the defined behavior. So we had made the decision at the time that this BC would be worth taking in 5.5 for bringing the implementations inline. The BC concerns seem to be fiarly limited in in immediate scope to Archive_Tar, which seems to be a trivial patch (see http://pear.php.net/bugs/bug.php?id=3D19746&edit=3D12&patch=3Darchive_tar_p= hp55.patch&revision=3D1355241213also) and Igor Wiedler seems willing to apply it. Obviously there can more BC out there with people that rely on this behavior in their existing code, but I can not gauge this if I just base it on the number of open bugs in the bug tracker that have to do with pack and PHP 5.5. So in light of these events the plan is to ask that Archive_Tar be patched to resolve the make install issue and remain consistent with the Perl implementation, which also seems consistent with Ruby's implementation of pack. The spec itself seems a bit ambiguous as noted earlier in this thread, but I think PHP will benefit more from being consistent with the other implementations. Please let me know if there are other BC concerns that have not yet come up= . > Chris > > -- > christopher.jones@oracle.com http://twitter.com/ghrd > Newly updated, free PHP & Oracle book: > http://www.oracle.com/**technetwork/topics/php/** > underground-php-oracle-manual-**098250.html > --089e013c6c12620e1804d339507e--