バージョン文字列の前にあるコロンの前に余分な数字があるパッケージがあるのはなぜですか?


29

Wine(および他の多くのパッケージ)がバージョン管理スキームを次のようなものにシフトしていることに気付きました。

1:1.6.2-0ubuntu3

私はすべてを理解した後に1: ...しかし、何をん1:を参照してください?

メジャーバージョンを反映していないようです。保留中のアップグレードのリストを見ると、次のようなバージョン2:4.1.3...があります#:。プレフィックスのないパッケージがたくさんあります。

どうしたの?


それはUbuntuの特定のようだ、packages.debian.org/sid/wineは、このプレフィックスはありません
シルヴァン・ピノー

UbuntuのWineでも新しい(14.04時点)が、python3-unoUbuntu Debianのような)他のパッケージには常に接頭辞が付いています。
オリ

確かに、私はスーパーユーザに答えを見つけた
シルヴァン・ピノー

@Oli ワインにとって新しいものではなく、常に存在していましたが、その値は0常に14.04までだったため、バージョン文字列に書き込むために省略されました。そのため、実際にはが含まれているため#:接頭辞なしでこれらのたくさんのパッケージを考えることができます0:。よりよく理解するために受け取った答えを参照してください。
ラドゥラデアヌ14

回答:


26

からman deb-version

NAME
       deb-version - Debian package version number format

SYNOPSIS
       [epoch:]upstream-version[-debian-revision]

DESCRIPTION
       Version  numbers as used for Debian binary and source packages
       consist of three components. These are:

       epoch  This is a single (generally  small)  unsigned  integer.
              It  may  be omitted, in which case zero is assumed.  If
              it is omitted then the upstream-version may not contain
              any colons.

              It is provided to allow mistakes in the version numbers
              of older versions of a package, and  also  a  package's
              previous version numbering schemes, to be left behind.

したがって、その余分な数字(あなたの場合1)はエポックコンポーネント指し、省略されている場合は0が想定されます。したがって、バージョン文字列が表示されるように見える1.6.2-0ubuntu3場合、実際にはのように見えると考えることができます0:1.6.2-0ubuntu3。これはどのように役立ち、どのようになりますか?パッケージの古いバージョンのバージョン番号の間違いや、パッケージの以前のバージョン番号付けスキームを残しておくために提供されています。よりよく理解するには、Debian Policy Manual-Controlファイルとそのフィールドの以下の説明文をよく見てください:

2つのバージョン番号を比較した場合、最初のエポック毎のが比較され、次いでupstream_version場合エポックは等しく、その後で debian_revision場合upstream_versionでも同じです。エポックは数値的に比較されます。

そして:

エポックの目的は、バージョン番号の間違いを残し、バージョン番号スキームが変更される状況に対処できるようにすることです。パッケージ管理システムが解釈できない文字列(またはなど)を含むバージョン番号、または愚かな順序に対処することは意図されていませんALPHApre-


14

これは時代です。2つのパッケージのどちらが新しいかを判断する際に、バージョンをオーバーライドします。

deb-versionmanページから:

   epoch  This is a single (generally small) unsigned integer.  It may  be
          omitted,  in  which case zero is assumed.  If it is omitted then
          the upstream-version may not contain any colons.

          It is provided to allow mistakes in the version numbers of older
          versions  of  a  package,  and also a package's previous version
          numbering schemes, to be left behind.

ソース

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.