Fix QGIS 3/4 compatibility: extras for supy 2026.4.3#14
Open
Conversation
- Update supy from 2026.1.28rc1 to 2026.1.28 (proper release) - Add pyarrow<23 constraint: supy 2026.1.28 _load.py uses pandas str.contains with regex, which breaks with pyarrow 23 (pyarrow.compute.match_substring_regex removed) Temporary workaround — the incompatible code path is already removed on supy master, so this cap can be dropped when the next supy release is cut. Ref: UMEP-dev/SUEWS#1252
2 tasks
- Move supy pin to optional-dependencies: qgis3 (rc1/NumPy 1.x) vs qgis4 (release/NumPy 2.x) - Keep pyarrow<23 in common deps (no-op on QGIS 3, needed on QGIS 4) - Install: pip install umep-reqs[qgis3] or umep-reqs[qgis4] Ref: UMEP-dev/SUEWS#1252
Contributor
Author
|
@biglimp please merge this after review. Thanks! |
Contributor
|
How will version of qgis be detected in relation to version number of umep-reqs? Lets say I make a new version of umep-reqs (3.0). What is the new syntax for e.f. QGIS 3.44? |
Contributor
Author
|
Yes, the syntax is exactly right: |
Contributor
|
So we should find out user version so that they install correct umep-reqs |
Contributor
Author
|
Done — UMEP-dev/UMEP#831 wires up the version detection in |
- Bump supy pins: 2026.4.3rc1 (QGIS 3) and 2026.4.3 (QGIS 4) - Remove temporary pyarrow<23 cap — the incompatible code path was refactored in supy 2026.4.3 (UMEP-dev/SUEWS#1252) Ref: UMEP-dev/SUEWS#1274
Contributor
Author
|
Updated: bumped supy pins to Ref: UMEP-dev/SUEWS#1274 |
This was referenced Apr 4, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
pip install umep-reqs[qgis3]->supy==2026.4.3rc1(NumPy 1.x)pip install umep-reqs[qgis4]->supy==2026.4.3(NumPy 2.x)pyarrow<23cap — the incompatible code path was refactored in supy 2026.4.3Background
QGIS 3 and QGIS 4 both use Python 3.12, so PEP 508 environment markers cannot distinguish them. Instead, extras let the UMEP plugin select the right supy build based on the detected QGIS version:
supy==2026.4.3rc1supy==2026.4.3Companion PR: UMEP-dev/UMEP#831 wires up the version detection in
umep_installer.py.Ref: UMEP-dev/SUEWS#1274, UMEP-dev/SUEWS#1252