From 55901e4173c823bcfc6dc0cd906d53f52197218a Mon Sep 17 00:00:00 2001 From: Dennis Doomen Date: Sat, 6 Jun 2026 16:01:40 +0200 Subject: [PATCH] Add GitHub release notes config and deprecate CHANGELOG.md --- .github/release.yml | 27 +++++++++++++++++++++++++++ AGENTS.md | 1 + CHANGELOG.md | 6 ++++++ CONTRIBUTING.md | 1 + 4 files changed, 35 insertions(+) create mode 100644 .github/release.yml diff --git a/.github/release.yml b/.github/release.yml new file mode 100644 index 000000000..c1ba931e0 --- /dev/null +++ b/.github/release.yml @@ -0,0 +1,27 @@ +changelog: + exclude: + labels: + - skip-changelog + - dependencies + authors: + - dependabot + categories: + - title: "⚠️ Breaking Changes" + labels: + - breaking-change + - title: "✨ New Features" + labels: + - enhancement + - title: "🐛 Bug Fixes" + labels: + - bug + - title: "🔒 Security" + labels: + - security + - title: "📦 Dependencies" + labels: + - dependencies + - title: "📖 Documentation" + labels: + - documentation + - title: "Other Changes" diff --git a/AGENTS.md b/AGENTS.md index c20d0a193..4a9c51be0 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -53,6 +53,7 @@ Do not commit code generated by `GenerateTools` — generated code is regenerate 4. **Tests next to code** — every `src/Foo` has a `tests/Foo.Tests` sibling. Mirror namespaces. 5. **Stay on xUnit + FluentAssertions + Verify.** Don't introduce new test frameworks. 6. **No per-file license headers.** The MIT notice lives in [`LICENSE`](LICENSE) at the repo root — single source of truth. Don't reintroduce header preambles on new files. +7. **No conventional commits.** Do not use `feat:`, `fix:`, `chore:`, `refactor:`, or any other conventional-commit prefix on commit messages or PR titles. Write functional descriptions that explain what the commit or PR accomplishes — e.g. "Add retry logic to the HTTP tool wrapper" or "Fix null-reference in target dependency resolution". The only exception is the `!` suffix (e.g. `fix(security)!: …`) used as a **detection signal** for breaking changes, not as a general style requirement. Full conventions + what-not-to-do list: [docs/agents/conventions.md](docs/agents/conventions.md). diff --git a/CHANGELOG.md b/CHANGELOG.md index ac44c315f..84b3b89ba 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,4 +1,10 @@ # Changelog + +> **Deprecated** — this file is no longer actively maintained. +> Going forward, release notes are published automatically via GitHub's release notes feature, +> driven by PR labels and the configuration in [`.github/release.yml`](.github/release.yml). +> See the [GitHub Releases page](https://github.com/ChrisonSimtian/Fallout/releases) for up-to-date release notes. + All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 9856829db..e978bf810 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -49,6 +49,7 @@ Fallout welcomes contributions. As a community, we want to help each other, prov ### When writing the PR +- **Write functional commit and PR titles** — describe what the change accomplishes, not how it's categorised. Do not use conventional-commit prefixes (`feat:`, `fix:`, `chore:`, `refactor:`, etc.). Good examples: "Add retry logic to the HTTP tool wrapper", "Fix null-reference in target dependency resolution". The `!` suffix (e.g. `fix(security)!: …`) is recognised only as a breaking-change detection signal, not a general style requirement. - Aim for qualitative, readable code that matches the surrounding style. - There's no committed `.editorconfig` or ReSharper/`*.DotSettings` file — they were removed during the takeover. Rely on `dotnet format` defaults and review; don't reintroduce them without a maintainer-level decision. - Add tests when meaningful — every `Foo` project has a sibling `Foo.Tests`.