From 5301ead1d7864e52628fab23bec9f3d5aa41c9f9 Mon Sep 17 00:00:00 2001 From: jessikitty Date: Thu, 24 Sep 2026 01:31:25 +1000 Subject: [PATCH] docs: add session log for Python 3.14 compatibility and auto-start --- .../2025-12-12-python-314-autostart.md | 33 +++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 .claude-context/sessions/2025-12-12-python-314-autostart.md diff --git a/.claude-context/sessions/2025-12-12-python-314-autostart.md b/.claude-context/sessions/2025-12-12-python-314-autostart.md new file mode 100644 index 0000000..5809b20 --- /dev/null +++ b/.claude-context/sessions/2025-12-12-python-314-autostart.md @@ -0,0 +1,33 @@ +# Python 3.14 Compatibility and Windows Auto-Start + +**Date:** 2025-12-12 +**Project:** lego-instructions-manager +**Status:** resolved +**Tags:** python-3.14, dependencies, pymupdf, pillow, sqlalchemy, windows, task-scheduler, waitress + +## Context +After the v1.5.0 initial commit (2025-12-09), installing on the Windows host (`E:\LIM`, Python 3.14) failed: several packages had no 3.14 wheels at the pinned versions and SQLAlchemy raised a `TypingOnly` assertion error at import. Jess also wanted the app to start automatically with Windows. + +## Key Decisions +- **Raise minimums rather than downgrade Python:** PyMuPDF `>=1.24.0`, Pillow `>=11.0.0`, SQLAlchemy `>=2.0.35` (the `TypingOnly` fix). +- **Flexible version ranges instead of exact pins** — fewer breakages on new Python releases; `requirements-flexible.txt` kept alongside `requirements.txt`. +- **Task Scheduler + batch file for auto-start** rather than a Windows service — simpler to set up and debug. +- **waitress** as the WSGI server on Windows (gunicorn doesn't run on Windows). + +## Technical Details +- Install path: `E:\LIM`. +- Startup: `start_lim.bat`; `setup_startup.bat` registers the scheduled task. +- `PYTHON_314_COMPATIBILITY.md` — package/version matrix. + +## Code Changes +- `requirements.txt` / `requirements-flexible.txt` — updated minimums and ranges. +- `start_lim.bat`, `setup_startup.bat`, `STARTUP_README.md` — new. +- `PYTHON_314_COMPATIBILITY.md` — new. + +## Open Questions / Next Steps +- Repo root contains stray files named `0.6.0`, `1.0.0`, `1.2.0`, `1.23.0`, `2.31.0`, `3.0.0`, `3.1.0` — almost certainly created by running `pip install package>=x.y.z` unquoted in cmd, where `>` redirects output to a file. Safe to delete; quote version specifiers in future (`pip install "Pillow>=11.0.0"`). + +## Artifacts +- `c1d6789` — Fix SQLAlchemy version for Python 3.14 +- `9f55b1e` — Update all dependencies for Python 3.14 with flexible version ranges +- `0ec5f27` — Add Windows Task Scheduler setup script