Re: [PATCH v4 2/2] version-gen: fix versions
- From
Felipe Contreras <felipe.contreras@gmail.com>
- Date
- Oct 14, 2013, 02:42 UTC
- Message-ID
- <CAMP44s2o5O=zKBef5Jn486yYkYYvuLSZRQokZAUQVN+EE=3+3Q@mail.gmail.com>
- In-Reply-To
- <CAJDDKr5K0UjcbhUpAjHjGcEk6=E2+cAVC8-RpxY+C1atSVj-Tg@mail.gmail.com>
On Sun, Oct 13, 2013 at 4:56 PM, David Aguilar <davvid@gmail.com> wrote:
Show 37 quoted lines
> On Sat, Oct 12, 2013 at 12:07 AM, Felipe Contreras
> <felipe.contreras@gmail.com> wrote:
>> Virtually all packaging guidelines would prefer 1.8.4~rc1, over
>> 1.8.4.rc1 or 1.8.4-rc1, so it makes sense to use that instead.
>>
>> In particular, the only packaging we provide, git.spec, generates a
>> wrong version, because git-1.8.4 < git-1.8.4.rc1, changing to ~rc1 fixes
>> the problem as it's considered newer.
>>
>> The same happens in dpkg.
>>
>> Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
>> ---
>> GIT-VERSION-GEN | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/GIT-VERSION-GEN b/GIT-VERSION-GEN
>> index e96538d..c04c4de 100755
>> --- a/GIT-VERSION-GEN
>> +++ b/GIT-VERSION-GEN
>> @@ -28,7 +28,7 @@ then
>> VN=$(cat version) || VN="$DEF_VER"
>> elif test -d ${GIT_DIR:-.git} -o -f .git && describe
>> then
>> - VN=$(echo "$VN" | sed -e 's/-/./g')
>> + VN=$(echo "$VN" | sed -e 's/-/~/g')
>> else
>> VN="$DEF_VER"
>> fi
>> --
>
> This seems related:
>
> http://lintian.debian.org/tags/rc-version-greater-than-expected-version.html
>
> Should the RC tags in the Git repo be named v1.2.3~rc4 (tilde-rc#)
> instead of dash-rc#, or does that not matter?I thought so first, but then I realized ~ is not allowed in a ref.
Show 6 quoted lines
> If so, would that change anything about this patch, or is it better to > normalize it all here? > > The input is subtly different sometimes so I'm curious whether whether > "~" is preferred in all cases (particularly, by all package managers). > e.g.
All package managers I investigated do handle ~ specially, and thus recommend it for rc versioning, except pacman. So in pacman, v1.5.0~rc4 would remain newer than v1.5.0, but that's not different from the current situation, and there isn't much we can do about that.
Show 5 quoted lines
> $ git describe v1.5.0^ > v1.5.0-rc4-372-g26cfcfb > > $ git describe v1.5.0.1^ > v1.5.0-27-g38eb932
At least both in RPM and dpkg, 1.5.0~27 is newer than 1.5.0~rc4.
-- Felipe Contreras