fix: Move byte-buddy to testImplementation scope#282
Conversation
There was a problem hiding this comment.
Code Review
This pull request updates the net.bytebuddy:byte-buddy dependency in build.gradle from version 1.15.11 to 1.18.9 and changes its configuration from implementation to testImplementation. There are no review comments, and I have no feedback to provide.
Important
The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.
There was a problem hiding this comment.
Copilot wasn't able to review any files in this pull request.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
thanks! |
Closes #281
Summary
net.bytebuddy:byte-buddywas declared withimplementationscope, but it is only needed by Spock for mocking concrete classes at test time (it is never referenced undersrc/). This incorrect scope put byte-buddy on the plugin runtime classpath, so Gradle TestKit injected and repackaged it during acceptance tests — and dependabot's bump to 1.18.9 broke that repackaging on older Gradle (≤ 8.2), failing all acceptance tests withFailed to create Jar file byte-buddy-1.18.9.jar.See #281 for the full root-cause analysis and history.
Changes
net.bytebuddy:byte-buddyfromimplementationtotestImplementation, matching the neighboringobjenesisdeclaration.1.15.11→1.18.9) to verify the scope fix resolves the breakage on older Gradle via CI.Verification
createClasspathManifest/sourceSets.main.runtimeClasspath(the TestKit-injected plugin classpath), so the jar-repackaging failure can no longer occur on any Gradle version.runtimeClasspathbut retained ontestRuntimeClasspath(Spock concrete-class mocking preserved).🤖 Generated with Claude Code