From 07cb1ad8efb86690e70a9e20ce940b821bbcc4e0 Mon Sep 17 00:00:00 2001 From: Ganonmaster Date: Sat, 11 Apr 2026 22:03:08 +0200 Subject: [PATCH] Release v0.2.3 Co-Authored-By: Claude Sonnet 4.6 --- CHANGELOG.md | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++++ CLAUDE.md | 27 +++++++++++++++++++++++- 2 files changed, 84 insertions(+), 1 deletion(-) create mode 100644 CHANGELOG.md diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..ebeab58 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,58 @@ +# 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.2.3] - 2026-04-11 + +### Fixed +- Gitea release workflow: retry release creation with backoff to handle timing + between tag push and tag availability in the API. + +## [0.2.2] - 2026-04-09 + +### Fixed +- Updated Gitea container registry token in CI. + +## [0.2.1] - 2026-04-09 + +### Removed +- Deleted old GitHub Actions workflows (superseded by Gitea workflows). + +## [0.2.0] - 2026-04-09 + +### Added +- Emotes listing HTML page at `GET /` with styled table (accent colors, drop + shadow, glow effects). +- `GET /` health check endpoint (returns 200 OK). +- Dockerfile and Docker build/push workflow targeting the Gitea container + registry. + +### Fixed +- Error handling added to the client-side emotes fetch call on the HTML page. + +## [0.1.0] - 2026-03-18 + +### Added +- Rust/Axum HTTP server with SQLite and PostgreSQL support via `sqlx::AnyPool`. +- `EmoteRow` DB model and `EmoteResponse` JSON API response type. +- `POST /emotes` — create emote (multipart: `name`, `alias?`, `file`). +- `PUT /emotes/{uuid}` — update emote metadata. +- `DELETE /emotes/{uuid}` — delete emote from DB and S3. +- `GET /json` — list all emotes as JSON. +- `GET /version` — git commit hash and tag baked in at build time via + `build.rs`. +- S3/Wasabi storage backend with configurable endpoint and public URL. +- Database migrations run automatically on startup. +- GitHub Actions release workflow building a Linux binary on `v*` tag push. + +[Unreleased]: https://git.open3dlab.com/Open3DLab/mikebase/compare/v0.2.3...HEAD +[0.2.3]: https://git.open3dlab.com/Open3DLab/mikebase/compare/v0.2.2...v0.2.3 +[0.2.2]: https://git.open3dlab.com/Open3DLab/mikebase/compare/v0.2.1...v0.2.2 +[0.2.1]: https://git.open3dlab.com/Open3DLab/mikebase/compare/v0.2.0...v0.2.1 +[0.2.0]: https://git.open3dlab.com/Open3DLab/mikebase/compare/v0.1.0...v0.2.0 +[0.1.0]: https://git.open3dlab.com/Open3DLab/mikebase/releases/tag/v0.1.0 diff --git a/CLAUDE.md b/CLAUDE.md index 9a282b0..7ca4b42 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -56,4 +56,29 @@ The app is an Axum HTTP server with shared state (`AppState`) containing two com ## Releases -Pushing a `v*` tag triggers the GitHub Actions release workflow, which builds a Linux binary and uploads it to a GitHub Release. +Pushing a `v*` tag triggers the Gitea Actions release workflow, which builds a +Linux binary, uploads it to a Gitea Release, and pushes a Docker image to the +Gitea container registry. + +### Cutting a release + +1. Move the `[Unreleased]` entries in `CHANGELOG.md` to a new versioned section: + ```markdown + ## [0.x.y] - YYYY-MM-DD + ``` +2. Add a new empty `## [Unreleased]` section at the top. +3. Update the comparison links at the bottom of `CHANGELOG.md`: + - Change the `[Unreleased]` link to compare the new tag against `HEAD`. + - Add a new link for the new version comparing it against the previous tag. +4. Commit: `git commit -m "Release v0.x.y"` +5. Tag and push: + ```bash + git tag v0.x.y + git push origin main v0.x.y + ``` + +### Changelog conventions + +`CHANGELOG.md` follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). +Group entries under: `Added`, `Changed`, `Deprecated`, `Removed`, `Fixed`, `Security`. +Record notable changes in `[Unreleased]` as you make them, not only at release time.