9.7 KiB
9.7 KiB
[0.1.16] - 2026-05-02
Patch Changes
- Merge branch 'main' of https://git.notsosm.art/david/euchre_camp
- feat: add bracket visualization for tournament schedule (#8)
[0.1.15] - 2026-05-02
Patch Changes
- Merge branch 'main' of https://git.notsosm.art/david/euchre_camp
- feat: add view-as-role feature for site admins (#15)
[0.1.14] - 2026-05-02
Patch Changes
- Merge branch 'bugfix/7-tournament-schedule-tests': Schedule generation, clickable matchups, and test fixes
- Merge branch 'bugfix/9-player-schedule-tests': Player schedule clickable matches
- Merge branch 'bugfix/10-password-reset-tests': Password reset API and form wiring
- fix: resolve schedule generation tests - round display, clickable links, and team count
- fix: rename variable to avoid shadowing expectedRounds function
- fix: improve link click handling to wait for networkidle
- feat: implement password reset API endpoint and wire up form
- fix: make player schedule matches clickable links to match detail page
- fix: support matchup query param for direct navigation to entry page
- fix: correct wordmark link to point to home page
- fix: resolve schedule data staleness in production builds
- wip: Tournament schedule tests - 27/30 passing
- feat: add ScheduleDisplay component and wire up schedule page with Generator
- test: add tournament schedule step definitions
- test: enable player schedule tests with match data setup
- test: enable password reset page test and add navigation step
[0.1.13] - 2026-04-27
Patch Changes
- ci: update Playwright to v1.59.1 in CI base image
[0.1.12] - 2026-04-27
Patch Changes
- ci: clear Bun cache before install to fix integrity check failures
[0.1.11] - 2026-04-27
Patch Changes
[0.1.10] - 2026-04-27
Patch Changes
- fix: prevent content overflow on right side of screen
[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, and this project adheres to Semantic Versioning.
[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):
-
Version Format:
MAJOR.MINOR.PATCHMAJOR: Breaking changes (API changes, database migrations requiring data migration)MINOR: New features (backward compatible)PATCH: Bug fixes, security updates
-
Pre-release Versions:
MAJOR.MINOR.PATCH-alpha.N,MAJOR.MINOR.PATCH-beta.N,MAJOR.MINOR.PATCH-rc.N -
Creating a Release:
# 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