-
Notifications
You must be signed in to change notification settings - Fork 19
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
Shaded and non shaded versions #428
base: master
Are you sure you want to change the base?
Shaded and non shaded versions #428
Conversation
…r with-deps and a non-shaded version. The pom that is produced just has the dependencies for the shaded version though. Need to figure out how to supply the non-shaded deps
While this works, I'm increasingly convinced that the correct way to do it is a separate module so that the dependency list in the pom is correct in both instances. |
Reasoning for the separate module: https://www.mail-archive.com/[email protected]/msg139854.html |
I'm using this package in a kotlin project. While it's working fine using JVM, it fails when using the native build (Graalvm). We believe the native build is not able to load some of the shaded dependencies. |
Are there any suggestions or concerns with this PR that would increase its chances of being merged? |
If you REALLY prefer to shade, then you should be prefixing those packages so they don't conflict with the rest of the app. See this feature of the maven-shade-plugin: https://maven.apache.org/plugins/maven-shade-plugin/examples/class-relocation.html |
Hi @danieldbower , |
I'd recommend that if you wanted to stick with just one artifact, you go with the non-shaded version. That will remove some complexity and make the library more secure. |
Corrects the url of the sdk documentation as the given url does not work.
Minor fix added to specify the version number for the
maven-source-plugin
I also bumped the version to ensure I had some maven settings correct.
I was not able to run the redis module tests as that seems to be an integration test requiring some infrastructure.
The pom will now create a shaded version
java-client-with-deps
and a non-shaded version atjava-client
.In this version, documentation referencing the shaded version's maven coordinates would have to change from this:
to this
The original maven coordinates would be for the non-shaded version.
Why do this?
Simpler management of dependencies with tools like scanning for vulnerabilities and updates.