typelevel / fs2-grpc

gRPC implementation for FS2/cats-effect
MIT License
272 stars 57 forks source link

'2.7.10' release introduces SemVer incompatible dependency version changes #686

Open seigert opened 1 year ago

seigert commented 1 year ago

When we update our project to sbt-fs2-grpc:2.7.10 and use it with sbt-version-policy, we suddenly get incompatible version change errors:

[error] Incompatibilities with dependencies of grpc:1.1.0
[error]   com.google.guava:guava: incompatible version change from 31.0.1-android to 32.0.1-jre (compatibility: early semantic versioning)
[error]   com.google.j2objc:j2objc-annotations: incompatible version change from 1.3 to 2.8 (compatibility: early semantic versioning)
[error]   io.perfmark:perfmark-api: incompatible version change from 0.25.0 to 0.26.0 (compatibility: early semantic versioning)
[error]   io.grpc:grpc-context: missing dependency
[error]   org.checkerframework:checker-compat-qual: missing dependency

While manageable, it is unfortunate that this error happens during patch version update of a SBT plugin.

ahjohannessen commented 1 year ago

Sorry about that. Seems like ScalaPB 0.11.14 upgraded grpc from 1.54.2 to 1.58.0. I did not catch that, because in projects using fs2-grpc we explicitly define grpc versions for apps instead of versions from ScalaPB.