## [0.1.9] - 2026-04-27 ### Patch Changes - test: remove migrated Playwright tests (epic3-rankings, home-page) ## [0.1.8] - 2026-04-27 ### Patch Changes - test: migrate rankings and home-page tests from Playwright to Cucumber ## [0.1.7] - 2026-04-27 ### Patch Changes - fix: replace waitForLoadState('networkidle') with domcontentloaded in all E2E tests - feat: Implement tournament schedule tab and fix E2E tests (#27) ## [0.1.6] - 2026-04-26 ### Patch Changes - fix: update Cucumber config and hooks to properly load test infrastructure - feat: add feature summary documentation - docs: update README with feature files and issue tracking - feat: add tournament schedule feature test (issue #7) - feat: add player schedule feature test (issue #9) - feat: add password reset feature test (issue #10) - feat: add wordmark navigation feature test (issue #24) - docs: add README for Cucumber test framework - feat: add cucumber gherkin-style E2E test framework ## [0.1.5] - 2026-04-26 ### Patch Changes - ci: fix deployment directory path in release workflow ## [0.1.4] - 2026-04-02 ### Patch Changes - ci: remove acceptance tests and add dev deployment - fix(tests): resolve password validation, csv upload, and admin auth issues - fix(ci): correct playwright config paths and add env example files - fix(ci): use existing PostgreSQL server at dhg.lol - fix(ci): use PostgreSQL in acceptance-tests with dev credentials - feat(ci): build custom Docker images for Gitea Actions compatibility - fix(tests): add @prisma/client mock for test isolation - fix(ci): add prisma generate step to unit-tests job - fix: downgrade ESLint to v8.57.1 for LSP compatibility - fix: improve TypeScript types for better IDE code hinting - feat: migrate to ESLint flat config (eslint.config.js) - Revert "fix: downgrade ESLint to v8.x for .eslintrc.json compatibility" - fix: downgrade ESLint to v8.x for .eslintrc.json compatibility - fix: update PR workflow to exclude e2e tests from unit test phase - fix: avoid global mock clearing in EditTournamentForm tests - fix: avoid global mock clearing in Navigation tests - fix: add DOM cleanup to bun-setup.ts - fix: disable test isolation in bunfig.toml - refactor: improve test structure for Bun compatibility - feat: update CI/CD to use Bun - feat: migrate from npm to Bun - docs: update TODO list with recent fix - fix: add defensive checks to prisma.ts to prevent build failures ## [0.1.3] - 2026-04-01 ### Patch Changes - fix: skip release steps if no version bump commit was made - fix: improve error handling in getCommitsSinceLastTag - fix: add tag existence check in release workflow - fix: resolve release workflow version bump issues - ci-image-improvements (#18) - fix: version bumping and Docker registry authentication (#17) - fix: handle Docker registry authentication gracefully in release workflow - fix: run unit tests on branch commits, skip main branch - feat: add test workflow for every commit - trigger: release with test-capable image - feat: build test-capable image, run tests, then build production image - trigger: release workflow - fix: release workflow should not commit, only tag - trigger: manual workflow trigger for docker.notsosm.art - fix: update Docker build script to use docker.notsosm.art registry - fix: update workflow to use docker.notsosm.art registry - trigger: manual workflow trigger - fix: update workflow to use correct Docker registries - feat: add Gitea Actions release workflow - feat: add view match link to admin matches page ## [0.1.2] - 2026-04-01 ### Patch Changes - fix: handle Docker registry authentication gracefully in release workflow - fix: run unit tests on branch commits, skip main branch - feat: add test workflow for every commit - trigger: release with test-capable image - feat: build test-capable image, run tests, then build production image - trigger: release workflow - fix: release workflow should not commit, only tag - trigger: manual workflow trigger for docker.notsosm.art - fix: update Docker build script to use docker.notsosm.art registry - fix: update workflow to use docker.notsosm.art registry - trigger: manual workflow trigger - fix: update workflow to use correct Docker registries - feat: add Gitea Actions release workflow - feat: add view match link to admin matches page ## [0.1.1] - 2026-04-01 ### Patch Changes - Merge branch 'feat/database-test-safety' of ssh://git.notsosm.art/david/euchre_camp - fix: use ELO change instead of win rate for best partner calculation - fix: remove hardcoded passwords from docker-compose generation - fix: load .env.development in test setup files - fix: remove hardcoded database URLs and use environment variables - fix: set DATABASE_URL for acceptance tests - feat: add database test safety configuration - fix: allowTies not saved when editing tournaments (closes #6) - docs: add development database and testing documentation - feat: set up development database and test cleanup utilities - fix: improve availablePlayers query to handle undefined playerId - fix: handle empty playerId string in user edit API # Changelog All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## [0.1.0] - 2026-03-31 ### Added - **Authentication System**: Complete Better Auth integration with session management - **Authorization (RBAC)**: Role-based access control with player, tournament_admin, club_admin, and site_admin roles - **Tournament Management**: Full CRUD operations with multiple formats (round-robin, single/double elimination, Swiss) - **Rating Systems**: Support for Elo, Glicko2, and OpenSkill rating calculations - **Admin Panel**: Comprehensive admin interface for managing players, tournaments, and matches - **Player Profiles**: Detailed player statistics with partnership analytics - **Match Recording**: CSV upload functionality for batch match entry - **Development Database**: Isolated development database for testing - **Test Cleanup System**: Automatic cleanup of test records - **Production Database Cleanup**: Tools to remove test data while preserving real data - **Semantic Versioning**: Git tagging and Docker image tagging system ### Fixed - **Session Refresh**: Fixed navigation not updating immediately after login (closes #6) - **allowTies Save Bug**: Fixed "Allow Ties" checkbox not being saved when editing tournaments - **Next.js 16 Compatibility**: Fixed params Promise handling across all API routes and pages - **Match Diagram Positioning**: Fixed player positioning in match diagrams ### Changed - **Database**: Migrated from SQLite to PostgreSQL with production-ready configuration - **Docker**: Updated image tagging to use versioned tags (e.g., v0.1.0, latest) - **Testing**: Improved test coverage with 103 passing unit tests - **Documentation**: Added comprehensive README with development setup instructions ### Removed - N/A ## [0.0.1] - Initial Development ### Added - Basic database schema for Euchre tournament management - Initial Next.js application structure - Basic navigation and layout - Player rankings page --- ## Release Process This project follows semantic versioning (Semver): 1. **Version Format**: `MAJOR.MINOR.PATCH` - `MAJOR`: Breaking changes (API changes, database migrations requiring data migration) - `MINOR`: New features (backward compatible) - `PATCH`: Bug fixes, security updates 2. **Pre-release Versions**: `MAJOR.MINOR.PATCH-alpha.N`, `MAJOR.MINOR.PATCH-beta.N`, `MAJOR.MINOR.PATCH-rc.N` 3. **Creating a Release**: ```bash # Bump version npm run version:patch # or version:minor, version:major # Create git tag git tag -a v0.1.0 -m "Release v0.1.0" # Push changes and tag git push origin main git push origin v0.1.0 # Build and push Docker images npm run docker:build:push # Create release in Gitea tea release create v0.1.0 --title "Release v0.1.0" --note-file CHANGELOG.md ```