drush / drush dev-master nécessite codegyre / robo ~ 1.0.0-beta1

10

Je fais la transition d'un site Drupal 6 vers Drupal 8.1, donc en suivant les instructions officielles, j'ai mis en place une nouvelle installation dans son propre répertoire. Comme il ne s'agit que d'un site, j'ai suivi les instructions pour mettre mes informations d'identification de base de données dans sites / default / default.settings.php après la déclaration du tableau $ databases.

L'exécution drush --statusrenvoie les éléments suivants.

Drush version          :  8.1-dev                                          
Drush temp directory   :  /tmp                                             
Drush configuration    :                                                   
Drush alias files      :                                                   
Drupal root            :  /media/psf/Home/apps/newp                        
Drupal Settings File   :  MISSING

Étant donné que ce Drupal est 8.1-dev, cela doit signifier que je dois le mettre à niveau. Puisqu'il s'agit d'une installation globale utilisant Composer, je lance composer global update.

Vos besoins n'ont pas pu être résolus en un ensemble de packages installables drush / drush dev-master nécessite codegyre / robo ~ 1.0.0-beta1

La vérification de la page drush-ops sur github ne montre aucune anomalie comme celle-ci ni ma recherche Google.

Qu'est-ce que je néglige?

sam452
la source
Le message indique essentiellement que vous devez installer codegyre / robo ~ 1.0.0-beta1
No Sssweat

Réponses:

21

La branche dev / master de Drush est une version de développement, elle dépend donc de composants non stables tels que Robo 1.0.0-beta1. Composer rejettera ce composant sauf si vous en avez "minimum-stability": "beta"dans votre fichier composer.json. Notez que Drush lui-même a ce paramètre, mais si vous incluez Drush à partir d'un autre projet (par exemple votre site Drupal), vous devrez également définir votre stabilité minimale dans le fichier composer.json de niveau supérieur de votre projet.

Une solution plus raisonnable serait peut-être d'exécuter composer require drush/drush:~8et d'utiliser la version stable de Drush.

METTRE À JOUR

Drush masterutilise maintenant la version stable de Robo ~ 1, il devrait donc être plus facile d'installer Drush via composer require, au moins pour le moment. Il est toujours possible qu'à un moment donné dans le futur, la version dev de Drush devienne dépendante de fonctionnalités disponibles uniquement dans une version non stable de l'une de ses dépendances, vous devez donc toujours être prêt à définir votre stabilité minimale lorsque nécessitant une version dev de Drush - ou tout autre projet Composer.

greg_1_anderson
la source
Je pense que l'OP a installé l'instantané de développement car ils utilisent Drupal 8.1-dev. Ils ne savent probablement pas que Drush 8 est compatible avec cette version de Drupal.
kiamlaluno
L'ancienne version de Drush a été installée avant la sortie de Drupal 8. La documentation drush-ops suppose que tout le monde connaît suffisamment Composer pour dériver la commande correcte.
sam452
Cette commande met correctement à jour le drush vers une version plus récente. Je m'attendais après avoir exécuté le statut drush que le fichier de paramètres Drupal serait trouvé, mais il est toujours "MANQUANT". Où devrait-il être pour un défaut si ce n'est où je l'ai laissé?
sam452
Il semble que pour que Drupal trouve mon fichier de paramètres, il semble que je doive supprimer le "défaut" dans le nom de fichier, comme la configuration de Drupal 7.
sam452
n'oubliez pas d'utiliser le chemin complet pour drush ../vendor/bin/drush (quand dans / web hors docroor) si vous n'avez pas d'alias et que vous obtenez: $ drush The program 'drush' is currently not installed. You can install it by typing: sudo apt-get install drush alors utilisez: $ ../vendor/bin/drush Execute a drush command. Run drush help [command] `pour afficher les commandes spécifiques Aidez-moi. Courez drush topicpour lire encore plus de documentation. »
therobyouknow