[pacman-dev] Misleading info when epoch is used

Nagy Gabor ngaba at bibl.u-szeged.hu
Mon Dec 13 19:41:33 EST 2010

> On Tue, Dec 7, 2010 at 11:44 PM, Dan McGee <dpmcgee at gmail.com> wrote:
> > On Tue, Dec 7, 2010 at 4:55 PM, Nagy Gabor <ngaba at bibl.u-szeged.hu> wrote:
> >>> In fact I don't like neither force nor epoch. Epoch is just a version
> >>> prefix, why don't we let the packager to workaround this (KISS)? We can
> >>> introduce a new separator (now we have one: '.'), for example '#', and
> >>> let the packager define his favourite pkgversion (maybe epoch in mind),
> >>> like "1#0.6.2a-2". Epoch just complicates code and leads to "wtf"
> >>> imho...
> >>
> >> Well, of course a new separator is not necessary, packager can do
> >> everything with '.', e.g. he can use "". It is just more
> >> readable to the user (and the packager). The key here is that epoch is
> >> no more than a simple version prefix, and I think it is needless to
> >> introduce %EPOCH% database field etc.
> >
> > Because this is ugly as hell and it will result in 100+ bug reports
> > and "why is the version number off" questions in the first year. KISS
> > applies both ways- keep the code simple, but keep developers lives
> > from becoming enveloped in the first level of hell, and this
> > suggestion would unfortunately do that. :/
> >
> I am with Nagy until you convince me otherwise :)

Well, I may convince you otherwise. :-)

Unfortunately, it seems that there are situations, when we cannot
workaround epoch:
":: Starting full system upgrade...
warning: python-fuse: local (20090921-1) is newer than community (0.2.1-2)"

What can we do without epoch? Not too much (maybe keep date-like
versions). Until recently I've forgot about this, but probably these
situations are more common than pacman-incompatible versioning schemes
(which the packager could workaround easily).

With epoch, the epoch=0 default is important. Then, in fact, all package
versions start with "0." Personally I don't want to see "0." versions
everywhere. That is "ugly as hell", indeed.

Now I start to accept this epoch stuff... So I also think that this
epoch concept is needed, but the implementation is need to be discussed.
(I can still accept "1#0.2.1-2", too, but new separator is needed, and
missing '#' must be interpreted as epoch=0.)


More information about the pacman-dev mailing list