Make the codebase mypy-clean, drop dead media_utils and Pillow, rewrite README

This commit is contained in:
2026-10-17 09:17:37 +02:00
parent 4daf4e960d
commit 364b515e3c
14 changed files with 333 additions and 436 deletions
+21 -9
View File
@@ -19,21 +19,31 @@ Each version entry uses these sections (include only those that apply):
- Always update this file before bumping the version in `pyproject.toml`
- Document changes as they are made, not all at once at release time
## Unreleased
## 1.14.0 — 2026-10-17
### Changed
- **The codebase is mypy-clean** and plain `uv run mypy` works (`[tool.mypy]`
in `pyproject.toml` lists the targets). Qt enums are now fully qualified
(`QDialog.DialogCode.Accepted`, `QMessageBox.StandardButton.Yes`,
`Qt.GlobalColor.red`, …) instead of PySide6's short aliases, and the few
loosely typed spots (tag schema, transforms, `on_files_changed`, dialog cell
widgets) are annotated. No behaviour change.
### Removed
- `src/core/media_utils.py` — Tagger-era leftovers (`load_icon` returned a
Tkinter image, `add_video_resolution_tag` logged via `print()`); nothing in
the app called either.
### Dependencies
- Removed `pillow` — `media_utils` was its only user.
## 1.13.0 — 2026-10-12
### Changed
- **The standalone build is now a single file.** `Curator.spec` produces one
self-contained `dist/Curator` executable (onefile) instead of a
`dist/Curator/` folder of libraries. It unpacks to a temp folder on every
start, so launching takes a few seconds longer.
### Dependencies
- Added `pyinstaller` to the dev group — `uv run pyinstaller Curator.spec`
now works out of the box (it was used for builds but never declared).
## 1.13.0 — 2026-10-12
### Changed
- **Custom attributes are gone from the GUI.** The attribute table in
*Upravit film* and *Filmy → "Nastavit atribut…"* (menu and context menu) are
removed. Values already stored keep working in miniDLNA filename templates
@@ -473,6 +483,8 @@ Each version entry uses these sections (include only those that apply):
Commands are now `uv sync` / `uv add` / `uv run` (`DESIGN_DOCUMENT_PYTHON.md`
§11). Dependency lower bounds moved up to the versions uv resolved; Poetry's
upper bounds (`<7.0.0`, …) are gone.
- Added `pyinstaller` to the dev group — `uv run pyinstaller Curator.spec`
now works out of the box (it was used for builds but never declared).
- **ruff 0.15 → 0.17** (also mypy 2.4, pytest 9.1, PySide6 6.12, Pillow 12.3,
python-dotenv 1.2.4). ruff 0.17 enables a much wider default rule set; the
whole codebase was brought in line with it — see *Changed* below.