-
Notifications
You must be signed in to change notification settings - Fork 177
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Improve debian version normalization #216
Comments
FYI, Gentoo has a clearer name scheme: and it would be called either 0.1_p82, or 0.1_p82 or 0.2_pre82 (or YYYYMMDD instead of 82) |
An another bad example is this package: |
There are actually multiple unrelated problems here: Incorrect version specified in the packageThis is not repology fault, it should be fixed in upstream repos. For instance, cinnamon clearly states 3.4.0 as version. We can't do much with it automatically, but it can be ignored with rules (see
This is planned, but this is hard. For starters, I've planned to extract versions from GitHub. We can also fetch data from Anitya. However, upstream version will be treated the same way as any other package version, so it won't really solve this problem. This is because
So, I suggest to fix these with rules for now. And of course maintainers should not use fake versions. Incorrect version normalizationWe normalize versions for most repos, e.g.
|
Due to upstream versioning sometimes not following semantic version numbers, downstream (operating system in this case) would then change to a scheme of versions they agreed on. As an example, I used to released gnurl until 3 version ago as "gnurl-7_53_0" and in Gentoo, and later Guix I had to rewrite my release version to "gnurl-7.53.0". In Guix as far as I am aware we have clear guidelines on version numbers and nameformats. I think it would be easier to:
There will be cases where no scheme applies or locations change (like: on new release move old current to subfolder archive), which is what every system dislikes. |
Well since upstream version is not our problem and |
Here is few others different (hopefully) cases: |
Please add detail which repos have problematic versions. |
Could you just click on the link and compare output? The list is way too long. For example, dsniff is marked as "1.2.0" (no beta) in some distros which is not correct. Others use several variations _beta1|b1|.b1 etc. An another observation I made is that debian use "unreleased version"-<svn|git>number . This is the same with Gentoo's _pre (instead of svn|git) |
In https://repology.org/metapackage/keybase/versions, nix_stable used a different version scheme and made all others shown as outdated. |
Fixed in the ruleset, but will only be deployed in some days. |
As a counterexample of normalization, onioncat makes official snapshots, but repology.org removed snapshot details from some repos and marked others as outdated. |
It didn't. Debian uses incorrect version schema to start with. It should be |
Could you please dedicate more time on this issue? |
It is existing version. I believe other samples were fixed. |
I can't find the official release, http://ftp.gnome.org/pub/GNOME/sources/gnome-keyring/ the latest is 3.20.0. usbmuxd is not fixed. I'll give more examples in a bit |
It is there http://ftp.acc.umu.se/pub/gnome/sources/gnome-keyring/3.20 since July 4th. |
usbmuxd there is no 1.1.1 (OpenWrt abused few other packages) |
Perfect, thanks! There are few more: |
livecd-tools is an another tool with the same name but a different upstream: https://admin.fedoraproject.org/pkgdb/package/rpms/livecd-tools/ repology mixes up these two and report the one with a lower version numbering as outdated |
allinux come up with the new 2.3 version of pixiewps but it was not released by the upstream It is listed as outdated: |
Both fixed. Next time, please create report for a corresponding port on the website. These cases have nothing to do with version normalization really. |
To fix this, it seems that we'll have to preserve a predefined set of suffixes (something like |
I have noticed that some distributions create a random snapshot and call it a next release.
Here is an example:
https://packages.debian.org/jessie/faifa (0.2~svn82-1 instead of the official v0.1)
Eventually, repology would pick it up and mark other distributions as "outdated":
https://repology.org/metapackages/outdated-in-repo/gentoo_ovl_pentoo/
An another example is the following:
https://repology.org/metapackages/outdated-in-repo/gentoo_ovl_pentoo/?search=wfuzz
The official release is 2.1.5 (see https://github.com/xmendez/wfuzz/releases), however, 2.1beta is marked as the latest and any other versions are marked as outdated.
I suggest extracting version from the official homepage as the current behaviour can be manipulated.
The text was updated successfully, but these errors were encountered: