Skip to content
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

Set strict dependency on tested Kotlin compiler version #4822

Merged
merged 1 commit into from Jun 15, 2022
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
5 changes: 5 additions & 0 deletions detekt-cli/build.gradle.kts
Expand Up @@ -16,6 +16,11 @@ dependencies {
implementation(libs.jcommander)
implementation(projects.detektTooling)
implementation(projects.detektParser)
implementation(libs.kotlin.compilerEmbeddable) {
version {
strictly(libs.versions.kotlin.get())
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Q: Is the issue arising only on .compilerEmbeddable or should be pin also the stdlib and other deps we import?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's a good question. Probably yes... but perhaps we can just roll out this change to begin with, and see if there are any new issues, before becoming more strict with the other dependencies?

kotlin-compiler-embeddable has a few other dependencies too, and in the very worst case they might also be overridden by the user's build script, so we'd want to pin everything, but then there's a maintenance burden being introduced (we have to remember to check if there are changes to the transitive dependencies that we need to update when each new Kotlin version is released).

I'm still of the opinion that we shouldn't be building workarounds into this project just to workaround issues introduced by users in their own build scripts, and instead we should educate users about how to fix it on their side. For that reason, if we merge this PR, I'd prefer the limited scope that it currently has.

}
}
runtimeOnly(projects.detektCore)
runtimeOnly(projects.detektRules)

Expand Down