2

I've seen several approaches in metadata.json, some only specifying whole versions, such as "3.22" while some with more specific such as "3.22.1". I had an issue opened where I had "3.24", "3.24.1" and "3.24.2" but the extension failed to work in "3.24.3" until I specified it.

Is necessary to list all specific "point" versions of gnome-shell supported, or only if at least one "point" version is specified does gnome-shell care?

andy.holmes
  • 3,383
  • 17
  • 28

1 Answers1

2

Starting with GNOME 40, each stable release is simple increment of 1 and odd-numbers are no longer unstable (eg. 40, 41, 42) and minor point releases are ignored.

Up to version 3.38, the version check was a little more complex:

/**
 * versionCheck:
 * @required: an array of versions we're compatible with
 * @current: the version we have
 *
 * Check if a component is compatible for an extension.
 * @required is an array, and at least one version must match.
 * @current must be in the format <major>.<minor>.<point>.<micro>
 * <micro> is always ignored
 * <point> is ignored if <minor> is even (so you can target the
 * whole stable release)
 * <minor> and <major> must match
 * Each target version must be at least <major> and <minor>
 */
andy.holmes
  • 3,383
  • 17
  • 28