requirements.txt のチルダイコール (~=) はどういう意味ですか? 質問する

requirements.txt のチルダイコール (~=) はどういう意味ですか? 質問する

私が使用している Python ライブラリではrequirements.txt、要件の 1 つが次のように指定されています。

mock-django~=0.6.10

どういう~=意味?

ベストアンサー1

これは、0.6.10 以上であるが、まだ 0.6.* バージョンであるパッケージの最新バージョンを選択することを意味します。したがって、たとえば 0.7.0 はダウンロードされません。パッケージのメンテナーがセマンティック バージョニング (互換性に影響する変更はメジャー バージョンでのみ発生すると規定) を尊重する場合、セキュリティ修正プログラムを入手しながらも下位互換性を維持できます。

あるいは、PEP 440 では次のように述べられています:

特定のリリース識別子 VN の場合、互換性のあるリリース句は、次の比較句のペアとほぼ同等です。

>= V.N, == V.*

おすすめ記事