Skip to content

Add first kotlintoolchain version#776

Merged
marc0der merged 1 commit into
sdkman:masterfrom
JetBrains:add-kotlin-toolchain-version
May 20, 2026
Merged

Add first kotlintoolchain version#776
marc0der merged 1 commit into
sdkman:masterfrom
JetBrains:add-kotlin-toolchain-version

Conversation

@singleton11
Copy link
Copy Markdown
Contributor

No description provided.

@singleton11 singleton11 force-pushed the add-kotlin-toolchain-version branch from 17222f4 to 76bc2f3 Compare May 19, 2026 19:44
Copy link
Copy Markdown
Contributor

@chloe41427 chloe41427 Bot left a comment

Choose a reason for hiding this comment

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

Reviewed the migration end-to-end against the patterns used elsewhere in the repo (BallerinaMigrations, KobwebMigrations, etc.) and against package.scala's validation rules.

What's correct

  • Order/id wiringorder = "002" cleanly follows 001; id 002_add_kotlintoolchain_0_11_0 matches the NNN_add_<candidate>_<version> convention used across other candidates, and the author is consistent with 001.
  • Candidate referencecandidate = "kotlintoolchain" matches the candidate inserted in migration001.
  • Version length"0.11.0" (6 chars) is well under the 15-char ceiling enforced by versionValidation.validVersion in package.scala.
  • URLhttps://packages.jetbrains.team/.../kotlin-cli-sdkman-0.11.0.zip resolves with HTTP/2 200 (13,158 bytes), so .validate() will succeed at migration time.
  • Platform default — relying on Universal (default) is consistent with the distribution = "UNIVERSAL" set on the candidate in migration001, and matches how other UNIVERSAL candidates (e.g. Kobweb when they add their first version) are wired.
  • .asCandidateDefault() — required for the first version; without it candidates.default would stay None and the CLI wouldn't have a default to install. Correct here.
  • CIbuild job is green.

Nits (non-blocking)

  • Tiny style drift: migration001 is def migration001(implicit db: MongoDatabase) = while migration002 is def migration002(implicit db: MongoDatabase): Unit =. Both forms exist across the codebase, so not worth churning — just flagging.
  • Some files (e.g. BallerinaMigrations) extract private val CandidateName = "kotlintoolchain" to avoid repeating the string. Optional; the file is small enough that inline is fine.

LGTM — first version is correctly wired and validated.

@marc0der marc0der marked this pull request as ready for review May 20, 2026 06:29
@marc0der marc0der merged commit 96c6261 into sdkman:master May 20, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants