release-please draft: true バグの状況
- ステータス: Open(2024-03-21 起票)
- 内容: Release PR をマージ後、draft release は正しく生成されるが、同時に不要な重複 Release PR が自動作成される
- 修正 PR: #1206(Open、未マージ)—
createReleases() 実行後の不要な PR 作成をスキップする修正
- ステータス: Open(2025-05-07 起票)
- 内容:
draft: true 設定時、Release PR マージ後にマイナーバージョンが bumped された重複 PR が全コミット一覧付きで自動作成される。draft: true を外すと発生しない
- コメント: なし
- ステータス: Open(2025-12-10 起票)
- 内容:
draft: true 設定時、Action の実行時間が約 14 秒から 3〜4 分へ大幅に劣化(約 15〜17 倍)
- コメント: なし
まとめ
3 件とも Open のまま。修正 PR #1206 が重複 PR 問題をカバーする見込みだが、未マージ。パフォーマンス劣化(#1169)は別件として未対応。draft: true を使う Draft-then-Publish パターンは現時点で安定しない。
代替ツール比較表
| ツール |
モノレポ |
多言語 |
Conventional Commits |
Release PR |
Draft-then-Publish |
| release-please |
✅ manifest 方式 |
✅ Node/Go/Rust/Python/Java 等 |
✅ ネイティブ |
✅ コア機能 |
⚠️ バグあり(上記) |
| semantic-release + multi-semantic-release |
⚠️ 外部ラッパー必須 |
✅ プラグイン経由 |
✅ ネイティブ |
❌ 完全自動(PR なし) |
⚠️ プラグインで対応可能だが非標準 |
| changesets |
✅ 設計の中心 |
⚠️ npm 中心、他言語は手動対応 |
❌ changeset ファイル方式 |
✅ Version PR |
⚠️ Issue #322 で要望中、未実装 |
| release-it |
❌ 単一パッケージ前提 |
⚠️ プラグイン経由 |
⚠️ プラグイン(@release-it/conventional-changelog) |
❌ 手動 or CI 統合 |
✅ draft release 対応 |
| knope |
✅ packages 設定 |
✅ 言語非依存(Rust 製 CLI) |
✅ ネイティブ |
✅ prepare-release ワークフロー |
✅ GitHub Release 作成対応 |
| cocogitto |
✅ cog bump --auto |
✅ 言語非依存(Rust 製 CLI) |
✅ ネイティブ |
❌ CLI ベース(PR ワークフローなし) |
⚠️ GitHub Release 作成は GitHub Actions で補完 |
| ship.js |
❌ 単一パッケージ |
⚠️ npm 中心 |
✅ デフォルト |
✅ prepare → trigger の 2 ステップ |
⚠️ カスタム hook で対応 |
| lerna |
✅ 元祖モノレポ |
❌ npm/yarn のみ |
⚠️ --conventional-commits フラグ |
❌ 手動 or Nx 統合 |
❌ 非対応 |
推奨アクション
現状維持を推奨(条件付き)
release-please は、要件(モノレポ・多言語・Conventional Commits・Release PR)を全て満たす唯一のツール。draft: true バグの修正 PR #1206 がマージされれば、Draft-then-Publish パターンも安定する見込み。
移行を検討すべきケース
- 修正 PR #1206 が 3 ヶ月以上マージされない場合
- パフォーマンス劣化(#1169)が業務に支障をきたす場合
移行先候補
- knope: 全要件を満たす最有力候補。Rust 製で高速、言語非依存、モノレポ対応、PR ワークフローあり。ただしエコシステムが release-please より小さい
- cocogitto: knope と同様の特性だが、PR ワークフローが組み込まれていないため GitHub Actions での補完が必要
当面の回避策
draft: true を外し、GitHub Actions の後続ステップでリリースを draft に変更 → アセット追加 → publish する方法で Draft-then-Publish パターンを実現可能。
このレポートは Claude Code Scheduled Task により自動生成されています
release-please
draft: trueバグの状況googleapis/release-please-action#962
createReleases()実行後の不要な PR 作成をスキップする修正googleapis/release-please-action#1111
draft: true設定時、Release PR マージ後にマイナーバージョンが bumped された重複 PR が全コミット一覧付きで自動作成される。draft: trueを外すと発生しないgoogleapis/release-please-action#1169
draft: true設定時、Action の実行時間が約 14 秒から 3〜4 分へ大幅に劣化(約 15〜17 倍)まとめ
3 件とも Open のまま。修正 PR #1206 が重複 PR 問題をカバーする見込みだが、未マージ。パフォーマンス劣化(#1169)は別件として未対応。
draft: trueを使う Draft-then-Publish パターンは現時点で安定しない。代替ツール比較表
cog bump --auto--conventional-commitsフラグ推奨アクション
現状維持を推奨(条件付き)
release-please は、要件(モノレポ・多言語・Conventional Commits・Release PR)を全て満たす唯一のツール。
draft: trueバグの修正 PR #1206 がマージされれば、Draft-then-Publish パターンも安定する見込み。移行を検討すべきケース
移行先候補
当面の回避策
draft: trueを外し、GitHub Actions の後続ステップでリリースを draft に変更 → アセット追加 → publish する方法で Draft-then-Publish パターンを実現可能。このレポートは Claude Code Scheduled Task により自動生成されています