Files
euchre_camp/CHANGELOG.md
T

4.5 KiB

[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):

  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:

    # 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