118 lines
4.5 KiB
Markdown
118 lines
4.5 KiB
Markdown
## [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
|
|
```
|