commit drush for openSUSE:Factory
Hello community, here is the log from the commit of package drush for openSUSE:Factory checked in at 2018-05-30 12:24:05 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/drush (Old) and /work/SRC/openSUSE:Factory/.drush.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "drush" Wed May 30 12:24:05 2018 rev:7 rq:612955 version:8.1.17 Changes: -------- --- /work/SRC/openSUSE:Factory/drush/drush.changes 2018-03-09 10:47:31.332676390 +0100 +++ /work/SRC/openSUSE:Factory/.drush.new/drush.changes 2018-05-30 13:09:28.252378893 +0200 @@ -1,0 +2,20 @@ +Wed May 30 03:50:20 UTC 2018 - jimmy@boombatower.com + +- Update to version 8.1.17: + * Prep for 8.1.17. + * #3039 : Fixed numeric notice in PHP 7.x. + * Fix #2285, #2268. Recognize current working dir for multisites when bootstrapping a site. Affects hosts that have pcntl_exec(). (#3550) + * Fix PHP 7.2 warning regarding count() (#3545) + * Fix drush make-convert --format=composer (#3499) + * Call batch finished with call_user_func_array() to use static method call. (#3517) + * Remove failing assertion that provides no value. + * Remove docs that were copied from drush9 in error. + * Change URL of feed in a test to bypass unicode SQL error. Woop woop for Goofy theme! + * Change installation instructions to recommend cgr instead of 'composer global'. (#3471) + * Add tests for Drupal 8.5. (#3438) + * Prevent 'drush @local uli' and related commands from executing twice. (#3428) + * Fix php 7.1 warning for COLUMNS env variable. + * Stop all processing of queue on SuspendQueueException (#3327) + * back to dev. + +------------------------------------------------------------------- Old: ---- drush-8.1.16.tar.xz New: ---- drush-8.1.17.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ drush.spec ++++++ --- /var/tmp/diff_new_pack.E3vazL/_old 2018-05-30 13:09:28.892354676 +0200 +++ /var/tmp/diff_new_pack.E3vazL/_new 2018-05-30 13:09:28.896354525 +0200 @@ -17,11 +17,11 @@ Name: drush -Version: 8.1.16 +Version: 8.1.17 Release: 0 Summary: Command line shell and scripting interface for Drupal # See licenses.txt for dependency licenses. -License: GPL-2.0+ +License: GPL-2.0-or-later Group: Productivity/Networking/Web/Servers Url: http://www.drush.org/ Source0: %{name}-%{version}.tar.xz ++++++ _service ++++++ --- /var/tmp/diff_new_pack.E3vazL/_old 2018-05-30 13:09:28.936353011 +0200 +++ /var/tmp/diff_new_pack.E3vazL/_new 2018-05-30 13:09:28.940352860 +0200 @@ -1,7 +1,7 @@ <services> <service name="tar_scm" mode="disabled"> <param name="versionformat">@PARENT_TAG@</param> - <param name="revision">refs/tags/8.1.16</param> + <param name="revision">refs/tags/8.1.17</param> <param name="url">git://github.com/drush-ops/drush.git</param> <param name="scm">git</param> <param name="changesgenerate">enable</param> ++++++ _servicedata ++++++ --- /var/tmp/diff_new_pack.E3vazL/_old 2018-05-30 13:09:28.960352103 +0200 +++ /var/tmp/diff_new_pack.E3vazL/_new 2018-05-30 13:09:28.964351951 +0200 @@ -1,6 +1,6 @@ <servicedata> <service name="tar_scm"> <param name="url">git://github.com/drush-ops/drush.git</param> - <param name="changesrevision">bbaff2dc725a5f3eb22006c5de3dc92a2de54b08</param> + <param name="changesrevision">7ea681dc7e639f6ddab906e78611d3558f88d9b0</param> </service> </servicedata> ++++++ drush-8.1.16.tar.xz -> drush-8.1.17.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/drush-8.1.16/.travis.yml new/drush-8.1.17/.travis.yml --- old/drush-8.1.16/.travis.yml 2018-02-06 22:18:48.000000000 +0100 +++ new/drush-8.1.17/.travis.yml 2018-05-23 18:58:54.000000000 +0200 @@ -8,10 +8,6 @@ - 5.x - /^[[:digit:]]+\.[[:digit:]]+\.[[:digit:]]+.*$/ language: php -php: -# See master-fulltest branch for broader PHP version testing. - - 5.4 - - 7.0 # Cache Composer & Unish directories. cache: @@ -23,46 +19,6 @@ sudo: false env: - matrix: -#D6 - - UNISH_DRUPAL_MAJOR_VERSION=6 PHPUNIT_ARGS=--group=base - - UNISH_DRUPAL_MAJOR_VERSION=6 PHPUNIT_ARGS=--group=commands - - UNISH_DRUPAL_MAJOR_VERSION=6 PHPUNIT_ARGS=--group=pm - - UNISH_DRUPAL_MAJOR_VERSION=6 PHPUNIT_ARGS=--exclude-group=base,make,commands,pm,quick-drupal -#D7 - - UNISH_DRUPAL_MAJOR_VERSION=7 PHPUNIT_ARGS=--group=make - - UNISH_DRUPAL_MAJOR_VERSION=7 PHPUNIT_ARGS=--group=base - - UNISH_DRUPAL_MAJOR_VERSION=7 PHPUNIT_ARGS=--group=commands - - UNISH_DRUPAL_MAJOR_VERSION=7 PHPUNIT_ARGS=--group=pm - - UNISH_DRUPAL_MAJOR_VERSION=7 PHPUNIT_ARGS=--group=quick-drupal - - UNISH_DRUPAL_MAJOR_VERSION=7 PHPUNIT_ARGS=--exclude-group=base,make,commands,pm,quick-drupal -#D8.3.x - - UNISH_DRUPAL_MAJOR_VERSION=8 UNISH_DRUPAL_MINOR_VERSION=3.7 PHPUNIT_ARGS=--group=make - - UNISH_DRUPAL_MAJOR_VERSION=8 UNISH_DRUPAL_MINOR_VERSION=3.7 PHPUNIT_ARGS=--group=base - - UNISH_DRUPAL_MAJOR_VERSION=8 UNISH_DRUPAL_MINOR_VERSION=3.7 PHPUNIT_ARGS=--group=commands - - UNISH_DRUPAL_MAJOR_VERSION=8 UNISH_DRUPAL_MINOR_VERSION=3.7 PHPUNIT_ARGS=--group=pm - - UNISH_DRUPAL_MAJOR_VERSION=8 UNISH_DRUPAL_MINOR_VERSION=3.7 PHPUNIT_ARGS=--group=quick-drupal - - UNISH_DRUPAL_MAJOR_VERSION=8 UNISH_DRUPAL_MINOR_VERSION=3.7 PHPUNIT_ARGS=--exclude-group=base,make,commands,pm,quick-drupal TEST_CHILDREN="drush-ops/config-extra" -#D8.4.x - - UNISH_DRUPAL_MAJOR_VERSION=8 PHPUNIT_ARGS=--group=make - - UNISH_DRUPAL_MAJOR_VERSION=8 PHPUNIT_ARGS=--group=base - - UNISH_DRUPAL_MAJOR_VERSION=8 PHPUNIT_ARGS=--group=commands - - UNISH_DRUPAL_MAJOR_VERSION=8 PHPUNIT_ARGS=--group=pm - - UNISH_DRUPAL_MAJOR_VERSION=8 PHPUNIT_ARGS=--group=quick-drupal - - UNISH_DRUPAL_MAJOR_VERSION=8 PHPUNIT_ARGS=--exclude-group=base,make,commands,pm,quick-drupal - - # - UNISH_DB_URL=sqlite://none/of/this/matters PHPUNIT_ARGS=--group=make - # - UNISH_DB_URL=sqlite://none/of/this/matters PHPUNIT_ARGS=--group=base - # - UNISH_DB_URL=sqlite://none/of/this/matters PHPUNIT_ARGS=--group=commands - # - UNISH_DB_URL=sqlite://none/of/this/matters PHPUNIT_ARGS=--group=pm - # - UNISH_DB_URL=sqlite://none/of/this/matters PHPUNIT_ARGS=--group=quick-drupal - # - UNISH_DB_URL=sqlite://none/of/this/matters PHPUNIT_ARGS=--exclude-group=base,make,commands,pm,quick-drupal - # - UNISH_DB_URL=pgsql://postgres:@localhost PHPUNIT_ARGS=--group=make - # - UNISH_DB_URL=pgsql://postgres:@localhost PHPUNIT_ARGS=--group=base - # - UNISH_DB_URL=pgsql://postgres:@localhost PHPUNIT_ARGS=--group=commands - # - UNISH_DB_URL=pgsql://postgres:@localhost PHPUNIT_ARGS=--group=pm - # - UNISH_DB_URL=pgsql://postgres:@localhost PHPUNIT_ARGS=--group=quick-drupal - # - UNISH_DB_URL=pgsql://postgres:@localhost PHPUNIT_ARGS=--exclude-group=base,make,commands,pm,quick-drupal global: # Github deploy - secure: VfYokT2CchfuBRJp9/gSwfVGPfsVfkZdDVEuNWEqxww3z4vq+5aLKqoCtPL54E5EIMjhyCE3GVo+biG35Gab1KOVgUs8zD1hAUWA1FPKfMFhoPDfI3ZJC2rX2T1iWK4ZR90pBtcPzS+2OObzTYz8go0PfeSTT6eq69Na1KcNLaE= @@ -70,41 +26,81 @@ - UNISH_DB_URL=mysql://root:@127.0.0.1 matrix: - exclude: - # Drupal 6 does not work with php 7, so skip all of the Drupal 6 tests with this php. + include: + # D8.5.x - php: 7.0 - env: UNISH_DRUPAL_MAJOR_VERSION=6 PHPUNIT_ARGS=--group=base + env: 'UNISH_DRUPAL_MAJOR_VERSION=8 UNISH_DRUPAL_MINOR_VERSION=5.0-rc1 PHPUNIT_ARGS=--group=base' - php: 7.0 - env: UNISH_DRUPAL_MAJOR_VERSION=6 PHPUNIT_ARGS=--group=commands + env: 'UNISH_DRUPAL_MAJOR_VERSION=8 UNISH_DRUPAL_MINOR_VERSION=5.0-rc1 PHPUNIT_ARGS=--group=commands' - php: 7.0 - env: UNISH_DRUPAL_MAJOR_VERSION=6 PHPUNIT_ARGS=--group=pm + env: 'UNISH_DRUPAL_MAJOR_VERSION=8 UNISH_DRUPAL_MINOR_VERSION=5.0-rc1 PHPUNIT_ARGS=--group=pm' - php: 7.0 - env: UNISH_DRUPAL_MAJOR_VERSION=6 PHPUNIT_ARGS=--exclude-group=base,make,commands,pm,quick-drupal - # Drupal 8 requires a minimum php of 5.5, so skip all of the Drupal 8 tests with this php. - - php: 5.4 - env: UNISH_DRUPAL_MAJOR_VERSION=8 UNISH_DRUPAL_MINOR_VERSION=3.7 PHPUNIT_ARGS=--group=make - - php: 5.4 - env: UNISH_DRUPAL_MAJOR_VERSION=8 UNISH_DRUPAL_MINOR_VERSION=3.7 PHPUNIT_ARGS=--group=base - - php: 5.4 - env: UNISH_DRUPAL_MAJOR_VERSION=8 UNISH_DRUPAL_MINOR_VERSION=3.7 PHPUNIT_ARGS=--group=commands - - php: 5.4 - env: UNISH_DRUPAL_MAJOR_VERSION=8 UNISH_DRUPAL_MINOR_VERSION=3.7 PHPUNIT_ARGS=--group=pm - - php: 5.4 - env: UNISH_DRUPAL_MAJOR_VERSION=8 UNISH_DRUPAL_MINOR_VERSION=3.7 PHPUNIT_ARGS=--group=quick-drupal - - php: 5.4 - env: UNISH_DRUPAL_MAJOR_VERSION=8 UNISH_DRUPAL_MINOR_VERSION=3.7 PHPUNIT_ARGS=--exclude-group=base,make,commands,pm,quick-drupal TEST_CHILDREN="drush-ops/config-extra" - - php: 5.4 - env: UNISH_DRUPAL_MAJOR_VERSION=8 PHPUNIT_ARGS=--group=make - - php: 5.4 - env: UNISH_DRUPAL_MAJOR_VERSION=8 PHPUNIT_ARGS=--group=base + env: 'UNISH_DRUPAL_MAJOR_VERSION=8 UNISH_DRUPAL_MINOR_VERSION=5.0-rc1 PHPUNIT_ARGS=--group=quick-drupal' + - php: 7.0 + env: 'UNISH_DRUPAL_MAJOR_VERSION=8 UNISH_DRUPAL_MINOR_VERSION=5.0-rc1 PHPUNIT_ARGS=--group=make' + - php: 7.0 + env: 'UNISH_DRUPAL_MAJOR_VERSION=8 UNISH_DRUPAL_MINOR_VERSION=5.0-rc1 PHPUNIT_ARGS=--exclude-group=base,make,commands,pm,quick-drupal TEST_CHILDREN="drush-ops/config-extra"' + + # D8.4.x + - php: 7.0 + env: 'UNISH_DRUPAL_MAJOR_VERSION=8 UNISH_DRUPAL_MINOR_VERSION=4.5 PHPUNIT_ARGS=--group=base' + - php: 7.0 + env: 'UNISH_DRUPAL_MAJOR_VERSION=8 UNISH_DRUPAL_MINOR_VERSION=4.5 PHPUNIT_ARGS=--group=commands' + - php: 7.0 + env: 'UNISH_DRUPAL_MAJOR_VERSION=8 UNISH_DRUPAL_MINOR_VERSION=4.5 PHPUNIT_ARGS=--group=pm' + - php: 7.0 + env: 'UNISH_DRUPAL_MAJOR_VERSION=8 UNISH_DRUPAL_MINOR_VERSION=4.5 PHPUNIT_ARGS=--group=quick-drupal' + - php: 7.0 + env: 'UNISH_DRUPAL_MAJOR_VERSION=8 UNISH_DRUPAL_MINOR_VERSION=4.5 PHPUNIT_ARGS=--group=make' + - php: 7.0 + env: 'UNISH_DRUPAL_MAJOR_VERSION=8 UNISH_DRUPAL_MINOR_VERSION=4.5 PHPUNIT_ARGS=--exclude-group=base,make,commands,pm,quick-drupal TEST_CHILDREN="drush-ops/config-extra"' + + # D8.3.x + - php: 7.0 + env: 'UNISH_DRUPAL_MAJOR_VERSION=8 UNISH_DRUPAL_MINOR_VERSION=3.7 PHPUNIT_ARGS=--group=commands' + + # D8.2.x + - php: 7.0 + env: 'UNISH_DRUPAL_MAJOR_VERSION=8 UNISH_DRUPAL_MINOR_VERSION=2.8 PHPUNIT_ARGS=--group=commands' + + # D7 + - php: 7.0 + env: 'UNISH_DRUPAL_MAJOR_VERSION=7 PHPUNIT_ARGS=--group=base' + - php: 7.0 + env: 'UNISH_DRUPAL_MAJOR_VERSION=7 PHPUNIT_ARGS=--group=commands' + - php: 7.0 + env: 'UNISH_DRUPAL_MAJOR_VERSION=7 PHPUNIT_ARGS=--group=pm' + - php: 7.0 + env: 'UNISH_DRUPAL_MAJOR_VERSION=7 PHPUNIT_ARGS=--group=quick-drupal' + - php: 7.0 + env: 'UNISH_DRUPAL_MAJOR_VERSION=7 PHPUNIT_ARGS=--group=make' + - php: 7.0 + env: 'UNISH_DRUPAL_MAJOR_VERSION=7 PHPUNIT_ARGS=--exclude-group=base,make,commands,pm,quick-drupal TEST_CHILDREN="drush-ops/config-extra"' + + # D7 + - php: 5.6 + env: 'UNISH_DRUPAL_MAJOR_VERSION=7 PHPUNIT_ARGS=--group=base' + - php: 5.6 + env: 'UNISH_DRUPAL_MAJOR_VERSION=7 PHPUNIT_ARGS=--group=commands' + - php: 5.6 + env: 'UNISH_DRUPAL_MAJOR_VERSION=7 PHPUNIT_ARGS=--group=pm' + - php: 5.6 + env: 'UNISH_DRUPAL_MAJOR_VERSION=7 PHPUNIT_ARGS=--group=quick-drupal' + - php: 5.6 + env: 'UNISH_DRUPAL_MAJOR_VERSION=7 PHPUNIT_ARGS=--group=make' + - php: 5.6 + env: 'UNISH_DRUPAL_MAJOR_VERSION=7 PHPUNIT_ARGS=--exclude-group=base,make,commands,pm,quick-drupal TEST_CHILDREN="drush-ops/config-extra"' + + # D6 + # Note that Drupal 6 does not work with PHP 7 - php: 5.4 - env: UNISH_DRUPAL_MAJOR_VERSION=8 PHPUNIT_ARGS=--group=commands + env: 'UNISH_DRUPAL_MAJOR_VERSION=7 PHPUNIT_ARGS=--group=base' - php: 5.4 - env: UNISH_DRUPAL_MAJOR_VERSION=8 PHPUNIT_ARGS=--group=pm + env: 'UNISH_DRUPAL_MAJOR_VERSION=7 PHPUNIT_ARGS=--group=commands' - php: 5.4 - env: UNISH_DRUPAL_MAJOR_VERSION=8 PHPUNIT_ARGS=--group=quick-drupal + env: 'UNISH_DRUPAL_MAJOR_VERSION=7 PHPUNIT_ARGS=--group=pm' - php: 5.4 - env: UNISH_DRUPAL_MAJOR_VERSION=8 PHPUNIT_ARGS=--exclude-group=base,make,commands,pm,quick-drupal + env: 'UNISH_DRUPAL_MAJOR_VERSION=7 PHPUNIT_ARGS=--exclude-group=base,make,commands,pm,quick-drupal TEST_CHILDREN="drush-ops/config-extra"' before_install: - echo 'mbstring.http_input = pass' >> ~/.phpenv/versions/$(phpenv version-name)/etc/conf.d/travis.ini diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/drush-8.1.16/commands/core/drupal/batch.inc new/drush-8.1.17/commands/core/drupal/batch.inc --- old/drush-8.1.16/commands/core/drupal/batch.inc 2018-02-06 22:18:48.000000000 +0100 +++ new/drush-8.1.17/commands/core/drupal/batch.inc 2018-05-23 18:58:54.000000000 +0200 @@ -243,7 +243,7 @@ $operations = $queue->getAllItems(); $elapsed = $batch_set['elapsed'] / 1000; $elapsed = drush_drupal_major_version() >=8 ? \Drupal::service('date.formatter')->formatInterval($elapsed) : format_interval($elapsed); - $batch_set['finished']($batch_set['success'], $batch_set['results'], $operations, $elapsed); + call_user_func_array($batch_set['finished'], [$batch_set['success'], $batch_set['results'], $operations, $elapsed]); } } } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/drush-8.1.16/commands/make/make.drush.inc new/drush-8.1.17/commands/make/make.drush.inc --- old/drush-8.1.16/commands/make/make.drush.inc 2018-02-06 22:18:48.000000000 +0100 +++ new/drush-8.1.17/commands/make/make.drush.inc 2018-05-23 18:58:54.000000000 +0200 @@ -567,21 +567,89 @@ $core_major_version = substr($info['core'], 0, 1); $core_project_name = $core_major_version == 7 ? 'drupal/drupal' : 'drupal/core'; - // Add default projects. - $projects = array( - 'composer/installers' => '^1.0.20', - 'cweagans/composer-patches' => '~1.0', - $core_project_name => str_replace('x', '*', $info['core']), - ); + if ($core_major_version == 7) { + // Add PHP version and extension requirements. + $php_reqs = array( + 'php' => '>= 5.2.5', + 'ext-curl' => '*', + 'ext-gd' => '*', + 'ext-json' => '*', + 'ext-openssl' => '*', + 'ext-pdo' => '*', + 'ext-pdo_mysql' => '*', + 'ext-xml' => '*', + ); + + // Add default projects. + $projects = array( + 'composer/installers' => '^1.2', + 'cweagans/composer-patches' => '^1.6', + 'drupal-composer/preserve-paths' => '^0.1', + 'drush/drush' => '~8.0', + $core_project_name => str_replace('x', '*', $info['core']), + ); + + $conflict = array( + 'drupal/core' => '8.*', + ); - $patches = array(); + $extra = array( + 'installer-paths' => array( + 'web' => array('type:drupal-core'), + 'web/profiles/{$name}' => array('type:drupal-profile'), + 'web/sites/all/drush/{$name}' => array('type:drupal-drush'), + 'web/sites/all/libraries/{$name}' => array('type:drupal-library'), + 'web/sites/all/modules/contrib/{$name}' => array('type:drupal-module'), + 'web/sites/all/themes/contrib/{$name}' => array('type:drupal-theme'), + ), + 'patches' => array(), + 'preserve-paths' => array( + 'web/sites/all/drush', + 'web/sites/all/libraries', + 'web/sites/all/modules/contrib', + 'web/sites/all/modules/custom', + 'web/sites/all/modules/features', + 'web/sites/all/themes/contrib', + 'web/sites/all/themes/custom', + 'web/sites/all/translations', + 'web/sites/default' + ), + ); + } + else { + $php_reqs = array(); + + // Add default projects. + $projects = array( + 'composer/installers' => '^1.2', + 'cweagans/composer-patches' => '^1.6', + 'drush/drush' => '^9.0.0', + $core_project_name => str_replace('x', '*', $info['core']), + ); + + $conflict = array( + 'drupal/drupal' => '*', + ); + + $extra = array( + 'installer-paths' => array( + 'web/core' => array('type:drupal-core'), + 'web/libraries/{$name}' => array('type:drupal-library'), + 'web/modules/contrib/{$name}' => array('type:drupal-module'), + 'web/profiles/contrib/{$name}' => array('type:drupal-profile'), + 'web/themes/contrib/{$name}' => array('type:drupal-theme'), + 'drush/contrib/{$name}' => array('type:drupal-drush'), + ), + 'patches' => array(), + ); + } // Iterate over projects, populating composer-friendly array. foreach ($info['projects'] as $project_name => $project) { switch ($project['type']) { case 'core': - $project['name'] = 'drupal/core'; - $projects[$project['name']] = str_replace('x', '*', $project['version']); + $project['name'] = $core_project_name; + $projects[$project['name']] = '^' . str_replace('x', '*', $project['version']); break; default: @@ -594,7 +662,7 @@ if (!empty($project['patch'])) { foreach($project['patch'] as $key => $patch) { $patch_description = "Enter {$project['name']} patch #$key description here"; - $patches[$project['name']][$patch_description] = $patch; + $extra['patches'][$project['name']][$patch_description] = $patch; } } } @@ -607,26 +675,25 @@ } } + // Sort the projects to simplify pull requests on composer.json due to the + // sort-packages configuration. + ksort($projects); + $output = array( 'name' => 'Enter project name here', 'description' => 'Enter project description here', 'type' => 'project', 'repositories' => array( - array('type' => 'composer', 'url' => 'https://packagist.drupal-composer.org'), + array('type' => 'composer', 'url' => 'https://packages.drupal.org/' . $core_major_version), ), - 'require' => $projects, + 'require' => array_merge($php_reqs, $projects), + 'conflict'=> $conflict, 'minimum-stability' => 'dev', 'prefer-stable' => TRUE, - 'extra' => array( - 'installer-paths' => array( - 'core' => array('type:drupal-core'), - 'docroot/modules/contrib/{$name}' => array('type:drupal-module'), - 'docroot/profiles/contrib/{$name}' => array('type:drupal-profile'), - 'docroot/themes/contrib/{$name}' => array('type:drupal-theme'), - 'drush/contrib/{$name}' => array('type:drupal-drush'), - ), - 'patches' => $patches, + 'config' => array( + 'sort-packages' => TRUE, ), + 'extra' => $extra, ); $output = json_encode($output, JSON_PRETTY_PRINT | JSON_UNESCAPED_SLASHES); @@ -650,19 +717,17 @@ function drush_make_convert_project_to_composer($original_project, $core_major_version) { // Typical specified version with major version "x" removed. if (!empty($original_project['version'])) { - $version = str_replace('x', '0', $original_project['version']); + $version = drush_make_convert_version_to_composer($original_project['version']); } // Git branch or revision. elseif (!empty($original_project['download'])) { switch ($original_project['download']['type']) { case 'git': if (!empty($original_project['download']['branch'])) { - // @todo Determine if '0' will always be correct. - $version = str_replace('x', '0', $original_project['download']['branch']); + $version = drush_make_convert_version_to_composer($original_project['download']['branch']); } if (!empty($original_project['download']['tag'])) { - // @todo Determine if '0' will always be correct. - $version = str_replace('x', '0', $original_project['download']['tag']); + $version = drush_make_convert_version_to_composer($original_project['download']['tag']); } if (!empty($project['download']['revision'])) { $version .= '#' . $original_project['download']['revision']; @@ -675,12 +740,35 @@ } } - $version = "$core_major_version." . $version; - return $version; } /** + * Converts a drush version into a composer version. + * + * @param string $version + * Original drush version. + * + * @return string + * The converted composer version. + */ +function drush_make_convert_version_to_composer($version) { + $cver = '*'; + if (!empty($version)) { + if (substr($version, -3) === 'dev') { + // Dev versions maintain the 7.x-dev syntax. + $cver = $version; + } + else { + // Replace '1.x' with '^1.*'. + $cver = '^' . str_replace('x', '*', $version); + } + } + + return $cver; +} + +/** * Converts a drush info array to a YAML array. * * @param array $info @@ -934,7 +1022,7 @@ $backend_options['integrate'] = TRUE; } $results = drush_backend_invoke_concurrent($invocations, $common_options, $backend_options, 'make-process', '@none'); - if (count($results['error_log'])) { + if (!empty($results['error_log'])) { return FALSE; } } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/drush-8.1.16/docs/install-alternative.md new/drush-8.1.17/docs/install-alternative.md --- old/drush-8.1.16/docs/install-alternative.md 2018-02-06 22:18:48.000000000 +0100 +++ new/drush-8.1.17/docs/install-alternative.md 2018-05-23 18:58:54.000000000 +0200 @@ -1,28 +1,32 @@ Install a global Drush via Composer ------------------ -Follow the instructions below, or [watch a video by Drupalize.me](https://youtu.be/eAtDaD8xz0Q). +Follow the instructions below: 1. [Install Composer globally](https://getcomposer.org/doc/00-intro.md#globally). +1. Install the [cgr tool](https://github.com/consolidation/cgr) following the [instructions in that project](https://github.com/consolidation/cgr#installation-and-usage). 1. Add composer's `bin` directory to the system path by placing `export PATH="$HOME/.composer/vendor/bin:$PATH"` into your ~/.bash_profile (Mac OS users) or into your ~/.bashrc (Linux users). -1. Install latest stable Drush: `composer global require drush/drush`. +1. Install latest stable Drush: `cgr drush/drush`. 1. Verify that Drush works: `drush status` +Please do not install Drush using `composer global require`. See [Fixing the Composer Global command](https://pantheon.io/blog/fixing-composer-global-command) for more information. + #### Notes -* Update to latest release (per your specification in ~/.composer/composer.json): `composer global update` +* Update to latest release (per your specification in ~/.composer/composer.json): `cgr update drush/drush` * Install a specific version of Drush: # Install a specific version of Drush, e.g. Drush 7.1.0 - composer global require drush/drush:7.1.0 + cgr update drush/drush:7.1.0 # Install 8.x branch as a git clone. Great for contributing back to Drush project. - composer global require drush/drush:8.x-dev --prefer-source + cgr drush/drush:8.x-dev --prefer-source + * Alternate way to install for all users via Composer: - COMPOSER_HOME=/opt/drush COMPOSER_BIN_DIR=/usr/local/bin COMPOSER_VENDOR_DIR=/opt/drush/7 composer require drush/drush:7 + COMPOSER_HOME=/opt/drush COMPOSER_BIN_DIR=/usr/local/bin COMPOSER_VENDOR_DIR=/opt/drush/8 composer require drush/drush:^8 * [Documentation for composer's require command.](http://getcomposer.org/doc/03-cli.md#require) -* Uninstall with : `composer global remove drush/drush` +* Uninstall with : `cgr remove drush/drush` Windows ------------ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/drush-8.1.16/docs/install.md new/drush-8.1.17/docs/install.md --- old/drush-8.1.16/docs/install.md 2018-02-06 22:18:48.000000000 +0100 +++ new/drush-8.1.17/docs/install.md 2018-05-23 18:58:54.000000000 +0200 @@ -31,26 +31,6 @@ Drupal Compatibility ----------------- -!!! note - - Drush 9 only supports one install method. It requires that your Drupal 8 site be built with Composer and Drush be listed as a dependency. - - See the [Drush 8 docs](http://docs.drush.org/en/8.x) for installing prior versions of Drush. - -Install a site-local Drush and Drush Launcher. ------------------ -1. It is recommended that Drupal 8 sites be [built using Composer, with Drush listed as a dependency](https://github.com/drupal-composer/drupal-project). That project already includes Drush in its composer.json. If your Composer project doesn't yet depend on Drush, run `composer require drush/drush` to add it. -1. To be able to call `drush` from anywhere, install the [Drush Launcher](https://github.com/drush-ops/drush-launcher). That is a small program which listens on your $PATH and hands control to a site-local Drush that is in the /vendor directory of your Composer project. If you skip this step, run Drush from Drupal root via `../vendor/bin/drush`. In that case Drush's bash integration and custom prompt won't work. -1. Run `drush init`. This edits ~/.bashrc so that Drush's custom prompt and bash integration are active. -1. See [Usage](http://docs.drush.org/en/master/usage/) for details on using Drush. -1. To use a non-default PHP, [edit ~/.bashrc so that the desired PHP is in front of your $PATH](http://stackoverflow.com/questions/4145667/how-to-override-the-path-of-php-t...). If that is not desirable, you can change your PATH for just one request: `PATH=/path/to/php:$PATH` drush status ...` - -!!! note - - Drush 9 cannot run commandfiles from Drush 8 and below (e.g. example.drush.inc). See our [guide on porting commandfiles](https://weitzman.github.io/blog/port-to-drush9). Also note that alias and config files use a new .yml format in Drush 9. - -Drupal Compatibility ------------------ <table> <tr> <th> Drush Version </th> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/drush-8.1.16/drush.info new/drush-8.1.17/drush.info --- old/drush-8.1.16/drush.info 2018-02-06 22:18:48.000000000 +0100 +++ new/drush-8.1.17/drush.info 2018-05-23 18:58:54.000000000 +0200 @@ -1 +1 @@ -drush_version=8.1.16 +drush_version=8.1.17 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/drush-8.1.16/includes/drush.inc new/drush-8.1.17/includes/drush.inc --- old/drush-8.1.16/includes/drush.inc 2018-02-06 22:18:48.000000000 +0100 +++ new/drush-8.1.17/includes/drush.inc 2018-05-23 18:58:54.000000000 +0200 @@ -1665,16 +1665,17 @@ function drush_memory_limit() { $value = trim(ini_get('memory_limit')); $last = strtolower($value[strlen($value)-1]); + $size = (int) substr($value, 0, -1); switch ($last) { case 'g': - $value *= DRUSH_KILOBYTE; + $size *= DRUSH_KILOBYTE; case 'm': - $value *= DRUSH_KILOBYTE; + $size *= DRUSH_KILOBYTE; case 'k': - $value *= DRUSH_KILOBYTE; + $size *= DRUSH_KILOBYTE; } - return $value; + return $size; } /** diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/drush-8.1.16/includes/preflight.inc new/drush-8.1.17/includes/preflight.inc --- old/drush-8.1.16/includes/preflight.inc 2018-02-06 22:18:48.000000000 +0100 +++ new/drush-8.1.17/includes/preflight.inc 2018-05-23 18:58:54.000000000 +0200 @@ -438,7 +438,7 @@ * On Windows in CMD and PowerShell is this exported using mode con. */ function _drush_preflight_columns() { - if (!($columns = getenv('COLUMNS'))) { + if (!($columns = getenv('COLUMNS') ?: 0)) { // Trying to export the columns using stty. exec('stty size 2>&1', $columns_output, $columns_status); if (!$columns_status) $columns = preg_replace('/\d+\s(\d+)/', '$1', $columns_output[0], -1, $columns_count); @@ -611,8 +611,15 @@ $local_drush = find_wrapper_or_launcher($root); } $is_local = drush_get_option('local'); + $must_use_site_local = !empty($root) && !empty($local_drush) && empty($is_local); + // If the command sets the 'handle-remote-commands' flag, then we will short-circuit + // remote command dispatching and site-list command dispatching, and always let + // the command handler run on the local machine. + if (is_array($command) && !empty($command['handle-remote-commands']) && !$must_use_site_local) { + return FALSE; + } $values = NULL; - if (!empty($root) && !empty($local_drush) && empty($is_local)) { + if (!isset($remote_host) && !isset($site_list) && $must_use_site_local) { if (!drush_is_absolute_path($local_drush)) { $local_drush = $root . DIRECTORY_SEPARATOR . $local_drush; } @@ -639,12 +646,6 @@ $values = drush_do_command_redispatch(is_array($command) ? $command : $command_name, $args, NULL, NULL, $local_drush, TRUE, $aditional_options); } } - // If the command sets the 'handle-remote-commands' flag, then we will short-circuit - // remote command dispatching and site-list command dispatching, and always let - // the command handler run on the local machine. - if (is_array($command) && !empty($command['handle-remote-commands'])) { - return FALSE; - } if (isset($remote_host)) { $remote_user = drush_get_option('remote-user'); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/drush-8.1.16/includes/startup.inc new/drush-8.1.17/includes/startup.inc --- old/drush-8.1.16/includes/startup.inc 2018-02-06 22:18:48.000000000 +0100 +++ new/drush-8.1.17/includes/startup.inc 2018-05-23 18:58:54.000000000 +0200 @@ -414,6 +414,9 @@ // Get the current environment for pnctl_exec. $env = drush_env(); + // Make sure Drush can locates original working directory. https://github.com/drush-ops/drush/issues/2285 + chdir($cwd); + // Launch the new script in the same process. // If the launch succeeds, then it will not return. $error = pcntl_exec($found_script, $arguments, $env); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/drush-8.1.16/lib/Drush/Queue/Queue8.php new/drush-8.1.17/lib/Drush/Queue/Queue8.php --- old/drush-8.1.16/lib/Drush/Queue/Queue8.php 2018-02-06 22:18:48.000000000 +0100 +++ new/drush-8.1.17/lib/Drush/Queue/Queue8.php 2018-05-23 18:58:54.000000000 +0200 @@ -65,9 +65,10 @@ } catch (SuspendQueueException $e) { // If the worker indicates there is a problem with the whole queue, - // release the item and skip to the next queue. + // release the item and stop further processing. $queue->releaseItem($item); drush_set_error('DRUSH_SUSPEND_QUEUE_EXCEPTION', $e->getMessage()); + break; } catch (\Exception $e) { // In case of any other kind of exception, log it and leave the item diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/drush-8.1.16/tests/makeConvertTest.php new/drush-8.1.17/tests/makeConvertTest.php --- old/drush-8.1.16/tests/makeConvertTest.php 2018-02-06 22:18:48.000000000 +0100 +++ new/drush-8.1.17/tests/makeConvertTest.php 2018-05-23 18:58:54.000000000 +0200 @@ -60,7 +60,7 @@ array('format' => 'composer'), array( '"drupal/drupal": "7.*",', - '"drupal/features": "7.1.0-beta4",', + '"drupal/features": "^1.0-beta4",', '"patches": {', '"drupal/features": {', '"Enter drupal/features patch #0 description here": "http://drupal.org/files/issues/features-drush-backend-invoke-25.patch"', @@ -71,7 +71,7 @@ array('format' => 'composer'), array( '"drupal/drupal": "7.*",', - '"drupal/features": "7.1.0-beta4",', + '"drupal/features": "^1.0-beta4",', '"patches": {', '"drupal/features": {', '"Enter drupal/features patch #0 description here": "http://drupal.org/files/issues/features-drush-backend-invoke-25.patch"', diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/drush-8.1.16/tests/pmReleaseNotesTest.php new/drush-8.1.17/tests/pmReleaseNotesTest.php --- old/drush-8.1.16/tests/pmReleaseNotesTest.php 2018-02-06 22:18:48.000000000 +0100 +++ new/drush-8.1.17/tests/pmReleaseNotesTest.php 2018-05-23 18:58:54.000000000 +0200 @@ -14,7 +14,6 @@ $this->drush('pm-releasenotes', array('drupal-7.1')); $output = $this->getOutput(); $this->assertContains("RELEASE NOTES FOR 'DRUPAL' PROJECT, VERSION 7.1", $output); - $this->assertContains('Last updated: 25 May 2011 at 20:59 UTC.', $output); $this->assertContains('SA-CORE-2011-001 - Drupal core - Multiple vulnerabilities', $output); } } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/drush-8.1.16/tests/resources/queue_script-D7.php new/drush-8.1.17/tests/resources/queue_script-D7.php --- old/drush-8.1.16/tests/resources/queue_script-D7.php 2018-02-06 22:18:48.000000000 +0100 +++ new/drush-8.1.17/tests/resources/queue_script-D7.php 2018-05-23 18:58:54.000000000 +0200 @@ -3,7 +3,7 @@ // Create a new feed. aggregator_save_feed(array( 'title' => 'test', - 'url' => 'http://drupal.org/project/issues/rss/drupal?categories=All', + 'url' => 'https://www.drupal.org/project/issues/rss/goofy?categories=All', 'refresh' => 3600, 'block' => 5, )); ++++++ drush-vendor.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/autoload.php new/vendor/autoload.php --- old/vendor/autoload.php 2018-02-07 04:06:27.304949728 +0100 +++ new/vendor/autoload.php 2018-05-30 05:50:32.874358118 +0200 @@ -4,4 +4,4 @@ require_once __DIR__ . '/composer/autoload_real.php'; -return ComposerAutoloaderInit4827a34c35ff042d69ec9a04f2b1d869::getLoader(); +return ComposerAutoloaderInit3872fc9364e00d80aefbdeb8e09ec95d::getLoader(); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/composer/autoload_real.php new/vendor/composer/autoload_real.php --- old/vendor/composer/autoload_real.php 2018-02-07 04:06:27.304949728 +0100 +++ new/vendor/composer/autoload_real.php 2018-05-30 05:50:32.874358118 +0200 @@ -2,7 +2,7 @@ // autoload_real.php @generated by Composer -class ComposerAutoloaderInit4827a34c35ff042d69ec9a04f2b1d869 +class ComposerAutoloaderInit3872fc9364e00d80aefbdeb8e09ec95d { private static $loader; @@ -19,15 +19,15 @@ return self::$loader; } - spl_autoload_register(array('ComposerAutoloaderInit4827a34c35ff042d69ec9a04f2b1d869', 'loadClassLoader'), true, true); + spl_autoload_register(array('ComposerAutoloaderInit3872fc9364e00d80aefbdeb8e09ec95d', 'loadClassLoader'), true, true); self::$loader = $loader = new \Composer\Autoload\ClassLoader(); - spl_autoload_unregister(array('ComposerAutoloaderInit4827a34c35ff042d69ec9a04f2b1d869', 'loadClassLoader')); + spl_autoload_unregister(array('ComposerAutoloaderInit3872fc9364e00d80aefbdeb8e09ec95d', 'loadClassLoader')); $useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded()); if ($useStaticLoader) { require_once __DIR__ . '/autoload_static.php'; - call_user_func(\Composer\Autoload\ComposerStaticInit4827a34c35ff042d69ec9a04f2b1d869::getInitializer($loader)); + call_user_func(\Composer\Autoload\ComposerStaticInit3872fc9364e00d80aefbdeb8e09ec95d::getInitializer($loader)); } else { $map = require __DIR__ . '/autoload_namespaces.php'; foreach ($map as $namespace => $path) { @@ -48,19 +48,19 @@ $loader->register(true); if ($useStaticLoader) { - $includeFiles = Composer\Autoload\ComposerStaticInit4827a34c35ff042d69ec9a04f2b1d869::$files; + $includeFiles = Composer\Autoload\ComposerStaticInit3872fc9364e00d80aefbdeb8e09ec95d::$files; } else { $includeFiles = require __DIR__ . '/autoload_files.php'; } foreach ($includeFiles as $fileIdentifier => $file) { - composerRequire4827a34c35ff042d69ec9a04f2b1d869($fileIdentifier, $file); + composerRequire3872fc9364e00d80aefbdeb8e09ec95d($fileIdentifier, $file); } return $loader; } } -function composerRequire4827a34c35ff042d69ec9a04f2b1d869($fileIdentifier, $file) +function composerRequire3872fc9364e00d80aefbdeb8e09ec95d($fileIdentifier, $file) { if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) { require $file; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/composer/autoload_static.php new/vendor/composer/autoload_static.php --- old/vendor/composer/autoload_static.php 2018-02-07 04:06:27.304949728 +0100 +++ new/vendor/composer/autoload_static.php 2018-05-30 05:50:32.874358118 +0200 @@ -4,7 +4,7 @@ namespace Composer\Autoload; -class ComposerStaticInit4827a34c35ff042d69ec9a04f2b1d869 +class ComposerStaticInit3872fc9364e00d80aefbdeb8e09ec95d { public static $files = array ( '0e6d7bf4a5811bfa5cf40c5ccd6fae6a' => __DIR__ . '/..' . '/symfony/polyfill-mbstring/bootstrap.php', @@ -143,10 +143,10 @@ public static function getInitializer(ClassLoader $loader) { return \Closure::bind(function () use ($loader) { - $loader->prefixLengthsPsr4 = ComposerStaticInit4827a34c35ff042d69ec9a04f2b1d869::$prefixLengthsPsr4; - $loader->prefixDirsPsr4 = ComposerStaticInit4827a34c35ff042d69ec9a04f2b1d869::$prefixDirsPsr4; - $loader->prefixesPsr0 = ComposerStaticInit4827a34c35ff042d69ec9a04f2b1d869::$prefixesPsr0; - $loader->classMap = ComposerStaticInit4827a34c35ff042d69ec9a04f2b1d869::$classMap; + $loader->prefixLengthsPsr4 = ComposerStaticInit3872fc9364e00d80aefbdeb8e09ec95d::$prefixLengthsPsr4; + $loader->prefixDirsPsr4 = ComposerStaticInit3872fc9364e00d80aefbdeb8e09ec95d::$prefixDirsPsr4; + $loader->prefixesPsr0 = ComposerStaticInit3872fc9364e00d80aefbdeb8e09ec95d::$prefixesPsr0; + $loader->classMap = ComposerStaticInit3872fc9364e00d80aefbdeb8e09ec95d::$classMap; }, null, ClassLoader::class); }
participants (1)
-
root