-
-
Notifications
You must be signed in to change notification settings - Fork 1.4k
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
ByteBuddy
scope went beyond test
in version 2.17.0
#4428
Comments
UGH. ... and no one noticed/reported this during 2.17.0-rc1. Next time I think it might be best to avoid rc-phase altogether as we keep missing significant problems anyway. Thank you @migmruiz for reporting this. |
test
in version 2.17.0ByteBuddy
scope went beyond test
in version 2.17.0
Fixed for 2.17.1. |
Because users have no reason to suspect a new dependency that is not obviously test-only e.g. Mockito or JUnit? It is not like Byte Buddy is a lib that exists only to exclusively help in writing tests anyway e.g. Hibernate uses it. 🤷 I'm guessing @migmruiz noticed it either because he works in a place where every new lib needs justification, or this version of Byte Buddy caused version conflict in his project? |
Ahhh. Very good point that ByteBuddy is NOT regularly test(-only) dependency. Still all that said, I am disappointed that this was not caught and reported before .0 release -- consider the fact that right after 2.17.0 was released this was reported within 24 hours. So my point has more to do with vast difference of reports from "final" minor release vs. any of release candidates: this has been recurring theme. Not just this specific thing, but rate of issue reporting. |
How soon will 2.17.1 be released so that ByteBuddy is no longer pulled in as a transitive dependency? |
If you read the comments, you will see that we believe that this is easily worked around. Every build tool that I am aware of has a way to exclude transitive dependencies. |
I'm fully aware of that. But having to manually go thru tens of projects to add an exclusion that we would then turn around and remove after the next release is extremely tedious. |
There is no plan to release 2.17.1 yet. One option is to revert to 2.16.2. |
Workaround minor issue introduced in Jackson 2.17.0 FasterXML/jackson-databind#4428
@norrisjeremy Timeline depends on balance between number of fixes to get int vs urgency of getting specific high priority fixes out: given it takes 2.5 - 4 hours to do full release (like 2.17.1), this wouldn't yet qualify for doing 2.17.1 this week (for example). I hope this helps. |
To help people out, if you want to do this globally in one of the Gradle-canonical ways: For simpler cases this will often do dependencies {
implementation('com.fasterxml.jackson.core:jackson-databind:2.17.0') {
exclude(module: 'byte-buddy') // Workaround https://github.com/FasterXML/jackson-databind/issues/4428 until Jackson 2.17.1
}
} For more complex projects with dependencies {
components {
// Workaround https://github.com/FasterXML/jackson-databind/issues/4428 until Jackson 2.17.1
withModule('com.fasterxml.jackson.core:jackson-databind', { details ->
details.allVariants { withDependencies { removeAll { it.name == "byte-buddy" } } }
})
}
} |
Thank you for sharing, @chadlwilson ! |
…dentally became a dependency of jackson-databind (see: FasterXML/jackson-databind#4428) updated to version 2.17.0 (via OPENNLP-1552)
It seems to me that this was a mistake introduced here
https://github.com/FasterXML/jackson-databind/pull/4254/files/
Originally posted by @migmruiz in #4254 (comment)
The text was updated successfully, but these errors were encountered: