Skip to content

Releases: offendingcommit/commit-bingo

v1.2.1

26 Jun 13:54

Choose a tag to compare

v1.2.1 (2025-06-26)

Bug Fixes

  • Update gitignore and test configurations (a523af0)

  • Add game_state.json to gitignore for state persistence

  • Update CLAUDE.md with memory management protocols

  • Fix hot reload integration test indentation error


Detailed Changes: v1.2.0...v1.2.1

v1.2.0

22 Jun 23:51

Choose a tag to compare

v1.2.0 (2025-06-22)

Bug Fixes

  • Correct import sorting in test_state_persistence.py (90369b7)

Fix isort import sorting check failure in CI pipeline by running isort on tests/test_state_persistence.py to comply with project formatting rules

  • ci: Add playwright markers to browser tests (aac342b)

  • Add @pytest.mark.playwright and @pytest.mark.e2e markers to browser tests

  • Ensures these tests are excluded from CI with '-m "not e2e and not playwright"'

  • Fixes CI failures due to missing playwright browser binaries

Resolves CI test failures in hot reload integration tests

  • ci: Complete StateManager integration and CI optimization (d6cd8ba)

  • Add proper pytest markers to all integration/performance test files

  • Update CI workflows to exclude flaky tests from automated runs

  • Fix test isolation issues in state persistence and board builder tests

  • Complete StateManager integration with game logic functions

  • Optimize CI to run 139 reliable tests in ~7s vs previous 2+ min timeouts

🤖 Generated with Claude Code

Co-Authored-By: Claude [email protected]

  • ci: Exclude slow integration tests from CI pipeline (13ba214)

  • Add @pytest.mark.integration and @pytest.mark.slow to responsiveness tests

  • Update CI workflows to exclude slow and integration tests

  • Reduces CI test count from 165 to 150 tests (15 deselected)

  • Focuses CI on fast unit and medium integration tests

Improves CI reliability by excluding flaky performance tests

  • pytest: Add missing pytest markers to configuration (9e31118)

  • Add missing markers: bdd, known-issue-13, critical, edge-case, concurrent, error-handling

  • Fixes pytest collection warnings for test markers

  • Ensures all test markers are properly registered

Code Style

  • Fix import sorting with isort (1f5c5af)

  • Sort imports in all Python files according to Black profile

  • Separate standard library, third-party, and local imports

  • Improve code consistency and readability

🤖 Generated with Claude Code

Co-Authored-By: Claude [email protected]

Documentation

  • Consolidate markdown files into CLAUDE.md (15cdb00)

Merge content from CONTEXT.md and NICEGUI_NOTES.md into CLAUDE.md to reduce root-level documentation clutter. The consolidated file now includes:

  • State persistence documentation
  • View synchronization details
  • NiceGUI framework notes and best practices
  • Mobile optimization guidelines

This keeps only README.md and CLAUDE.md as the primary documentation files.

Features

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

  • ci: Optimize workflow for improved test infrastructure (0af9336)

  • Update test execution to run unit tests first for fast feedback

  • Add marker-based filtering to exclude slow e2e/playwright tests from CI

  • Remove Black formatting checks due to architecture compatibility issues

  • Add XML coverage reporting for better CI integration

  • Fix import sorting in app.py

Improves CI speed from ~2min to ~30s by running 79 unit tests first

Testing

  • Add failing tests for state persistence bugs (a628bfb)

Add comprehensive test suite to reproduce state persistence issues:

  • Tests for hot reload losing state
  • Tests for concurrent update race conditions
  • Tests for storage initialization order problems
  • BDD feature file with Gherkin scenarios

These tests are expected to fail until we implement proper server-side state persistence and fix the architectural issues.

Related to #13

  • Add test tagging utility and improved hot reload test (8a05a48)

  • Add scripts/tag_tests.py for bulk test marker application

  • Create improved hot reload integration test with visual state validation

  • Remove temporary debugging files and images

🤖 Generated with Claude Code

Co-Authored-By: Claude [email protected]

  • Enhance testing infrastructure with comprehensive markers (f1f65bd)

  • Add pytest.ini with detailed marker definitions for test categorization

  • Update Makefile with progressive test targets (test-unit, test-quick, test, test-e2e)

  • Create tests/README.md documenting test organization and marker usage

  • Implement testing pyramid strategy: 80% unit, 15% integration, 5% E2E

🤖 Generated with Claude Code

Co-Authored-By: Claude [email protected]


Detailed Changes: v1.1.4...v1.2.0

v1.1.4

08 Mar 23:01

Choose a tag to compare

v1.1.4 (2025-03-08)

Bug Fixes


Detailed Changes: v1.1.3...v1.1.4

v1.1.3

08 Mar 22:45

Choose a tag to compare

v1.1.3 (2025-03-08)

Bug Fixes


Detailed Changes: v1.1.2...v1.1.3

v1.1.2

08 Mar 22:41

Choose a tag to compare

v1.1.2 (2025-03-08)

Bug Fixes

  • ci: Change semantic versioning workflow (b588568)

Detailed Changes: v1.1.1...v1.1.2

v1.1.1

08 Mar 22:26

Choose a tag to compare

v1.1.1 (2025-03-08)

Bug Fixes

  • Release pipeline to listen to "The next version is" (d9acadf)

Detailed Changes: v1.1.0...v1.1.1

v1.1.0

08 Mar 22:21

Choose a tag to compare

v1.1.0 (2025-03-08)

Bug Fixes

Features


Detailed Changes: v1.0.0...v1.1.0

v1.0.0

03 Mar 16:55
6ca981f

Choose a tag to compare

Bingo v1.0.0

This is the first major release of the Bingo application, reflecting the maturity and stability of the codebase. Key milestones include:

  • Complete modular architecture implementation
  • Stable UI with game closure functionality
  • Comprehensive test coverage
  • Full CI/CD pipeline with semantic versioning
  • Docker containerization and Helm chart for Kubernetes deployment

Changes since v0.1.0

  • Refined the modular architecture with dedicated packages for config, core, ui, and utils
  • Added ability to close the game with visual indication
  • Implemented comprehensive test suite with good coverage
  • Created unified release pipeline with semantic versioning
  • Improved documentation with comprehensive README and CLAUDE.md

🤖 Generated with Claude Code

v0.1.0

03 Mar 16:41

Choose a tag to compare

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