Skip to content
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

Exclude xerces or replace usage of HTTPBuilder #115

Open
ben-manes opened this issue Oct 8, 2023 · 0 comments
Open

Exclude xerces or replace usage of HTTPBuilder #115

ben-manes opened this issue Oct 8, 2023 · 0 comments

Comments

@ben-manes
Copy link

This plugin uses org.codehaus.groovy.modules.http-builder:http-builder which is unmaintained, including its forks. These use net.sourceforge.nekohtml:nekohtml which is likewise and that uses xerces:xercesImpl. This plugin doesn't rely on xerces since it uses json instead of xml, so one can exclude this library safely.

When xerces is on the build environment classpath, then it becomes the javax.xml provider. This is incompatible with Gradle 8.4 which can result in SAXNotRecognizedException during dependency resolution thanks to an unrecognized property.

XML parsing now requires recent parsers
Gradle 8.4 now configures XML parsers with security features enabled. If your build logic has dependencies on old XML parsers that don’t support secure parsing, your build may now fail. If you encounter a failure, check and update or remove any dependency on legacy XML parsers.

The only workaround that I found was to remove the library entirely, which is preferable due to its history of vulnerabilities. A slightly more invasive change is to use an http client that is still supported, or just plain URLConnection.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant