Mail archive

Re: [alpine-devel] APK version formats

From: Timo Teras <>
Date: Fri, 6 Apr 2012 16:06:22 +0300


On Fri, 6 Apr 2012 07:39:54 -0400 Kiyoshi Aman
<> wrote:

> Would it be possible for apk-tools' versioning code to be adapted to
> support underscores? Such version numbers are unfortunately common,
> e.g. for RCs and on Perl modules such as ExtUtils::MakeMaker.
> Moreover, most other package managers do support these version
> numbers. I look forward to working with you folks on this matter.

For others, we discussed this shortly in irc earlier; and the proposal
is to accept version numbers "1.2.3_01" which are currently considered
invalid. I also thought 1.2.3_rc1 is invalid, but that in fact is
currently valid. However, 1.2.3-rc1 is invalid.

I believe this is legacy of using in the dawn of time emerge and
portage to do building. And (at least at the time) the underscore was
not considered valid in versions.

The current rule is that version is something like:

Suffixes go into two categories "pre" and "post" version suffixes.

"pre" versions are "alpha", "beta", "pre", "rc" and a version with any
of these suffixes get sorted as earlier or lower than version without
the suffix.

"post" versions are "cvs", "svn", "git", "hg", "p" and get sorted later
than or greater than version without suffix.

I generally have no objection of handling empty string as "post"
suffix. Assuming that's ok with ncopa and others. I think we should not
have anything using Gentoo heritage anymore, so this should be safe

Though, currently we do not support -rc1; and I'd prefer to keep this
that way. 1.2.3-rc1-r1 might be confusing.

So the question is with 1.2.3_01 versions if it's more trouble to
mangle them (to; 1.2.3_p01; or similar) without causing too
much trouble. Or if we should just accept 1.2.3_01 as-is. At least it
would not cause any problems to sort them properly.


- Timo

Received on Fri Apr 06 2012 - 16:06:22 UTC