mirror of
https://github.com/mwisnowski/mtg_python_deckbuilder.git
synced 2026-04-05 20:57:16 +02:00
chore: prepare release 4.4.2
This commit is contained in:
parent
e4acf22773
commit
6a76b6d45d
14 changed files with 284 additions and 6 deletions
|
|
@ -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.3.2 # Matches dockerhub compose.
|
||||
APP_VERSION=v4.4.2 # Matches dockerhub compose.
|
||||
|
||||
############################
|
||||
# Theming
|
||||
|
|
|
|||
79
.github/ISSUE_TEMPLATE/feature_request_commander_theme.yml
vendored
Normal file
79
.github/ISSUE_TEMPLATE/feature_request_commander_theme.yml
vendored
Normal file
|
|
@ -0,0 +1,79 @@
|
|||
name: Commander-Specific Theme Request
|
||||
description: Request a new theme tied to a specific commander's abilities, or report an existing commander theme that is missing, misconfigured, or lacking synergy coverage.
|
||||
title: "[Commander Theme] "
|
||||
labels: ["commander-theme-request"]
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
Thanks for helping improve commander coverage! Please fill out the fields below as completely as you can.
|
||||
|
||||
- type: input
|
||||
id: commander-name
|
||||
attributes:
|
||||
label: Commander Name
|
||||
description: Full card name of the commander.
|
||||
placeholder: e.g., Atraxa, Praetors' Voice
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: input
|
||||
id: theme-name
|
||||
attributes:
|
||||
label: Theme Name
|
||||
description: What is the commander-specific theme being requested?
|
||||
placeholder: e.g., Atraxa Proliferate, Meren Reanimator
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: checkboxes
|
||||
id: request-type
|
||||
attributes:
|
||||
label: Request Type
|
||||
options:
|
||||
- label: New commander theme — this commander has no theme in the catalog for this strategy
|
||||
- label: Existing theme fix — a theme exists but is missing key synergy cards or has incorrect data
|
||||
- label: Theme description improvement — the description doesn't capture this commander's playstyle
|
||||
|
||||
- type: input
|
||||
id: color-identity
|
||||
attributes:
|
||||
label: Commander Color Identity
|
||||
description: What is the commander's color identity?
|
||||
placeholder: e.g., WUBG
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: textarea
|
||||
id: description
|
||||
attributes:
|
||||
label: Theme Description
|
||||
description: Describe how this theme works specifically with this commander. What does the deck try to do, and how does the commander enable or lead that strategy?
|
||||
placeholder: This commander enables...
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: textarea
|
||||
id: synergy-cards
|
||||
attributes:
|
||||
label: Key Synergy Cards
|
||||
description: List 3–10 cards that are particularly important for this commander's strategy and why they synergize.
|
||||
placeholder: |
|
||||
- Card Name — reason it synergizes with the commander
|
||||
- Card Name — reason it synergizes with the commander
|
||||
- Card Name — reason it synergizes with the commander
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: input
|
||||
id: related-themes
|
||||
attributes:
|
||||
label: Related Themes
|
||||
description: Are there existing general themes this overlaps with?
|
||||
placeholder: e.g., Graveyard Recursion, +1/+1 Counters
|
||||
|
||||
- type: textarea
|
||||
id: notes
|
||||
attributes:
|
||||
label: Additional Notes
|
||||
description: Anything helpful — EDHREC page link, ruling clarifications, partner/background interactions, etc.
|
||||
68
.github/ISSUE_TEMPLATE/feature_request_general_theme.yml
vendored
Normal file
68
.github/ISSUE_TEMPLATE/feature_request_general_theme.yml
vendored
Normal file
|
|
@ -0,0 +1,68 @@
|
|||
name: General Theme Request
|
||||
description: Request a new general theme, or report an existing theme that is missing cards, misconfigured, or poorly described.
|
||||
title: "[Theme Request] "
|
||||
labels: ["theme-request"]
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
Thanks for helping improve the theme catalog! Please fill out the fields below as completely as you can.
|
||||
|
||||
- type: input
|
||||
id: theme-name
|
||||
attributes:
|
||||
label: Theme Name
|
||||
description: What is the name of the theme? (e.g., "Graveyard Recursion", "Artifact Synergy")
|
||||
placeholder: e.g., Graveyard Recursion
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: checkboxes
|
||||
id: request-type
|
||||
attributes:
|
||||
label: Request Type
|
||||
options:
|
||||
- label: New theme — this theme doesn't exist in the catalog yet
|
||||
- label: Existing theme fix — a theme exists but is missing cards or has incorrect data
|
||||
- label: Theme description improvement — the description is generic or unhelpful
|
||||
|
||||
- type: textarea
|
||||
id: description
|
||||
attributes:
|
||||
label: Theme Description
|
||||
description: In your own words, describe what this theme is about. What does a deck built around it try to do?
|
||||
placeholder: This theme focuses on...
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: textarea
|
||||
id: example-cards
|
||||
attributes:
|
||||
label: Example Cards
|
||||
description: List 3–10 cards that clearly represent this theme and briefly note why each fits.
|
||||
placeholder: |
|
||||
- Card Name — reason it fits
|
||||
- Card Name — reason it fits
|
||||
- Card Name — reason it fits
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: input
|
||||
id: colors
|
||||
attributes:
|
||||
label: Colors
|
||||
description: What color(s) is this theme primarily associated with? (W/U/B/R/G/Colorless — or "All")
|
||||
placeholder: e.g., B, G or All
|
||||
|
||||
- type: input
|
||||
id: related-themes
|
||||
attributes:
|
||||
label: Related Themes
|
||||
description: Are there existing themes in the catalog this closely relates to or overlaps with?
|
||||
placeholder: e.g., Token Generation, Aristocrats
|
||||
|
||||
- type: textarea
|
||||
id: notes
|
||||
attributes:
|
||||
label: Additional Notes
|
||||
description: Anything else we should know? Links to EDHREC, MTG Wiki, or other resources are welcome.
|
||||
76
.github/ISSUE_TEMPLATE/feature_request_other.yml
vendored
Normal file
76
.github/ISSUE_TEMPLATE/feature_request_other.yml
vendored
Normal file
|
|
@ -0,0 +1,76 @@
|
|||
name: Feature Request
|
||||
description: Request a new app feature, UI improvement, workflow enhancement, or any functionality not related to theme or commander data.
|
||||
title: "[Feature Request] "
|
||||
labels: ["feature-request"]
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
Thanks for taking the time to suggest an improvement! Please fill out the fields below.
|
||||
|
||||
- type: input
|
||||
id: title
|
||||
attributes:
|
||||
label: Feature Title
|
||||
description: A short, clear title for the feature.
|
||||
placeholder: e.g., Add export to Moxfield format
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: textarea
|
||||
id: problem
|
||||
attributes:
|
||||
label: Problem / Use Case
|
||||
description: What problem does this solve? Describe the situation where you'd use this feature and what you currently have to do instead.
|
||||
placeholder: When I try to..., I can't because...
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: textarea
|
||||
id: solution
|
||||
attributes:
|
||||
label: Proposed Solution
|
||||
description: Describe the feature you'd like. How would it work? Where in the UI would it live?
|
||||
placeholder: I'd like to see...
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: textarea
|
||||
id: alternatives
|
||||
attributes:
|
||||
label: Alternatives Considered
|
||||
description: Have you worked around this in another way? Are there existing features that partially address this?
|
||||
|
||||
- type: dropdown
|
||||
id: priority
|
||||
attributes:
|
||||
label: Priority / Impact
|
||||
options:
|
||||
- Critical — blocks me from using the app
|
||||
- High — significantly improves my workflow
|
||||
- Medium — nice to have, would use often
|
||||
- Low — minor convenience or polish
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: checkboxes
|
||||
id: area
|
||||
attributes:
|
||||
label: Affected Area
|
||||
options:
|
||||
- label: Deck Builder (build flow, steps, results)
|
||||
- label: Theme Catalog / Theme Browser
|
||||
- label: Commander Browser
|
||||
- label: Random Build
|
||||
- label: Owned Cards / Library
|
||||
- label: Exports (CSV/TXT/JSON)
|
||||
- label: Diagnostics / Logging
|
||||
- label: Docker / Deployment
|
||||
- label: CLI / Headless runner
|
||||
- label: Other
|
||||
|
||||
- type: textarea
|
||||
id: notes
|
||||
attributes:
|
||||
label: Additional Notes
|
||||
description: Screenshots, mockups, links to similar features in other tools, or any other context that would help.
|
||||
|
|
@ -20,6 +20,12 @@ _No unreleased changes yet_
|
|||
### Removed
|
||||
_No unreleased changes yet_
|
||||
|
||||
## [4.4.2] - 2026-03-26
|
||||
### Added
|
||||
- **Community links**: GitHub repo, issue tracker, feature request, and DockerHub links now appear in the site footer and on the home page.
|
||||
- **Feature request templates**: Three GitHub issue templates added — General Theme Request, Commander-Specific Theme Request, and Other Feature Request — accessible directly from the Themes page, Commanders page, and home page respectively.
|
||||
- **Theme & Commander feedback prompts**: A short prompt linking to the appropriate feature request template appears at the top of the Themes catalog and Commanders pages.
|
||||
|
||||
## [4.3.2] - 2026-03-25
|
||||
### Added
|
||||
- **Smart Land Bases checkbox**: The New Deck modal Preferences section now has a **Smart Land Bases** checkbox (checked by default) to enable or disable smart land analysis per-build, replacing the `ENABLE_SMART_LANDS` environment variable.
|
||||
|
|
|
|||
|
|
@ -13,7 +13,12 @@ _No unreleased changes yet_
|
|||
### Removed
|
||||
_No unreleased changes yet_
|
||||
|
||||
## [4.3.2] - 2026-03-25
|
||||
## [4.4.2] - 2026-03-26
|
||||
### Added
|
||||
- **Community links**: GitHub, issue tracker, feature request, and DockerHub links in the footer and home page.
|
||||
- **Feature request templates**: GitHub issue templates for General Theme Requests, Commander-Specific Theme Requests, and Other Feature Requests.
|
||||
- **Feedback prompts**: Inline prompts on the Themes and Commanders pages linking to the relevant request templates.
|
||||
|
||||
### Added
|
||||
- **Smart Land Bases checkbox**: The New Deck modal now has a **Smart Land Bases** checkbox in the Preferences section (checked by default). Enables or disables smart land analysis per-build without needing environment variables.
|
||||
|
||||
|
|
|
|||
|
|
@ -119,6 +119,15 @@
|
|||
<a href="https://scryfall.com" target="_blank" rel="noopener">Scryfall</a>.
|
||||
This website is not produced by, endorsed by, supported by, or affiliated with Scryfall or Wizards of the Coast.
|
||||
{% set _pba = _price_cache_ts() %}{% if _pba %}<br><span class="muted" style="font-size:.8em;">Prices as of {{ _pba }} — for live pricing visit <a href="https://scryfall.com" target="_blank" rel="noopener">Scryfall</a>.</span>{% endif %}
|
||||
<br><span class="muted" style="font-size:.8em;">
|
||||
<a href="https://github.com/mwisnowski/mtg_python_deckbuilder" target="_blank" rel="noopener">GitHub</a>
|
||||
·
|
||||
<a href="https://github.com/mwisnowski/mtg_python_deckbuilder/issues" target="_blank" rel="noopener">Report an Issue</a>
|
||||
·
|
||||
<a href="https://github.com/mwisnowski/mtg_python_deckbuilder/issues/new?template=other-feature-request-.md" target="_blank" rel="noopener">Request a Feature</a>
|
||||
·
|
||||
<a href="https://hub.docker.com/repository/docker/mwisnowski/mtg-python-deckbuilder/general" target="_blank" rel="noopener">DockerHub</a>
|
||||
</span>
|
||||
</footer>
|
||||
<!-- Card hover, theme badges, and DFC toggle styles moved to tailwind.css 2025-10-21 -->
|
||||
<style>
|
||||
|
|
|
|||
|
|
@ -7,6 +7,9 @@
|
|||
<h2>Commanders</h2>
|
||||
<p class="muted">Browse the catalog and jump straight into a build with your chosen leader.</p>
|
||||
</header>
|
||||
<p style="font-size: .875rem;">
|
||||
Know of commander-specific themes or synergies we're missing? <a href="https://github.com/mwisnowski/mtg_python_deckbuilder/issues/new?template=commander-specific-theme-request.md" target="_blank" rel="noopener" style="color: var(--accent); text-decoration: underline;">Submit a request here</a>.
|
||||
</p>
|
||||
|
||||
<form
|
||||
id="commander-filter-form"
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
|
||||
{% block content %}
|
||||
<section>
|
||||
<div class="actions-grid">
|
||||
<div class="actions-grid" style="max-width: calc(4 * 220px + 3 * .75rem);">
|
||||
{{ button('Build a Deck', variant='primary', href='/build', classes='action-button home-button') }}
|
||||
{{ button('Run a JSON Config', variant='secondary', href='/configs', classes='action-button home-button') }}
|
||||
{% if show_setup %}{{ button('Initial Setup', variant='secondary', href='/setup', classes='action-button home-button') }}{% endif %}
|
||||
|
|
@ -19,6 +19,12 @@
|
|||
<div id="themes-quick" style="margin-top:1rem; font-size:.85rem; color:var(--text-muted);">
|
||||
<span id="themes-quick-status">Themes: …</span>
|
||||
</div>
|
||||
<div class="actions-grid" style="max-width: calc(4 * 220px + 3 * .75rem); margin-top:2rem;">
|
||||
{{ button('GitHub', variant='secondary', href='https://github.com/mwisnowski/mtg_python_deckbuilder', classes='action-button home-button', attrs='target="_blank" rel="noopener"') }}
|
||||
{{ button('Report an Issue', variant='secondary', href='https://github.com/mwisnowski/mtg_python_deckbuilder/issues', classes='action-button home-button', attrs='target="_blank" rel="noopener"') }}
|
||||
{{ button('Request a Feature', variant='secondary', href='https://github.com/mwisnowski/mtg_python_deckbuilder/issues/new?template=other-feature-request-.md', classes='action-button home-button', attrs='target="_blank" rel="noopener"') }}
|
||||
{{ button('DockerHub', variant='secondary', href='https://hub.docker.com/repository/docker/mwisnowski/mtg-python-deckbuilder/general', classes='action-button home-button', attrs='target="_blank" rel="noopener"') }}
|
||||
</div>
|
||||
</section>
|
||||
<script>
|
||||
(function(){
|
||||
|
|
|
|||
|
|
@ -1,6 +1,9 @@
|
|||
{% extends 'base.html' %}
|
||||
{% block content %}
|
||||
<h2>Theme Catalog (Simple)</h2>
|
||||
<p style="margin-bottom: 1rem; font-size: .875rem;">
|
||||
See a theme that's missing or might be set up wrong? <a href="https://github.com/mwisnowski/mtg_python_deckbuilder/issues/new?template=general-theme-request.md" target="_blank" rel="noopener" style="color: var(--accent); text-decoration: underline;">Submit a request here</a>.
|
||||
</p>
|
||||
<div id="theme-catalog-simple">
|
||||
<div class="flex gap-3 flex-wrap mb-3.5 items-end">
|
||||
<div class="flex-1 min-w-[220px] relative">
|
||||
|
|
|
|||
|
|
@ -142,7 +142,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.3.2" # Displayed version label (set per release/tag)
|
||||
APP_VERSION: "v4.4.2" # Displayed version label (set per release/tag)
|
||||
|
||||
# ------------------------------------------------------------------
|
||||
# Misc / Land Selection (Step 7) Environment Tuning
|
||||
|
|
|
|||
|
|
@ -144,7 +144,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.3.2" # Displayed version label (set per release/tag)
|
||||
APP_VERSION: "v4.4.2" # Displayed version label (set per release/tag)
|
||||
|
||||
# ------------------------------------------------------------------
|
||||
# Misc / Land Selection (Step 7) Environment Tuning
|
||||
|
|
|
|||
23
docs/releases/v4.4.2.md
Normal file
23
docs/releases/v4.4.2.md
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
# MTG Python Deckbuilder v4.4.2
|
||||
|
||||
## Summary
|
||||
Adds community links and GitHub feature request templates so users can easily report issues, request new themes, and suggest features directly from the app.
|
||||
|
||||
## Added
|
||||
|
||||
### Community links
|
||||
GitHub repo, issue tracker, feature request, and DockerHub links now appear in the site footer and on the home page — visible from anywhere in the app without leaving the tab.
|
||||
|
||||
### GitHub issue templates
|
||||
Three structured issue templates are available at `.github/ISSUE_TEMPLATE/`:
|
||||
|
||||
- **General Theme Request** — report a missing theme or a theme with incorrect/incomplete data.
|
||||
- **Commander-Specific Theme Request** — request a new commander strategy theme or flag synergy gaps for a specific commander.
|
||||
- **Other Feature Request** — suggest UI improvements, new workflow features, export formats, or anything else not theme/commander related.
|
||||
|
||||
Reference copies of each template are also saved in `logs/roadmaps/feature_requests/` for local reference.
|
||||
|
||||
### Feedback prompts
|
||||
Short inline prompts with direct links to the relevant issue templates appear at the top of:
|
||||
- **Themes** page — links to the General Theme Request template
|
||||
- **Commanders** page — links to the Commander-Specific Theme Request template
|
||||
|
|
@ -5,7 +5,7 @@ build-backend = "setuptools.build_meta"
|
|||
|
||||
[project]
|
||||
name = "mtg-deckbuilder"
|
||||
version = "4.3.2"
|
||||
version = "4.4.2"
|
||||
description = "A command-line tool for building and analyzing Magic: The Gathering decks"
|
||||
readme = "README.md"
|
||||
license = {file = "LICENSE"}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue