Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:95597 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 40067 invoked from network); 3 Sep 2016 14:45:19 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 3 Sep 2016 14:45:19 -0000 Authentication-Results: pb1.pair.com smtp.mail=rowan.collins@gmail.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=rowan.collins@gmail.com; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 74.125.82.45 as permitted sender) X-PHP-List-Original-Sender: rowan.collins@gmail.com X-Host-Fingerprint: 74.125.82.45 mail-wm0-f45.google.com Received: from [74.125.82.45] ([74.125.82.45:38157] helo=mail-wm0-f45.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 48/A0-32927-EF1EAC75 for ; Sat, 03 Sep 2016 10:45:18 -0400 Received: by mail-wm0-f45.google.com with SMTP id 1so71865500wmz.1 for ; Sat, 03 Sep 2016 07:45:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=subject:to:references:from:message-id:date:user-agent:mime-version :in-reply-to:content-transfer-encoding; bh=WrJ2FBEYtiCncTsLsHxHgMW1gdZrU5WzTfzdLDesEq4=; b=ehaGIizEHYiEb8qK46VpndsCyKhO6FQhopEyc3Bt4IQKy7IpeoFYTIdLskNwghrp9V glJIn8pudS6AnxBHG5DYL9KdkGt3iGnSxZEIiDaHBRVvJ1EVNijNe0IM/2/w7NH+SDJE wQtywHaR7DoM+9CnF47sz2sTMamFhS/SltEP1fUrkrezM2kDON7uzqbR/Oap0b4J/JnS HXd2FpSoUu47Gl8ywPXIo5X3rtHJS0ZNVXqxILsEMsDgF+Dt2JCZpKL2xR6PhqgYSLwt 3lbeB/PFJsXiSQTGQyAZJggYyc78uWr2DzKq70c2pMX2emdvE4mU7/5CTQGBNAxB+lpQ /zKQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:subject:to:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-transfer-encoding; bh=WrJ2FBEYtiCncTsLsHxHgMW1gdZrU5WzTfzdLDesEq4=; b=Fq+0MGokuhCm2GIEoVCcAsq7GdLoMBQeXDlgtCCNFKw/BYTpdlbHdjmcErqDcV0Wlh E1b3diJjLBroPzqUZt7/44eIySIc/iCk3f1f2nYd94J8mzs2W9+FGY3P7SJGeFr5GFM2 DnsL/oVVfBnLW8GE2my2tSS9mDwaAfHra8Q5S6zKLB/hoGerX7HLXYuXL2bgywMHZj8O gcH8QuXGzjQnaxeWKHTr9POYuFql00hZQ6aVjRQIlqQKKB8Mggu+J3ehIp6uW49l3OzO Mrh5G3TWjqLiZwFYU5z1TH02r0yDM17LKC/8y6VnjFN8M+rb0V7RpeSGve/Yyxers+56 v6rA== X-Gm-Message-State: AE9vXwMoQxkHHAL8uMLGi9VUu6lDCmsLS4hxZN5TTA4eZ8UWEd/BSFHf2/6jVfKZcgPxqg== X-Received: by 10.28.23.141 with SMTP id 135mr8250232wmx.100.1472913914485; Sat, 03 Sep 2016 07:45:14 -0700 (PDT) Received: from [192.168.1.5] ([95.148.161.240]) by smtp.googlemail.com with ESMTPSA id x203sm8969040wmg.0.2016.09.03.07.45.13 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sat, 03 Sep 2016 07:45:13 -0700 (PDT) To: internals@lists.php.net References: Message-ID: Date: Sat, 3 Sep 2016 15:45:13 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.2.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [PHP-DEV] [RFC] Deprecate PEAR/PECL & Replace with composer/pickle From: rowan.collins@gmail.com (Rowan Collins) On 02/09/2016 20:32, Davey Shafik wrote: > I'd like to introduce a new RFC to deprecate pear/pecl (in 7.2, and remove > in 8.0), as well as add composer/pickle (optional in 7.2, default in 7.3+) > in their place. > > https://wiki.php.net/rfc/deprecate-pear-include-composer Hi Davey, I think this is a sensible idea. It basically accepts the reality that PEAR is no longer the main place new users of PHP should look for 3rd-party code. Thinking about the responses so far, I thought it would be useful to enumerate just what PEAR is, and what is being proposed for removal. It might even be worth adding a version of this to the RFC, in case it reaches a wider audience who won't see this discussion. As I understand it, PEAR is: A1) A command-line package management tool for installing and updating packages of PHP code over the Internet. A2) A curated default "channel" for the package management tool, at pear.php.net A3) The coding style guidelines for publishing on that channel A4) An ecosystem of packages built to those guidelines While PECL is: B1) A related command-line tool for managing extensions to PHP itself. B2) A default channel for the extension management tool, at pecl.php.net The command-line tools (A1 and B1 above) are currently distributed with PHP by default, and this is what we are looking to deprecate. Composer is the common choice to fill the role of A1, and "pickle" is being proposed as the official replacement for B1. Everything else will still be there, including the ability to download the tools, probably through your OS or stack's package management system. As to the rest, a few rambling thoughts: - There is no single replacement for pear.php.net. packagist.org partially fulfils job A2, but it is a marketplace, not a curated channel, and it doesn't do anything to standardise style (A3) or interoperability (A4). PHP-FIG is one attempt to fill that standardisation; it's entirely voluntary, and entirely separate from php.net, but it's not like anyone was ever forced to publish on pear.php.net. - pear.php.net is technically only one "channel" compatible with the tool, but I'm not sure how many others are out there in practice. As a random example, I know that Swift Mailer used to maintain a PEAR channel, but checking back it is now officially unsupported: http://pear.swiftmailer.org/ - On the flip side, many of the packages that are published on pear.php.net are also available on packagist.org for installation with composer, either in this list https://packagist.org/packages/pear/ or in unofficial forks. - The PEAR coding style would probably be considered "out of date" by a lot of PHP devs. That's partly a matter of fashion, but also a natural consequence of it predating certain language features - autoloading, namespaces, etc - which people want to take advantage of. - There is a "PEAR2" consisting of the "pyrus" tool, and pear2.php.net. It appears to be basically abandoned, although it is still prominently linked from pear.php.net. I assume pyrus never made into the default distribution of PHP? Regards, -- Rowan Collins [IMSoP]