Elliot Lee <sopwith(a)redhat.com> writes:
The stuff that could improve is eliminating "non-numeric version
release". For the sake of keeping things sane and simple, the Version:
should normally match the upstream version. If there are versions such
as 0.1beta that compare as "greater than" 0.1, then epoch should be
I do not think so; non-zero epochs should be avoided. Instead of, we
should fix the non-numeric version numbers once and forever by changing
rpmvercmp() (this is inspired by something which I read on the upm
maillist but I do not have a link to it):
Introduce a smaller-than-everything delimiter like '~' so that e.g. the
following relations will hold:
1.0~a < 1.0 < 1.0a
Advantages are, that it has a clear semantic, it will not break the
traditional rpmvercmp() and does not require addition rpm headers.
Disadvantages are some uglyness in the naming, that you can not use
'~' as a reqular character anymore (I am not aware of any package
having this) and that it causes problems with previous rpm versions
not knowing this.
That's one of the situations that epoch was created for.
Epochs were acceptably with the previous behavior (missing epoch in
comparision means the epoch of the other side). The current behavior
(no epoch means epoch 0) makes it impossible to depend on any upstream
version. Therefore, non-zero epochs should be avoided.