-
-
Notifications
You must be signed in to change notification settings - Fork 33
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
Auto install Sentry integrations for Java Backend, Desktop, etc. #521
Conversation
|
plugin-build/src/main/kotlin/io/sentry/android/gradle/autoinstall/jdbc/JdbcInstallStrategy.kt
Show resolved
Hide resolved
plugin-build/src/main/kotlin/io/sentry/android/gradle/autoinstall/jdbc/JdbcInstallStrategy.kt
Outdated
Show resolved
Hide resolved
looking good from the first skim, needs tests still and the changes I mentioned, but overall great stuff 👍 |
Specified versions by looking at the registry and added some tests. |
…e .RELEASE prefix (used by Spring in older versions)
@romtsn wanna give this another pass? Should be good to go now. Just waiting for CI. |
plugin-build/src/main/kotlin/io/sentry/android/gradle/autoinstall/AbstractInstallStrategy.kt
Outdated
Show resolved
Hide resolved
plugin-build/src/main/kotlin/io/sentry/android/gradle/autoinstall/AbstractInstallStrategy.kt
Show resolved
Hide resolved
plugin-build/src/test/kotlin/io/sentry/android/gradle/SentryPluginTest.kt
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, besides a couple of comments.
Also, a very important thing that we have to do - we should switch all of our upstream dependencies (e.g. kotlinx-coroutines-core
for sentry-kotlin-extensions
) from implementation
to compileOnly
. Auto-install works just by adding an integration into pom.xml
of the upstream dependency, but if we don't make the upstream dependency itself a compileOnly
one, this will result in a circular dependency and break some of the community plugins that collect dependencies.
You can check this test for more details (and maybe update it with the new deps that you've introduced in this PR)
I've opened getsentry/sentry-java#2837 to switch dependencies to |
Added auto install for graphql as we've got some stuff cooking for that. Also added a bunch more tests. |
) | ||
|
||
val result = runner | ||
.appendArguments("app:build") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this won't actually automatically call collectDependencies
task from the plugin, you'd have to do it manually for non-android project, see https://github.com/mikepenz/AboutLibraries/tree/develop#gradle-api
…2 and up to avoid circular dependencies
… when combining with other plugins
CI is having issues. Merging anyways. |
📜 Description
Automatically install Sentry Java SDK and integration dependencies.
💡 Motivation and Context
Fixes #503
💚 How did you test it?
📝 Checklist
🔮 Next steps