The rise of Composer and the fall of PEAR – Fabien Potencier
A couple of months ago, Nils Adermann sent me a nice postcard that reminded me that « 3 years ago, we [Nils and me] met for the SymfonyLive hackday in San Francisco. » Nils was attending the Symfony conference as he announced the year before that phpBB would move to Symfony at some point.
At that time, I was very interested in package managers as I was looking for the best way to manage Symfony2 bundles. I used PEAR for symfony1 plugins but the code was really messy as PEAR was not built with that use case in mind. The philosophy of Bundler from the Ruby community looked great and so I started to look around for other package managers. After a lot of time researching the best tools, I stumbled upon libzypp and I immediately knew that this was the one. Unfortunately, libzypp is a complex library, written in C, and not really useable as is for Symfony needs.
As a good package manager to let user easily install plugin/bundles/MODs was probably also a big concern for phpBB, I talked to Nils about this topic during this 2011 hackday in San Francisco. After sharing my thoughts about libzypp, « …, I [Nils] wrote the first lines of what should become Composer a few months later ».
Nils did a great job at converting the C code to PHP code; later on Jordi joined the team and he moved everything to the next level by implementing all the infrastructure needed for such a project.
So, what about PEAR? PEAR served the PHP community for many years, and I think it’s time now to make it die.