Semantic versioningpre-release versionの概念を定義:
プレリリースバージョンはハイフンとドットのシリーズを追加することによって表すことができるパッチバージョンの直後の識別子を分離しました。識別子はASCII英数字とハイフン[0-9A-Za-z-]のみで構成されなければなりません。識別子は空であってはいけません。数値識別子には先行ゼロを含めてはならない(MUST NOT)。プレリリースバージョンは、関連する通常バージョンよりも優先順位が低くなります。プレリリースバージョンは、バージョンが不安定であり、関連する通常バージョンで示される意図された互換性要件を満たしていない可能性があることを示します。例:1.0.0-alpha、1.0.0-alpha1,1.0.0-0.3.7,1.0.0-x.7.z.92
これをCargoで使用するには、リリース前の識別子を追加します。これを使用するには
[package]
name = "library"
version = "0.1.1-beta.0"
、あなたは特別バージョン要件にbeta
を置くことによって、それにオプトインする必要があります:私はあなたが秒を必要とする場合は、簡単に増やすことができ、-beta.0
を示唆
[dependencies]
library = "0.1.1-beta"
これをテストするには、I:
- ローカルcrates.ioサーバーをスピーンアップします
0123それはバージョン0.1.1-beta.0とクレート
ライブラリをアップロード0.1.0
- に解決 - バイナリプロジェクトアプリで
library = "0.1.0"
を使用したバージョン0.1.0
- とクレートライブラリをアップロード
- an
cargo update
app - バージョンはに変更されていません。 アプリにlibrary = "0.1.1-beta"
に変更
- 、
cargo update
を走った - バージョンは変更をしました。は変更をしたバージョン - バージョン0.1.1-beta.1
- とクレートライブラリをアップロード
- はアプリで
cargo update
蘭。
ファンタスティックな答え。ありがとうございました。 – Kornel