Skip to content

Releases: xvik/gradle-java-lib-plugin

3.0.0

10 Mar 09:47
Compare
Choose a tag to compare
  • (BREAKING) Drop gradle 5 and 6 support
  • (BREAKING) Always use native javadoc and source jars tasks (withJavadocJar() and withSourcesJar())
    (before, custom legacy tasks were used for gradle 7.6 and older)
  • Cleanup deprecated gradle api usages
  • Update pom plugin to 3.0.0 (drops pom convention in favor of type-safe maven.pom)
    • (BREAKING) Remove pom plugin configuration shortcut (javaLib.pom) to avoid confusion (use maven extension directly)
  • Fix signing error when used with plugin-publish plugin
  • Configuration cache compatibility

2.4.0

16 Feb 17:23
Compare
Choose a tag to compare
  • Gradle 8 compatibility
  • Fix plugin-publish 1.0 compatibility for gradle 7.6 and above
    (older gradle versions should use plugin-publish 0.21)
  • (breaking) For gradle 7.6 and above use native gradle registration of javadoc sources tasks
    (withJavadocJar() and withSourcesJar()).
    Related changes:
    • javadoc jar always created (even if no sources)
    • groovydoc artifact not created (always javadoc)
      For gradle older 7.6 legacy behaviour preserved

2.3.1

09 Nov 16:19
Compare
Choose a tag to compare
  • Updated pom plugin (2.2.2): support repositories declaration in settings file only

2.3.0

31 Oct 21:22
Compare
Choose a tag to compare
  • Updated pom plugin (2.2.1): automatic detection of incorrect pom closure usage
  • Fix gradle 7 warnings
  • Remove jacocoMerge task (used for jacoco executions data merge during reports aggregation):
    jacocoTestReport (JacocoReport) merges coverage data directly now

2.2.2

03 Oct 07:55
Compare
Choose a tag to compare
  • Add disable publication option: javaLib.withoutPublication() (disables all declared publications)
    Useful for disabling bom publication in the root project (use platform for deps management only)
  • Fix aggregated coverage report for case when not all submodules produce coverage

2.2.1

12 Jul 20:56
Compare
Choose a tag to compare
  • Fix multi-module projects configuration with allprojects closure
    (configuration extension always created on plugin activation to avoid mis-references)

2.2.0

21 Jun 20:23
Compare
Choose a tag to compare
  • Updated pom plugin (2.2.0): java-platform compatibility
  • Add java-platform plugin support (assuming declared platform published as BOM):
    • activates platform dependencies (javaPlatform.allowDependencies())
    • register pom plugin
    • add install task
    • registers "bom" publication (intentionally different name)
    • configures signing if signing plugin enabled
    • allows overriding default artifact name with javaLib.bom configuration
      (by default it's a root project name)
  • Add automatic signing configuration when 'signing' plugin applied
    (for snapshots signing not required - for release, not configured signing would fail)
  • Add openDependencyReport task when project-report plugin enabled
    (task opens htmlDependencyReport directly in the browser)
  • Enable jacoco xml report by default (required for coverage services)
  • Multi-module projects support: test and coverage reports aggregation
    (at least "base" plugin must be applied to trigger minimal java-lib plugin activation )
  • Add javaLib configuration closure:
    • withoutGradleMetadata() - disables gradle metadata publishing
    • withoutJavadoc() and withoutSources() - disable javadoc and sources publish
    • bom.artifactId and bom.description properties - updates artifact declared with java-platform
    • pom - shortcut for the new pom plugin configuration closure (to use instead of pomGeneration)
    • autoModuleName - shortcut for defining Automatic-Module-Name manifest property
    • aggregateReports() - supposed to be used in the root project to aggregate
      test reports and jacoco coverage (adds test and jacocoTestReport tasks)
      Also, aggregates dependency report id project-report plugin enabled

2.1.0

19 Jan 17:53
Compare
Choose a tag to compare
  • Updated pom plugin (2.1.0):
    • Brings back provided and optional scopes, because gradle native features can't completely replace them
    • compileOnly dependencies no more added to pom (default behaviour reverted)

Versions 2.0.0 and 2.0.1 are not recommended for usage because of referenced pom plugin
(there was an attempt to replace optional and provided configurations with native gradle features,
but it failed: custom configurations still required).

2.0.1 (don't use!)

18 Jan 20:40
Compare
Choose a tag to compare
  • Updated pom plugin (2.0.1) containing fix for provided dependencies declared with BOM
  • Revert to old behaviour: in case of gradle plugin project use "maven" publication because it's not possible
    to differentiate gralde plugin from usual project. In any case, artifacts will be exactly the same everywhere
    (plugin-publish javadoc and sources tasks will be disabled).

2.0.0 (don't use!)

17 Jan 18:21
Compare
Choose a tag to compare
  • (breaking) Requires gradle 5.1 and above
    • Remove legacy (lazy, without strict publishing) publication configuration
  • (breaking) Drop java 7 support
  • (breaking) Updated pom plugin (2.0.0) removes provided and optional scopes
    • provided scope replaced with standard compileOnly configuration support
  • Use gradle configuration avoidance to prevent not used tasks creation
  • Set UTF-8 encoding for JavaCompile and GroovyCompile tasks
  • Set file.encoding=UTF-8 system property for Test tasks
  • Set UTF-8 encoding for javadoc task (encoding, charSet, docencoding)
  • Gradle plugin projects compatibility fixes:
    • When used with java-gardle-plugin, re-use pluginMaven publication instead of creating
      new one (because java-gardle-plugin hardcode publication name and it has to init it because of alias publications )
    • Plugin-publish will not create his own javadoc and sources tasks (so java-lib tasks will be used)