Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Unreleased
Verified Versions
- Kotlin: 1.9.22
- Gradle: 8.5
- JDK: 11
Added
Changed
Removed
3.4.2
This is a maintenance release with a few minor bugfixes.
Verified Versions
- Kotlin: 1.9.22
- Gradle: 8.5
- JDK: 11
Added
Changed
- Upgraded dependencies
- Switched out
com.netflix.nebula.node
plugin hook for node autoconfig tocom.github.node-gradle.node
plugin which it depends on - Implemented a patch for older KGP users to remedy https://youtrack.jetbrains.com/issue/KT-59523 when using ESM
Removed
3.4.1
Verified Versions
- Kotlin: 1.9.0
- Gradle: 8.2.1
- JDK: 11
Added
- Utility DSL to set NpmRegistry::uri via Provider
Changed
- Added trailing slashes to npmjs and github registry convenience DSL URIs
- Fixed configuration cache issues with Boolean property chains
Removed
3.4.1
Verified Versions
- Kotlin: 1.9.0
- Gradle: 8.2.1
- JDK: 11
Added
- Utility DSL to set NpmRegistry::uri via Provider
Changed
- Added trailing slashes to npmjs and github registry convenience DSL URIs
- Fixed configuration cache issues with Boolean property chains
Removed
3.4.0
This is a maintenance release with a few minor bugfixes.
Verified Versions
- Kotlin: 1.9.0
- Gradle: 8.2.1
- JDK: 11
Added
- Gradle configuration cache support
- New Local TS consumer setup sample
Changed
- All sandbox modules and samples have been migrated away from deprecated kotlin/js plugin.
- Upgraded dependency versions
- Deprecated kotlin/js plugin integration
Removed
3.3.1
Verified Versions
- Kotlin: 1.8.21
- Gradle: 8.1.1
- JDK: 11
Added
Changed
- Fixed gradle provider chain for nebula node plugin integration
- Fixed incorrect NodeExec task command line builds and expanded logging
Removed
3.3.0
Verified Versions
- Kotlin: 1.8.21
- Gradle: 8.1.1
- JDK: 11
Added
- New
tag
option forNpmPublishTask
- Integration with
com.netflix.nebula:nebula-node-plugin
to allow publishing without having NodeJS installed when kotlin plugin is not being used
Changed
- Modified KDoc of properties affected by gradle 8.1.1 new resolution strategy. tl;dr; they now require explicit
this
receiver - Replaced
refreshVersions
plugin with gradle catalogs - Upgraded internal dependencies
- Fixed
otp
option not being properly propagated to npm executable
Removed
3.2.1
Verified Versions
- Kotlin: 1.8.10
- Gradle: 7.6
- JDK: 11
Added
Changed
- Pegged plugin compile kotlin version against gradle's
embeddedKotlinVersion
- Removed
gson
dependency and replaced usages with groovy'sJsonSlurper
Removed
3.2.0 - 2022-12-28
Verified Versions
- Kotlin: 1.8.0
- Gradle: 7.5.1
- JDK: 11
Added
- New samples project containing examples of various use-cases the plugin is able to cover.
@DslMarkers
to plugin's DSL to prevent incorrect nested property usage.- Pull transitive npm dependencies from project dependencies via
publicPackageJson
- New accessors for assemble and pack tasks inside package DSL
- KGP 1.8.0 support.
Changed
- Fix #73:
nodeHome
override not working when used with kotlin plugin
Removed
- Support for KGP < 1.8.0!!! DO NOT UPGRADE IF YOU'RE ON OLDER KOTLIN VERSION
3.1.0 - 2022-11-07
Verified Versions
- Kotlin: 1.6.21
- Gradle: 7.5.1
- JDK: 11
Added
Changed
- Updated dependency versions
- Configuration cache support
Removed
3.0.1 - 2022-06-27
Verified Versions
- Kotlin: 1.7.0
- Gradle: 7.4.2
- JDK: 11
Added
Changed
- Kotlin version bumped to
1.7.0
- Downgraded language version to
1.4
for better gradle support
Removed
3.0.0 - 2022-05-03
Verified Versions
- Kotlin: 1.6.21
- Gradle: 7.4.2
- JDK: 11
Added
- New documentation site
- Functional and Integration test coverage
- Gradle caching support for configuration,
NpmAssembleTask
andNpmPackTask
(including remote caches) - Detekt analyser and formatter
Changed
- Kotlin plugin version bumped to
1.6.20
npmPublishing
extension renamed tonpmPublish
- Default packaging directories changed from
build/publications/npm
tobuild/packages
publication
andrepository
DSLs removed. Use regular gradle'sregister
DSL- All API reworked to use gradle provider API. Replace all
=
assignments with proper.set()
invocation. NpmPackageAssembleTask
renamed toNpmAssembleTask
NpmPackage::moduleName
renamed toNpmPackage::packageName
NpmPackage::nodeJsDir
renamed tonodeHome
and moved toNpmPublishExtension
. It is now shared across all publications.NpmPackage::destinationDir
moved toNpmAssembleTask
.NpmRegistry::dry
propagated toNpmPackTask
andNpmPublishTask
with--dry
cli option added. Both still default toNpmPublishExtension::dry
- All plugin tasks made a lot more abstract and reusable. Especially
NodeExecTask
andNpmExecTask
allowing for custom npm script execution on your packages or any other generic tooling.
Removed
- Support for
LEGACY
compiler. Stick with2.1.x
if you still depend on it. - All eager configuration
- Custom kotlin delegates for gradle lazy api
dev.petuska:kon
dependencydev.petuska:gradle-lazy-delegates
dependencydev.petuska:klip
dependency- All kotest dependencies
- Spotless plugin
2.1.2 - 2022-01-24
Verified Versions
- Kotlin: 1.6.10
- Gradle: 7.3.3
- JDK: 11
Added
Changed
- Kotlin plugin version bumped to
1.6.10
- Simplified
JsonObject
DSL builders by rebasing it ontodev.petuska:kon
- Implemented proper nested
package.json
template merging - Rolled back to good old
ktlint
formatting
Removed
2.1.1 - 2021-09-02
Verified Versions
- Kotlin: 1.5.30
- Gradle: 7.2.0
- JDK: 11
Added
- Sample GH action introduced to showcase CI publishing
Changed
- Fixed #24:
types
configuration property was ignored - Reworked ts-consumer to showcase module inter-dependencies
Removed
2.1.0 - 2021-08-22
Verified Versions
- Kotlin: 1.5.21
- Gradle: 7.2.0
- JDK: 11
Added
- Added support for setting configuration properties via environment variables too
Changed
- Fixed #24:
types
configuration property was ignored - Kotlin version bumped to
1.5.21
Removed
2.0.4 - 2021-07-21
Verified Versions
- Kotlin: 1.5.10
- Gradle: 7.1.1
- JDK: 11
Added
- New sandbox module to check that plugin can work with both, nodejs() and browser() flavours at the same time
- New
ts-consumer
module in the sandbox to showcase how to include packed K/JS modules into plain TS module - Dynamic version ranges for increased compatibility
Changed
- Updated versions
- Fixed a bug that always expected version to be a string
Removed
- Removed some duplicated code in sandbox
2.0.3 - 2021-06-18
Verified Versions
- Kotlin: 1.5.10
- Gradle: 7.0.2
- JDK: 11
Added
Changed
- #19
licence
field typo fix to get it working with npm (big thanks to @gaebel)
Removed
2.0.2 - 2021-06-09
Verified Versions
- Kotlin: 1.5.10
- Gradle: 7.0.2
- JDK: 11
Added
Changed
- #16 Fix NpmPublishTask workingDir scope
Removed
2.0.1 - 2021-05-28
Verified Versions
- Kotlin: 1.5.10
- Gradle: 7.0.2
- JDK: 11
Added
Changed
- Eased
duplicationRules
for assemble task. Will now warn instead of fail.
Removed
2.0.0 - 2021-05-25
Verified Versions
- Kotlin: 1.5.10
- Gradle: 7.0.2
- JDK: 11
Added
Changed
- Plugin id changed from
lt.petuska.npm.publish
todev.petuska.npm.publish
- Root package changed to
dev.petuska.npm.publish
. To migrate, just replacelt.
part todev.
in all imports you might have (tasks, DSL, etc...)