[arch-general] Pacman behaviour comparing numerical versions for package upgrades
Allan McRae
allan at archlinux.org
Fri Jun 29 01:58:04 EDT 2012
On 29/06/12 15:50, Myra Nelson wrote:
> I have a question about pacman's behaviour regarding packges to be updated.
>
> According to < $: man pacman >
>
> You can also use pacman -Su to upgrade all packages that are out of
> date. See Sync Options below. When upgrading, pacman performs version
> comparison to determine which packages need upgrading.
>
> 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
>
> That's very clear and makes sense. Here's where I'm confused. I build
> some of my perl pacakges with cpanpkgbuild -f XXX::XXX::YYY. The
> package from the official repos is:
> perl-datetime-format-strptime-1.5000-1-any.pkg.tar.xz
>
> the package I built is:
> perl-datetime-format-strptime-1.51-1-any.pkg.tar.xz
>
> I'm used to the warning package ??? local is newer than extra ???. But
> with the above referenced package I had to list it in the [ IgnorePkg
> ] line to keep pacman from trying to upgrade the package and still get
> this warning.
>
> "Ignoring upgrade from perl-datetime-format-strptime from 1.51-1
> to 1.5000-1"
>
> No complaints as it's easy to fix, I was just wondering about the
> reasoning. I'll jump out on a limb here and assume it's because the
> repo package has 4 digits then the package version after the decimal
> point and my package has two digits then the package version after the
> decimal point. The developer changed his numbering scheme after 1.5000
> to 1.51.
>
> Is this the correct behaviour for pacman?
>
5000 > 51
More information about the arch-general
mailing list