Hi, I maintain a package in the AUR [1], coq [2], whose upstream versioning scheme is a bit strange.
Basically, they release versions in the following order:
8.4 → 8.4pl1 → 8.4pl2 → 8.5 → 8.5pl1 → etc
This breaks pacman's comparison function. For instance, with a local
repo, pacman does not consider that the new version 8.5pl3-1 is newer than
the old 8.5-1:
# pacman -Syu
warning: coq: local (8.5-1) is newer than repo (8.5pl3-1)
This makes sense given the documented behaviour of pacman(8):
When upgrading, pacman performs version comparison to determine which
packages need upgrading. This behavior operates as follows:
Alphanumeric:
1.0a < 1.0b < 1.0beta < 1.0p < 1.0pre < 1.0rc < 1.0 < 1.0.a < 1.0.1
Numeric:
1 < 1.0 < 1.1 < 1.1.1 < 1.2 < 2.0 < 3.0.0
What is the best solution to deal with this? I think I can either map the
scheme to a more reasonable one (e.g. "8.5.pl3" instead of "8.5pl3"), or
bump the epoch when needed.
Thanks,
Baptiste
[1] https://aur.archlinux.org/packages/coq/
[2] https://coq.inria.fr/
signature.asc
Description: PGP signature
