diff --git a/.travis.yml b/.travis.yml index addd889..028a0c7 100644 --- a/.travis.yml +++ b/.travis.yml @@ -16,6 +16,10 @@ env: - RELEASE=stable COMPOSER_CHANNEL=snapshot matrix: + allow_failures: + # 5.6 is no longer supported by drupal-composer/drupal-project + - php: 5.6 + env: RELEASE=stable COMPOSER_CHANNEL=stable exclude: - php: 5.6 env: RELEASE=dev COMPOSER_CHANNEL=stable diff --git a/src/Plugin.php b/src/Plugin.php index 7069aac..51e474c 100644 --- a/src/Plugin.php +++ b/src/Plugin.php @@ -19,11 +19,14 @@ public function activate(Composer $composer, IOInterface $io) // Set default version constraints based on the composer requirements. $extra = $composer->getPackage()->getExtra(); $packages = $composer->getPackage()->getRequires(); - if (!isset($extra['composer-drupal-optimizations']['require']) && isset($packages['drupal/core'])) { - $coreConstraint = $packages['drupal/core']->getConstraint(); - $extra['composer-drupal-optimizations']['require'] = static::getDefaultRequire($coreConstraint); - if (!empty($extra['composer-drupal-optimizations']['require']) && $io->isVerbose()) { - $io->write('Required tags were not explicitly set so the zaporylie/composer-drupal-optimizations set default based on project\'s composer.json content.'); + if (!isset($extra['composer-drupal-optimizations']['require'])) { + $package = isset($packages['drupal/core']) ? $packages['drupal/core'] : (isset($packages['drupal/core-recommended']) ? $packages['drupal/core-recommended'] : null); + if (isset($package)) { + $coreConstraint = $package->getConstraint(); + $extra['composer-drupal-optimizations']['require'] = static::getDefaultRequire($coreConstraint); + if (!empty($extra['composer-drupal-optimizations']['require']) && $io->isVerbose()) { + $io->write('Required tags were not explicitly set so the zaporylie/composer-drupal-optimizations set default based on project\'s composer.json content.'); + } } } if (!empty($extra['composer-drupal-optimizations']['require']) && $io->isVerbose()) {