Qu'est-ce que Composer ?
Composer est un gestionnaire de dépendance pour PHP, écrit en PHP.
Depuis PHP 5 de nombreux concepts issus de la programmation orientée objet (POO) sont arrivés dans le monde PHP, comme les classes et les namespaces notamment. Cela a permis à PHP de se moderniser et devenir a part entière un langage de programmation souple et modulable. La communauté s'est donc mise à écrire du code réutilisable : des bibliothèques permettant la résolution des problématiques courantes et récurrentes dans les projets de développement web. Ces bibliothèques peuvent ainsi être maintenues par la communauté et bénéficier à tous pour accélérer le développement en disposant de brique fonctionnelle réutilisable.
Très vite, des centaines, des milliers et désormais plus encore de ces bibliothèques ont été écrites, partagées et diffusées. Une véritable jungle dans laquelle il est difficile de s'y retrouver, et surtout, dont il est difficile de suivre l'évolution.
Composer est un outil créé et mis en place par la communauté permettant de gérer les dépendances d'un projet, de suivre l'évolution de leurs versions ainsi que d'en gérer l'autoloading si possible. Il est capable de remonter l'arborescence des dépendances d'une bibliothèque et récursivement installer ainsi l'ensemble des outils nécessaires. C'est l'équivalent de npm ou yarn pour le Javascript ou encore gem ou bundler pour Ruby.
Installation
L'ensemble de la documentation liée à l'installation se retrouve directement sur le site de composer.
Windows
Sous Windows, l'exécutable d'installation fera l'affaire. Il suffit de le télécharger et de l'installer comme n'importe quel logiciel.
Ligne de commande
L'installation est également disponible en ligne de commande. Les quelques commandes sont toutes sur la page indiquée en début de paragraphe.
1 2 3 php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" php composer-setup.php php -r "unlink('composer-setup.php');"
Ces trois lignes commencent par télécharger le setup, le lancer (il s'agit d'un script php), puis l'installeur. Rien de bien fou, si ce n'est que php vous être accessible en ligne de commande.
Utilisation
Cet outil s'utilise en ligne de commande. Cela peut faire peur à l'utilisateur néophyte, mais concrètement, c'est extrêmement simple. Evidemment, il existe des tas de commandes et d'options possible pour l'utilisateur avancé, mais au quotidien, les quelques mêmes commandes reviennent toujours et sont les seules à retenir.
Vérifier la version
Pour vérifier que composer soit bien installé et s'assurer de son numéro de version, lancez simplement la commande :
composer --version
Installer un paquet
L'ensemble des paquets PHP ont un nom de la forme : vendor/package
. Comme un même paquet peut être cloné et modifié par chacun (c'est open-source !), le vendor spécifie ainsi l'origine ou l'auteur du paquet choisi.
La commande permettant l'installation d'un module choisi est donc :
composer require vendor/package
Désinstallation
composer remove vendor/package
Mise à jour de l'ensemble des dépendances du site
composer update --with-dependencies
Pour aller plus loin
Il existe évidemment des tas d'autres commandes et/ou options à celles citées plus haut. Mais require, remove et update sont finalement les seules que vous ayez réellement besoin de comprendre et identifier pour utiliser Composer dans le cadre de Drupal.
Ajouter un commentaire