Need a place to draft up release notes so I'm doing it here.
Major breaking changes in this release!
This release contains a number of big changes to wGulp, be sure to read through the release notes carefully and update your gulpfile.js where necessary.
Features and Improvements
Task dependency tree replaces runSequence for buildtestdistdefault etc. Reduces task duplication and increases parallelization of tasks resulting in much faster builds! (#63)
New languages configuration reduces the amount of manual task configuration necessary. wGulp will automatically skip tasks you don't need when you remove a language from the languages config. (#72)
Karma will only run coverage during a cover run, making debugging tests easier (#66)
Karma will now serve sourcemaps making debugging tests easier (#69)
jspm is no longer a peerDependency making it easier to try beta versions of jspm (#65)
Breaking Changes
Configuration options and task names containing underscores now use camelCase (#73)
build_taskstest_tasksdist_tasksdefault_tasks options are not used in favor of the new dependency task tree
Must run gulp cover in order to generate coverage reports. gulp test will no longer produce these
How to Upgrade from 0.6.x
1. Languages Configuration
First thing you will want to do is copy the languages configuration into your customizedOptions in gulpfile.js:
Remove any languages you don't use in your project. This will automatically trim which tasks get executed.
2. Config Options with Underscores
Find any of these options you are using in customizedOptions and replace them with their new name:
path
build_src --> buildSrc
build_styles --> buildStyles
build_test --> buildTest
style_include_paths --> styleIncludePaths
compass_config --> compassConfig
sauceLabs
browsers
sl_chrome --> sauceChrome
sl_firefox --> sauceFirefox
sl_ios_safari --> sauceIosSafari
sl_ie_9 --> sauceIe9
sl_ie_10 --> sauceIe10
sl_ie_11 --> sauceIe11
3. Convert Task Lists to taskTree
If you have modified any of the task lists (build_taskstest_tasksdefault_tasksdist_tasks) you will need to make these changes to the new taskTree instead.
Before you exclude any task, think about whether it might already be excluded with your new language configuration setup in step 1. These are the tasks that get excluded for each language when it is removed from the languages config:
Need a place to draft up release notes so I'm doing it here.
Major breaking changes in this release!
This release contains a number of big changes to wGulp, be sure to read through the release notes carefully and update your
gulpfile.js
where necessary.Features and Improvements
build
test
dist
default
etc. Reduces task duplication and increases parallelization of tasks resulting in much faster builds! (#63)cover
run, making debugging tests easier (#66)Breaking Changes
build_tasks
test_tasks
dist_tasks
default_tasks
options are not used in favor of the new dependency task treegulp cover
in order to generate coverage reports.gulp test
will no longer produce theseHow to Upgrade from 0.6.x
1. Languages Configuration
First thing you will want to do is copy the languages configuration into your
customizedOptions
ingulpfile.js
:Remove any languages you don't use in your project. This will automatically trim which tasks get executed.
2. Config Options with Underscores
Find any of these options you are using in
customizedOptions
and replace them with their new name:build_src
-->buildSrc
build_styles
-->buildStyles
build_test
-->buildTest
style_include_paths
-->styleIncludePaths
compass_config
-->compassConfig
sl_chrome
-->sauceChrome
sl_firefox
-->sauceFirefox
sl_ios_safari
-->sauceIosSafari
sl_ie_9
-->sauceIe9
sl_ie_10
-->sauceIe10
sl_ie_11
-->sauceIe11
3. Convert Task Lists to taskTree
If you have modified any of the task lists (
build_tasks
test_tasks
default_tasks
dist_tasks
) you will need to make these changes to the newtaskTree
instead.Start by reading this section of the documentation: https://github.com/Workiva/wGulp#task-dependency-tree
If you are simply adding or removing tasks to
build
for example, use the convenient syntax:Before you exclude any task, think about whether it might already be excluded with your new language configuration setup in step 1. These are the tasks that get excluded for each language when it is removed from the languages config:
4. Subtasks with Options That Have Underscores
Any subtasks that had configuration with underscores have been changed
apply_license
--> `applyLicenseconfig_file
-->configFile
include_paths
-->includePaths
config_file
-->configFile
include_paths
-->includePaths
config_file
-->configFile
5. Task names with Underscores
The following task names will need to be change if you reference them anywhere:
apply_license
-->applyLicense
library_dist
-->libraryDist