flatpak-external-data-checker icon indicating copy to clipboard operation
flatpak-external-data-checker copied to clipboard

gnomechecker: Don't consider 3.odd unstable

Open A6GibKm opened this issue 1 year ago • 7 comments

There is only a handful of modules using the older version scheming.

The version scheme consisted declaring a release with numbering 3.x stable if 3 was even and odd otherwise. This versioning scheme was dropped by most modules around GNOME 40.

For context, this causes multiple false positives with modules like tracker who have a major version equal to three but do not follow the old numbering scheme.

cc @fosero, @ebassi.

A6GibKm avatar Jul 19 '24 13:07 A6GibKm

As it stands, for e.g. tracker you can set stable-only to false and receive updates.

But with this proposed change, apps that use modules that do follow the minor-odd-is-unstable convention have no way to ignore unstable releases. My clone of all of Flathub is a bit out of date but one example is glibmm and friends which are used by a fair number of apps.

wjt avatar Jul 19 '24 14:07 wjt

As it stands, for e.g. tracker you can set stable-only to false and receive updates.

But with this proposed change, apps that use modules that do follow the minor-odd-is-unstable convention have no way to ignore unstable releases. My clone of all of Flathub is a bit out of date but one example is glibmm and friends which are used by a fair number of apps.

I need to debug this further, at this point every single we have to flip around the value of stable-only to fix this issue.

A6GibKm avatar Jul 19 '24 15:07 A6GibKm

Maybe a new version-scheme property with string values e.g. odd-minor-is-unstable or alpha-beta-rc-tags (just ideas off the top of my head) defaulting to the newer model. Then when tracking a project that does use the old scheme the odd-minor-is-unstable mode could be enabled but the default would work for the prevailing convention.

wjt avatar Jul 19 '24 15:07 wjt

It would be even better if there were something in the GNOME release "API" that could be used to determine what the latest stable/unstable version is of a project and/or whether any given release is stable or not, rather than matching on version numbers, but I don't think there is :(

wjt avatar Jul 19 '24 15:07 wjt

There is not, and then again, the modules that didn't upgrade to the newer version schedule last time are even less likely to migrate to this new api.

A6GibKm avatar Jul 19 '24 15:07 A6GibKm

Maybe a new version-scheme property with string values e.g. odd-minor-is-unstable or alpha-beta-rc-tags (just ideas off the top of my head) defaulting to the newer model. Then when tracking a project that does use the old scheme the odd-minor-is-unstable mode could be enabled but the default would work for the prevailing convention.

See https://github.com/flathub-infra/flatpak-external-data-checker/issues/436 for a request to adjust the current rules and an example of a module that uses the older scheme: VTE.

wjt avatar Aug 06 '24 15:08 wjt

Thanks for the link. With the "older scheme" I refer to packages with a major version of 3 (and using odd/even to denote stability).

A6GibKm avatar Aug 06 '24 15:08 A6GibKm

Superseded by https://github.com/flathub-infra/flatpak-external-data-checker/pull/453.

A6GibKm avatar Jan 18 '25 18:01 A6GibKm