- Fixed bug in theme proxying feature.
- Updated Travis CI test configuration to use improved infrastructure and test additional PHP versions.
- Added default scaffold task to symlink any directories in
src/libraries
tobuild/html/sites/all/libraries
(for D7) orbuild/html/libraries
(for D8).
- Fixing error with 'grunt serve' due to drush:serve not being defined.
- Ensuring that Behat is run with the Grunt process's environment variables.
- Added eslint JavaScript code quality checking to the validate and analyze tasks.
- Added
grunt serve
task to easily install and run the Drupal site without external dependencies like Apache. - Added theme scripts system to allow running theme-provided build scripts as part of the GDT build process.
- Added
phplint.dir
setting to Gruntconfig to allow customization of linting paths. - Added
grunt validate:newer
to validate only files changed since the last run, and using it for thegrunt watch
task for a speed increase! - New settings for
grunt package
to prepare output ready for commit to Acquia- and Pantheon-style release repositories. - Added Drupal 8 test coverage, Travis and
npm test
will now run tests against D7 and D8. - Added support for actions against configured URLs for multiple environments. See documentation for more information: https://github.com/phase2/grunt-drupal-tasks/blob/master/CONFIG.md#core-settings
- Additional unit & integration tests.
- The GRUNT_DRUPAL_QUIET environment variable to enable quiet mode is renamed to GDT_QUIET.
grunt package
no longer compresses by default. Usegrunt package:compress
to replicate former behavior.
- Adding documentation on Gadget, the Yeoman generator for Grunt Drupal Tasks.
- Ensuring dot-files are copied from the temporary build (Drush output) and the static files directory.
- Adding --notify option as a converse of --quiet.
- Adding .editorconfig to the project example.
- Added automatic support for Drupal 8 based on Drush detection of the Drupal version.
- Dynamically compute Drush Make concurrency based on system capability with a new concurrency detection service.
- Ruby (bundler) will now install dependencies into
vendor/bundle
. - Ruby and PHP upstream binaries are placed or symlinked from
vendor/bin
. This frees upbin/
for custom project scripts. - Adding default values for the buildPaths in the project Gruntconfig.json so the buildPaths config is no longer required.
- Ensure reports directory is created before running analyze.
- Support for *.sass files in compass watch.
- Refactored
grunt help
task to be extensible from separate projects. - The docroot assembly tasks (such as the symlinking) performed after drush make
have been consolidated into a new
scaffold
task. - Due to npm's behavior that strips .gitignore files from packages, the example .gitignore is renamed to gitignore, and needs to be renamed manually after installation.
- Remove the Drush Make
--concurrency
option from your Gruntconfig. It will no longer be respected. - The example
composer.json
andGruntconfig.json
have been both updated to support installing PHP component executables tovendor/bin
instead ofbin
. If you want to continue usingbin
, use caution when updating these files. - Ruby bundle executables are moved to
vendor/bin
frombin
. This change is intrinsic to v0.6.0. You may need to runrm -Rf .bundle
to clear Bundler configuration to make way for the new install location. - Gruntconfig.json no longer needs the
buildPaths
config key. Elements ofbuildPaths
added to your project Gruntconfig will override default behavior. - Configuration of
grunt help
for project-specific tasks via Gruntconfig.json removed in favor of new Help API.
- Adding configuration for the Drush executable path, whether to trigger a fail for PHPCS warnings, and help text for custom tasks
- Including dot files in
package
task results - Pinning npm dependencies to a specific version for stability
- Adding tests for Compass theme compilation (and implicitly Bundler dependency installation)
- The example project's configuration will install a copy of Drush in the
project's
bin/
directory, and use this copy for all Drush operations. To adopt this practice on existing projects, add the Drush dependency to your project'scomposer.json
and specify the path in Gruntconfig.json with:
"drush": {
"cmd": "bin/drush"
}
- Critical bug fixes to Bundler and Drush support
- Adding a script to support the
npm test
command for running an end-to-end test on Grunt Drupal Tasks functionality similar to the Travis CI script
- Update your project's package.json to require at least v0.5.1 of Grunt Drupal
Tasks by using the
~0.5.1
version field value.
- Moving main Grunt Drupal Tasks library code from Gruntfile.js to bootstrap.js
- Adding integration with OS notification features with grunt-notify
- Adding documentation for use with a continuous integration system
- Wrapping
behat
task in atest
alias and moving Behat-related files into - top-level
test/
directory to allow for multiple testing methods - Adding Zombie.js and Behat support for JavaScript testing
- Replacing grunt-parallel with grunt-concurrent
- Many dependency updates
- Other minor improvements
-
Change your project's Gruntfile.js to include grunt-drupal-tasks using
require('grunt-drupal-tasks')(grunt);
instead ofrequire('grunt-drupal-tasks/Gruntfile')(grunt);
-
By default, Behat expects test features and the behat.yml inside a top-level
test/
directory. You can either update your project structure by moving behat.yml and the features directory undertest/
, or you may continue to use the old structure by providing aconfig
andsrc
option for any configured sites. For example:
"behat": {
"default": {
"config": "./behat.yml",
"src": "./features/**/*.feature"
}
}
-
Custom tasks that execute steps in parallel should be updated to use the grunt-concurrent plugin. See grunt-drupal-tasks/tasks/behat.js for an example.
-
See the example composer.json for updated dependency versions, which you can manually apply to your project.