VoucherBot v1.1.1
v1.1.1 — Fix startup crash for existing databases
Patch release: restores a deleted Alembic migration that broke alembic upgrade head at app startup on any database stamped before v1.1.0.
What changed since v1.1.0
One pull request landed since v1.1.0:
Bug Fixes
- Fixed startup crash on existing databases (PR #17) — v1.1.0 deleted a released Alembic migration,
j0k1l2m3n4o5(thevendor_mappingsschema freeze), and rewired the chain around it. Any database stamped at that revision (it was the chain head between 2026-07-23 and 2026-08-13) failed at startup withalembic.util.exc.CommandError: Can't locate revision identified by 'j0k1l2m3n4o5'. The migration file is restored and the chain rewired back to linear, soalembic upgrade headnow resolves on existing databases automatically — no manual fix needed. - Defensive outbox creation (PR #17) —
notification_outboxcreation in thek2l3m4n5o6p7migration now skips when the table already exists, socreate_all-built databases upgrade cleanly.
Housekeeping
- The restored migration's
upgrade()is a no-op on fresh databases (h4d5e6f7a8b9already createsvendor_mappings), so new installs are unaffected.
Testing
- Full suite: 359 passed, 15 skipped. All CI quality gates pass:
ruff format --check,ruff check,mypy voucherbot tests, and the fullpytestsuite. tests/test_migrations.pyenforces the single-head/linear chain invariant;alembic historyandalembic headsverify one head (m6n7o8p9q0r1).
Full Changelog: v1.1.0...v1.1.1