Installer prerequisites: REQ-D through REQ-G
REQ-D: restore waitress and tzdata to requirements.in. They existed ONLY in the
generated requirements.txt (hand-added in bf9e60e), so the next
`uv pip compile` would have silently removed the WSGI server and the IANA
timezone database from every Windows install.
REQ-E: split production and development requirements. requirements.txt was
installing pytest, pytest-cov, pytest-flask, coverage, iniconfig and pluggy onto
production servers. Verified on a real Windows Server box before this change.
CI, scripts/test-external-plugin.sh and the dev docs now use requirements-dev.txt.
REQ-F: standardise on Python 3.14. The repo declared four different versions
(Dockerfile 3.12, DEPLOY-WINDOWS-IIS 3.12, INSTALL-WINDOWS-IIS 3.13, CI 3.13,
plus README, web.config and PLUGIN-EXTERNAL-REPO). 3.14 is in active bugfix
support until ~Apr 2027 and supported to Oct 2030; 3.13 entered security-only in
Apr 2026. All four compiled dependencies publish win_amd64 wheels for 3.14
(cryptography via an abi3 wheel), verified by building an offline wheelhouse and
installing it on Windows Server 2025.
REQ-G: state MySQL 8.0 as the standard for new installs; 5.7+/5.6 remain
supported on an existing server.
Lockfiles regenerated with uv pip compile. Production deps 44 -> 38.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
129
requirements-dev.txt
Normal file
129
requirements-dev.txt
Normal file
@@ -0,0 +1,129 @@
|
||||
# This file was autogenerated by uv via the following command:
|
||||
# uv pip compile requirements-dev.in -o requirements-dev.txt
|
||||
alembic==1.18.5
|
||||
# via flask-migrate
|
||||
blinker==1.9.0
|
||||
# via flask
|
||||
cachelib==0.15.0
|
||||
# via flask-caching
|
||||
certifi==2026.7.22
|
||||
# via requests
|
||||
cffi==2.1.0
|
||||
# via cryptography
|
||||
charset-normalizer==3.4.9
|
||||
# via requests
|
||||
click==8.4.2
|
||||
# via
|
||||
# -r requirements.in
|
||||
# flask
|
||||
coverage==7.15.2
|
||||
# via pytest-cov
|
||||
cryptography==50.0.0
|
||||
# via -r requirements.in
|
||||
dnspython==2.8.0
|
||||
# via email-validator
|
||||
email-validator==2.3.0
|
||||
# via -r requirements.in
|
||||
flask==3.1.3
|
||||
# via
|
||||
# -r requirements.in
|
||||
# flask-caching
|
||||
# flask-cors
|
||||
# flask-jwt-extended
|
||||
# flask-marshmallow
|
||||
# flask-migrate
|
||||
# flask-sqlalchemy
|
||||
# pytest-flask
|
||||
flask-caching==2.4.1
|
||||
# via -r requirements.in
|
||||
flask-cors==6.0.5
|
||||
# via -r requirements.in
|
||||
flask-jwt-extended==4.7.4
|
||||
# via -r requirements.in
|
||||
flask-marshmallow==1.5.0
|
||||
# via -r requirements.in
|
||||
flask-migrate==4.1.0
|
||||
# via -r requirements.in
|
||||
flask-sqlalchemy==3.1.1
|
||||
# via
|
||||
# -r requirements.in
|
||||
# flask-migrate
|
||||
greenlet==3.5.4
|
||||
# via sqlalchemy
|
||||
idna==3.18
|
||||
# via
|
||||
# email-validator
|
||||
# requests
|
||||
iniconfig==2.3.0
|
||||
# via pytest
|
||||
itsdangerous==2.2.0
|
||||
# via flask
|
||||
jinja2==3.1.6
|
||||
# via flask
|
||||
mako==1.3.12
|
||||
# via alembic
|
||||
markupsafe==3.0.3
|
||||
# via
|
||||
# flask
|
||||
# jinja2
|
||||
# mako
|
||||
# werkzeug
|
||||
marshmallow==4.3.0
|
||||
# via
|
||||
# flask-marshmallow
|
||||
# marshmallow-sqlalchemy
|
||||
marshmallow-sqlalchemy==1.5.0
|
||||
# via -r requirements.in
|
||||
mysql-connector-python==26.7.0
|
||||
# via -r requirements.in
|
||||
packaging==26.2
|
||||
# via pytest
|
||||
pluggy==1.6.0
|
||||
# via
|
||||
# pytest
|
||||
# pytest-cov
|
||||
pycparser==3.0
|
||||
# via cffi
|
||||
pygments==2.20.0
|
||||
# via pytest
|
||||
pyjwt==2.13.0
|
||||
# via flask-jwt-extended
|
||||
pymysql==1.2.0
|
||||
# via -r requirements.in
|
||||
pytest==9.1.1
|
||||
# via
|
||||
# -r requirements-dev.in
|
||||
# pytest-cov
|
||||
# pytest-flask
|
||||
pytest-cov==7.1.0
|
||||
# via -r requirements-dev.in
|
||||
pytest-flask==1.3.0
|
||||
# via -r requirements-dev.in
|
||||
python-dotenv==1.2.2
|
||||
# via -r requirements.in
|
||||
requests==2.34.2
|
||||
# via -r requirements.in
|
||||
sqlalchemy==2.0.51
|
||||
# via
|
||||
# alembic
|
||||
# flask-sqlalchemy
|
||||
# marshmallow-sqlalchemy
|
||||
tabulate==0.10.0
|
||||
# via -r requirements.in
|
||||
typing-extensions==4.16.0
|
||||
# via
|
||||
# alembic
|
||||
# sqlalchemy
|
||||
tzdata==2026.3
|
||||
# via -r requirements.in
|
||||
urllib3==2.7.0
|
||||
# via requests
|
||||
waitress==3.0.2
|
||||
# via -r requirements.in
|
||||
werkzeug==3.1.8
|
||||
# via
|
||||
# -r requirements.in
|
||||
# flask
|
||||
# flask-cors
|
||||
# flask-jwt-extended
|
||||
# pytest-flask
|
||||
Reference in New Issue
Block a user