Skip to content

BGG Sync v1.1.0

Choose a tag to compare

@seanmccabe seanmccabe released this 10 Jan 08:46
74c3d5e

BGG Sync v1.1.0

This major update introduces powerful new features for tracking your BoardGameGeek collection and significantly improves the robustness of the integration with a fully verified 100% test suite.

🌟 Highlights

🎲 Full Collection Tracking

You can now import your entire BoardGameGeek collection into Home Assistant!

  • Toggle Option: Enable "Track Collection" in the configuration options to auto-create sensors for every game you own.
  • Rich Metadata: Each game sensor now includes detailed data: min/max players, playtime, rank, weight, year released, and more.
  • Dynamic Art: Game sensors now display the official box art as their icon/picture.

🏷️ Enhanced Game Tracking

The track_game service is smarter:

  • Targeting: Add games to specific users in a multi-user setup.
  • Custom Tags: Attach NFC tags or Music URIs directly when tracking a game for easier automation integration.

🛡️ Robustness & Reliability

  • 100% Test Coverage: The integration has undergone a massive code quality overhaul, ensuring every line of code is tested. This means fewer bugs and higher reliability.
  • API Optimization: Smarter batching of API requests prevents connection errors when syncing large collections.

📜 Changelog

Added

  • Collection Tracking: New option to track your entire BGG collection as individual sensors.
  • Rich Metadata Refinement: Added parsing for min_players, max_players, min_playtime, max_playtime, sub_type, year, rank, weight.
  • Game Tracking Service: Enhanced bgg_sync.track_game service to support adding nfc_tag and music attributes to specific games.
  • Dynamic Icons: Game sensors now display the game's box art if available, falling back to the dice icon.
  • Configuration: Added "Track Collection" toggle in Options Flow.

Changed

  • API Performance: Optimized batch sizing (reduced to 20) for BGG API requests to prevent "400 Bad Request" errors on large collections.
  • Translations: Improved UI labels for configuration options.
  • Attributes: Renamed subtype to sub_type and fixed coll_id to only appear when relevant.
  • Reliability: Achieved 100% test coverage and implemented strict linting (ruff) to ensure robustness and code quality.

Fixed

  • Fixed issue where game attributes (Weight, Rating, etc.) were showing as "Unknown" due to XML parsing errors.
  • Fixed issue where service calls to track_game with tag or playlist aliases were ignored (now strictly nfc_tag and music).
  • Fixed multi-user collection tracking support.