10

I'm transitioning a Drupal 6 site to Drupal 8.1 so following the official instructions, I set up a new install in its own directory. Since this is only one site, I followed the instructions to put my database credentials in sites/default/default.settings.php after the declaration of the $databases array.

Running drush --status returns the following.

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

Since this Drupal is 8.1-dev that must mean I need to upgrade it. Since this is a global install using Composer, I run composer global update.

Your requirements could not be resolved to an installable set of packages drush/drush dev-master requires codegyre/robo ~1.0.0-beta1

Checking the drush-ops page on github doesn't show any anomalies like this nor my Google search.

What am I overlooking?

1
  • The message is basically saying that you need to install codegyre/robo ~1.0.0-beta1
    – No Sssweat
    Commented May 9, 2016 at 23:45

1 Answer 1

22

The dev/master branch of Drush is a development release, so it depends on non-stable components such as Robo 1.0.0-beta1. Composer will reject this component unless you have "minimum-stability": "beta" in your composer.json file. Note that Drush itself has this setting, but if you include Drush from some other project (e.g. your Drupal site), then you will also need to set your minimum-stability in your project's top-level composer.json file.

Perhaps a more reasonable solution would be to run composer require drush/drush:~8, and use the stable release of Drush.

UPDATE

Drush master is now using the stable release of Robo ~1, so it should be easier to install Drush via composer require, at least for the time being. It is always possible that at some point in the future, though, the dev version of Drush may become dependent on features only available in some non-stable release of one of its dependencies, so you should always be prepared to set your minimum stability when requiring a dev version of Drush -- or any other Composer project.

5
  • I think the OP installed the development snapshot because they are using Drupal 8.1-dev. They probably don't know Drush 8 is compatible with that Drupal version.
    – avpaderno
    Commented May 10, 2016 at 6:59
  • The older version of Drush was installed before Drupal 8 was out. The drush-ops docs assumes everyone knows Composer enough to derive the correct command.
    – sam452
    Commented May 10, 2016 at 9:44
  • This command correctly updates the drush to a more recent version. I had expected after running drush status that the Drupal Settings File would be found but it is still "MISSING". Where should it be for one default if not where I left it?
    – sam452
    Commented May 10, 2016 at 9:46
  • It seems that to get Drupal to find my settings file, it seems I have to remove the "default" in the filename, like Drupal 7's setup.
    – sam452
    Commented May 20, 2016 at 21:03
  • remember to use the full path to drush ../vendor/bin/drush (when in /web off docroor) if you haven't got an alias and you get: $ drush The program 'drush' is currently not installed. You can install it by typing: sudo apt-get install drush then use: $ ../vendor/bin/drush Execute a drush command. Run drush help [command]` to view command-specific help. Run drush topic to read even more documentation.` Commented Nov 15, 2016 at 15:26

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.