3.0.0 - configuration cache support, kotlin rewrite, lazy configuration, api changes, proxy fixes, and more
- Rewrite the code to Kotlin (issue #17)
(thanks mikejhill
for the pull request) - Improve the Kotlin DSL support (see this Kotlin DSL example
that shows how to use this plugin version with Kotlin) - Upgrade default Node.js version to 14.15.4 (bundled with npm 6.14.10), the latest LTS version
- Add support of lazy configuration (issue #39)
- Add support of Gradle Configuration Cache (introduced in Gradle 6.8) (issue #111)
- Fix some remaining input/output declaration issues (issue
#34) - Gradle 5.6.4+ support (instead of Gradle 5.0.0+ before)
- Node.js 10+ support (issue #100)
- Improved automatic proxy configuration (issue #113), use http:// for both
HTTP_PROXY
andHTTPS_PROXY
- Improved proxy configuration (PR #135)
- npm 7+ support (issue #123)
- Improved ARM support (issue #130)
- Gradle configuration cache support (issue #111)
- Add RepositoryContentDescriptor to IvyRepository #136
Breaking changes
This version breaks backward compatibility. It should not be visible for most Groovy DSL users since the Groovy DSL
handles transparently most of these changes.
Here is what changed:
- All the packages were renamed (they were inherited from the original forked project):
com.moowork.gradle.node
(and all children) renamed tocom.github.gradle.node
com.moowork.gradle.node.npm
renamed tocom.github.gradle.node.npm.task
com.moowork.gradle.node.yarn
renamed tocom.github.gradle.node.yarn.task
- All the configuration properties (the
node
extension and all tasks) are now some
lazy properties as recommended by
Gradle. This makes this plugin fully compatible with lazy configuration (tasks will be configured only if they need to
run and configuration properties are read only at runtime if needed and not at configuration time). - Thanks to the Kotlin rewrite, some properties now have a stronger typing.
nodeModulesDir
option was renamed tonodeProjectDir
(name more explicit and less confusing)
(issue #99). The former name still works but is
deprecated.- Change the syntax to configure
nodeModulesOutputFilter
onnpmInstall
andyarn
tasks. It also affects Groovy DSL
users. Use nownodeModulesOutputFilter { ... }
instead ofnodeModulesOutputFilter = { ... }
.