[In order to avoid any misunderstandings, it is worth explaining that the author of the original text is Fabien Potencier, the creator of the popular PHP framework Symfony - approx. trans.]
Most recently,
Nils Adermann , sent me a nice postcard to remind you of our meeting three years ago on “SymfonyLive hackday” in San Francisco. Nils attended the conference because the year before, he announced that phpBB in version 4 will switch to symfony.
At that time, I was seriously interested in the topic of package managers, because I was looking for a convenient way to manage the bundles in Symfony2. For plugins in Symfony1, I used PEAR, but the code was very confusing, because PEAR was not originally created for this purpose.
Bundler's philosophy from the Ruby community looked very attractive, so I started looking for a similar package manager. After long, sleepless nights, I stumbled upon
libzypp , and instantly realized that this was it! Unfortunately, libzypp is a complex library written in C and, in this form, was not at all suitable for symfony.
')
I realized that Nils is probably interested in phpBB for a good package manager, allowing users to easily install plugins / bundles / mods, so I started talking about it on hackday in San Francisco. It turned out that at the time, Nils had already begun work on
Composer .
Nils did an amazing job of translating C code into PHP code. Later, joining the team,
Geordie took everything to a new level, taking care of the implementation of the entire project infrastructure.
So what about PEAR? PEAR faithfully served the PHP community for many years, I think it is time to let it die.
I used PEAR as a package manager since my first PHP project back in 2004. I even wrote a popular server channel
Pirum . But now it is time to move on, and talk about my plans for channels that I manage.
On February 13, I tweeted that I was going to stop supporting my packages in PEAR, since Composer is already quite popular. On February 14, I
decided to stop working on Pirum.
Since many people wanted to know the statistics of the Symfony channel, I got into the logs and found that the majority of requests go on PHPUnit dependencies. On April 20,
Sebastian Bergmann opened a
discussion about PEAR support for PHPUnit. The next day, he posted a
message saying that he was saying goodbye to PEAR. A little later,
Pádraic Brady also refused to support the PEAR channel for
Mockery .
In addition to Symfony, Twig, Swiftmailer and Pirum channels are also under my jurisdiction. And here are my plans:
- Update the documentation, clearly explain that the PEAR channels are outdated, and that the preferred package manager is Composer. ( Already done for all projects ).
- Post a note on the obsolescence of PEAR channels on the sites of these channels ( made for all projects )
- Post blog posts ( Twig , Swiftmailer and Symfony )
- Stop releasing new PEAR packages
- Remove the installation description through PEAR in the official documentation ( Probably in September of this year )
Notice that I am talking about stopping the release of
NEW packages in PEAR, and promoting Composer as the primary means for installing my libraries and projects. Existing packages, in the foreseeable future, can still be installed via PEAR.
All Composer!