Pin the uv installer, audit the lock and repin the dev core #16
No reviewers
Labels
No labels
bug
documentation
enhancement
security
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
Postulo/postulo-templates!16
Loading…
Reference in a new issue
No description provided.
Delete branch "sec2-fixes"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Fixes the one open
bug/securityissue of this repository (no other open issue carries either label; the rest are enhancements and documentation).#15 (SEC2-070)
ci.ymlandrelease.ymlno longer pipe an unversioned installer into a shell:UV_VERSIONandUV_INSTALLER_SHA256(the values in postulo/postulo'sci.yml), the versioned installer is downloaded to a file, checked withsha256sum -c -, then run.auditjob inci.yml: exports the lock without the project and without the git-pinnedpostulo(not on PyPI, so--strictcould not look it up; the core audits its own lock) and runspip-audit==2.10.1 --strict, on push, pull request and a weekly cron (17 6 * * 1).42be52048and relocked (uv lock --upgrade); pip-audit over the exported lock: no known vulnerabilities.postulo-messages extractmade their empty catalogues; the catalogue check cannot pass without them. They are Weblate's to fill.tests/test_workflows.pyholds the pin, the checksum step, the schedule and the audit. A deliberately wrong checksum failing the step issha256sum -cbehaviour and cannot be run here; the test checks the step is there.Tests
ruff check/ruff format --check,postulo-messages extract --check,check,guard: clean.uv run pytest: 19 passed, 3 skipped (WeasyPrint needs Pango, absent on the Windows machine this ran on; CI has it).Not done
uv run pytest -m releasefails for all 23 European Union catalogues (nothing is translated yet): that is Weblate's and issue #7's, not this one's.Closes #15
🤖 Generated with Claude Code