[QGIS-Developer] Interpretation of qgisMaximumVersion in metadata.txt
lists at borysjurgiel.pl
lists at borysjurgiel.pl
Sat Aug 1 07:27:25 PDT 2020
Hi!
Actually it was never properly synchronized between the installer and the
repo.
For the installer, both lower and upper boudary are included, so it makes more
sense to set it to 3.98 rather than 3.99. By the way - putting 0 to the third
position makes yet less sense ;) If you put just 3.98, it will be
automatically extended to 3.98.99 [1].
The key thing is even setting the maximum to 3.99 will work, because the
current "pyQgisVersion" of QGIS 3.99 is recognized as 4.0! See [2].
[1] https://github.com/qgis/QGIS/blob/master/python/pyplugin_installer/
version_compare.py#L196
[2] https://github.com/qgis/QGIS/blob/master/python/pyplugin_installer/
version_compare.py#L206
Regards,
Borys
Dnia piÄ…tek, 31 lipca 2020 16:01:03 CEST Sebastian M. Ernst pisze:
> Hi all,
>
> (hopefully) simple question: Is the version of QGIS indicated by
> `qgisMaximumVersion` in plugins' metadata assumed to be compatible? Or
> is it (under certain circumstances perhaps) an excluded upper boundary
> as in `[qgisMinimumVersion,qgisMaximumVersion)` in mathematical terms?
>
> For further context information, see below.
>
> Best regards,
> Sebastian
>
>
> ---
>
> `qgisMaximumVersion` values reported for plugins compatible to QGIS 3.X:
>
> - QGIS 3.0: 3.4.0, 3.6.99, 3.9.0, 3.98.0, 3.99.0, 4.0.0, 9.99.0
> - QGIS 3.1: 3.4.0, 3.6.99, 3.9.0, 3.98.0, 3.99.0, 4.0.0, 9.99.0
> - QGIS 3.2: 3.4.0, 3.6.99, 3.9.0, 3.98.0, 3.99.0, 4.0.0, 9.99.0
> - QGIS 3.3: 3.4.0, 3.6.99, 3.9.0, 3.98.0, 3.99.0, 4.0.0, 9.99.0
> - QGIS 3.4: 3.4.0, 3.6.99, 3.9.0, 3.98.0, 3.99.0, 4.0.0, 9.99.0
> - QGIS 3.5: 3.6.99, 3.9.0, 3.98.0, 3.99.0, 4.0.0, 9.99.0
> - QGIS 3.6: 3.12.0, 3.6.99, 3.9.0, 3.98.0, 3.99.0, 4.0.0, 9.99.0
> - QGIS 3.7: 3.12.0, 3.9.0, 3.98.0, 3.99.0, 4.0.0, 9.99.0
> - QGIS 3.8: 3.12.0, 3.9.0, 3.98.0, 3.99.0, 4.0.0, 9.99.0
> - QGIS 3.9: 3.12.0, 3.9.0, 3.98.0, 3.99.0, 4.0.0, 9.99.0
> - QGIS 3.10: 3.12.0, 3.98.0, 3.99.0, 4.0.0, 9.99.0
> - QGIS 3.11: 3.12.0, 3.98.0, 3.99.0, 4.0.0, 9.99.0
> - QGIS 3.12: 3.12.0, 3.98.0, 3.99.0, 4.0.0, 9.99.0
> - QGIS 3.13: 3.98.0, 3.99.0, 4.0.0, 9.99.0
> - QGIS 3.14: 3.98.0, 3.99.0, 4.0.0, 9.99.0
>
> "3.99.0" is what QGIS-Django assumes by default (if no value is provided
> by a plugin). Applies to about 94% of all contemporary plugins.
>
> Based on QGIS' current implementation, "3.99.*" is assumed to be a
> precursor to "4.0.0" at some point in distant future, i.e. not part of
> the "3.X" branch. QGIS itself actually translates "3.99.*" to "4.0.0"
> internally.
>
> 6 plugins set the value to "4.0.0" directly (1%).
>
> "3.98.0" appears to be a value for indicating that the plugin is only
> compatible with QGIS 3.X (and not 4.0 or any of its precursors). It is
> used by exactly 31 plugins (4%).
>
> The "WKTBulkLoader" plugin assumes to be compatible almost indefinitely
> by setting the value to "9.99.0" :)
>
> The "anomalies" from the above are:
>
> - tiles_xyz==0.8.1 -> QGIS 3.6.99
> - geopec==1.0 -> QGIS 3.9.0
> - shoguneditor==0.2 -> QGIS 3.4.0
> - qgisnetworklogger==0.3.0 -> QGIS 3.12.0
>
> Values like "3.12.0" as found in qgisnetworklogger==0.3.0 for instance
> appear to indicate that it is an included upper boundary.
>
> On the other hand side, values like "3.99.0" or "4.0.0" indicate that
> the value is interpreted as an excluded upper boundary. It's much more
> unlikely that current plugins will actually run with QGIS 4.0 (but not
> with 4.2).
> _______________________________________________
> QGIS-Developer mailing list
> QGIS-Developer at lists.osgeo.org
> List info: https://lists.osgeo.org/mailman/listinfo/qgis-developer
> Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-developer
More information about the QGIS-Developer
mailing list