Anthony HERVÉ

Ingénieur édudes et développement

Quelques tuyaux pour composer

12/12/2016
Image actualité

En ayant fait ma première pull request sur Github, j'ai dû faire quelques modifications sur le composer.json afin de pouvoir tester correctement mes développements.

Voici donc quelques points que je souhaite partager avce vous.

Niveau de stabilité

Certaines dépendances de votre projet ont quelques fois elles-mêmes des dépendances, mais avec une version non stable. Dans ce cas, vous devez ajouter une ligne dans votre composer.json afin de pouvoir télécharger correctement ces dépendances.

"minimum-stability" : "dev",

Cette ligne doit être ajoutée au premier niveau dans le fichier. Si vous faites un composer update, votre dépendance va bien être téléchargée... mais malheureusement toutes les autres dépendances vont être téléchargées au niveau dev.

Pour éviter cela, il faut donc ajouter une autre ligne au composer.json (premier niveau également) afin d'indiquer que s'il existe une version stable de la dépendance, il vaut mieux télécharger celle-ci que la version de développement.

"prefer-stable" : true,

Et voilà, vos dépendances sont toutes bien téléchargées comme vous le souhaitez.

Utiliser une dépendance locale

Lorsque vous développez un module, il peut être intéressant de tester rapidement vos dévs sur un projet. Voici les lignes à ajouter pour faire cela, toujours au fichier composer.json.

"repositories": [
        {
            "type":"vcs",
            "url":"/srv/www/symfony/bundles/ComurImageBundle"
        }
    ]

L'URL peut être absolur ou relative, à votre convenance.

Je précise également qu'il faut effectuer des commits pour que le composer update puisse fonctionner correctement.

Utiliser une branche spécifique

Pour utiliser une version, pas de souci. Mais pour utiliser une branche particulière, comment faire ?

Comme précédemment, il faut ajouter un repository dans le compsoer.json.

"repositories": [
      {
        "type": "vcs",
        "url": "https://github.com/anthonyherve/ComurImageBundle"
      }
]

Ensuite, la version de la dépendance doit être de la forme suivante : dev-{nom_branche}.

"comur/image-bundle": "dev-symfony3"

 Un petit composer update et hop vous avez votre dépendance à jour.

 

Bons développements !

Commentaires