File: release.md

package info (click to toggle)
blake3-py 1.0.8-3
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 1,024 kB
  • sloc: asm: 17,520; ansic: 4,109; python: 598; makefile: 15
file content (25 lines) | stat: -rw-r--r-- 1,261 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
### Releasing a new version

This project has GitHub Actions set up to automatically compile binary wheels
and upload build artifacts to GitHub and PyPI. This is triggered when a new tag
is pushed. To do a release:

1. Bump the version number in `Cargo.toml`.
2. Make a release commit.
3. Push `master` and make sure GitHub CI is green.
4. Create a new GitHub Release pointing to `master`.

The rest is automatic. For more details, see `dists.yml`.

### When a new Python version comes out

When a new Python version comes out, it needs to be added to our CI configs in
several places. See commit [`e54c5a9`](https://github.com/oconnor663/blake3-py/commit/e54c5a94eecca6b9decf7c11588ab9971402276c)
(which added support for Python 3.10) as an example. The comments in `tests.yml`, and `dists.yml` should all refer to each
other, to help us avoid forgetting a spot.

To retroactively add new wheels to an existing release on PyPI, release the config change
commit with the original release version plus the suffix `_rerelease`. For
example, to build new wheels for version 0.2.1, create a GitHub release called
`0.2.1_rerelease`. The upload step of the rerelease job will automatically skip
assets that already exist (using `skip-existing: true` in `dists.yml`).