Skip to content

Releases: tbroyer/gradle-errorprone-plugin

v4.1.0

20 Oct 16:07
Compare
Choose a tag to compare
  • Pass should-stop.ifError=FLOW to the compiler; it fixes a few issues in all versions of Error Prone, and the next version will make it mandatory (should have been the case in 2.34 already, but didn't actually apply to the JavaC plugin).
  • Add metadata to the published POM (#100)

v4.0.1

21 Jun 22:35
Compare
Choose a tag to compare

Only assign options.isFork if needed

This is a first step in preparation for some changes coming in Gradle 9.

v4.0.0

02 Jun 18:26
Compare
Choose a tag to compare

The errorprone configuration can no longer be resolved. It only exists to declare dependencies, i.e. as a dependency scope configuration.

v3.1.0

22 Apr 01:22
Compare
Choose a tag to compare

Avoid forking if Gradle already has appropriate --add-exports/--add-opens passed through the org.gradle.jvmargs property.

✨ Potentially breaking changes

When using JDK 16+, users configuring additional JVM arguments on their compile tasks and expecting a forked compiler daemon from the plugin should now explicitly configure the tasks to fork if they want their JVM arguments to be enforced in all cases.

v3.0.1

11 Oct 10:54
Compare
Choose a tag to compare

Fixes Gradle Module Metadata to target Java 8 (#73), otherwise strictly identical to 3.0.0.

v3.0.0

10 Oct 16:42
Compare
Choose a tag to compare

☣️ Known issues

The Gradle Module Metadata for the 3.0.0 release includes a org.gradle.jvm.version attribute with an incorrect value. This will break builds using a JDK < 17 (#73). This is fixed in version 3.0.1.

💥 Breaking changes

  • Remove support for Android (2c4afc6): the plugin should still be usable within Android projects, but compile tasks will have to be configured manually: ErrorProne is no longer added to the annotation processor path, ErrorProne is disabled by default, and isCompilingTestOnlyCode is no longer configured based on the type of variant.
  • Require Gradle 6.8 at a minimum (7410cc0)

✨ Potentially breaking changes

  • Fork options are no longer reset when the plugin configures forking (c032f7d, 8958d29): any fork option that was configured despite the task not forking will now apply when the plugin determines that the task should fork, and ErrorProne-specific fork options are now additive to those previously-configured options.
  • ErrorProne Javac is now declared as a default dependency of the errorproneJavac configuration (72a842c): ErrorProne no longer supports JDK 8 (since 2.11.0), so this dependency won't change, and can thus be defaulted to the latest version (released nearly 5 years ago)
  • Strong encapsulation JVM arguments are now configured for all JDK 9+, rather than JDK 16+ (423cbfa): those arguments won't be used unless forking is explicitly configured though; forking still is only configured by the plugin for JDK 8 or JDK 16+, not JDK 9–15.
  • Use jvmArgumentProvides in Gradle 7.1+ (ffef94d)

📝 Upgrading

You can safely remove errorproneJavac("com.google.errorprone:javac:9+181-r4173-1") from your dependencies as this is now added by default.

Also make sure you do not configure any fork option while not enabling forking, that would cause any error if forking was enabled, as those options will be retained when the plugin configures forking.

v2.0.2

28 Jun 10:28
Compare
Choose a tag to compare

Fix configuration-cache compatibility (#59, bb2c9c7)

v2.0.1

26 Mar 08:12
Compare
Choose a tag to compare

Add --add-exports=jdk.compiler/com.sun.tools.javac.model=ALL-UNNAMED when using JDK 16+; this fixes an IllegalAccessError with some ErrorProne checks (#58, google/error-prone#2250, 4494aa5)

v2.0.0

22 Mar 02:32
Compare
Choose a tag to compare
  • ✨ Add specific support for JDK 16 (#57, 89eeb78)
  • 💥 Remove support for the deprecated com.android.feature and com.android.instantapp plugins (aab1b94)

v1.3.1

20 Mar 19:54
Compare
Choose a tag to compare

Fix regression in v1.3.0 where the errorproneJavac configuration was resolved even when not using JDK 8, in Gradle 6.7+ (as a side-effect to adding toolchains support). This would lead to either resolving an unnecessary 6.5Mb file, or printing a warning that com.google.errorprone:javac is missing in errorproneJavac.

Add KDoc to the DSL extension, in the hope that it's picked up by IDEs (no additional artifact is generated)