Skip to content

v0.1.0

Choose a tag to compare

@github-actions github-actions released this 03 Mar 16:41
· 34 commits to main since this release

v0.1.0 (2025-03-03)

Bug Fixes

  • Handle missing ui.broadcast method in newer NiceGUI versions (2479f57)

  • Added try-except to handle AttributeError when ui.broadcast is called

  • Fall back to timer-based sync when broadcast is not available

  • Added logging to track when fallback is used

  • Update semantic release pipeline configuration (2ee4d28)

Chores

Signed-off-by: Jonathan Irvin [email protected]

  • build: Add semantic versioning configuration (8329ca9)

Add python-semantic-release configuration to enable automatic versioning. Configure Black and isort for code formatting standards. Add development dependencies for linting and testing.

🤖 Generated with Claude Code Co-Authored-By: Claude [email protected]

  • dev: Add development helper scripts (e286126)

Add Makefile with common commands for building, testing and running. Create setup.sh script for easy developer onboarding. Configure git hooks for pre-commit checks.

🤖 Generated with Claude Code Co-Authored-By: Claude [email protected]

  • dev: Update Makefile to support both original and modular app (6aeea18)

  • formatting: Fix formatting and insure sanity checks (b9f4932)

Signed-off-by: Jonathan Irvin [email protected]

  • git: Add coverage files to gitignore (abd1f69)

  • poetry: Update lock file (7c207ec)

Signed-off-by: Jonathan Irvin [email protected]

Code Style

  • Format code with black and isort (1b474f0)

  • Format code with black and isort (7584575)

Continuous Integration

  • Add github actions workflow (9b31ae3)

Add CI/CD pipeline with GitHub Actions that:

  • Runs tests with pytest
  • Performs linting with flake8, black, and isort
  • Uploads coverage reports
  • Automatically creates releases based on semantic versioning

🤖 Generated with Claude Code Co-Authored-By: Claude [email protected]

  • build: Align CI, Docker build and Helm deployment (0685e62)

  • Update GitHub Action versions for consistency

  • Configure Docker build to use proper versioning tags

  • Fix Helm chart to use the correct image repository

  • Add security improvements to Docker and Helm deployment

  • Add volume initialization logic for persistent data

  • fix: Fix flake8 configuration syntax (3ded6bf)

  • fix: Fix linting configuration to exclude virtual environments (17be15c)

  • Add .flake8 configuration

  • Update CI workflow to exclude .venv from checks

  • Add exclusion patterns to Black and isort configurations

  • fix: Skip formatting checks for main.py and handle missing src directory (9464d93)

Documentation

  • Add deprecation notice to main.py (6eaa5da)

  • Mark main.py as deprecated but keep for backward compatibility

  • Add warning message when main.py is imported

  • Direct users to the new modular structure in src/ directory

  • Update README with comprehensive documentation (3eb772c)

  • changelog: Add initial changelog (6f07022)

Create CHANGELOG.md for tracking release history. Follow Keep a Changelog format for better release readability. Include entries for unreleased changes and initial 0.1.0 release.

🤖 Generated with Claude Code Co-Authored-By: Claude [email protected]

  • project: Update documentation with CI and semantic versioning (fa43299)

Update CLAUDE.md with:

  • Information about semantic versioning principles
  • CI/CD pipeline details
  • New build commands
  • Makefile usage instructions
  • Linting and formatting guidelines

🤖 Generated with Claude Code Co-Authored-By: Claude [email protected]

Features

  • Add ability to close the game (2653abc)

  • Configure semantic release for automated versioning (38b44d7)

  • Create unified release pipeline with semantic versioning (ee1dcdf)

  • ui: Add closed game message display (76abafc)

Replace the 'hide board' behavior with a 'GAME CLOSED' message displayed in the same space. This provides better visual feedback to users when the game is closed.

  • Add new constants for closed message text and color

  • Create new build_closed_message function that displays large text

  • Update close_game and sync_board_state to show message instead of hiding board

  • ui: Show closed message on all routes (2911416)

Instead of hiding the board when the game is closed, display a large 'GAME CLOSED' message in the same space as the board. This provides better visibility and a consistent user experience across all views including the main.py implementation.

  • Add build_closed_message function to both modules
  • Update sync_board_state to display message in both modules
  • Display message using the header font and free space color

Refactoring

  • Add type hints (45303b4)

  • Add proper typing to game_logic, board_builder, and constants

  • Create dedicated types module for shared type definitions

  • Fix tests to reflect new closed message functionality

  • Add mypy type checking to development dependencies

  • Implement modular architecture for improved maintainability (d1c4c97)

  • Split monolithic main.py into logical modules

  • Created directory structure with src/ as the root

  • Organized code into config, core, ui, and utils packages

  • Updated basic test to work with new structure

  • Maintained existing functionality while improving code organization

  • Simplify CI workflow by removing redundant release job (25b1edf)

Testing

  • Add comprehensive unit tests for current functionality (49b8fdf)

  • Added unit tests for game logic functions (board generation, win detection, etc.)

  • Added unit tests for UI and styling functions

  • Added tests for file operations (reading phrases.txt)

  • Added integration test for full game flow

  • Current test coverage: 69% for main.py, 80% overall

  • Update header_updates_on_both_paths test (cb6c3f5)

  • Simplify test to avoid circular dependencies

  • Remove complex mocking that was causing failures

  • Focus on the core functionality being tested

  • Use direct board_views manipulation for cleaner test

  • Update tests to not expect ui.broadcast (9e689dc)

  • Modified test_close_game to not assert on ui.broadcast call

  • Ensures tests pass with newer NiceGUI versions

  • Aligns with recent changes to handle missing broadcast method

  • Update ui functions tests to work with modular structure (d91afdd)

  • Update import paths to use the new modular structure

  • Replace main module references with specific module imports

  • Update test assertions to match new implementation details

  • Add proper cleanup in tests to restore global state