-
Notifications
You must be signed in to change notification settings - Fork 140
Release Process
github-actions[bot] edited this page Apr 28, 2026
·
2 revisions
Branch model: feature → staging → main. Releases are cut from main
via an annotated vX.Y.Z tag, which triggers
main.yml
to build platform binaries, installers, the SDK, the WASM bundle, and a
GitHub Release.
- All tasks in
doc/dev-notes/vX.Y.Z-requirements.mdare DONE or explicitly deferred. -
staging.ymlis green on the lateststagingcommit (all 22 jobs). - Versioned files are bumped to
X.Y.Z:-
CITATION.cff—version:anddate-released: -
README.md— version badge -
CHANGELOG.md— new section with highlights -
doc/website/docusaurus.config.ts— site version
-
- Doxygen passes with zero warnings for new/changed code.
- Website builds without broken links.
# 1. Fast-forward main to staging
git checkout main
git pull --ff-only origin main
git merge --ff-only staging
git push origin main
# 2. Tag (annotated)
git tag -a vX.Y.Z -m "Release vX.Y.Z — <codename>"
git push origin vX.Y.Z| Workflow file | Output |
|---|---|
main.yml |
Orchestrator — calls the workflows below and creates the GitHub Release |
release-linux.yml |
Linux dynamic + static .tar.gz
|
release-macos.yml |
macOS dynamic + static .tar.gz
|
release-windows.yml |
Windows dynamic + static .zip
|
release-installer.yml |
QtIFW cross-platform installers |
release-sdk.yml |
mnecpp-X.Y.Z-sdk-<plat>.tar.gz (CMake find_package) |
- Verify all artifacts are attached to the release page.
- Verify the website's "Latest version" banner updated
(auto via Docusaurus
versionfield). - Check Zenodo minted a new versioned DOI (concept DOI is
10.5281/zenodo.593102). - Open the next release's task sheet (
doc/dev-notes/vX.Y.(Z+1)-requirements.md).
For vX.Y.(Z+1):
- Cherry-pick fixes from
stagingontomain. - Bump
CHANGELOG,CITATION.cff,READMEbadge. - Tag
vX.Y.(Z+1)onmain.
MNE-CPP — BSD-3-Clause licensed · Maintained by the MNE-CPP authors · Website · API · Source
Edit this wiki via
doc/wiki/— direct edits in the GitHub UI are overwritten on next push tomain.