debファイルまたはaptの依存関係要件の末尾にあるチルダ(〜)はどういう意味ですか?

debファイルまたはaptの依存関係要件の末尾にあるチルダ(〜)はどういう意味ですか?

Aptの依存関係がどのように処理されるか、またはdebファイルに対してどのように定義されるかを知りたいです~(構文がどこに定義されているのかわかりません)。

python3依存関係制約を持つUbuntu(Focal)メタパッケージに関連する依存関係の問題を発見しましたpython3.8 >= 3.8.2-1~ここ)。

python3.8パッケージバージョンがアルファベット順にソートされるように定義されていると思いますが、Ubuntuフォーカスを確認してみるとアルファベット順にソートされたバージョンはありませんでしたが、Ubuntu Focalの依存関係が破損していると推定される>= 3.8.2-1~バージョンが1つありました(3.8.10-0ubuntu1~20.04.4彼らはそうではありません~)または依存関係に特別な意味があります。

このトピックについて私が見つけることができる唯一の文書はDebianの文書です。パッケージ間の関係宣言。ただし、これは~ORパターンの一致には言及しません。

~もしそうなら、.deb依存関係の末尾の意味は何ですか?

ベストアンサー1

これ文書制御Versionフィールドの状態(全体のアルゴリズムについてはページを参照):

数字以外の文字だけで構成される各文字列の最初の部分を識別することから始めます。これら2つの部分(そのうちの1つは空にすることができます)は語彙的に比較されます。違いが見つかると返されます。

語彙比較は、変更されたASCII値を比較して、すべての文字がすべての非文字よりも前に並べ替えられ、チルダが他のものよりも前に(セクションの終わりに)整列されるようにします。たとえば、次のセクションは、最も早いものから最新のものまでソートされます。、、、、空 ~~のセクション、。~~a~a

チルダに追加された脚注:

一般的な用途の1つ~は上流の試用版です。たとえば、 1.0~beta1~svn1245前のソート1.0~beta1、以前のソートです1.0

おすすめ記事