Travaillons ensemble !

Services

Laminas, quand Zend Framework fait peau neuve

Lors de la précédente décennie, il est certain que Zend Framework s’est imposé dans l’écosystème PHP comme premier choix, surtout lorsqu’il s’agit de projets de grande taille, bénéficient ainsi de la notoriété de la marque Zend et son implication dans le développement de PHP.
Ce succès s’est éteint avec le temps à cause principalement d’une mauvaise gestion de la part des acquéreurs de Zend Inc, qui est le principal sponsor et contributeur au développement du projet.

Que s’est-il passé ?

En Octobre 2015, Rogue Wave Software a procédé au rachat de Zend, élargissant ainsi sa gamme de services qu’elle offre à ses clients en B2B. Cette acquisition a permis à Rogue Wave de mettre la main sur l’ensemble du portfolio des produits fournis par Zend, à savoir principalement Zend Server, Zend Studio et autres.

L’opération n’avait pas d’impact à ce moment sur les équipes de développements, qui étaient en train de préparer la version 3.0 du framework, sorti en Juin 2016. D’autres projets liés ont continué à sortir des releases durant les années à suivre. C’est notamment le cas pour Apigility, Stragility et Expressive.

C’est qu’en Octobre 2018, que Matthew Weier O'Phinney (chef du projet Zend Framework depuis 2009) a annoncé son départ avec d’autres contributeurs travaillant depuis 3 ans donc sous l’égide de Rogue Wave Software. Pour Matthew la décision a été prise lorsque Rogue Wave a décidé de concentrer les efforts sur l’amélioration de Zend Server, délaissant ainsi Zend Framework et sa communauté de contributeurs.

L’objectif était ensuite de trouver un nouveau sponsor qui permettra d’assurer la continuité de Zend Framework et son écosystème d’outils PHP. Cette quête a porté ses fruits dans le mois d’Avril 2019, en annonçant la transition du projet vers la Fondation Linux en tant qu’outil Open source. Cette transition est accompagné d’un rebranding du framework, en choisissant comme nouveau nom Laminas.

Un futur assez prometteur

La fondation Linux est l’une des organisations qui défendent le plus la promotion des projets Open-source. En choisissant cette fondation, l’équipe de développement de Laminas bénéfice d’un support sur tous les volets pour lesquels les contributeurs n’ont pas assez d’expérience, à savoir les procédures légales, la promotion du projet, la comptabilité,...etc

Du côté technique, le choix s’est établi sur le rebranding des sous-projets du framework. Ainsi le micro-framework “Expressive” devient “Mezzio” et la suite d’outils de développement d’APIs “Apigility” devient “API Tools”. Chacun de ces projet à sa propre organisation sur Github avec une gestion indépendante des releases pour ses composants.

Un outil de migration a été mise en place pour permettre le passage des applications de Zend Framework, Expressive et Apigility vers Laminas-MVC, Mezzio et API Tools.

Pour accélérer cette étape de transition, il a été décidé de migrer les packages de Zend Framework vers de nouveaux dépôts sur Github au sein du namesapce https://github.com/laminas, tout en archivant les anciens dépôts pour les garder en mode read-only. 
En même temps, sur Packagist, les packages sont marqué comme “abandonnés” avec recommandation d’utiliser leurs équivalents sur le namespace “laminas”.

Un point important à signaler : Cette transition du framework vers la Fondation Linux ne signifie pas une rupture entre Laminas et Zend (la société). Cette dernière a promis de continuer sa contribution au projet, et son équipe de développement prépare déjà une liste de nouveaux composants, s'articulant sur la nouvelle tendance du PHP asynchrone et sur l’implémentation de l’architecture Microservices au sein des entreprises. 

Conclusion

Il est certain que Zend Framework a perdu sa popularité durant ces dernières années dans l’écosystème PHP, laissant la place aux deux rivaux Symfony et Laravel, mais on s’attend que Laminas puisse reconquérir une part importante du marché durant les années à venir surtout grâce à l’implication de la communauté et de la Fondation Linux.