|
1 | | -# Changelog |
2 | | - |
3 | | -All notable changes to this project will be documented in this file. |
4 | | - |
5 | | -The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), |
6 | | -and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). |
7 | | - |
8 | | -## [Unreleased] |
9 | | - |
10 | | -### Added |
11 | | -- Initial project structure |
12 | | -- Bingo board generation functionality |
13 | | -- Interactive UI with NiceGUI |
14 | | -- Board synchronization between views |
15 | | -- Testing framework with pytest |
16 | | -- Modular architecture with separate components |
17 | | -- Semantic versioning with python-semantic-release |
18 | | -- CI pipeline with GitHub Actions |
19 | | -- Developer setup script |
20 | | - |
21 | | -## [0.1.0] - 2025-03-02 |
22 | | - |
23 | | -### Added |
24 | | -- Initial release |
25 | | -- Basic bingo board functionality |
26 | | -- Home and stream views |
27 | | -- Dynamic board generation |
28 | | -- Win pattern detection |
| 1 | +# CHANGELOG |
| 2 | + |
| 3 | + |
| 4 | +## v0.1.0 (2025-03-03) |
| 5 | + |
| 6 | +### Bug Fixes |
| 7 | + |
| 8 | +- Handle missing ui.broadcast method in newer NiceGUI versions |
| 9 | + ([`2479f57`](https://github.com/OffendingCommit/commit-bingo/commit/2479f57615ca293f0977d5d24a4d9e6e6da6d015)) |
| 10 | + |
| 11 | +- Added try-except to handle AttributeError when ui.broadcast is called - Fall back to timer-based |
| 12 | + sync when broadcast is not available - Added logging to track when fallback is used |
| 13 | + |
| 14 | +- Update semantic release pipeline configuration |
| 15 | + ([`2ee4d28`](https://github.com/OffendingCommit/commit-bingo/commit/2ee4d281095276792abae04f3af198c2705cec0b)) |
| 16 | + |
| 17 | +### Chores |
| 18 | + |
| 19 | +- Formatting |
| 20 | + ([`5e6e919`](https://github.com/OffendingCommit/commit-bingo/commit/5e6e9190c299a1004d8fa76a06abeb18ecbe3238)) |
| 21 | + |
| 22 | +Signed-off-by: Jonathan Irvin <djfoxyslpr@gmail.com> |
| 23 | + |
| 24 | +- **build**: Add semantic versioning configuration |
| 25 | + ([`8329ca9`](https://github.com/OffendingCommit/commit-bingo/commit/8329ca9f9b4cf001afc79184dc30fb686191b0ea)) |
| 26 | + |
| 27 | +Add python-semantic-release configuration to enable automatic versioning. Configure Black and isort |
| 28 | + for code formatting standards. Add development dependencies for linting and testing. |
| 29 | + |
| 30 | +🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude |
| 31 | + <noreply@anthropic.com> |
| 32 | + |
| 33 | +- **dev**: Add development helper scripts |
| 34 | + ([`e286126`](https://github.com/OffendingCommit/commit-bingo/commit/e286126e3d3fa391ea77abdcb3c4eef1f1d5eaa5)) |
| 35 | + |
| 36 | +Add Makefile with common commands for building, testing and running. Create setup.sh script for easy |
| 37 | + developer onboarding. Configure git hooks for pre-commit checks. |
| 38 | + |
| 39 | +🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude |
| 40 | + <noreply@anthropic.com> |
| 41 | + |
| 42 | +- **dev**: Update Makefile to support both original and modular app |
| 43 | + ([`6aeea18`](https://github.com/OffendingCommit/commit-bingo/commit/6aeea18f1bfa194cbee700836d7326497e958b14)) |
| 44 | + |
| 45 | +- **formatting**: Fix formatting and insure sanity checks |
| 46 | + ([`b9f4932`](https://github.com/OffendingCommit/commit-bingo/commit/b9f4932bc95eed270156e2d4c9dd7b26d7ca3cf6)) |
| 47 | + |
| 48 | +Signed-off-by: Jonathan Irvin <djfoxyslpr@gmail.com> |
| 49 | + |
| 50 | +- **git**: Add coverage files to gitignore |
| 51 | + ([`abd1f69`](https://github.com/OffendingCommit/commit-bingo/commit/abd1f69b4528cd3ee0f77a2c9539c1f739849f1b)) |
| 52 | + |
| 53 | +- **poetry**: Update lock file |
| 54 | + ([`7c207ec`](https://github.com/OffendingCommit/commit-bingo/commit/7c207eceba505bd43c746351ac7dd1c78fc89bd8)) |
| 55 | + |
| 56 | +Signed-off-by: Jonathan Irvin <djfoxyslpr@gmail.com> |
| 57 | + |
| 58 | +### Code Style |
| 59 | + |
| 60 | +- Format code with black and isort |
| 61 | + ([`1b474f0`](https://github.com/OffendingCommit/commit-bingo/commit/1b474f096d1d0b05f2ead7a4fef40945c3080729)) |
| 62 | + |
| 63 | +- Format code with black and isort |
| 64 | + ([`7584575`](https://github.com/OffendingCommit/commit-bingo/commit/7584575fba2c6b9dbcd789dfd074aab5c0fa74df)) |
| 65 | + |
| 66 | +### Continuous Integration |
| 67 | + |
| 68 | +- Add github actions workflow |
| 69 | + ([`9b31ae3`](https://github.com/OffendingCommit/commit-bingo/commit/9b31ae30c6dc56b78663421d0c63e19ec702d160)) |
| 70 | + |
| 71 | +Add CI/CD pipeline with GitHub Actions that: - Runs tests with pytest - Performs linting with |
| 72 | + flake8, black, and isort - Uploads coverage reports - Automatically creates releases based on |
| 73 | + semantic versioning |
| 74 | + |
| 75 | +🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude |
| 76 | + <noreply@anthropic.com> |
| 77 | + |
| 78 | +- **build**: Align CI, Docker build and Helm deployment |
| 79 | + ([`0685e62`](https://github.com/OffendingCommit/commit-bingo/commit/0685e6204058ff896dd5b9c0bd4ae504f467e097)) |
| 80 | + |
| 81 | +- Update GitHub Action versions for consistency - Configure Docker build to use proper versioning |
| 82 | + tags - Fix Helm chart to use the correct image repository - Add security improvements to Docker |
| 83 | + and Helm deployment - Add volume initialization logic for persistent data |
| 84 | + |
| 85 | +- **fix**: Fix flake8 configuration syntax |
| 86 | + ([`3ded6bf`](https://github.com/OffendingCommit/commit-bingo/commit/3ded6bfef1d95388358ae13c73111013e586aef7)) |
| 87 | + |
| 88 | +- **fix**: Fix linting configuration to exclude virtual environments |
| 89 | + ([`17be15c`](https://github.com/OffendingCommit/commit-bingo/commit/17be15cc60e1248cf69aa6c67f75e269f81d7bfe)) |
| 90 | + |
| 91 | +- Add .flake8 configuration - Update CI workflow to exclude .venv from checks - Add exclusion |
| 92 | + patterns to Black and isort configurations |
| 93 | + |
| 94 | +- **fix**: Skip formatting checks for main.py and handle missing src directory |
| 95 | + ([`9464d93`](https://github.com/OffendingCommit/commit-bingo/commit/9464d93471306210bea6183877748aea2feed977)) |
| 96 | + |
| 97 | +### Documentation |
| 98 | + |
| 99 | +- Add deprecation notice to main.py |
| 100 | + ([`6eaa5da`](https://github.com/OffendingCommit/commit-bingo/commit/6eaa5da84e624d0609eea3423b35b20b8e510c66)) |
| 101 | + |
| 102 | +- Mark main.py as deprecated but keep for backward compatibility - Add warning message when main.py |
| 103 | + is imported - Direct users to the new modular structure in src/ directory |
| 104 | + |
| 105 | +- Update README with comprehensive documentation |
| 106 | + ([`3eb772c`](https://github.com/OffendingCommit/commit-bingo/commit/3eb772c0a211637575b301cbbf6ae0180c0c692e)) |
| 107 | + |
| 108 | +- **changelog**: Add initial changelog |
| 109 | + ([`6f07022`](https://github.com/OffendingCommit/commit-bingo/commit/6f07022e3fb1704fdd4e33601eaad33a5a886d71)) |
| 110 | + |
| 111 | +Create CHANGELOG.md for tracking release history. Follow Keep a Changelog format for better release |
| 112 | + readability. Include entries for unreleased changes and initial 0.1.0 release. |
| 113 | + |
| 114 | +🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude |
| 115 | + <noreply@anthropic.com> |
| 116 | + |
| 117 | +- **project**: Update documentation with CI and semantic versioning |
| 118 | + ([`fa43299`](https://github.com/OffendingCommit/commit-bingo/commit/fa43299bc878fdeb4c19af905dacb7fd98411690)) |
| 119 | + |
| 120 | +Update CLAUDE.md with: - Information about semantic versioning principles - CI/CD pipeline details - |
| 121 | + New build commands - Makefile usage instructions - Linting and formatting guidelines |
| 122 | + |
| 123 | +🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude |
| 124 | + <noreply@anthropic.com> |
| 125 | + |
| 126 | +### Features |
| 127 | + |
| 128 | +- Add ability to close the game |
| 129 | + ([`2653abc`](https://github.com/OffendingCommit/commit-bingo/commit/2653abcf5ff1b5b992746d53d92573289839398f)) |
| 130 | + |
| 131 | +- Configure semantic release for automated versioning |
| 132 | + ([`38b44d7`](https://github.com/OffendingCommit/commit-bingo/commit/38b44d7b53158a8750a5388af59d0f43d540f4aa)) |
| 133 | + |
| 134 | +- Create unified release pipeline with semantic versioning |
| 135 | + ([`ee1dcdf`](https://github.com/OffendingCommit/commit-bingo/commit/ee1dcdfb378ea2e5badf40ddb86b8d9369dca3c4)) |
| 136 | + |
| 137 | +- **ui**: Add closed game message display |
| 138 | + ([`76abafc`](https://github.com/OffendingCommit/commit-bingo/commit/76abafc755bfcd77a5690dbadc3288562c262b6d)) |
| 139 | + |
| 140 | +Replace the 'hide board' behavior with a 'GAME CLOSED' message displayed in the same space. This |
| 141 | + provides better visual feedback to users when the game is closed. |
| 142 | + |
| 143 | +- Add new constants for closed message text and color - Create new build_closed_message function |
| 144 | + that displays large text - Update close_game and sync_board_state to show message instead of |
| 145 | + hiding board |
| 146 | + |
| 147 | +- **ui**: Show closed message on all routes |
| 148 | + ([`2911416`](https://github.com/OffendingCommit/commit-bingo/commit/291141669ea534d3b54e24f5fdd2a787db914b22)) |
| 149 | + |
| 150 | +Instead of hiding the board when the game is closed, display a large 'GAME CLOSED' message in the |
| 151 | + same space as the board. This provides better visibility and a consistent user experience across |
| 152 | + all views including the main.py implementation. |
| 153 | + |
| 154 | +- Add build_closed_message function to both modules - Update sync_board_state to display message in |
| 155 | + both modules - Display message using the header font and free space color |
| 156 | + |
| 157 | +### Refactoring |
| 158 | + |
| 159 | +- Add type hints |
| 160 | + ([`45303b4`](https://github.com/OffendingCommit/commit-bingo/commit/45303b41727127ba3b77a508ec5e289a62aab469)) |
| 161 | + |
| 162 | +- Add proper typing to game_logic, board_builder, and constants - Create dedicated types module for |
| 163 | + shared type definitions - Fix tests to reflect new closed message functionality - Add mypy type |
| 164 | + checking to development dependencies |
| 165 | + |
| 166 | +- Implement modular architecture for improved maintainability |
| 167 | + ([`d1c4c97`](https://github.com/OffendingCommit/commit-bingo/commit/d1c4c97adcaa39b08cf46e7cba41ef40a9716c9e)) |
| 168 | + |
| 169 | +- Split monolithic main.py into logical modules - Created directory structure with src/ as the root |
| 170 | + - Organized code into config, core, ui, and utils packages - Updated basic test to work with new |
| 171 | + structure - Maintained existing functionality while improving code organization |
| 172 | + |
| 173 | +- Simplify CI workflow by removing redundant release job |
| 174 | + ([`25b1edf`](https://github.com/OffendingCommit/commit-bingo/commit/25b1edf2b3ea280c5eeb56e476c76e00e782c28e)) |
| 175 | + |
| 176 | +### Testing |
| 177 | + |
| 178 | +- Add comprehensive unit tests for current functionality |
| 179 | + ([`49b8fdf`](https://github.com/OffendingCommit/commit-bingo/commit/49b8fdfe042bab1e56c78e71f5717ddd26adde3c)) |
| 180 | + |
| 181 | +- Added unit tests for game logic functions (board generation, win detection, etc.) - Added unit |
| 182 | + tests for UI and styling functions - Added tests for file operations (reading phrases.txt) - Added |
| 183 | + integration test for full game flow - Current test coverage: 69% for main.py, 80% overall |
| 184 | + |
| 185 | +- Update header_updates_on_both_paths test |
| 186 | + ([`cb6c3f5`](https://github.com/OffendingCommit/commit-bingo/commit/cb6c3f55d6f62f006f1a0cfeaa9f6e8a82bf0a89)) |
| 187 | + |
| 188 | +- Simplify test to avoid circular dependencies - Remove complex mocking that was causing failures - |
| 189 | + Focus on the core functionality being tested - Use direct board_views manipulation for cleaner |
| 190 | + test |
| 191 | + |
| 192 | +- Update tests to not expect ui.broadcast |
| 193 | + ([`9e689dc`](https://github.com/OffendingCommit/commit-bingo/commit/9e689dcb2afa7db33277efb56be6db1e74144df9)) |
| 194 | + |
| 195 | +- Modified test_close_game to not assert on ui.broadcast call - Ensures tests pass with newer |
| 196 | + NiceGUI versions - Aligns with recent changes to handle missing broadcast method |
| 197 | + |
| 198 | +- Update ui functions tests to work with modular structure |
| 199 | + ([`d91afdd`](https://github.com/OffendingCommit/commit-bingo/commit/d91afddecfcffeeac51ce98b4610436682602777)) |
| 200 | + |
| 201 | +- Update import paths to use the new modular structure - Replace main module references with |
| 202 | + specific module imports - Update test assertions to match new implementation details - Add proper |
| 203 | + cleanup in tests to restore global state |
0 commit comments