Mend Renovate
This PR contains the following updates:
Release Notes
vanniktech/gradle-maven-publish-plugin
Compare Source
- The
createStagingRepository task now uses the worker API which allows the project to built
in parallel to the creation of the staging repository.
- Fix incompatibility with Kotlin 1.8.20-Beta for Kotlin/JS projects. The Kotlin/JS plugin is now taking
care of creating the sources jar on its own. Because of this the base plugin won't allow disabling
sources jar creation for Kotlin/JS projects anymore starting with 1.8.20. The KotlinJs constructor
with a sourcesJar parameter has been deprecated.
- Fix incompatibility with Gradle 8.1 for
java-test-fixtures projects
- Fix incompatibility with
com.gradle.plugin-publish 1.0.0 and 1.1.0
- New minimum supported versions:
- Gradle 7.4
- Android Gradle Plugin 7.3.0
- Kotlin Gradle Plugin 1.7.0
com.gradle.plugin-publish 1.0.0
- Note: Starting with Kotlin 1.8.20-Beta the
common sources jar for multiplatform projects will only contain
the sources of the common source set instead of containing the sources from all source sets.
Configuration cache status
Configuration cache is supported starting with Gradle 7.6+ except for:
- Builds with enabled signing, will be resolved in Gradle 8.1.
- Publishing releases to Maven Central (snapshots are fine), blocked by Gradle issue #22779.
- Kotlin Multiplatform projects, blocked by KT-49933.
Compare Source
- Support arbitrary Sonatype hosts instead of just oss.sonatype.org and s01.oss.sonatype.org.
- Support adjusting timeouts for Sonatype related requests and operations. See docs
- Internal change on how the sources jar is created.
Compare Source
- Fix signing when using Gradle 8.0.
- Finding a matching staging profile in Sonatype is more lenient. If there is just one that one will always be used.
The plugin will also fallback to any staging profile that has a matching prefix with the group id.
- As a workaround for an issue in Gradle that causes invalid module metadata for
java-test-fixtures projects, project.group
and project.version are now being set again for those projects. #490
Compare Source
- Also support publishing sources for the
java-test-fixtures plugin in Kotlin/JVM projects.
- Suppress Gradle warnings when publishing a project that uses
java-test-fixtures.
Compare Source
Updated docs can be found on the new website.
- NEW: It is now possible to set group id, artifact id directly through the DSL
mavenPublishing {
coordinates("com.example", "library", "1.0.3")
}
project.group and project.version will still be used as default values for group and version if the
GROUP/VERSION_NAME Gradle properties do not exist and coordinates was not called, however there are 2
behavior changes:
- The
GROUP and VERSION_NAME Gradle properties take precedence over project.group and project.version instead
of being overwritten by them. If you need to define the properties but replace them for some projects,
please use the new coordinates method instead.
- The
GROUP and VERSION_NAME Gradle properties will not be explicitly set as project.group and
project.version anymore.
- NEW: Added
dropRepository task that will drop a Sonatype staging repository. It is possible to specify
which repository to drop by adding a --repository parameter with the id of the staging repository that was
printed during publish. If no repository is specified and there is only one staging repository, that one
will be dropped.
- Added workaround to also publish sources for the
java-test-fixtures plugin
- Fixed publishing Kotlin/JS projects with the base plugin.
- Fixed that a POM configured through the DSL is incomplete when publishing Gradle plugins.
- The minimum supported Gradle version has been increased to 7.3.
- The plugin now requires using JDK 11+ to run Gradle.
Compare Source
- NEW: When publishing to maven central by setting
SONATYPE_HOST or calling publishToMavenCentral(...) the plugin will now explicitly create a staging repository on Sonatype. This avoids issues where a single build would create multiple repositories
- The above change means that the plugin supports parallel builds and it is not neccessary anymore to use
--no-parallel and --no-daemon together with publish
- NEW: When publishing with the
publish or publishAllPublicationsToMavenCentralRepository tasks the plugin will automatically close the staging repository at the end of the build if it was successful.
- NEW: Option to also automatically release the staging repository after closing was susccessful
SONATYPE_HOST=DEFAULT # or S01
SONATYPE_AUTOMATIC_RELEASE=true
or
mavenPublishing {
publishToMavenCentral("DEFAULT", true)
// or publishToMavenCentral("S01", true)
}
- in case the option above is enabled, the
closeAndReleaseRepository task is not needed anymore
- when closing the repository fails the plugin will fail the build immediately instead of timing out
- when closing the repository fails the plugin will try to print the error messages from Nexus
- increased timeouts for calls to the Sonatype Nexus APIs
- fixed incompatibility with the
com.gradle.plugin-publish plugin
- added wokaround for Kotlin multiplatform builds reporting disabled build optimizations (see KT-46466)
Compare Source
Minimum supported Gradle version is now 7.2.0
Minimum supported Android Gradle Plugin versions are now 7.1.2, 7.2.0-beta02 and 7.3.0-alpha01
Behavior changes
The com.vanniktech.maven.publish stops adding Maven Central (Sonatype OSS) as a
publishing target and will not enable GPG signing by default. To continue publishing to maven central and signing artifacts either add the following to your gradle.properties:
Compare Source
Upcoming behavior change
In the next release after this the com.vanniktech.maven.publish will stop adding Maven Central (Sonatype OSS) as a
publishing target and will not enable GPG signing by default. If you are currently relying on this behavior the plugin
will print a warning during configuration phase. To continue publishing to maven central and signing artifacts either
add this to your build files:
mavenPublishing {
publishToMavenCentral() // use publishToMavenCentral("S01") for publishing through s01.oss.sonatype.org
signAllPublications()
}
or the following to your gradle.properties:
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Mend Renovate. View repository job log here.
Mend Renovate
This PR contains the following updates:
0.19.0->0.25.0Release Notes
vanniktech/gradle-maven-publish-plugin
v0.25.0Compare Source
createStagingRepositorytask now uses the worker API which allows the project to builtin parallel to the creation of the staging repository.
care of creating the sources jar on its own. Because of this the base plugin won't allow disabling
sources jar creation for Kotlin/JS projects anymore starting with 1.8.20. The
KotlinJsconstructorwith a
sourcesJarparameter has been deprecated.java-test-fixturesprojectscom.gradle.plugin-publish1.0.0 and 1.1.0com.gradle.plugin-publish1.0.0commonsources jar for multiplatform projects will only containthe sources of the common source set instead of containing the sources from all source sets.
Configuration cache status
Configuration cache is supported starting with Gradle 7.6+ except for:
v0.24.0Compare Source
v0.23.2Compare Source
The plugin will also fallback to any staging profile that has a matching prefix with the group id.
java-test-fixturesprojects,project.groupand
project.versionare now being set again for those projects. #490v0.23.1Compare Source
java-test-fixturesplugin in Kotlin/JVM projects.java-test-fixtures.v0.23.0Compare Source
Updated docs can be found on the new website.
mavenPublishing { coordinates("com.example", "library", "1.0.3") }project.groupandproject.versionwill still be used as default values for group and version if theGROUP/VERSION_NAMEGradle properties do not exist andcoordinateswas not called, however there are 2behavior changes:
GROUPandVERSION_NAMEGradle properties take precedence overproject.groupandproject.versioninsteadof being overwritten by them. If you need to define the properties but replace them for some projects,
please use the new
coordinatesmethod instead.GROUPandVERSION_NAMEGradle properties will not be explicitly set asproject.groupandproject.versionanymore.dropRepositorytask that will drop a Sonatype staging repository. It is possible to specifywhich repository to drop by adding a
--repositoryparameter with the id of the staging repository that wasprinted during
publish. If no repository is specified and there is only one staging repository, that onewill be dropped.
java-test-fixturespluginv0.22.0Compare Source
SONATYPE_HOSTor callingpublishToMavenCentral(...)the plugin will now explicitly create a staging repository on Sonatype. This avoids issues where a single build would create multiple repositories--no-paralleland--no-daemontogether withpublishpublishorpublishAllPublicationsToMavenCentralRepositorytasks the plugin will automatically close the staging repository at the end of the build if it was successful.or
closeAndReleaseRepositorytask is not needed anymorecom.gradle.plugin-publishpluginv0.21.0Compare Source
Minimum supported Gradle version is now 7.2.0
Minimum supported Android Gradle Plugin versions are now 7.1.2, 7.2.0-beta02 and 7.3.0-alpha01
Behavior changes
The
com.vanniktech.maven.publishstops adding Maven Central (Sonatype OSS) as apublishing target and will not enable GPG signing by default. To continue publishing to maven central and signing artifacts either add the following to your
gradle.properties:SONATYPE_HOST=DEFAULTv0.20.0Compare Source
Upcoming behavior change
In the next release after this the
com.vanniktech.maven.publishwill stop adding Maven Central (Sonatype OSS) as apublishing target and will not enable GPG signing by default. If you are currently relying on this behavior the plugin
will print a warning during configuration phase. To continue publishing to maven central and signing artifacts either
add this to your build files:
or the following to your
gradle.properties:Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Mend Renovate. View repository job log here.