diff --git a/.github/workflows/generate-changelog.yml b/.github/workflows/generate-changelog.yml index a19688b8d..86bc7ae67 100644 --- a/.github/workflows/generate-changelog.yml +++ b/.github/workflows/generate-changelog.yml @@ -74,7 +74,7 @@ jobs: - name: Check for changelog fragments id: check_fragments run: | - FRAGMENT_COUNT=$(find changelog -name "*.md" ! -name "README.md" ! -name "_template.md.j2" | wc -l | tr -d ' ') + FRAGMENT_COUNT=$(find changelog -name "*.md" ! -name "_template.md.j2" | wc -l | tr -d ' ') echo "fragment_count=$FRAGMENT_COUNT" >> $GITHUB_OUTPUT if [ "$FRAGMENT_COUNT" -eq "0" ]; then @@ -90,8 +90,8 @@ jobs: INVALID_FRAGMENTS="" for file in changelog/*.md; do - # Skip README and template - if [[ "$file" == "changelog/README.md" ]] || [[ "$file" == "changelog/_template.md.j2" ]]; then + # Skip template + if [[ "$file" == "changelog/_template.md.j2" ]]; then continue fi diff --git a/changelog/README.md b/changelog/README.md deleted file mode 100644 index cc579f0a0..000000000 --- a/changelog/README.md +++ /dev/null @@ -1,126 +0,0 @@ -# Changelog Fragments - -This directory contains changelog fragments that will be compiled into the main `CHANGELOG.md` at release time using [towncrier](https://towncrier.readthedocs.io/). - -## For Contributors: Adding a Changelog Entry - -When you make a change that should be documented in the changelog, create a new file in this directory. - -### Creating a Fragment - -Create a file in this directory with this naming pattern: - -``` -changelog/..md -``` - -Choose the appropriate type: - -- `added.md` - New features -- `changed.md` - Changes in existing functionality -- `deprecated.md` - Soon-to-be removed features -- `removed.md` - Removed features -- `fixed.md` - Bug fixes -- `security.md` - Security fixes - -Write your changelog entry as a Markdown bullet point. Include the `-` at the start: - -**Example files:** - -`changelog/1234.added.md`: - -```markdown -- Added support for Anthropic Claude 3.5 Sonnet with improved streaming performance. -``` - -`changelog/5678.fixed.md`: - -```markdown -- Fixed an issue where audio frames were dropped during high-load scenarios. -``` - -**For entries with nested bullets:** - -`changelog/1234.changed.md`: - -```markdown -- Updated service configuration: - - - Changed default timeout to 30 seconds - - Added retry logic for failed connections - - Improved error messages -``` - -### Multiple Changes in One PR - -**Different types of changes:** Create separate fragment files for each type: - -``` -changelog/1234.added.md -changelog/1234.fixed.md -``` - -**Multiple changes of the same type:** Create numbered fragment files: - -``` -changelog/1234.changed.md -changelog/1234.changed.2.md -changelog/1234.changed.3.md -``` - -**Related changes:** Use nested bullets in a single fragment: - -```markdown -- Updated service configuration: - - - Changed default timeout to 30 seconds - - Added retry logic for failed connections -``` - -**Rule of thumb:** One logical change per fragment file. If changes are unrelated, use separate files. - -### Preview Your Changes - -To see what your changelog entry will look like: - -```bash -towncrier build --draft --version Unreleased -``` - -This won't modify any files, just show you a preview. - -### When to Skip Changelog Entries - -You can skip adding a changelog entry for: - -- Documentation-only changes -- Internal refactoring with no user-facing impact -- Test-only changes -- CI/build configuration changes - -If you're unsure whether your change needs a changelog entry, ask in your PR! - ---- - -## For Maintainers: Releasing - -### Automated Release - -The changelog is automatically generated via GitHub Actions. When you're ready to release: - -1. **Trigger the workflow** from GitHub Actions: - - - Go to Actions → "Generate Changelog for Release" - - Click "Run workflow" - - Enter the version (e.g., `0.0.97`) - - Enter the release date (e.g., `2025-12-04`) - -2. **Review the PR** that gets created automatically - -3. **Merge the PR** to update the changelog - -## References - -- [Towncrier Documentation](https://towncrier.readthedocs.io/) -- [Keep a Changelog](https://keepachangelog.com/) -- [Contributing Guide](../CONTRIBUTING.md)