db-client-jar published jar contains classes that conflict with classes in proto-google-common-protos
🐛 Current behavior
db-client depends on grpc-protobuf, which depends on proto-google-common-protos
db-client jar contains the following classes
- com.google.rpc.Code
- com.google.rpc.CodeProto
- com.google.rpc.Status
- com.google.rpc.StatusOrBuilder
- com.google.rpc.StatusProto
which also exist in proto-google-common-protos jar.
I am not sure if the contents are the same or not, but this can lead to hard-to-detect problems if the order in which these jar appears in the application's classpath varies.
If i am not mistaken, these classes should not be included into db-client jar
🔍 Steps to reproduce
NA
Reproducible link
na
💭 Expected behavior
classes are not duplicated
Package version
kurrebtdb-client 1.1.1
KurrentDB Version
NA
Connection string
NA
☁️ Deployment Environment
Single-node (Docker)
Other Deployment Details
No response
Operating system
No response
Code of Conduct
- [x] I agree to follow this project's Code of Conduct
Hey @antonmos,
Thank you for taking the time to fill out the issue. Are you encountering an actual bug, or are you suggesting we implement some preventative measures?
We use https://github.com/tehlers/gradle-duplicate-classes-check preventively and it failed. So I had to exclude proto-google-common-protos dependency.
So if I understand correctly, there is no bug. I try to evaluate the urgency of the situation. It looks like we could improve the final jar that we produce. Will see what we can do with that. I wonder if having a direct dependency to proto-google-common-protos would fix that.