You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit was created on GitHub.com and signed with GitHub’s verified signature.
[0.1.1] — 2026-06-06
Added
Detailed, fail-fast startup logging — the container now logs its version and Python
version, the effective (non-secret) configuration, the data directory, whether the database
was created or opened, any schema migrations applied, and a "startup complete" line. Logging
is configured before the config is loaded and sent unbuffered to stdout, so a misconfiguration
is reported clearly instead of crashing silently.
Permission preflight on DATA_DIR — startup now write-probes the data directory and, if
it isn't writable by the container's runtime user (uid 1000), aborts with an actionable
CRITICAL message (showing the uid/gid and a chown hint) instead of a bare PermissionError.
Fixed
No more silent crash-on-start — required-env-var and configuration errors (e.g. a missing PRINTER_HOST or API_TOKEN) previously raised at import time before logging was set up,
so a misconfigured deployment failed with no usable output. Configuration now loads behind
logging and reports exactly which variable is missing. The Docker image also sets PYTHONUNBUFFERED=1 so logs are never lost to buffering on a fast restart, and creates/owns /data for the runtime user so named-volume deployments work out of the box. The in-app/API
version display also now reflects the real package version instead of a hardcoded 0.0.1.
Changed
Dependency updates — rolled in the pending Dependabot bumps: backend fastapi >=0.136.3, pydantic >=2.13.4, python-barcode >=0.16.1, and dev tools mypy >=2.1.0 / types-PyYAML >=6.0.12; frontend fabric 7.4.0, vite 8, typescript 6; the Docker base
image to python:3.14-slim; and CI actions (docker/metadata-action@v6, docker/build-push-action@v7, github/codeql-action@v4). Verified locally: backend lint +
mypy 2.x + tests pass, and the frontend type-checks and builds. A frontend/src/vite-env.d.ts
(vite/client reference) was added because TypeScript 6 now requires ambient types for the
side-effect import './style.css'. Fabric 7's serialization was checked to still emit IText
and preserve the labelforge_raw_content custom property, so existing saved templates and the
server renderer are unaffected. No user-facing behaviour change.