1.7 KiB
MTG Python Deckbuilder v4.2.1
Summary
Patch release fixing two issues introduced in v4.2.0: budget/price styling missing from DockerHub image builds, and a crash in the CI similarity-cache workflow when rebuilding the price cache.
Fixed
Budget/price CSS missing from DockerHub builds
All budget badges, price chart bars (category stacked bar + histogram), card price overlays, stale price indicators, and pickups page styles were invisible when pulling the image from DockerHub. The root cause: custom CSS was written into styles.css (the compiled Tailwind output) rather than tailwind.css (the source). The Dockerfile deletes and regenerates styles.css from tailwind.css during the image build, silently wiping all custom classes. All budget/price CSS has been moved into tailwind.css so it survives every Docker build.
Affected elements:
.budget-badge/.budget-badge--under/soft_exceeded/hard_exceeded.tier-badge/.tier-badge--s/m/l.card-price-overlay,.card-price-inline,.card-price-tip.card-tile.over-budget,.stack-card.over-budget,.list-row.over-budget.budget-price-bar,.budget-review-paneland all child classes.price-cat-*(stacked category bar).price-hist-*(histogram bars).stale-price-indicator,.stale-price-badge,.stale-banner.running-budget-chip,.pickups-table
Workflow price cache crash
The build-similarity-cache CI workflow failed with AttributeError: 'PriceService' object has no attribute '_lazy_ts'. This attribute is only initialized when start_lazy_refresh() is called (which the web app does on startup), but the CI setup script instantiates PriceService bare. Added a hasattr guard in _rebuild_cache() to lazy-initialize _lazy_ts on first use.