- Add GoReleaser configuration for Linux binaries (amd64, arm64)
- Add release job to GitHub Actions for tagged versions
- Remove github.server_url validations (Gitea CI disabled)
- Update README with binary download instructions
- Releases will include compiled binaries and changelogs
- Replace 'stable' tag with semver-based tags (1.2.3, 1.2, 1)
- Use 'edge' tag for main branch instead of 'latest'
- Reserve 'latest' tag only for tagged releases
- Remove version from Swagger docs (tracked via git tags instead)
- Document available image tags in README
- Add github.server_url check to prevent workflow execution on Gitea
- Implement clear separation between development (latest) and production (stable) tags
- Use stable tag only for versioned releases (v*)
- Add sha- prefix to commit-based tags for better clarity
- Remove redundant branch name tags
- Create PasswordHasher interface in domain layer
- Implement BcryptHasher in infrastructure layer
- Update RegisterUserHandler and LoginUserHandler to use interface
- Remove bcrypt dependency from application layer
- Update main.go and integration tests with dependency injection
- Enhance CI/CD workflow with test and lint jobs
- Add code coverage check (minimum 50%)
- Add go vet and gofmt validation
- Configure build job to depend on test and lint passing
- Update GitHub Actions to latest versions (v4→v5)
This achieves 100% SOLID compliance (DIP) and ensures Clean Architecture
by removing external library dependencies from application/domain layers.
- Create Dockerfile with multi-stage build for optimized image size
- Add GitHub Actions workflow for automatic image publishing to ghcr.io
- Add PORT and HOST fallback defaults in config (8080 and 0.0.0.0)
- Update README with Docker Compose installation instructions