Skip to content

Commit 49be7df

Browse files
Merge pull request #100 from BehindTheMusicTree/release/v2.2.4
release: v2.2.4
2 parents e6c9e9a + 95c6ccb commit 49be7df

1,036 files changed

Lines changed: 13223 additions & 9124 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.bumpversion.cfg

Lines changed: 0 additions & 22 deletions
This file was deleted.
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
---
2+
description: Substantive changes must update CHANGELOG.md [Unreleased] in the same work
3+
alwaysApply: true
4+
---
5+
6+
# Changelog alignment
7+
8+
When you **modify this repository** in a way that is **not purely trivial** (anything a maintainer or consumer would care about: behavior, public API of scripts, templates, CI, pins, baselines, docs that describe shipped behavior, or release/version flow):
9+
10+
1. **Update `CHANGELOG.md` in the same change** under **`## [Unreleased]`**, using the same categories as the rest of the file (`Added`, `Changed`, `Fixed`, etc.). Summarize what changed and why in plain language; link paths or script names when helpful.
11+
2. **Keep it accurate**: If you touch **`STANDARDS_VERSION`**, template pins, **`templates/`**, **`scripts/`** consumed by adopters, or **`.github/workflows`**, the changelog entry should reflect that so releases and migration notes stay truthful.
12+
3. **Do not ship substantive edits without a matching `[Unreleased]` line** unless the user explicitly asked to skip the changelog (rare).
13+
14+
**Exempt (no changelog line required):** typo-only fixes in comments, formatting-only edits with no semantic change, or purely mechanical refactors explicitly scoped as “no changelog” by the user.
15+
16+
If you are **aligning another repo** to these standards, that consumer’s **`CHANGELOG.md`** (or their agreed release notes) should be updated there—not only the standards repo—when your work there is user-visible.

.cursor/rules/changelog-best-practices.mdc

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
2-
description:
3-
globs:
2+
description:
3+
globs:
44
alwaysApply: true
55
---
66
# Changelog Best Practices
@@ -139,7 +139,7 @@ Documentation changes should be grouped under the **Documentation** category, no
139139

140140
## Release Process
141141

142-
Follow **CONTRIBUTING.md §7 (Releasing for maintainers)** (Git Flow: `release/*` branch). Maintainers **must run** **`python3 scripts/prepare_release_bump.py`** `patch`|`minor`|`major` before creating/pushing a `release/*` branch. The script applies the `## [Unreleased] <!-- release -->` marker (see `.bumpversion.cfg`), runs **bump2version**, **`scripts/fix_changelog_after_bump.py`**, and inserts an empty `## [Unreleased]` for the next cycle. Contributors use plain `## [Unreleased]` until the maintainer runs the script.
142+
Follow **CONTRIBUTING.md §7 (Releasing for maintainers)** (Git Flow: `release/*` branch). Maintainers **must run** **`python3 scripts/prepare_release_bump.py`** `patch`|`minor`|`major` before creating/pushing a `release/*` branch. The script applies the `## [Unreleased] <!-- release -->` marker (see `[tool.bumpversion]` in `pyproject.toml`), runs **bump-my-version**, **`scripts/fix_changelog_after_bump.py`**, and inserts an empty `## [Unreleased]` for the next cycle. Contributors use plain `## [Unreleased]` until the maintainer runs the script.
143143

144144
During releases, maintainers also:
145145
1. Review and consolidate entries moved under the new version

.cursor/rules/comments.mdc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
2-
description:
3-
globs:
2+
description:
3+
globs:
44
alwaysApply: true
55
---
66
# No Useless Comments

.cursor/rules/commit-message-convention.mdc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
2-
description:
3-
globs:
2+
description:
3+
globs:
44
alwaysApply: true
55
---
66
# Commit Message Convention

.cursor/rules/divide-test-cases.mdc

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
2-
description:
3-
globs:
2+
description:
3+
globs:
44
alwaysApply: true
55
---
66
# Divide Test Cases
@@ -87,4 +87,4 @@ def test_invalid_input_then_error(self):
8787
- Easier test maintenance
8888
- Better test readability
8989
- Faster test execution (can run specific scenarios)
90-
- Easier to debug failures
90+
- Easier to debug failures

.cursor/rules/field-name-constants.mdc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
2-
description:
3-
globs:
2+
description:
3+
globs:
44
alwaysApply: true
55
---
66

.cursor/rules/focused-tests.mdc

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
---
2-
description:
3-
globs:
2+
description:
3+
globs:
44
alwaysApply: true
55
---
66
---
7-
description:
8-
globs:
7+
description:
8+
globs:
99
alwaysApply: true
1010
---
1111
# Divide Test Cases

.cursor/rules/git-flow-workflow.mdc

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
2-
description:
3-
globs:
2+
description:
3+
globs:
44
alwaysApply: true
55
---
66
# Git Flow Workflow
@@ -22,6 +22,14 @@ This project follows **strict Git Flow**. All changes must follow the branching
2222
2. Include issue numbers when applicable: `feature/123-add-ogg-support`
2323
3. Be descriptive: `feature/improve-genre-classification`, not `feature/fix`
2424

25+
## Pull Requests to `develop` (enforced in CI)
26+
27+
Allowed **source branch** prefixes only: `feature/`, `chore/`, `dependabot/`, `release/`.
28+
29+
Classic Git Flow uses **`feature/*`** to integrate features and fixes into `develop`. This repository also allows **`chore/*`** (maintenance, documentation, CI), **`dependabot/*`**, and **`release/*`** when merging release work back into `develop`.
30+
31+
Do **not** use other top-level prefixes (e.g. `docs/`, `fix/`, `refactor/`) for the branch name — CI will fail. Use `feature/<topic>` or `chore/<topic>` instead.
32+
2533
## Important Rules
2634

2735
- **No direct commits** to `main` or `develop` - all changes must go through Pull Requests

.cursor/rules/issue-description-in-separate-file.mdc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
2-
description:
3-
globs:
2+
description:
3+
globs:
44
alwaysApply: true
55
---
66
# Issue Description in Separate File

0 commit comments

Comments
 (0)