Skip to content

build(deps): bump rules_kotlin from 2.2.2-codeql.1 to 2.4.21-codeql.1 - #22950

Draft
jketema wants to merge 14 commits into
mainfrom
copilot/update-rules-kotlin-2.4.21
Draft

jketema wants to merge 14 commits into
mainfrom
copilot/update-rules-kotlin-2.4.21

Conversation

@jketema

@jketema jketema commented Oct 30, 2026 •

Copy link
Copy Markdown
Contributor

Updates rules_kotlin to 2.4.21-codeql.1 and carries forward the two CodeQL-specific modifications from the 2.2.2 registry entry: the language/API version mapping and disabling jdeps emission. The registry metadata and module dependency use the matching CodeQL suffix; the archive remains pinned to upstream 2.4.21. Both patches retain standard three-line unified-diff context. No extra source-archive module-version rewrite patch is added.

Pins Kotlin compiler 2.2.21 through the rules_kotlin module extension to support the Kotlin 1.8 and 1.9 language/API versions still required by older extractor variants. The new rules default to Kotlin 2.4, which no longer supports those versions. The language-version patch also removes the new analysis-time restriction to language versions 2.0 and newer.

The rules_kotlin patch keeps Kotlin warning settings scoped to Kotlin compilation rather than propagating them to javac. Java warnings remain visible and are not promoted to errors by Kotlin warn = "error". The extractor build provides the compiler classpath’s kotlinx-coroutines-core-jvm.jar manifest entry. Redundant Kotlin string conversions rejected by the upgraded compiler are also removed.

jketema and others added 2 commits October 30, 2026 08:21
Carry forward CodeQL's jdeps and language/API-version customizations for the new upstream release, and fix redundant string conversions rejected by the upgraded Kotlin compiler.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
The BCR already provides the release's corrected module metadata, so consume 2.4.21 directly instead of maintaining a duplicate CodeQL registry entry and patches. Retain the Kotlin string conversion fix required by the upgraded compiler.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@jketema jketema changed the title build(deps): update rules_kotlin to 2.4.21 with CodeQL patches build(deps): bump rules_kotlin from 2.2.2-codeql.1 to 2.4.21 Oct 30, 2026
jketema and others added 6 commits October 30, 2026 08:32
Keep the CodeQL-specific language/API version mapping and disable jdeps emission in the upgraded rules_kotlin archive. Use the upstream 2.4.21 module definition and registry version directly, without an extra version-rewrite patch.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Stub the compiler's new coroutines classpath entry and keep javac's JDK 25 compatibility warnings from inheriting the Kotlin target's warnings-as-errors setting.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Keep the custom language/API and jdeps patches under the repository's versioned registry override, and use the matching CodeQL suffix in the module dependency and registry metadata.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Keep the CodeQL language/API-version and jdeps customizations as contextual unified diffs, and refresh their registry hashes.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Include three unchanged lines before and after each customization so the registry patches remain readable and match normal unified diffs. Refresh the patch integrity hashes.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
The 2.4.21 rules reject language versions below 2.0, and their default compiler no longer supports those versions either. Keep the previously used Kotlin 2.2.21 compiler and permit the language/API versions required by the 1.8 and 1.9 extractors.

Build legacy standalone and embeddable variants in the Kotlin workflow alongside the default extractor so this compatibility is checked directly.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@jketema jketema changed the title build(deps): bump rules_kotlin from 2.2.2-codeql.1 to 2.4.21 build(deps): bump rules_kotlin from 2.2.2-codeql.1 to 2.4.21-codeql.1 Oct 30, 2026
jketema and others added 6 commits October 30, 2026 10:26
Restore the workflow's existing scope; the full extractor version matrix remains covered by the official build.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Describe the older extractors' language-version requirement directly rather than referring to the removed rules_kotlin version.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Use -Xlint:-options for the Java 8 compatibility warnings instead of disabling all javac warnings. Other warnings retain the warnings-as-errors behavior inherited from Kotlin.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Document why only javac's options lint category is disabled for the Kotlin extractor.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Avoid propagating Kotlin warn=error to javac in rules_kotlin 2.4. Preserve Java warnings as warnings instead of suppressing the JDK 25 options category, and remove the local javac lint override.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Document why javac warning propagation must stay separate: on JDK 25 the Java 8 target's obsolete options warnings otherwise become fatal under Kotlin warn=error.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant