diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index f9f1650..89088bf 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -5,7 +5,7 @@ repos: # general linting - repo: https://github.com/pre-commit/pre-commit-hooks - rev: v4.5.0 + rev: v6.0.0 hooks: - id: check-yaml - id: fix-byte-order-marker @@ -21,13 +21,13 @@ repos: # python linting - repo: https://github.com/psf/black - rev: 23.12.1 + rev: 25.12.0 hooks: - id: black # python linting - repo: https://github.com/PyCQA/flake8 - rev: 7.0.0 + rev: 7.3.0 hooks: - id: flake8 additional_dependencies: @@ -36,24 +36,24 @@ repos: # python linting - repo: https://github.com/asottile/reorder_python_imports - rev: v3.12.0 + rev: v3.16.0 hooks: - id: reorder-python-imports # python linting - repo: https://github.com/asottile/pyupgrade - rev: v3.15.0 + rev: v3.21.2 hooks: - id: pyupgrade # markdown linting - repo: https://github.com/markdownlint/markdownlint - rev: v0.13.0 + rev: v0.13.0 # NOTE: v0.15.0 is giving a headache with pre-commit hooks: - id: markdownlint entry: mdl --style .markdownlint.rb - # css linting + # CSS linting - repo: https://github.com/pre-commit/mirrors-csslint rev: v1.0.5 hooks: @@ -61,7 +61,7 @@ repos: # YAML linting - repo: https://github.com/adrienverge/yamllint - rev: v1.33.0 + rev: v1.37.1 hooks: - id: yamllint entry: yamllint -c .yamllint.yaml . diff --git a/Dockerfile b/Dockerfile index 1661963..8457b5a 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.10-slim +FROM python:3.13-slim WORKDIR /app diff --git a/README.md b/README.md index 1a2ad36..8d12297 100644 --- a/README.md +++ b/README.md @@ -38,3 +38,4 @@ Please see [the setup documentation](SETUP.md) regarding this. * [requirements.txt](requirements.txt) - Pip package requirements for enabling developers to contribute. See [SETUP.md](SETUP.md) * [SETUP.md](SETUP.md) - Setup instructions for contributors +* [TESTING.md](TESTING.md) - Instructions for manually validating the website functionality works. diff --git a/docker-compose.yaml b/docker-compose.yaml index 42cd335..1550253 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -14,7 +14,7 @@ services: - mongodb mongodb: - image: mongo:5.0.13-focal + image: mongo:8.2.2 container_name: mongodb environment: - PUID=1000 @@ -26,7 +26,7 @@ services: restart: unless-stopped mongo-seed: - image: mongo:5.0.13-focal + image: mongo:8.2.2 container_name: mongo-setup links: - mongodb diff --git a/requirements.txt b/requirements.txt index 767e71f..de5832d 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,13 +1,17 @@ +# NOTE: upgrading Flask past 2.2.5 causes issues with flask-mongoengine +# since Flask 3.0 completely removed the JSONEncoder class +# which flask-mongoengine (version 1.0.0) still relies on this removed class +# to handle JSON serialization for MongoDB objects. Flask==2.2.5 flask-mongoengine==1.0.0 -flask-restx==1.3.0 -Flask-WTF==1.2.1 -itsdangerous==2.1.2 -Jinja2==3.1.3 -MarkupSafe==2.1.3 -mongoengine==0.27.0 -pre-commit==3.6.0 -pymongo>=3.12.0,<4.0 # mongoengine==0.27.0 requires a compatible version -python-dotenv==1.0.0 -Werkzeug==3.0.1 -WTForms==3.1.2 +flask-restx==1.3.2 +Flask-WTF==1.2.2 +itsdangerous==2.2.0 +Jinja2==3.1.6 +MarkupSafe==3.0.3 +mongoengine==0.29.1 +pre-commit==4.5.0 +pymongo==4.15.5 +python-dotenv==1.2.1 +Werkzeug==3.1.4 +WTForms==3.2.1