Repository navigation
Publish scip-kotlin-analysis with JetBrains-only jars bundled - #1070
Merged
Merged
Conversation
scip-java 0.14.0 depends on scip-kotlin-analysis, which was never published, so org.scip-code:scip-java:0.14.0 does not resolve from Maven Central and the release-cli job failed. The Analysis API *-for-ide artifacts and the IntelliJ coroutines fork only exist on JetBrains' repository, so they are merged into the scip-kotlin-analysis jar and the published POM references only Maven Central artifacts. kotlin-compiler-common-for-ide is dropped: kotlin-compiler 2.4.0 already contains the decompiler classes it was added for, and kotlin-compiler already won every class the two jars share on the classpath. Amp-Thread-ID: https://ampcode.com/threads/T-01a1aac9-e7b5-72af-ad93-8f4a2a058fac Co-authored-by: Amp <amp@ampcode.com>
chrapkowski-sg
approved these changes
Nov 5, 2026
chrapkowski-sg
left a comment
Contributor
There was a problem hiding this comment.
In release-cli.yaml replace standalone with assembly for cs bootstrap otherwise I'm getting error:
Unable to find extension point configuration
extensions/compiler-cli-root.xml (cp: null)
The --standalone launcher keeps dependency jars nested inside the launcher jar, so the Kotlin compiler cannot locate extensions/compiler-cli-root.xml on disk and Kotlin indexing fails with "Unable to find extension point configuration". An --assembly launcher merges the dependencies into a single jar, which works. Amp-Thread-ID: https://ampcode.com/threads/T-01a1aac9-e7b5-72af-ad93-8f4a2a058fac Co-authored-by: Amp <amp@ampcode.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The v0.14.0 release-cli job failed because
org.scip-code:scip-java:0.14.0on Maven Central depends onscip-kotlin-analysis:0.14.0, which was never published. The documentedcoursier launch org.scip-code:scip-java:0.14.0is broken for the same reason. The Maven publish itself succeeded.scip-kotlin-analysiscouldn't simply be published as-is: the Analysis API*-for-ideartifacts andcom.intellij.platform:kotlinx-coroutines-core-jvmonly exist onpackages.jetbrains.team, so its POM would point at artifacts Central users can't download.Changes
scip-kotlin-analysisis now published. The JetBrains-only jars are merged into its jar (~11 MB), so the POM and Gradle module metadata only reference Maven Central artifacts.kotlin-compilerstays a non-transitive dependency (wildcard exclusion in the POM).kotlin-compiler-common-for-ide.kotlin-compiler2.4.0 already contains allanalysis/decompilerclasses it was added for, and its only unique classes are daemon/build-tools/preloading code. The ~5,500 classes both jars share differ in bytes, andkotlin-compileralready came first on the classpath, so its copies were the ones in use. Dropping it removes all class overlap from the merged jar.kotlin-stdlibexplicitly; it previously only arrived transitively via the coroutines fork (kotlin.stdlib.default.dependency=false).cs bootstrap --assemblyinstead of--standalone. The standalone launcher keeps dependency jars nested inside the launcher, so the Kotlin compiler can't locateextensions/compiler-cli-root.xmland Kotlin indexing fails withUnable to find extension point configuration(thanks @chrapkowski-sg).Verification
cs resolveandcs bootstrapofscip-javausing only Central + Maven Local.--standalonefailure on Kotlin indexing; the--assemblylauncher produces output byte-identical to a plaincs launchclasspath, andscip-java indexwith it indexes a mixed Kotlin/Java Gradle project (both documents present inindex.scip).scip-kotlin-analysisvia coursier on the Kotlin snapshot case (15 files): output is byte-identical to the previous build's classpath.:scip-kotlin-analysis:testand:scip-snapshots:checkpass.After merging, tagging v0.14.1 should publish a resolvable release and let the release-cli job attach the launcher.