ci: CD と週次マイナー横断のワークフローを追加し、依存グラフの登録対象を絞る - #28
Merged
Conversation
dependency-submission は解決済みの全構成を登録するため、compileOnly(maven-core / kotlin-compiler-embeddable 等)・テスト・buildscript のクラスパスまで alerts の対象になっていた。 4 成果物の公開 POM が持つ依存は kotlin-stdlib と自プロジェクトのみであり、これらは利用者へ届かない。 登録対象を runtime classpath(公開 POM の compile / runtime スコープの元)へ絞る。 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
コンパイラプラグイン API に互換性保証が無いため、新しい Kotlin マイナーへの対応可否は 実際にビルドを通すまで分からない。プレリリースの段階で検知できるよう、週 1 で -PkotlinVersionOverride によるフルビルドと integration-test を回す。 検出は Maven Central のメタデータを情報源とし、比較はプレリリース接尾辞を落とした版で行う (sort -V は 2.4.20-Beta2 を 2.4.20 より後ろへ置くため、接尾辞付きのまま比べると 安定版の公開後もその版を拾い続ける)。 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
タグ v<KotlinVersion>-<自版> の push を起点に、ゲート(フルビルド + integration-test)を 通してから Maven Central と Gradle Plugin Portal へ公開し、GitHub Release を作る。 版の正はビルドの導出値でありタグはその写しに過ぎないため、両者の一致を公開前に照合する (SNAPSHOT のまま打たれたタグもこの照合で落ちる)。Central は公開の確定を Portal 上の 手作業に残し、取り消しのきかない Plugin Portal はその後に置く。 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
k163377
force-pushed
the
ci/release-workflows
branch
from
August 8, 2026 03:47
72586ec to
8a2e392
Compare
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.
CD・週次マイナー横断・依存グラフの範囲を実装する。
変更
dependency-submissionの対象を runtime classpath へ限定kotlin-prerelease.yml(schedule + workflow_dispatch)publish.yml(タグv*の push で駆動)依存グラフの絞り込み
4 成果物の公開 POM が持つ依存は kotlin-stdlib と自プロジェクトのみで、現在 open な maven 生態系の
alert 11 件(jackson・commons-io・plexus-utils・jsoup・opentelemetry-api)はいずれも
compileOnly・テスト・buildscript 側の推移依存であり利用者へは届かない。フィルタは configuration 名の完全一致で評価され、include と exclude は両方が適用される
(
ResolvedConfigurationFilterの実装で確認)。マージ後の main への push で既存 alert が解消されることを別途確認する。
週次マイナー横断
検出は Maven Central のメタデータを情報源とする(Kotlin のプレリリースは安定版と同じく
Central へ公開され、プラグインマーカーも Plugin Portal 経由で解決できる)。
比較はプレリリース接尾辞を落とした版で行う。
sort -Vは2.4.20-Beta2を2.4.20より後ろへ置くため、接尾辞付きのまま比べると安定版の公開後もその版を拾い続ける。
current= 2.4.10 / 2.4.20 / 2.4.30 と同ライン RC の各ケースで判定を確認済み。公開ワークフロー
ゲート(フルビルド + integration-test)→ Central → Plugin Portal → GitHub Release の順。
版の正はビルドの導出値であり、タグはその写しとして公開前に照合する。
シークレットは
MAVEN_CENTRAL_USERNAME/MAVEN_CENTRAL_PASSWORD/SIGNING_IN_MEMORY_KEY/SIGNING_IN_MEMORY_KEY_PASSWORD/GRADLE_PUBLISH_KEY/GRADLE_PUBLISH_SECRETの名前で登録する必要がある。Dokka / GitHub Pages への deploy は過去版保持の配線を要するため本 PR には含めない。
🤖 Generated with Claude Code