-
Notifications
You must be signed in to change notification settings - Fork 2.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Bump JUnit to 5.11.0-M2 #40751
Bump JUnit to 5.11.0-M2 #40751
Conversation
Relates to quarkusio#40601, quarkusio#40749, quarkusio#38991. No use waiting for Dependabot. Fixes problem where an NPE can occur in some tests.
/cc @holly-cummins, @geoand |
🤞 for CI to pass! |
Good news! I'll get going on the reproducer, too, and hopefully I'll see it go green when I rebase to this change. |
Should fix quarkiverse/quarkiverse#94 once merged (but we'll let the ecosystem CI decide). It will also allow the tests disabled for #23612 to be re-enabled (so cc-ing @edeandrea). |
Status for workflow
|
Status | Name | Step | Failures | Logs | Raw logs | Build scan |
---|---|---|---|---|---|---|
✖ | JVM Tests - JDK 17 | Build |
Failures | Logs | Raw logs | 🔍 |
✖ | JVM Tests - JDK 21 | Build |
Failures | Logs | Raw logs | 🔍 |
✖ | JVM Tests - JDK 17 Windows | Build |
Failures | Logs | Raw logs | 🔍 |
✖ | MicroProfile TCKs Tests | Download .m2/repository/io/quarkus |
Logs | Raw logs | 🚧 |
Full information is available in the Build summary check run.
You can consult the Develocity build scans.
Failures
⚙️ JVM Tests - JDK 17 #
- Failing: independent-projects/extension-maven-plugin
! Skipped: core/deployment core/runtime devtools/cli and 807 more
📦 independent-projects/extension-maven-plugin
✖ io.quarkus.maven.ExtensionDescriptorMojoTest.shouldCreateExtensionProperties
- History - More details - Source on GitHub
java.lang.NoSuchMethodError: 'java.lang.reflect.AccessibleObject org.junit.platform.commons.util.ReflectionUtils.makeAccessible(java.lang.reflect.AccessibleObject)'
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setup(SystemStubsExtension.java:86)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setupFields(SystemStubsExtension.java:110)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.postProcessTestInstance(SystemStubsExtension.java:31)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1625)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
✖ io.quarkus.maven.ExtensionDescriptorMojoTest.shouldCreateMetadata
- History - More details - Source on GitHub
java.lang.NoSuchMethodError: 'java.lang.reflect.AccessibleObject org.junit.platform.commons.util.ReflectionUtils.makeAccessible(java.lang.reflect.AccessibleObject)'
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setup(SystemStubsExtension.java:86)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setupFields(SystemStubsExtension.java:110)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.postProcessTestInstance(SystemStubsExtension.java:31)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1625)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
✖ io.quarkus.maven.ExtensionDescriptorMojoTest.shouldExecuteSimplePomCleanly
- History - More details - Source on GitHub
java.lang.NoSuchMethodError: 'java.lang.reflect.AccessibleObject org.junit.platform.commons.util.ReflectionUtils.makeAccessible(java.lang.reflect.AccessibleObject)'
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setup(SystemStubsExtension.java:86)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setupFields(SystemStubsExtension.java:110)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.postProcessTestInstance(SystemStubsExtension.java:31)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1625)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
✖ io.quarkus.maven.ExtensionDescriptorMojoTest.shouldFlagIncorrectRuntimeDependencyOnDeployment
- History - More details - Source on GitHub
java.lang.NoSuchMethodError: 'java.lang.reflect.AccessibleObject org.junit.platform.commons.util.ReflectionUtils.makeAccessible(java.lang.reflect.AccessibleObject)'
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setup(SystemStubsExtension.java:86)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setupFields(SystemStubsExtension.java:110)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.postProcessTestInstance(SystemStubsExtension.java:31)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1625)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
✖ io.quarkus.maven.ExtensionDescriptorMojoTest.shouldFlagMissingDependenciesInARealisticExtension
- History - More details - Source on GitHub
java.lang.NoSuchMethodError: 'java.lang.reflect.AccessibleObject org.junit.platform.commons.util.ReflectionUtils.makeAccessible(java.lang.reflect.AccessibleObject)'
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setup(SystemStubsExtension.java:86)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setupFields(SystemStubsExtension.java:110)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.postProcessTestInstance(SystemStubsExtension.java:31)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1625)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
✖ io.quarkus.maven.ExtensionDescriptorMojoTest.shouldProcessRealisticExtensionCleanly
- History - More details - Source on GitHub
java.lang.NoSuchMethodError: 'java.lang.reflect.AccessibleObject org.junit.platform.commons.util.ReflectionUtils.makeAccessible(java.lang.reflect.AccessibleObject)'
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setup(SystemStubsExtension.java:86)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setupFields(SystemStubsExtension.java:110)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.postProcessTestInstance(SystemStubsExtension.java:31)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1625)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
✖ io.quarkus.maven.ExtensionDescriptorMojoTest.shouldReadLocalParentsForScmInfo
- History - More details - Source on GitHub
java.lang.NoSuchMethodError: 'java.lang.reflect.AccessibleObject org.junit.platform.commons.util.ReflectionUtils.makeAccessible(java.lang.reflect.AccessibleObject)'
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setup(SystemStubsExtension.java:86)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setupFields(SystemStubsExtension.java:110)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.postProcessTestInstance(SystemStubsExtension.java:31)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1625)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
✖ io.quarkus.maven.ExtensionDescriptorMojoTest.testGetCodestartArtifact
- History - More details - Source on GitHub
java.lang.NoSuchMethodError: 'java.lang.reflect.AccessibleObject org.junit.platform.commons.util.ReflectionUtils.makeAccessible(java.lang.reflect.AccessibleObject)'
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setup(SystemStubsExtension.java:86)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setupFields(SystemStubsExtension.java:110)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.postProcessTestInstance(SystemStubsExtension.java:31)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1625)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
⚙️ JVM Tests - JDK 21 #
- Failing: independent-projects/extension-maven-plugin
! Skipped: core/deployment core/runtime devtools/cli and 807 more
📦 independent-projects/extension-maven-plugin
✖ io.quarkus.maven.ExtensionDescriptorMojoTest.shouldCreateExtensionProperties
- History - More details - Source on GitHub
java.lang.NoSuchMethodError: 'java.lang.reflect.AccessibleObject org.junit.platform.commons.util.ReflectionUtils.makeAccessible(java.lang.reflect.AccessibleObject)'
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setup(SystemStubsExtension.java:86)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setupFields(SystemStubsExtension.java:110)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.postProcessTestInstance(SystemStubsExtension.java:31)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1708)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
✖ io.quarkus.maven.ExtensionDescriptorMojoTest.shouldCreateMetadata
- History - More details - Source on GitHub
java.lang.NoSuchMethodError: 'java.lang.reflect.AccessibleObject org.junit.platform.commons.util.ReflectionUtils.makeAccessible(java.lang.reflect.AccessibleObject)'
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setup(SystemStubsExtension.java:86)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setupFields(SystemStubsExtension.java:110)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.postProcessTestInstance(SystemStubsExtension.java:31)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1708)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
✖ io.quarkus.maven.ExtensionDescriptorMojoTest.shouldExecuteSimplePomCleanly
- History - More details - Source on GitHub
java.lang.NoSuchMethodError: 'java.lang.reflect.AccessibleObject org.junit.platform.commons.util.ReflectionUtils.makeAccessible(java.lang.reflect.AccessibleObject)'
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setup(SystemStubsExtension.java:86)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setupFields(SystemStubsExtension.java:110)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.postProcessTestInstance(SystemStubsExtension.java:31)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1708)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
✖ io.quarkus.maven.ExtensionDescriptorMojoTest.shouldFlagIncorrectRuntimeDependencyOnDeployment
- History - More details - Source on GitHub
java.lang.NoSuchMethodError: 'java.lang.reflect.AccessibleObject org.junit.platform.commons.util.ReflectionUtils.makeAccessible(java.lang.reflect.AccessibleObject)'
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setup(SystemStubsExtension.java:86)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setupFields(SystemStubsExtension.java:110)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.postProcessTestInstance(SystemStubsExtension.java:31)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1708)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
✖ io.quarkus.maven.ExtensionDescriptorMojoTest.shouldFlagMissingDependenciesInARealisticExtension
- History - More details - Source on GitHub
java.lang.NoSuchMethodError: 'java.lang.reflect.AccessibleObject org.junit.platform.commons.util.ReflectionUtils.makeAccessible(java.lang.reflect.AccessibleObject)'
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setup(SystemStubsExtension.java:86)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setupFields(SystemStubsExtension.java:110)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.postProcessTestInstance(SystemStubsExtension.java:31)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1708)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
✖ io.quarkus.maven.ExtensionDescriptorMojoTest.shouldProcessRealisticExtensionCleanly
- History - More details - Source on GitHub
java.lang.NoSuchMethodError: 'java.lang.reflect.AccessibleObject org.junit.platform.commons.util.ReflectionUtils.makeAccessible(java.lang.reflect.AccessibleObject)'
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setup(SystemStubsExtension.java:86)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setupFields(SystemStubsExtension.java:110)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.postProcessTestInstance(SystemStubsExtension.java:31)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1708)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
✖ io.quarkus.maven.ExtensionDescriptorMojoTest.shouldReadLocalParentsForScmInfo
- History - More details - Source on GitHub
java.lang.NoSuchMethodError: 'java.lang.reflect.AccessibleObject org.junit.platform.commons.util.ReflectionUtils.makeAccessible(java.lang.reflect.AccessibleObject)'
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setup(SystemStubsExtension.java:86)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setupFields(SystemStubsExtension.java:110)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.postProcessTestInstance(SystemStubsExtension.java:31)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1708)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
✖ io.quarkus.maven.ExtensionDescriptorMojoTest.testGetCodestartArtifact
- History - More details - Source on GitHub
java.lang.NoSuchMethodError: 'java.lang.reflect.AccessibleObject org.junit.platform.commons.util.ReflectionUtils.makeAccessible(java.lang.reflect.AccessibleObject)'
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setup(SystemStubsExtension.java:86)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setupFields(SystemStubsExtension.java:110)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.postProcessTestInstance(SystemStubsExtension.java:31)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1708)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
⚙️ JVM Tests - JDK 17 Windows #
- Failing: independent-projects/extension-maven-plugin
! Skipped: core/deployment core/runtime devtools/cli and 807 more
📦 independent-projects/extension-maven-plugin
✖ io.quarkus.maven.ExtensionDescriptorMojoTest.shouldCreateExtensionProperties
- History - More details - Source on GitHub
java.lang.NoSuchMethodError: 'java.lang.reflect.AccessibleObject org.junit.platform.commons.util.ReflectionUtils.makeAccessible(java.lang.reflect.AccessibleObject)'
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setup(SystemStubsExtension.java:86)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setupFields(SystemStubsExtension.java:110)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.postProcessTestInstance(SystemStubsExtension.java:31)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1625)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
✖ io.quarkus.maven.ExtensionDescriptorMojoTest.shouldCreateMetadata
- History - More details - Source on GitHub
java.lang.NoSuchMethodError: 'java.lang.reflect.AccessibleObject org.junit.platform.commons.util.ReflectionUtils.makeAccessible(java.lang.reflect.AccessibleObject)'
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setup(SystemStubsExtension.java:86)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setupFields(SystemStubsExtension.java:110)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.postProcessTestInstance(SystemStubsExtension.java:31)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1625)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
✖ io.quarkus.maven.ExtensionDescriptorMojoTest.shouldExecuteSimplePomCleanly
- History - More details - Source on GitHub
java.lang.NoSuchMethodError: 'java.lang.reflect.AccessibleObject org.junit.platform.commons.util.ReflectionUtils.makeAccessible(java.lang.reflect.AccessibleObject)'
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setup(SystemStubsExtension.java:86)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setupFields(SystemStubsExtension.java:110)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.postProcessTestInstance(SystemStubsExtension.java:31)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1625)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
✖ io.quarkus.maven.ExtensionDescriptorMojoTest.shouldFlagIncorrectRuntimeDependencyOnDeployment
- History - More details - Source on GitHub
java.lang.NoSuchMethodError: 'java.lang.reflect.AccessibleObject org.junit.platform.commons.util.ReflectionUtils.makeAccessible(java.lang.reflect.AccessibleObject)'
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setup(SystemStubsExtension.java:86)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setupFields(SystemStubsExtension.java:110)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.postProcessTestInstance(SystemStubsExtension.java:31)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1625)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
✖ io.quarkus.maven.ExtensionDescriptorMojoTest.shouldFlagMissingDependenciesInARealisticExtension
- History - More details - Source on GitHub
java.lang.NoSuchMethodError: 'java.lang.reflect.AccessibleObject org.junit.platform.commons.util.ReflectionUtils.makeAccessible(java.lang.reflect.AccessibleObject)'
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setup(SystemStubsExtension.java:86)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setupFields(SystemStubsExtension.java:110)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.postProcessTestInstance(SystemStubsExtension.java:31)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1625)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
✖ io.quarkus.maven.ExtensionDescriptorMojoTest.shouldProcessRealisticExtensionCleanly
- History - More details - Source on GitHub
java.lang.NoSuchMethodError: 'java.lang.reflect.AccessibleObject org.junit.platform.commons.util.ReflectionUtils.makeAccessible(java.lang.reflect.AccessibleObject)'
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setup(SystemStubsExtension.java:86)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setupFields(SystemStubsExtension.java:110)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.postProcessTestInstance(SystemStubsExtension.java:31)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1625)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
✖ io.quarkus.maven.ExtensionDescriptorMojoTest.shouldReadLocalParentsForScmInfo
- History - More details - Source on GitHub
java.lang.NoSuchMethodError: 'java.lang.reflect.AccessibleObject org.junit.platform.commons.util.ReflectionUtils.makeAccessible(java.lang.reflect.AccessibleObject)'
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setup(SystemStubsExtension.java:86)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setupFields(SystemStubsExtension.java:110)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.postProcessTestInstance(SystemStubsExtension.java:31)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1625)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
✖ io.quarkus.maven.ExtensionDescriptorMojoTest.testGetCodestartArtifact
- History - More details - Source on GitHub
java.lang.NoSuchMethodError: 'java.lang.reflect.AccessibleObject org.junit.platform.commons.util.ReflectionUtils.makeAccessible(java.lang.reflect.AccessibleObject)'
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setup(SystemStubsExtension.java:86)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.setupFields(SystemStubsExtension.java:110)
at uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension.postProcessTestInstance(SystemStubsExtension.java:31)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1625)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
Doh. Looks like JUnit made some API changes we need to deal with. |
Sorry to spoil the party but I’m not sure I’m comfortable merging a M2 given we don’t control JUnit lifecycle. |
The problem is that without this change, there is a chance that David's previous important PR might fail in some circumstances. |
I’ve done some digging into when this happens. PR with reproducer tests: #40773 We didn’t have any coverage for I think problems happen when the JUnit extension used in the template is provided by an extension. That combination is what triggers the classloader dance which ends in using serialisation to hop between classloaders. That’s a somewhat rare scenario; I searched in the quarkiverse org extensions, and it’s only Pact which does this (or at least, if anyone else does it, they never bothered to test it). So that’s the good news, but the bad news is that Quarkus 3.11 would break anyone using a Pact provider. There isn’t really a workaround. We can see from https://quarkus.io/extensions/?sort=downloads that the Pact Provider extension is reasonably well used (it’s about a third of the way down the page, more popular than Cucumber, say). So I think we have four options:
|
Thanks for doing a deep dive on this @holly-cummins! I'm personally in favor of options We could also try and ask the JUnit folks again if we can get a |
We could also try and ask the JUnit folks again if we can get a 5.10.z
release with a David's fix in it.
Let's try to kindly ask for that. If they don't want to do it, then we can
reconsider.
…On Wed, May 22, 2024 at 11:06 AM Georgios Andrianakis < ***@***.***> wrote:
Thanks for doing a deep dive on this @holly-cummins
<https://github.com/holly-cummins>!
I'm personally in favor of options 1 or 3.
We could also try and ask the JUnit folks again if we can get a 5.10.z
release with a David's fix in it.
—
Reply to this email directly, view it on GitHub
<#40751 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAJYOBNLFI5GFGHEYLE7EC3ZDRNYRAVCNFSM6AAAAABICCLOBKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCMRUGI2TMNZQGA>
.
You are receiving this because you commented.Message ID:
***@***.***>
|
Done, let's see what happens |
Fingers crossed for the micro release, that's a good thought, @geoand. I think I'm most against option 3. That's partly because of my own bias because it's my extension and my tests, but also because it's a regression. At the moment, we have lots of things that don't work around test classloading, but they've not worked for a long time. So we know no one is doing those things, because they couldn't be – they just don't work. Whereas if we broke Pact (which we know people are doing) to enable things people aren't doing, it would be an awkward conversation. |
I agree it's not ideal but by using a non-final release, we are also having a non-null risk of breaking regular JUnit usage and that wouldn't be better. We need to be a bit cautious. Let's rediscuss this once we have JUnit's position. |
Agreed ... I think my personal vote would be for option 2. That puts us back on the old status quo, which was far from ideal, but at least it's not a regression ... and we would have the JBoss Marshaller change good to go as soon as the JUnit fix is in a proper release.
+1 |
Not that my vote matters, but I also agree with Holly. I would vote on option 2. |
I am personally pretty strongly against |
Why? As Holly explains, that fix is fixing things that have been broken for a long time, so people aren't doing it currently. It has the least chance to introduce any kind of regression until the JUnit fix is released. |
So I think there's two aspects to consider:
To me, a delay seems acceptable. I know reverting good changes feels bad. On the other hand, if @dmlloyd had gone to the beach for a month in May instead of having good ideas about serialization, the net effect would be exactly the same as option 2, and no one would complain. Well, the net effect for our codebase would be the same. The net effect for David would obviously be better, because he'd have a month on the beach. |
I've raised #40880 with the code changes to (temporarily!) back this out, so we're ready to go if we decide to go for one of the "avoid regressing our users" paths and don't want to pick up the JUnit pre-release. |
I think we can close this as "won't do", to get it off the list of open PRs. #40906 is a superset of this, since we now also need to reintroduce the JBoss serializer (doh!) as well as bumping the JUnit version. |
(Anyone would think I've got a vendetta against @dmlloyd .... reverting his changesets, closing his PRs ... ) |
A time will come at some point in the future when it'll happen to you :D |
Relates to #40601, #40749, #38991. No use waiting for Dependabot. Fixes problem where an NPE can occur in some tests.