Skip to content

Commit e9efb52

Browse files
authored
Merge pull request #17 from bids-standard/enh-test-release
Remove completed initial release steps
2 parents c80ccc7 + 1a0147c commit e9efb52

1 file changed

Lines changed: 1 addition & 98 deletions

File tree

RELEASING.md

Lines changed: 1 addition & 98 deletions
Original file line numberDiff line numberDiff line change
@@ -33,104 +33,7 @@ where the bump label was forgotten.
3333

3434
---
3535

36-
## Cutting v0.1.0 (initial release) — full runbook
37-
38-
The first release is intentionally manual because `auto` needs a baseline
39-
tag (`v0.1.0`) to start counting PR labels from. After 0.1.0 the
40-
label-driven workflow takes over.
41-
42-
### Step 0 — prerequisites (one-time, on the maintainer's machine)
43-
44-
```bash
45-
# Ensure local build tooling is available
46-
pip install --upgrade build twine
47-
48-
# Optional but recommended: install auto so you can dry-run locally
49-
npm install -g auto # or use the binary download path from release.yml
50-
51-
# Ensure your PyPI account has write access to the bids-utils project,
52-
# OR that you have a project-scoped API token for it
53-
```
54-
55-
### Step 1 — merge the release-pipeline branch
56-
57-
Merge the `enh-auto-release` PR (containing `.autorc`,
58-
`.github/workflows/release.yml`, `CHANGELOG.md`, `RELEASING.md`,
59-
CONTRIBUTING.md updates) into `main`. The first release CANNOT proceed
60-
until this is on `main`, because `release.yml` and the `auto` config are
61-
what wire everything together.
62-
63-
### Step 2 — create repo labels and the PyPI token (one-time, on GitHub side)
64-
65-
```bash
66-
# Create the auto release labels (major, minor, patch, release, ...)
67-
GH_TOKEN=$(git config hub.oauthtoken) intuit-auto create-labels
68-
```
69-
70-
Then on the GitHub web UI:
71-
72-
1. Generate a project-scoped API token at
73-
<https://pypi.org/manage/account/token/> (scoped to `bids-utils`).
74-
2. Add it as repo secret `PYPI_TOKEN` under
75-
*Settings → Secrets and variables → Actions*.
76-
77-
If you prefer OIDC-based publishing without a long-lived token, see
78-
"Optional: PyPI Trusted Publishing" below — equivalent end-state, just a
79-
different setup.
80-
81-
### Step 3 — cut the tag and publish
82-
83-
```bash
84-
# 1. Make sure you're on main and clean
85-
git checkout main
86-
git pull --ff-only
87-
git status # must be clean
88-
89-
# 2. Run the full local test suite as a final gate
90-
tox
91-
92-
# 3. Sanity-check what hatch-vcs will produce AT the tag
93-
# (without the tag, this shows a 0.1.devNN+gSHA dev version)
94-
python -m build
95-
ls dist/
96-
rm -rf dist/ # discard the dev-version artifacts; we'll rebuild at the tag
97-
98-
# 4. Tag v0.1.0 and push the tag
99-
git tag -a v0.1.0 -m "v0.1.0"
100-
git push origin v0.1.0
101-
102-
# 5. Build the release artifacts from the tagged commit
103-
python -m build
104-
ls dist/
105-
# Expect: bids_utils-0.1.0-py3-none-any.whl AND bids_utils-0.1.0.tar.gz
106-
107-
# 6. (Optional but recommended) twine check before upload
108-
twine check dist/*
109-
110-
# 7. Upload to PyPI
111-
twine upload dist/*
112-
# When prompted:
113-
# Username: __token__
114-
# Password: <the project-scoped pypi token from Step 2>
115-
116-
# 8. Create the GitHub release with the CHANGELOG entry as the body
117-
gh release create v0.1.0 --title "v0.1.0" \
118-
--notes "$(awk '/^# v0\.1\.0/,/^---$/' CHANGELOG.md | sed '$d')"
119-
```
120-
121-
### Step 4 — sanity-check the release
122-
123-
```bash
124-
# Verify the artifact is up on PyPI
125-
pip index versions bids-utils
126-
127-
# Verify a fresh install works
128-
python -m venv /tmp/bids-utils-smoke && \
129-
/tmp/bids-utils-smoke/bin/pip install bids-utils==0.1.0 && \
130-
/tmp/bids-utils-smoke/bin/bids-utils --help
131-
```
132-
133-
### Step 5 — confirm the release.yml workflow is healthy
36+
### Step 5 (TODO) — confirm the release.yml workflow is healthy
13437

13538
After v0.1.0 is tagged, the next merge to `main` will trigger
13639
`release.yml`. If that merged PR has no `release` label, the workflow

0 commit comments

Comments
 (0)