Skip to content

Bump the dependencies group in /value with 4 updates - #2134

Closed
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/maven/value/dependencies-2daf2e9fb2
Closed

Bump the dependencies group in /value with 4 updates#2134
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/maven/value/dependencies-2daf2e9fb2

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Sep 10, 2026

Copy link
Copy Markdown
Contributor

Bumps the dependencies group in /value with 4 updates: org.apache.maven.plugins:maven-compiler-plugin, org.checkerframework:checker-qual, org.apache.maven.plugins:maven-surefire-plugin and org.apache.maven.plugins:maven-failsafe-plugin.

Updates org.apache.maven.plugins:maven-compiler-plugin from 3.15.0 to 3.16.0

Release notes

Sourced from org.apache.maven.plugins:maven-compiler-plugin's releases.

3.16.0

🚀 New features and improvements

🐛 Bug Fixes

📝 Documentation updates

👻 Maintenance

📦 Dependency updates

Commits
  • e7bba6e [maven-release-plugin] prepare release maven-compiler-plugin-3.16.0
  • c906809 Avoid using deprecated method CompilerConfiguration.setCompilerVersion
  • ad74fee Replace adopt-openj9 by semeru JDK distribution on GH
  • beb0eda Recompile when dependencies change (#1102)
  • a0b689e [MCOMPILER-578] Track outputs across compiler executions (#1091)
  • 2e81228 Fix incremental detection of empty sources, 3.x (#1075)
  • 2132f5b configure ATR project
  • 5992b77 Build fails when annotation processor list is empty (but present) (#1077)
  • acccef7 Bump plexusCompilerVersion from 2.16.2 to 2.17.0
  • 72bc445 Bump org.codehaus.plexus:plexus-java from 1.5.2 to 1.6.0
  • Additional commits viewable in compare view

Updates org.checkerframework:checker-qual from 4.2.2 to 4.2.3

Release notes

Sourced from org.checkerframework:checker-qual's releases.

Checker Framework 4.2.3

Version 4.2.3 (2026-09-01)

User-visible changes

The -AsuggestPureMethods command-line option and the purity.effectively.pure warning no longer require -AcheckPurityAnnotations to also be supplied.

Implementation details

Made the field Java8InferenceContext.pathToExpression private; use getPathToExpression() and setPathToExpression() instead.

Renamed TreeUtils.isLikeDiamondMemberReference() to isRawTypedMemberReference().

Closed issues

#2816, #7677, #7678, #7681, #7682, #7684, #7693, #7694, #7696, #7698, #7701, #7702, #7875, #8046, #8047, #8048, #8050, #8052.

Changelog

Sourced from org.checkerframework:checker-qual's changelog.

Version 4.2.3 (2026-09-01)

User-visible changes

The -AsuggestPureMethods command-line option and the purity.effectively.pure warning no longer require -AcheckPurityAnnotations to also be supplied.

Changes for type system implementers

Made the field Java8InferenceContext.pathToExpression private; use getPathToExpression() and setPathToExpression() instead.

Renamed TreeUtils.isLikeDiamondMemberReference() to isRawTypedMemberReference().

Closed issues

#2816, #7677, #7678, #7681, #7682, #7684, #7693, #7694, #7696, #7698, #7701, #7702, #7875, #8046, #8047, #8048, #8050, #8052.

Commits
  • ddd330d new release 4.2.3
  • d44c55a Increase the timeout.
  • d07e6ce Fix links.
  • 0af4fa2 Prep for release.
  • 455d690 Infer the type arguments of ReferenceType::Identifier where ReferenceType...
  • 81173f8 Add javac equivalent class for AnnotationEqualityVisitor (#7692)
  • 81b9930 AFU Javadoc
  • ac24b72 Add ci_info jobs, simplify misc jobs
  • d27d6b4 Clear SubtypeVisitHistory after each outermost isSubtype call (#8064)
  • 3180cc2 Update actions/setup-java action to v6
  • Additional commits viewable in compare view

Updates org.apache.maven.plugins:maven-surefire-plugin from 3.5.6 to 3.6.0

Release notes

Sourced from org.apache.maven.plugins:maven-surefire-plugin's releases.

3.6.0

Please refer to the main page for what's new https://maven.apache.org/surefire/ And the migration page https://maven.apache.org/surefire/maven-surefire-plugin/whats-new-3-6-0.html

🚀 New features and improvements

🐛 Bug Fixes

📝 Documentation updates

👻 Maintenance

... (truncated)

Commits
  • 0ff622b [maven-release-plugin] prepare release surefire-3.6.0
  • bb3932a Let's go for 3.6.0 release
  • 3002a16 Bump mavenVersion from 3.9.14 to 3.9.16
  • 61a531d Bump Maven parent version from 47 to 49 (#3449)
  • e52ead4 [SUREFIRE-523] Link all reported tests to source XRef (#3445)
  • 45102fa [SUREFIRE-3446] Fix direct selection of JUnit Jupiter @​Nested classes (#3447)
  • b2e1f70 Fix #3303: distinguish JUnit 6 ParameterizedClass invocations (#3432)
  • c051938 Discover tests in a fork when a toolchain JDK is used (#3444)
  • db75df8 Bump org.codehaus.plexus:plexus-java from 1.5.2 to 1.6.0 (#3441)
  • 77f2759 Bump org.codehaus.plexus:plexus-interpolation from 1.29 to 1.30.0
  • Additional commits viewable in compare view

Updates org.apache.maven.plugins:maven-failsafe-plugin from 3.5.6 to 3.6.0

Release notes

Sourced from org.apache.maven.plugins:maven-failsafe-plugin's releases.

3.6.0

Please refer to the main page for what's new https://maven.apache.org/surefire/ And the migration page https://maven.apache.org/surefire/maven-surefire-plugin/whats-new-3-6-0.html

🚀 New features and improvements

🐛 Bug Fixes

📝 Documentation updates

👻 Maintenance

... (truncated)

Commits
  • 0ff622b [maven-release-plugin] prepare release surefire-3.6.0
  • bb3932a Let's go for 3.6.0 release
  • 3002a16 Bump mavenVersion from 3.9.14 to 3.9.16
  • 61a531d Bump Maven parent version from 47 to 49 (#3449)
  • e52ead4 [SUREFIRE-523] Link all reported tests to source XRef (#3445)
  • 45102fa [SUREFIRE-3446] Fix direct selection of JUnit Jupiter @​Nested classes (#3447)
  • b2e1f70 Fix #3303: distinguish JUnit 6 ParameterizedClass invocations (#3432)
  • c051938 Discover tests in a fork when a toolchain JDK is used (#3444)
  • db75df8 Bump org.codehaus.plexus:plexus-java from 1.5.2 to 1.6.0 (#3441)
  • 77f2759 Bump org.codehaus.plexus:plexus-interpolation from 1.29 to 1.30.0
  • Additional commits viewable in compare view

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore <dependency name> major version will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
  • @dependabot ignore <dependency name> minor version will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
  • @dependabot ignore <dependency name> will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
  • @dependabot unignore <dependency name> will remove all of the ignore conditions of the specified dependency
  • @dependabot unignore <dependency name> <ignore condition> will remove the ignore condition of the specified dependency and ignore conditions

Bumps the dependencies group in /value with 4 updates: [org.apache.maven.plugins:maven-compiler-plugin](https://github.com/apache/maven-compiler-plugin), [org.checkerframework:checker-qual](https://github.com/typetools/checker-framework), [org.apache.maven.plugins:maven-surefire-plugin](https://github.com/apache/maven-surefire) and [org.apache.maven.plugins:maven-failsafe-plugin](https://github.com/apache/maven-surefire).


Updates `org.apache.maven.plugins:maven-compiler-plugin` from 3.15.0 to 3.16.0
- [Release notes](https://github.com/apache/maven-compiler-plugin/releases)
- [Commits](apache/maven-compiler-plugin@maven-compiler-plugin-3.15.0...maven-compiler-plugin-3.16.0)

Updates `org.checkerframework:checker-qual` from 4.2.2 to 4.2.3
- [Release notes](https://github.com/typetools/checker-framework/releases)
- [Changelog](https://github.com/typetools/checker-framework/blob/master/docs/CHANGELOG.md)
- [Commits](typetools/checker-framework@checker-framework-4.2.2...checker-framework-4.2.3)

Updates `org.apache.maven.plugins:maven-surefire-plugin` from 3.5.6 to 3.6.0
- [Release notes](https://github.com/apache/maven-surefire/releases)
- [Commits](apache/maven-surefire@surefire-3.5.6...surefire-3.6.0)

Updates `org.apache.maven.plugins:maven-failsafe-plugin` from 3.5.6 to 3.6.0
- [Release notes](https://github.com/apache/maven-surefire/releases)
- [Commits](apache/maven-surefire@surefire-3.5.6...surefire-3.6.0)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-compiler-plugin
  dependency-version: 3.16.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: org.checkerframework:checker-qual
  dependency-version: 4.2.3
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: org.apache.maven.plugins:maven-surefire-plugin
  dependency-version: 3.6.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: org.apache.maven.plugins:maven-failsafe-plugin
  dependency-version: 3.6.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file java Pull requests that update Java code labels Sep 10, 2026
@cpovirk

cpovirk commented Sep 11, 2026

Copy link
Copy Markdown
Member

The main failure is:

[INFO] Auto-Value Functional Integration Test HEAD-SNAPSHOT FAILURE [  3.594 s]

That results from bumping Surefire from 3.5.6 to 3.6.0 in value/src/it/functional/pom.xml. It happens under Java 8 only.

Details:

com.google.auto.value.AutoValueJava8Test.typeParameterBuilderFieldsAreNullable -- Time elapsed: 0.022 s <<< FAILURE!
value of           : getAnnotations().asList()
expected to contain: @com.google.auto.value.AutoValueJava8Test.Nullable()
but was            : [@org.jspecify.annotations.Nullable()]
        at com.google.auto.value.AutoValueJava8Test.typeParameterBuilderFieldsAreNullable(AutoValueJava8Test.java:1228)

[ERROR] com.google.auto.value.AutoValueJava8Test.testInheritedBuilderGetterRemainsNullable -- Time elapsed: 0 s <<< ERROR!
java.lang.NullPointerException: Null thing
        at com.google.auto.value.AutoValue_AutoValueJava8Test_StringThingWithBuilder$Builder.setThing(AutoValue_AutoValueJava8Test_StringThingWithBuilder.java:55)
        at com.google.auto.value.AutoValueJava8Test.testInheritedBuilderGetterRemainsNullable(AutoValueJava8Test.java:355)

[ERROR] com.google.auto.value.AutoValueJava8Test.testInheritedGetterRemainsNullable -- Time elapsed: 0.001 s <<< ERROR!
java.lang.NullPointerException: Null thing
        at com.google.auto.value.AutoValue_AutoValueJava8Test_StringThing.<init>(AutoValue_AutoValueJava8Test_StringThing.java:14)
        at com.google.auto.value.AutoValueJava8Test.testInheritedGetterRemainsNullable(AutoValueJava8Test.java:348)

One time during testing with different subsets of the plugin version bumps, I also saw a mystery error when building AutoFactory HEAD-SNAPSHOT. It's possible that that error arises with some specific combination of bumps and not elsewhere, but I'm going to assume for now that it was a one-off inexplicable failure or at least that I don't care enough about identifying the specific combination of bumps that triggered it:

[INFO] [ERROR] Failed to execute goal org.apache.maven.plugins:maven-resources-plugin:3.4.0:resources (default-resources) on project functional: Execution default-resources of goal org.apache.maven.plugins:maven-resources-plugin:3.4.0:resources failed: Plugin org.apache.maven.plugins:maven-resources-plugin:3.4.0 or one of its dependencies could not be resolved:
[INFO] [ERROR]  Failed to read artifact descriptor for org.apache.maven.shared:maven-filtering:jar:3.4.0
[INFO] [ERROR] -> [Help 1]
[INFO] [ERROR]
[INFO] [ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[INFO] [ERROR] Re-run Maven using the -X switch to enable full debug logging.
[INFO] [ERROR]
[INFO] [ERROR] For more information about the errors and possible solutions, please read the following articles:
[INFO] [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/PluginResolutionException
[INFO]   The build exited with code 1. See /usr/local/google/home/cpovirk/clients/auto-pink/auto/factory/target/it/functional/build.log for details.
[INFO]           functional/pom.xml ............................... FAILED (80.81 s)
[INFO] -------------------------------------------------
[INFO] Build Summary:
[INFO]   Passed: 0, Failed: 1, Errors: 0, Skipped: 0
[INFO] -------------------------------------------------
[ERROR] The following builds failed:
[ERROR] *  functional/pom.xml

@cpovirk

cpovirk commented Sep 11, 2026

Copy link
Copy Markdown
Member

Gemini suggests that Surefire 3.5.6 was silently running zero tests for horrible reasons.

The fix will be more assumeTrue(javacHandlesTypeAnnotationsCorrectly); guards.

@cpovirk

cpovirk commented Sep 11, 2026

Copy link
Copy Markdown
Member

(Yes, the same reason as #2135 (comment))

@cpovirk

cpovirk commented Sep 11, 2026

Copy link
Copy Markdown
Member

The long version of that from Gemini, for posterity:

The failures are caused by two interacting factors: Surefire 3.5.6 was not executing any tests in the module, and Surefire 3.6.0 actually started executing them, uncovering pre-existing Java 8 javac type-annotation incompatibilities.


1. Why Surefire 3.5.6 succeeded (0 tests were executed)

In value/src/it/functional/pom.xml:

  • All tests are JUnit 4 tests (using junit:junit:4.13.2, @RunWith(JUnit4.class), and org.junit.Test).
  • However, the test dependency dev.gradleplugins:gradle-test-kit:8.11.1 transitively pulls in JUnit Platform and Jupiter (org.junit.platform:junit-platform-engine:1.9.2 and org.junit.jupiter:junit-jupiter-engine:5.9.2).
  • When Surefire 3.5.6 detected junit-platform-engine on the classpath, its provider auto-detection selected surefire-junit-platform rather than surefire-junit4.
  • In Surefire 3.5.x, surefire-junit-platform only ran engines already present on the project's test classpath. Because junit-vintage-engine was not on the test classpath, the JUnit Platform only had the Jupiter engine available, which does not run JUnit 4 tests.

As a result, Surefire 3.5.6 silently executed 0 tests:

[INFO] --- surefire:3.5.6:test (default-test) @ functional ---
[INFO] Using auto detected provider org.apache.maven.surefire.junitplatform.JUnitPlatformProvider
...
[INFO] Tests run: 0, Failures: 0, Errors: 0, Skipped: 0
[INFO] BUILD SUCCESS

2. What changed in Surefire 3.6.0

Surefire 3.6.0 retired the legacy providers (surefire-junit4, etc.) and moved to a unified JUnit Platform provider.

As part of this change, Surefire 3.6.0 automatically provides and attaches junit-vintage-engine when it detects JUnit 4 (junit:junit:4.12+) on the test classpath. Consequently, Surefire 3.6.0 began discovering and executing the tests in functional:

[ERROR] Tests run: 253, Failures: 1, Errors: 2, Skipped: 11

3. Why those three tests fail under Java 8

Java 8's javac has a known bug where type annotations (ElementType.TYPE_USE) on type variables and inherited methods are dropped from the language model during annotation processing.

AutoValueJava8Test detects this javac bug in its setUpClass() method:

// Sets javacHandlesTypeAnnotationsCorrectly = false on JDK 8

Many tests in AutoValueJava8Test guard against this bug with assumeTrue(javacHandlesTypeAnnotationsCorrectly); (accounting for the 11 skipped tests). However, the three failing methods do not have this assumption:

  1. AutoValueJava8Test.testInheritedGetterRemainsNullable:
    javac drops @Nullable from GenericParent.thing(). AutoValueProcessor therefore treats thing as non-null and generates if (thing == null) throw new NullPointerException("Null thing"); in the constructor of AutoValue_AutoValueJava8Test_StringThing. Passing null in the test fails with NPE.

  2. AutoValueJava8Test.testInheritedBuilderGetterRemainsNullable:
    For the same reason, AutoValueProcessor generates a null check in Builder.setThing(thing), throwing NPE when setThing(null) is called.

  3. AutoValueJava8Test.typeParameterBuilderFieldsAreNullable:
    javac drops the @Nullable on abstract @Nullable T nullableT(). Because AutoValueProcessor finds no @Nullable on any method in NotNullableVariableBound, it falls back to the default nullable annotation configured in Nullables.fromMethods(...), which defaults to @org.jspecify.annotations.Nullable (present via Guava). The test expects the locally defined @AutoValueJava8Test.Nullable, causing the assertion failure.

Based on that, I verified myself:

Tests run: 0, Failures: 0, Errors: 0, Skipped: 0

->

Tests run: 253, Failures: 0, Errors: 0, Skipped: 14

copybara-service Bot pushed a commit that referenced this pull request Sep 11, 2026
Apparently these tests have just silently not been running externally since (probably?) c8a5c19 (which was for #1075). That will be fixed by #2134, which upgrades us to a fixed version of Surefire.

RELNOTES=n/a
PiperOrigin-RevId: 979876879
@cpovirk

cpovirk commented Sep 11, 2026

Copy link
Copy Markdown
Member

@dependabot rebase

@dependabot @github

dependabot Bot commented on behalf of github Sep 11, 2026

Copy link
Copy Markdown
Contributor Author

Looks like these dependencies are updatable in another way, so this is no longer needed.

@dependabot dependabot Bot closed this Sep 11, 2026
@dependabot
dependabot Bot deleted the dependabot/maven/value/dependencies-2daf2e9fb2 branch September 11, 2026 17:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Component: value dependencies Pull requests that update a dependency file java Pull requests that update Java code P2

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant