-
Notifications
You must be signed in to change notification settings - Fork 11
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
alphaタグ導入による開発バージョン管理の提案 #1411
Comments
RFCのpull requestを開きました。 JDimproved/rfcs#10 |
個人的な意見としては:
|
@mtasaka
アルファベット順になるalphaでやってみます。
JDimは開発者やテスターじゃない方もソースからビルドして使うので |
了解です。では alpha タグでお願いします。 |
開発中のバージョンであることを明らかにするためalpha版に更新します。 関連のissue: #1411
開発中のバージョンであることを明らかにするためalpha版に更新します。 関連のissue: #1411
alpha版に更新しました。 #1414 |
alphaタグ導入による開発バージョン管理の提案
背景や動機
JDim のバージョンは番号、開発段階タグ、日付の3つで構成されています。
YYYYMMDD
, 例えば2024年7月10日なら20240710
となります。<番号>-<開発段階タグ><日付>
となります。Note
開発段階タグはGitタグとして作成するものではなく、
jdim --version
で表示するバージョン情報に含まれる開発段階を表すタグ(リリース修飾子)です。例:
現状の問題点
リリース後に修正が加えられてもバージョン番号が変わらなければ、一見して最新版かそうでないか判別できません。
このため、ユーザーがリリース版と開発版どちらを使っているか判断しづらく、issue や掲示板での対応が難しくなっています。
解決方法
edit(2024-07-09): 下記コメントで指摘がありalphaを使います。
0.12.0をリリースした後から
devalphaタグ、ならびにバグ修正版のブランチを試験的に導入することを提案します。alphaタグ:
リリース後から機能フリーズまでの開発期間中は、master ブランチのバージョンに alpha タグを追加します。
<次期リリースの番号>-alpha<日付>
とします。alphaタグを用いたバージョンの例:
バージョン表記例:
※バージョンは例です。実際のバージョンとは異なります。
バグ修正版のブランチ:
リリース後 master ブランチに alpha タグを付与する場合、バグ修正版をリリースする必要が生じた際は旧バージョンへ戻す必要があります。
一つのブランチで管理すると、リリース版と開発版が混在し、履歴を追跡するのが困難になるため
Gitリポジトリの tag が付けられたリリースのコミットからブランチを分岐して管理します。
バグ修正版のリリースは、リソース状況を考慮し、メンテナーが判断します。
バグ修正版が必要になった場合は、改めてissueを作成し、その際にブランチを作成します。
代替案
タグの案と候補から外した理由
alpha理由: 多くのソフトウェアで開発版リリースに使用されていますが、
alpha版は次のバージョンに入る主要な機能が追加された段階を指すことが多く、
リリース直後の早期開発段階には合わないため候補から外しました。
nightly
理由: 毎日更新される開発バージョンに使用されますが、
JDim は CI/CD でsnapパッケージを毎日更新しているわけではないため候補から外しました。
weekly や monthly
理由: 毎週/毎月更新される開発バージョンに使用されますが、定期的リリースを行わない場合は適切ではないため候補から外しました。
canary
理由: Webブラウザ Google Chrome やその派生物で使用されていますが、
JDim は Chrome と技術的に無関係であるため、誤解を避けるために候補から外しました。
通常の開発では到達不可能な、次のリリースバージョンに近い値にする (例: 開発中: 0.12.99 → リリース: 0.13.0)
理由: 一部のソフトウェアでは、大きなバージョンアップを予告するために使用されますが、
開発に関わっていないと意味やニュアンスが伝わりにくい可能性があるため、候補から外しました。
dev
alphaタグ導入による開発バージョン管理の提案 #1411 (comment)
追加の情報
開発中のバージョンを表すために "dev" を使用しているソフトウェアの例として、Android 用2ch互換掲示板アプリの ChMate があります。"dev" は、ユーザーにとって他の案より馴染みのある表記である可能性が高いです。
バージョンの付け方の更新は開発保守に影響を与えるため RFC があるとよいですが、
まずは試験的に導入し、RFC の草案を公開して検討したいと思います。
参考資料
The text was updated successfully, but these errors were encountered: