• 29 August 2026 — Fork maintenance and modernization:
    • This is a fork of the original Pretend You're Xyzzy project, brought up to date after several years of dormancy. See the GitHub commit history for full details; here's a summary of what changed.
    • Platform upgrade:
      • Upgraded to Java 25 (the current LTS), including the dependency updates needed to compile and run on it (Guice, EasyMock, Hibernate, log4j2, and others).
      • Migrated the persistence layer from javax.persistence to jakarta.persistence and Hibernate 6, replacing the old hand-rolled SQLite dialect with Hibernate's own maintained community SQLite dialect.
    • Deployment:
      • Added a Docker Compose deployment (a Dockerfile and docker-compose.yml) for running behind a reverse proxy, including a PostgreSQL service that seeds itself automatically from the existing card catalog.
    • Interface:
      • Added dark mode, with automatic detection based on your OS/browser setting and a manual toggle.
    • Bug fixes:
      • Fixed a lock-ordering deadlock between the connected-users list and the game manager.
      • Fixed several race conditions in game state handling (card set ID list, player list logging).
      • Fixed a crash risk when starting a game whose custom (Cardcast) card sets fail to load.
      • Fixed a bug where waiting for a new chat/game message could return before a message had actually arrived.
      • Fixed illegible disabled buttons in dark mode.
    • Code quality:
      • Worked through SonarCloud's full findings list for the project. Along the way this fixed some real issues, not just style: a log-injection-adjacent logging pattern, a server-side request forgery hole in custom-deck-by-URL loading, and a switch from MD5 to SHA-256 for a cache key, among others.
    • Housekeeping:
      • Repointed GitHub links (repository, bug reports, source metadata) at this fork instead of upstream.
      • CI and Dependabot now run on a self-hosted GitHub Actions runner, with Dependabot PRs that pass CI merged automatically.