On Fri, Mar 23, 2007 at 02:18:33PM -0700, Toshio Kuratomi wrote:
On Fri, 2007-03-23 at 14:50 -0500, Jason L Tibbitts III wrote:
> "TC" == Tom "spot" Callaway <Tom> writes:
TC> I have added a draft for handling Post Release packages.
It might be worth mentioning what to do when upstream ODs on the crackrock and unexpectedly changes to a non-ordered versioning scheme in the middle of a sequence. Something like:
openssl-0.9.6g openssl-0.9.6h openssl-0.9.6final
Epoch is probably the only way out here unless we allow something nasty.
Note that this particular example would be very cracktastic as we're talking about postrelease tags.. so presumably upstream has already released openssl-0.9.6.
Which is not to say that upstream's twisted numbering scheme won't do *something* unexpected.
That's true for purely numerical schemes as well. Looking at perl and perl modules a rpm packager gets head-aches.
Which is one reason I'd rather see us use the %{X}.%{alphatag} syntax always. The other reason is that using it always makes things less complicated. Instead of asking::
Is this a prerelease or a postrelease? If postrelease, is upstream likely to use sane numbering? If no, use postrelease scheme If yes, use upstreams version until they screw up one time If prerelease, use prerelease scheme
Our rule would be:: Does upstreams version have an alpha tag? If yes, use alphatag versioning.
The point is that we don't really want too many of the prereleases and therefore don't care about the (temporary) obfuscation that much (not that we could do anything better anyway).
But with "postreleases" it's quite different. openssl is a prominent example where people will be confused to see openssl-0.9.8-8.3.b.fc6 instead of what we currently have: openssl-0.9.8b-8.3.fc6.
Other prominent or not so prominent examples I find on my system are openssh-4.3p2-14.fc6, libjpeg-6b-37, automake14-1.4p6-13, flex-2.5.4a-41.fc6, tzdata-2007c-1.fc6, ntp-4.2.4p0-1.fc6, setuptools-0.6c2-5.fc6.at, man-1.6d-2.fc6, libcdaudio-0.99.12p2-8.fc6.at.
I agree that letters in versioning are a bad thing, but we should try to get that done upstream, and try to stick as much as technically sane to upstream versioning (e.g. epochs are not considered sane in this context).