From 1f01d8b493e3c95d643d64872880a20508b7dce3 Mon Sep 17 00:00:00 2001 From: matt Date: Wed, 1 Apr 2026 12:12:30 -0700 Subject: [PATCH] chore: prepare release 4.5.1 --- .env.example | 2 +- CHANGELOG.md | 3 +++ RELEASE_NOTES_TEMPLATE.md | 23 +--------------------- docker-compose.yml | 2 +- dockerhub-docker-compose.yml | 2 +- docs/releases/v4.5.1.md | 38 ++++++++++++++++++++++++++++++++++++ pyproject.toml | 2 +- 7 files changed, 46 insertions(+), 26 deletions(-) create mode 100644 docs/releases/v4.5.1.md diff --git a/.env.example b/.env.example index f8c35d7..d4e5179 100644 --- a/.env.example +++ b/.env.example @@ -13,7 +13,7 @@ # HOST=0.0.0.0 # Uvicorn bind host (only when APP_MODE=web). # PORT=8080 # Uvicorn port. # WORKERS=1 # Uvicorn worker count. -APP_VERSION=v4.4.2 # Matches dockerhub compose. +APP_VERSION=v4.5.1 # Matches dockerhub compose. ############################ # Theming diff --git a/CHANGELOG.md b/CHANGELOG.md index 1448e2d..9a50ec4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,9 @@ This format follows Keep a Changelog principles and aims for Semantic Versioning - Link PRs/issues inline when helpful, e.g., (#123) or [#123]. Reference-style links at the bottom are encouraged for readability. ## [Unreleased] +_No unreleased changes yet._ + +## [4.5.1] - 2026-04-01 ### Added - **Web documentation portal**: All 13 user guides are now accessible at `/help` directly in the app — no need to navigate to GitHub. A guide index lists every guide with a description; each guide page renders full markdown with heading anchors for deep linking. - **In-guide table of contents**: Each guide page displays a sidebar with an auto-generated "On This Page" section linking to all headings in the current guide. Collapses to a hamburger toggle on mobile. diff --git a/RELEASE_NOTES_TEMPLATE.md b/RELEASE_NOTES_TEMPLATE.md index 18cf97e..7044a78 100644 --- a/RELEASE_NOTES_TEMPLATE.md +++ b/RELEASE_NOTES_TEMPLATE.md @@ -1,25 +1,4 @@ # MTG Python Deckbuilder ## [Unreleased] -### Added -- **Web documentation portal**: All 13 user guides are now accessible at `/help` directly in the app — no need to navigate to GitHub. A guide index lists every guide with a description; each guide page renders full markdown with heading anchors for deep linking. -- **In-guide table of contents**: Each guide page displays a sidebar with an auto-generated "On This Page" section linking to all headings in the current guide. Collapses to a hamburger toggle on mobile. -- **Contextual help links**: Small help icons throughout the build wizard, bracket selector, owned cards mode, partner selection, and other UI areas link directly to the relevant guide section in a new tab — without interrupting the current workflow. -- **Documentation: Multi-Copy Package guide**: New dedicated guide covers all multi-copy card archetypes, count recommendations, exclusive groups, bracket interaction, and FAQ. -- **Documentation: See Also cross-links**: All 13 user guides end with a See Also section linking to related guides. -- **Documentation: FAQ sections**: FAQ sections added to 5 guides (Bracket Compliance, Include/Exclude, Locks/Replace/Permalinks, Owned Cards, Budget Mode). -- **Documentation: quality scoring and enforcement detail**: `theme_browser.md` documents the 4-factor badge scoring formula; `bracket_compliance.md` includes a full enforcement matrix. -- **Consistent page headers**: All pages now share a unified header style — same font size, description line, and separator — replacing the previous mix of different heading sizes and layouts. -- **"Help & Guides" button on home page**: Quick link to the documentation portal from the home page. - -### Changed -- **Docker: `docs/` volume mount added**: `docker-compose.yml` and `dockerhub-docker-compose.yml` now mount `./docs` so documentation edits reflect immediately without a container rebuild. - -### Fixed -- **Bug: missing `idx` argument** in `project_detail()` call inside `theme_preview.py` caused theme preview pages to crash. -- **Bug: `build_permalinks` router not mounted** in `app.py` caused all permalink-related endpoints to return 404. -- **Pydantic V2 deprecation warning** silenced: `DeckExportRequest` now uses `model_config = ConfigDict(...)` instead of the deprecated inner `class Config`. - -### Removed -- **16 test files deleted**: 5 stale/broken tests and 11 single-test files merged into their domain equivalents to reduce fragmentation. -- **7 permanently-skipped tests removed**: 3 obsolete `apply_combo_tags` tests (API changed), 2 obsolete commander catalog tests (parquet architecture), and 2 "run manually" performance tests that never ran in CI. +_No unreleased changes yet._ diff --git a/docker-compose.yml b/docker-compose.yml index f6106a4..6884ac6 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -143,7 +143,7 @@ services: # WEB_THEME_FILTER_PREWARM: "0" WEB_AUTO_ENFORCE: "0" # 1=auto-run compliance export after builds WEB_CUSTOM_EXPORT_BASE: "" # Optional: custom base dir for deck export artifacts - APP_VERSION: "v4.4.2" # Displayed version label (set per release/tag) + APP_VERSION: "v4.5.1" # Displayed version label (set per release/tag) # ------------------------------------------------------------------ # Misc / Land Selection (Step 7) Environment Tuning diff --git a/dockerhub-docker-compose.yml b/dockerhub-docker-compose.yml index 2ff6e00..033fad0 100644 --- a/dockerhub-docker-compose.yml +++ b/dockerhub-docker-compose.yml @@ -145,7 +145,7 @@ services: # WEB_THEME_FILTER_PREWARM: "0" WEB_AUTO_ENFORCE: "0" # 1=auto-run compliance export after builds WEB_CUSTOM_EXPORT_BASE: "" # Optional: custom base dir for deck export artifacts - APP_VERSION: "v4.4.2" # Displayed version label (set per release/tag) + APP_VERSION: "v4.5.1" # Displayed version label (set per release/tag) # ------------------------------------------------------------------ # Misc / Land Selection (Step 7) Environment Tuning diff --git a/docs/releases/v4.5.1.md b/docs/releases/v4.5.1.md new file mode 100644 index 0000000..ecb8e6a --- /dev/null +++ b/docs/releases/v4.5.1.md @@ -0,0 +1,38 @@ +# MTG Python Deckbuilder v4.5.1 + +## Summary +Adds an in-app documentation portal with 13 user guides accessible directly at `/help`, contextual help icons throughout the build workflow, and a consistent page header style across all pages. + +## Added + +### Web documentation portal +All 13 user guides are now accessible directly in the app at `/help` — no need to navigate to GitHub. A guide index lists every guide with a short description; each guide page renders full markdown with heading anchors for deep linking. + +### In-guide table of contents +Each guide page shows a sidebar with an auto-generated "On This Page" section linking to all headings in the current guide. Collapses to a hamburger toggle on mobile. + +### Contextual help links +Small help icons appear throughout the UI — in the build wizard, bracket selector, owned cards mode, partner selection, and other areas — linking directly to the relevant guide section in a new tab without interrupting the current workflow. + +### New guide: Multi-Copy Package +New dedicated guide covering all multi-copy card archetypes, count recommendations, exclusive groups, bracket interaction, and FAQ. + +### Guide enhancements +All 13 guides end with a See Also section linking to related guides. FAQ sections added to 5 guides (Bracket Compliance, Include/Exclude, Locks/Replace/Permalinks, Owned Cards, Budget Mode). `theme_browser.md` documents the 4-factor badge scoring formula; `bracket_compliance.md` includes a full enforcement matrix. + +### Consistent page headers +All pages now share a unified header style — same font size, description line, and bottom separator — replacing the previous mix of different heading sizes and layouts. + +### "Help & Guides" button on home page +Quick link to the documentation portal from the home page. + +## Changed + +### Docker: `docs/` volume mount +`docker-compose.yml` and `dockerhub-docker-compose.yml` now mount `./docs` into the container so documentation edits reflect immediately without a container rebuild. + +## Fixed + +- **Bug: missing `idx` argument** in `project_detail()` inside `theme_preview.py` caused theme preview pages to crash. +- **Bug: `build_permalinks` router not mounted** in `app.py` caused all permalink-related endpoints to return 404. +- **Pydantic V2 deprecation warning** silenced: `DeckExportRequest` now uses `model_config = ConfigDict(...)`. diff --git a/pyproject.toml b/pyproject.toml index 1d6c58f..33f6d5f 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -5,7 +5,7 @@ build-backend = "setuptools.build_meta" [project] name = "mtg-deckbuilder" -version = "4.4.2" +version = "4.5.1" description = "A command-line tool for building and analyzing Magic: The Gathering decks" readme = "README.md" license = {file = "LICENSE"}