Use single skiko-awt-runtime-all fat jar dependency on Desktop#3198
Use single skiko-awt-runtime-all fat jar dependency on Desktop#3198Hubert Błaszczyk (hub-bla) wants to merge 2 commits into
Conversation
1a532e1 to
5c8f3ca
Compare
| import org.gradle.api.GradleException | ||
| import org.gradle.api.initialization.Settings | ||
|
|
||
| class SkikoSetup { |
There was a problem hiding this comment.
Can we remove this file entirely?
There was a problem hiding this comment.
Yes, I think we can but there's still logic to override skiko version. I don't see it being used anywhere inside the repo so I don't think its needed. wdyt?
Or, we can just move this logic to settings-fork.gradle
There was a problem hiding this comment.
I looked into teamcity config and it didn't reference the SKIKO_VERSION as well, so I dropped the file entirely
|
Approval from Alexander Maryanovsky (@m-sasha) is also needed. |
|
Does the gradle plugin still resolve based on the executing OS (Windows, macOS, Linux)? |
Ivan Matkov (MatkovIvan)
left a comment
There was a problem hiding this comment.
Sorry for blocking, but let's explicitly decide what we're going to do with desktop module first.
|
|
||
| afterEvaluate { | ||
| publishing { | ||
| publications { |
There was a problem hiding this comment.
It seems the task was not about stopping publishing existing artifacts immediately, just to provide replacement and do a soft deprecation cycle.
| desktopMain { | ||
| dependsOn(skikoMain) | ||
| dependencies { | ||
| runtimeOnly(libs.skikoAwtRuntime) |
There was a problem hiding this comment.
If we add a transitive dependency to *-all variant unconditionally, do we even need to keep the "desktop" module? especially introducing a new artifact there
There was a problem hiding this comment.
Why is this dependency added here instead of desktop?
5845162 to
099d71e
Compare
|
Discussed with Ivan Matkov (@MatkovIvan). We’re going to keep the current desktop publication as is and we’ll add additional desktop artifact with |
| skikoAwtRuntimeWindowsArm64 = { module = "org.jetbrains.skiko:skiko-awt-runtime-windows-arm64", version.ref = "skiko" } | ||
| skikoAwtRuntimeLinuxX64 = { module = "org.jetbrains.skiko:skiko-awt-runtime-linux-x64", version.ref = "skiko" } | ||
| skikoAwtRuntimeLinuxArm64 = { module = "org.jetbrains.skiko:skiko-awt-runtime-linux-arm64", version.ref = "skiko" } | ||
| skikoAwtRuntime = { module = "org.jetbrains.skiko:skiko-awt-runtime-all", version.ref = "skiko" } |
There was a problem hiding this comment.
Seems unused. Do we want to use in inside this repo (tests, etc) like it was in previous iterations?
Not a blocker, just checking
There was a problem hiding this comment.
I agree, if we're making now the fat jar artifact as a main one we should test on it. Fixed
Ivan Matkov (MatkovIvan)
left a comment
There was a problem hiding this comment.
Please fix "Release Notes" before the merge - it's doesn't look like "Migration notes" for this particular change. I'd suggest keeping it only in JetBrains/compose-multiplatform#5640 folowup
Fixes CMP-9175 Introduce a single desktop dependency for all platforms
A new universal Desktop publication (
org.jetbrains.compose.desktop:desktop-jvm-all) is now available. When packaging a desktop application, the compose gradle plugin resolves it to the appropriate platform-specific Skiko runtime for the target OS and architecture.Release Notes
N/A