Version::NextっぽいPythonパッケージnextversion作りました
バージョン番号の管理に使えそうなPythonパッケージ, nextversion を作りました.
今のバージョン番号を文字列で与えると,次のバージョン番号(の最有力候補)が帰ってきます.
from nextversion import nextversion nextversion('1.0a2') # => '1.0a3' nextversion('v1.0a2') # => '1.0a3' (normalized to compatible version with PEP 386) nextversion('foo.0.3') # => None (impossible to normalize)
インストール
PyPI から拾ってこれます.
$ pip install nextversion
生成されるバージョン番号の規則
PEP 386 で提唱されているバージョン番号のフォーマットに従い, 次のバージョン番号が生成されます.
自分のつけているバージョン番号が PEP 386 に従ってるか調べるのにも便利かも.
使い所
Perlには同様の動作をするモジュール Version::Next があります. これがどう使われているかというと,例えば Minilla が使ってます.
Minillaは, minil release
というPerlのモジュールをアップロードするコマンドを提供していて,このコマンドは自動的に次のバージョン番号をサジェストしてくれます.
minnil release
の役割はそれだけではなく,色んなファイルの中にある古いバージョン番号を新しいバージョン番号に変えてくれたり,ChangeLogを忘れずに編集するようにエディタを開いてくれたりします.
PythonにもPyPIへのリリース時に minil release
みたいにできると便利だなと思い,その足がかりとして nextversion を作りました.
バグ報告など
https://github.com/laysakura/nextversion でお待ちしてます.