web-dev-qa-db-fra.com

Le package n'est pas disponible dans une version suffisamment stable en fonction de votre paramètre de stabilité minimale

Je ne comprends pas vraiment comment Composer fonctionne avec le paramètre de stabilité minimale.

J'ai deux paquets. Disons, PackageA et PackageB.

Le fichier composer.json de PackageA ressemble à ceci:

{
    "name": "vendor/packagea",
    "minimum-stability": "dev",
    "require": {
        "vendor/packageb": "dev"
    }
}

Donc, PackageA nécessite PackageB. Le json de PackageB ressemble à ceci:

{
    "name": "vendor/packageb",
    "minimum-stability": "dev"
}

Donc, les deux disent que la stabilité minimale est dev. Donc, je suppose que quand je le fais:

composer create-project vendor/packagea

Mais ensuite, il se plaint du message:

[InvalidArgumentException]
Could not find package vendor/packagea with stability stable.

Ce que je trouve étrange, car je supposerais que fixer la stabilité minimale à dev tirerait le paquet de sa branche "développement". Qui dans le cas de github est toujours dev-master.

J'ai donc essayé de l'installer en indiquant au compositeur quelle branche utiliser:

composer create-project vendor/packagea testFolder dev-master

Mais ensuite, il se plaint de ne pas trouver PackageB:

Installing dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - The requested package vendor/packageb dev could not be found.

Alors comment puis-je installer mon paquet? Je suis toujours en train de développer, donc je ne veux pas encore créer de version pour PackageA et PackageB ...

13
Vivendi

Il y a deux problèmes:

Dans create-project, la commande utilise par défaut la stabilité stable pour rechercher le package à installer. C'est pourquoi elle fonctionne si vous spécifiez dev-master mais pas par défaut. Vous pouvez cependant aussi exécuter composer create-project vendor/packagea -s dev

Après avoir installé des dépendances, je suppose que votre paquet n’existe pas dans une version appelée simplement dev. Il ne peut donc pas le trouver si vous en avez besoin. Demander à dev-master fonctionnerait probablement, par exemple:

{
    "name": "vendor/packagea",
    "minimum-stability": "dev",
    "require": {
        "vendor/packageb": "dev-master"
    }
}
14
Seldaek

Comment ai-je résolu ce problème?

Après avoir installé Composer, exécutez la commande suivante pour installer Composer Asset Plugin:

php composer.phar global require "fxp/composer-asset-plugin:^1.2.0"

Choisissez maintenant l’un des modèles d’application pour commencer l’installation de Yii 2.0. Un modèle d'application est un package contenant un squelette de l'application Web écrit en Yii.

0
Su Phak Nuan Urai