On Wed, 8 Jul 2020 02:57:57 +0000
Max Magorsch <[email protected]> wrote:

>   - all outdated packages (according to repology)

Unfortunately for Perl, repology can't be taken verbatim.

There's a really fun problem with Perl versions, so I'll link you to
our writeup to explain it:

https://wiki.gentoo.org/wiki/Project:Perl/Version-Scheme

This has some side effects visible in packagetest

- https://packagestest.gentoo.org/packages/dev-perl/App-FatPacker

Already up-to-date, it just can't tell because the versions don't match 
upstream.

- https://packagestest.gentoo.org/packages/dev-perl/Alien-Build

Already up-to-date, it just can't tell, because the versions don't match 
upstream.

The "easy" workaround is to use `dev-perl/Gentoo-PerlMod-Version`, and
have it munch upstreams version into a "gentoo normalized version", and
then use that version for comparison.

But this is not itself going to remove the *whole* problem, just most of it.

Sometimes upstream do cute things, like:

- Ship 1.60
- Then ship 1.61
- Then ship 1.612
- Then ship 1.62

^^^^ This is legal in perl.

But many tools like repology get confused by this, and can think that
"1.612" is the "latest", when its really "1.62"

This gets even more confusing when you simply stick a "v" on the front
of those versions, which entirely changes things.

- Ship v1.60
- Then ship v1.61
- Then ship v1.62
- Then ship v1.612

^ This is also legal in perl.

And in this case, "v1.612" is in fact, the largest version.

But as-is, the logic used for perl stuff in packagetest will:

- Misreport packages as outdated when they're fine
- Possible fail to report needed updates

How to properly gate this to happen *only* for perl packages may be the
trickiest part.

Attachment: pgprSV2qKCpBo.pgp
Description: OpenPGP digital signature

Reply via email to