38312f549c
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
48 lines
2.4 KiB
Markdown
48 lines
2.4 KiB
Markdown
# 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.1.0/),
|
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
|
|
## [Unreleased]
|
|
|
|
## [0.1.0] - 2026-05-30
|
|
|
|
### Added
|
|
|
|
- **FrankenPHP runtime** — base image migrated from `php-cli` to FrankenPHP Alpine for better performance and built-in web server support
|
|
- **FrankenPHP worker mode** — Symfony worker script (`public/worker.php`) with request reuse and graceful reload
|
|
- **Caddy configuration** — `docker/frankenphp/Caddyfile` and `Caddyfile.dev` for production and development setups
|
|
- **Provider health probes** — `ProviderInterface` extended with `ping()` and `probe()` methods; `ProbeTrait` provides the shared implementation
|
|
- **Per-provider status on `/health`** — the health endpoint now reports `ok`, `degraded`, or `down` for each configured provider (GitHub, GitLab, Gitea), along with an error code and latency
|
|
- **Supporting value objects** — `ProviderStatus`, `ProviderStatusType`, `ProviderErrorCode`, and `ProviderHealthChecker` service
|
|
- **`ContributionAggregator` service** — contribution merging logic extracted from `GraphController` into a dedicated, testable service
|
|
|
|
### Fixed
|
|
|
|
- Optional environment variables (`GITLAB_URL`, `ALLOWED_HOSTS`, etc.) now have explicit empty default values in `docker-compose.yml`, preventing Docker Compose warnings on startup
|
|
|
|
### Changed
|
|
|
|
- `SvgRenderer` is now `final` and declares `strict_types=1`
|
|
|
|
### Tests
|
|
|
|
- Unit tests added for `ProbeTrait`, `ProviderHealthChecker`, `ProviderStatus`, `ContributionAggregator`, and all three provider probes (`GitHubProvider`, `GitLabProvider`, `GiteaProvider`)
|
|
- `SvgRendererTest` refactored to follow project PHPUnit conventions (`#[Test]` attribute, `it_` prefix, Arrange/Act/Assert structure)
|
|
|
|
## [0.0.1] - 2025-01-01
|
|
|
|
### Added
|
|
|
|
- Initial release — GitHub, GitLab, and Gitea contribution graph as a self-hosted SVG endpoint
|
|
- Light and dark theme support
|
|
- Filesystem cache with 1-hour TTL
|
|
- Docker multi-stage build (`base → deps → build → final`)
|
|
- Basic `/health` endpoint
|
|
|
|
[Unreleased]: https://github.com/ArthurErlich/git-contribution-graph/compare/0.1.0...HEAD
|
|
[0.1.0]: https://github.com/ArthurErlich/git-contribution-graph/compare/0.0.1...0.1.0
|
|
[0.0.1]: https://github.com/ArthurErlich/git-contribution-graph/releases/tag/0.0.1
|