File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1+ # Contributing
2+
3+ ## Releasing a New Version
4+
5+ To create a new version, run:
6+
7+ ``` bash
8+ uvx bumpver update --patch # Increment PATCH component (e.g., 1.2.3 -> 1.2.4)
9+ uvx bumpver update --minor # Increment MINOR component (e.g., 1.2.3 -> 1.3.0)
10+ uvx bumpver update --major # Increment MAJOR component (e.g., 1.2.3 -> 2.0.0)
11+ ```
12+
13+ ### What happens
14+
15+ 1 . ** Pre-release script** (` scripts/pre-release.sh ` ):
16+ - Generates the changelog using ` git cliff ` (skipped for alpha/beta/rc releases)
17+ - Updates ` uv.lock `
18+
19+ 2 . ** Version bump** :
20+ - Updates the version in ` pyproject.toml ` and ` src/pytest_codspeed/__init__.py `
21+ - Creates a commit with the message "Release vX.Y.Z"
22+
23+ 3 . ** Post-release script** (` scripts/post-release.sh ` ):
24+ - Creates a git tag with the ` v ` prefix (e.g., ` v1.2.3 ` )
25+ - Pushes the commit and tag to the remote
26+
27+ 4 . ** CI release workflow** (` .github/workflows/release.yml ` ):
28+ - Triggered automatically when the tag is pushed
29+ - Builds wheels for x86_64 and aarch64
30+ - Builds the source distribution
31+ - Publishes the package to PyPI
32+ - Creates a draft GitHub release
You can’t perform that action at this time.
0 commit comments