#2 Season hero photo as poster bg + switch to Alpine image

マージ済み
jschoubben が 2 個のコミットを feat/season-poster-bg から master へマージ 1週間前
jschoubben2週間前 にコメント

Season poster bg: render_season_poster() now pulls https://files-api.novox.be/dilbert/sports/formula1/cars/{year}.jpg, cover-fits into 1000×1500, and overlays a vertical dark gradient so the wordmark/year/footer stay legible over any underlying photo. Falls back to the previous all-black layout if the file isn't there.

Image:

  • python:3.12-slimpython:3.12-alpine. Debian was the lazy default; Alpine is the appropriate weight for this service.
  • fonts-dejavu-corettf-liberation. Same Liberation Sans Bold that Arch installs on the dev host (/usr/share/fonts/liberation/LiberationSans-Bold.ttf), so posters render byte-identical in dev and prod.
  • Drop fastf1 from the pip install — not imported anywhere in the served code paths. Removes pandas/matplotlib/scipy tail.
  • Add numpy explicitly (was pulled in transitively by fastf1; models/geo_json/geometry.py imports it at module load for vector ops).

Verified locally:

  • docker build succeeds.
  • Container start renders both /posters/race/Monaco Grand Prix/2025.png and /posters/season/2025.png cleanly.
  • Image size: 194 MB.
**Season poster bg:** `render_season_poster()` now pulls `https://files-api.novox.be/dilbert/sports/formula1/cars/{year}.jpg`, cover-fits into 1000×1500, and overlays a vertical dark gradient so the wordmark/year/footer stay legible over any underlying photo. Falls back to the previous all-black layout if the file isn't there. **Image:** - `python:3.12-slim` → `python:3.12-alpine`. Debian was the lazy default; Alpine is the appropriate weight for this service. - `fonts-dejavu-core` → `ttf-liberation`. Same Liberation Sans Bold that Arch installs on the dev host (`/usr/share/fonts/liberation/LiberationSans-Bold.ttf`), so posters render byte-identical in dev and prod. - Drop `fastf1` from the pip install — not imported anywhere in the served code paths. Removes pandas/matplotlib/scipy tail. - Add `numpy` explicitly (was pulled in transitively by fastf1; `models/geo_json/geometry.py` imports it at module load for vector ops). **Verified locally:** - `docker build` succeeds. - Container start renders both `/posters/race/Monaco Grand Prix/2025.png` and `/posters/season/2025.png` cleanly. - Image size: 194 MB.
jschoubben がクローズ 1週間前
プルリクエストは 4a2e9f5d63 でマージされています。
サインインしてこの会話に参加。
ラベルなし
マイルストーンなし
担当者なし
1 人の参加者
期日

期日は未設定です。

依存関係

このプルリクエストに依存関係はありません。

読み込み中…
キャンセル
保存
まだ内容がありません