「Open棟梁 wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。
目次 †
概要 †
- Open棟梁のバージョン番号付与ポリシーについてまとめた。
- 基本的には、6ヶ月単位の定期リリースの際にバージョンアップさせる。
詳細 †
AssemblyVersion? †
- major.minor.build.revisionの形式で、AssemblyInfo?やProjectファイルに付与する。
- AssemblyFileVersion?、AssemblyInformationalVersion?はこの値を使用する。
major †
後方互換は維持しているので、
- コンセプト変更や、
- 5年以上のminor更新の継続
などで、インクリメント。
minor †
半年単位のリリースでインクリメントしていく。
build †
NuGet?リリースの度にインクリメントしていく。
revision †
使用しないので、常に0。
PackageVersion? †
- major.minor.buildの形式で*.nspecファイルに付与する。
- revisionは使用しないので、AssemblyVersion?の頭3つと同じになる。
実運用 †
6ヶ月単位の定期リリース以外の例外運用についてメモ。
AssemblyVersion?とPackageVersion?の関係 †
- AssemblyVersion?のアップデートはリリースのたびに任意(.NETの仕様上)。
- PackageVersion?のアップデートはリリースのたびに必須(NuGet?の仕様上)。
- 従って、AssemblyVersion?とPackageVersion?が一致しないことがある。
2つのバージョン番号を一致させるケース †
- 6ヶ月単位の定期リリース時
- 修正範囲が上位パッケージを含め広範囲に渡る場合
- バージョンアップを適用する場合、
- 対象となる、上位パッケージのNuGet?参照をバージョンアップする。
- この場合、アセンブリ・バージョン・リダイレクトの設定が必要になるケースがある。
2つのバージョン番号を一致させないケース †
- 例えば、最下位のPublicのみバージョンアップさせるケース。
- 上位パッケージを修正しないでメンテナンスを済ませたい場合。
- バージョンアップを適用する場合、
- 最上位のアプリケーションから、新バージョンのNuGet?参照を追加して上書きする。
- この場合、アセンブリ・バージョン・リダイレクトの設定は不要になる。
参考 †