Skip to content

fix: constrain CI dependencies#64

Open
al-munazzim wants to merge 1 commit into
cryptoadvance:masterfrom
al-munazzim:fix/ci-dependency-constraints
Open

fix: constrain CI dependencies#64
al-munazzim wants to merge 1 commit into
cryptoadvance:masterfrom
al-munazzim:fix/ci-dependency-constraints

Conversation

@al-munazzim

Copy link
Copy Markdown
Contributor

Summary

Fixes the current red CI dependency resolution without conflicting with Specter Desktop's pinned runtime environment.

  • constrain Spectrum's runtime Flask requirement to <2.3 because Flask-SQLAlchemy==2.5.1 imports Flask internals removed in Flask 2.3+
  • keep Werkzeug<3 as a test-only dependency, since Specter Desktop currently pins Werkzeug==3.0.3
  • pin test-only bdkpython==0.32.1, because latest bdkpython==3.0.0 breaks tests/test_bdk.py

Fixes #63

Specter Desktop compatibility

Specter Desktop currently pins:

Flask==2.2.5
Werkzeug==3.0.3
cryptoadvance.spectrum==0.7.0

This PR keeps the runtime constraint compatible with Specter Desktop by only adding Flask<2.3 to Spectrum's runtime requirements. Werkzeug<3 is intentionally limited to Spectrum's [test] extra, so normal Specter Desktop installs are not forced away from their pinned Werkzeug==3.0.3.

Test plan

Fresh local venv on Python 3.11:

python -m pip install -e '/tmp/spectrum-review-62[test]'

Resolved key versions:

Flask 2.2.5
Werkzeug 2.3.8
Flask-SQLAlchemy 2.5.1
SQLAlchemy 1.4.54
bdkpython 0.32.1

Targeted tests:

pytest tests/test_util.py tests/test_se_healthz.py tests/test_bdk.py -q
3 passed, 18 warnings in 1.26s

Full suite:

pytest -q
17 passed, 1137 warnings in 18.19s

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Fix red CI tests caused by unbounded Flask/Werkzeug/bdkpython dependencies

1 participant