-
-
Notifications
You must be signed in to change notification settings - Fork 427
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
Switch to compileOnly dependencies for integrations #2125
Comments
We could also run a matrix test with all the supported major or minor versions, so we know that we don't introduce breaking changes as well. |
We could also choose to ship with the lowest possible version of our integrations because Gradle will pick the highest one. |
We already do that, we rarely upgrade our transitive dependencies unless it's needed due to security issues and so on. |
Switching to |
@philipphofmann the SDK should degrade gracefully if the desired lib isn't in the classpath. |
Unfortunately, this is not always possible, because our integrations extend from the deps classes: class SentryOkHttpInterceptor : Interceptor So the class verification check will fail even before hitting our code, resulting in |
Description
At the moment we declare all integration dependencies (e.g. okhttp for sentry-okhttp-intreceptor) as
implementation
. This means we are potentially overriding user-defined dependencies, if they use an older version of okhttp. We should switch those dependencies to becompileOnly
so at runtime we'd actually use what user has defined in their deps.We should cautious about incompatible versions though, at best we could define version constraints for the min. supported version, at worst have a note for each integration/troubleshooting page on the docs
The text was updated successfully, but these errors were encountered: