Skip to content

v1.7.0

Choose a tag to compare

@github-actions github-actions released this 06 Mar 20:43
· 53 commits to main since this release
878ef2b

PuzzleTea v1.7.0

This release adds two new games, introduces a full JSONL-to-PDF print workflow, and replaces ad-hoc game wiring with an explicit catalog plus shared dynamic-grid infrastructure.

Highlights

  • Added Fillomino and Ripple Effect as full puzzle packages with generators, solvers, help docs, daily support, print adapters, and previews.
  • Added puzzle-pack export flow: puzzletea new <game> [mode] --export N emits JSONL, and puzzletea export-pdf renders half-letter booklet-ready PDFs with title pages, seeded shuffle, optional covers, and automatic page padding.
  • Added print adapters across supported games, plus pack parsing, ordering, and rendering infrastructure.
  • Replaced plugin-style game wiring with an explicit catalog and shared dynamic-grid system, making multi-size puzzle implementations more consistent.
  • Added --config and db_path config support so persistence can live outside the default ~/.puzzletea/history.db.
  • Expanded test coverage across export, PDF rendering, catalog/dynamic-grid behavior, and the two new games.

Added

  • New games: Fillomino (Mini 5x5 through Expert 12x12) and Ripple Effect (Mini 5x5 through Expert 9x9).
  • New commands/workflows:
    • puzzletea new <game> [mode] --export/-e <count> [-o file.jsonl]
    • puzzletea export-pdf <input.jsonl> [more.jsonl ...]
  • New JSONL export schema and pack metadata carrying generation time, version, category, mode selection, and seed.
  • New PDF renderer features including deterministic within-band difficulty mixing, optional cover pages, title and volume metadata, custom advert text, and licensed font assets.
  • New catalog and game/dynamic_grid packages for explicit registration/validation and reusable multi-size grid definitions.

Changed

  • README/install/usage docs now cover printable export and the expanded game catalog (11 total games).
  • Existing games moved to shared print-adapter and dynamic-grid patterns for more consistent CLI, menu, and daily behavior.
  • PDF export errors are surfaced more directly, JSONL handling is more consistent, and covers are optional rather than mandatory.
  • Config loading now supports --config and a persisted db_path override.

Reliability & Refactor

  • Split print-adapter and PDF-generation concerns away from gameplay packages to reduce coupling.
  • Tuned generator and solver paths further, including Nurikabe difficulty/generation tradeoff adjustments.
  • Added broad test coverage for export parsing/rendering/order logic, catalog invariants, dynamic-grid behavior, and puzzle packages.

Tooling & Assets

  • Switched the FPDF host dependency and added licensed Atkinson Hyperlegible Next and DM Serif Display font assets for PDF output.
  • Refreshed README and package docs for the new export flows and games.

Diff Summary (since v1.6.0)

  • 23 non-merge commits.
  • 134 files changed.
  • 15369 insertions, 1456 deletions.