All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
When a new release is proposed:
- Create a new branch
bump/x.x.x(this isn't a long-lived branch!!!); - The Unreleased section on
CHANGELOG.mdgets a version number and date; - Update the version on
database_sync/__init__.py; - Open a Pull Request with the bump version changes targeting the
mainbranch; - When the Pull Request is merged, a new
gittag must be created using GitHub environment.
Releases to productive environments should run from a tagged version. Exceptions are acceptable depending on the circumstances (critical bug fixes that can be cherry-picked, etc.).
- fixed Docker build failing with
lstat /dist: no such file or directoryby makingapp.Dockerfileself-contained with PDM build inside the container - updated
app.Dockerfilebase image frompython:3.10-slim-bullseyetopython:3.13-slim-bookwormto match the project's Python version requirement
- added
Makefileintegratingrios0rios0/pipelinesfor standardizedmake lint,make test, andmake sasttargets - added full CI pipeline (
python.yaml) with code checks, security scanning, and tests to the GitHub Actions workflow - added multi-stage
app.Dockerfileat.ci/stages/40-delivery/for Docker delivery with semver tagging - added required versions of jinja2
3.1.6and cryptography44.0.1to avoid vulnerabilities
- changed CI workflow to use a single
pdm-docker.yamlcall instead of separatepython.yaml+python-docker.yamljobs, matching the standard pipeline composition pattern - renamed
safety-checkscript tosafety-scanto match the pipelines convention - updated PR templates to reference
make lint,make test, andmake sastinstead of manualpdm runcommands - updated build backend from deprecated
pdm-pep517topdm-backend - updated required Python version from
3.9to3.13.12 - updated safety version from
3.0.1to3.5.1to address vulnerabilities
- fixed Trivy
DS-0026by addingHEALTHCHECKtoapp.Dockerfileand removing the old Dockerfile at.ci/40-delivery/ - fixed dropping the
id_seqtable for the ignored table - ensured the
id_seqsequence for the ignored table is also excluded by adding the corresponding exclude-table command
- removed
exportscript frompyproject.toml(inlined intosafety-scan) - removed the unused
ignore-vulnerabilitiesentry from the Safety policy
- updated
urllib3from2.2.2to2.6.3to fix CVE-2025-50612 and 4 other vulnerabilities - updated
cryptographyfrom45.0.2to46.0.5to fix CVE-2026-26007 - updated
authlibfrom1.3.2to1.6.9to fix CVE-2025-59420, CVE-2025-68158, CVE-2025-61920, and CVE-2025-62706 - updated
requestsfrom2.32.3to2.32.5to fix known vulnerability - updated
setuptoolsfrom74.0.0to82.0.1to fix path traversal vulnerability - updated
filelockfrom3.16.1to3.19.1to fix 3 known vulnerabilities - updated
marshmallowfrom3.22.0to4.0.1to fix known vulnerability - updated
regexfrom2024.11.6to2026.1.15to fix known vulnerability
- added GitHub pipelines code provided by the pipelines project
- added
.env.examplefile to guide new users on the required environment variables for setting up their.envfile
- changed to add
--no-ownerand--no-acloptions in thepg_restorecommand to avoid restoring ownership and access control lists, resolving errors during database restoration - upgraded all dependencies to the latest versions
- fixed the password which was not set before executing the
pg_restorecommand, by addingself.__set_pgpassword()in therestoremethod
- Initial release