Impossible de mettre à jour yii2 via composer bower-asset / jquery introuvable
Je mettais à jour mon Yii2 via composer puis je suis revenu à l'ancienne version bêta.
Voici l'erreur sur mon compositeur:
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.
Problem 1
- The requested package bower-asset/jquery could not be found in any version, there may be a typ
o in the package name.
Potential causes:
- A typo in the package name
- The package is not available in a stable-enough version according to your minimum-stability setti
ng
see <https://groups.google.com/d/topic/composer-dev/_g3ASeIFlrc/discussion> for more details.
Read <http://getcomposer.org/doc/articles/troubleshooting.md> for further common problems.
Essayé de chercher bower-asset / jquery chez packagist mais il n'est pas trouvé.
Merci pour l'aide :)
7 réponses
Finalement fixé, juste suivi les étapes sur le UPGRADE.md doc
Si vous utilisez Composer pour mettre à niveau Yii, vous devez d'abord exécuter la commande suivante (Une fois pour toutes) pour installer le compositeur-asset-plugin:
composer global require "fxp/composer-asset-plugin:^1.2.0"
(Voir http://www.yiiframework.com/doc-2.0/guide-start-installation.html#installing-from-composer pour la dernière version.)
Vous devrez peut-être également ajouter le code suivant au fichier composer.json
de votre projet:
"extra": {
"asset-installer-paths": {
"npm-asset-library": "vendor/npm",
"bower-asset-library": "vendor/bower"
}
}
Espère que cela aide :)
Pour moi aide à supprimer le dossier ~/.composer et exécuter la commande:
php composer.phar global require "fxp/composer-asset-plugin:1.*"
Ensuite, exécutez à nouveau
php composer.phar update
Trouvé une solution plus propre. Ajoutez simplement le référentiel suivant dans votre compositeur.fichier json
"repositories": [
{
"type": "composer",
"url": "https://asset-packagist.org"
}
]
Et regarder la magie
Si vous n'avez pas besoin de la mise à jour de la charmille-actif, vous pouvez exiger yidas/yii2-composer-bower-skip
avant yiisoft/yii2.
dans composer.json
fichier:
"require": {
"php": ">=5.4.0",
"yidas/yii2-composer-bower-skip": "~2.0.0",
"yiisoft/yii2": "~2.0.5",
"yiisoft/yii2-bootstrap": "~2.0.0"
}
Après cela, vous pouvez mettre à jour Composer en douceur sans bower-asset.
Si vous ne voulez pas utiliser fxp/composer-asset-plugin
alors tout ce que vous avez à faire est de suivre ces instructions simples de la documentation Yii2 .
Utilisant la packagist référentiel
Cette façon répondra aux exigences de la majorité des projets, qui ont besoin de paquets npm ou Bower.
Remarque: depuis 2.0.13, les modèles D'application de base et avancés sont pré-configuré pour utiliser asset-packagist par défaut, de sorte que vous pouvez ignorer cela section.
Dans le compositeur.json de votre projet, ajoutez les lignes suivantes:
"repositories": [
{
"type": "composer",
"url": "https://asset-packagist.org"
}
]
Ajustez les alias @ npm et @bower dans votre configuration d'application:
$config = [
...
'aliases' => [
'@bower' => '@vendor/bower-asset',
'@npm' => '@vendor/npm-asset',
],
...
];
Visite asset-packagist.org savoir, comment il fonctionne.
Comme décrit dans la documentation du référentiel YII2: https://asset-packagist.org/site/about Nous pouvons résoudre ce problème en ajoutant des alias sur ces dossiers dans notre configuration. Cela ressemblera à ceci:
$config = [
...
'aliases' => [
'@bower' => '@vendor/bower-asset',
'@npm' => '@vendor/npm-asset',
],
...
];
Cela fonctionne parfaitement!
Solution simple et propre:
Dans compositeur.JSON remplace simplement la ligne bower-asset / jquery par: "yidas/yii2-bower-actif":"*"
Je propose, nous ajoutons également la charmille-actif/datatables à la yidas/yii2-bower-actif
Mes problèmes avec la solution acceptée d'ajouter FXP / composer-asset-plugin sont que le plugin ralentit considérablement le système composer, impacte partout, n'est pas toujours portable sur les systèmes d'exploitation et environnements, a des erreurs avec PHP7. 2 relatives aux noms de méthode incohérents. Donc, je préfère ma solution plus rapide à développer, plus rapide à l'exécution, plus locale et plus compatible.