Skip to content

開発版チャネル(develop)の版数に接尾辞が付かず、正式版と同じ版数のまま配られている #710

Description

@takemi-ohama

何が起きているか

開発版の版数の付け方は、B(まとまりのマージが終わった後に -dev.1 を出し、続けて接尾辞を外して正式版にする)を採った。 release の「検証への配布」がこの形を定める(plugins/ndf/skills/release/SKILL.md:55、:62-64「パッケージやアプリは開発版と分かる版数での公開(-dev などの接尾辞…)」)。v10.14.0 以降の版はすべてこの形で出ている。

$ git log --oneline -8 origin/develop -- plugins/ndf/.claude-plugin/plugin.json
254a5232 Release: ndf v10.16.1
0f078373 Release: ndf v10.16.1-dev.1
b1a5d8c7 Release: ndf v10.16.0(開発版 10.16.0-dev.1 の接尾辞を外す)
8b9e3366 Release: ndf v10.16.0-dev.1
2e3e314c Release: ndf v10.15.1(開発版 10.15.1-dev.1 の接尾辞を外す)
dd16853d Release: ndf v10.15.1-dev.1(#762 の修正の開発版)
544350cf Release: ndf v10.15.0(開発版 10.15.0-dev.1 の接尾辞を外す)
71c914b9 Release: ndf v10.15.0-dev.1(マイルストーン 18 の開発版)

残るのは、正式版を出してから次の -dev.1 までの間の develop == main である。 今 origin/develop と origin/main はどちらも 10.16.1 を指す。配布の後に #843 が develop へマージされたが、版数は同じままである。

$ git show origin/develop:plugins/ndf/.claude-plugin/plugin.json | grep '"version"'
  "version": "10.16.1",
$ git show origin/main:plugins/ndf/.claude-plugin/plugin.json | grep '"version"'
  "version": "10.16.1",

なぜ問題か

docs/versioning-and-distribution.md の
「版の付け方と開発版の配布」は、接尾辞の理由を 2 つ挙げている。

  1. 入れたくない利用者が版数を見て判断できるようにする
  2. 2 つのチャネルが同じ版数へ解決されると更新が飛ばされる(公式ドキュメントの release channel の注意)

同じ文書の 56 行は「develop の版数へ接尾辞を付けておけば、main の版数と必ず異なる」と書く。
B では、正式版を出してから次の -dev.1 を出すまでの間はこれが成り立たない。 その間に develop へ
マージされた変更は、develop を登録した利用者が plugin update を実行しても届かない可能性がある。

決めること

案 内容 懸念
受け入れる 正本の 56 行の「必ず異なる」を「開発版を出している間は異なる」へ改める 正式版の直後にマージされた変更は、次の開発版まで届かない
直後に上げる 正式版を出した直後に develop を <次>-dev.0 へ上げる 配布の工程に版上げのコミットが 1 つ増える。次の版数(パッチか minor か)をその時点で決めることになる

直す場所

関連

見つけた場面

v10.13.0 の配布(PR #709)の振り返り。配布の工程で develop の版数を読んだときに気づいた。

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    area: docs説明文書とリポジトリ運用enhancementNew feature or requestpriority: medium保守性・設計一貫性など、計画的に対応する

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions