Skip to content

Latest commit

 

History

History
54 lines (43 loc) · 1.55 KB

File metadata and controls

54 lines (43 loc) · 1.55 KB

Releasing Nexum Graph

Nexum Graph releases are GitHub Releases driven by semver tags in vX.Y.Z form.

Before tagging

  1. Keep the release version in sync across:
    • crates/nex-cli/Cargo.toml
    • crates/nex-lsp/Cargo.toml
    • extensions/vscode/package.json
  2. Regenerate the public spec docs if the archival .docx sources changed:
python tools/export_spec_markdown.py
  1. Run the release checks locally:
python tools/release_tools.py assert-version-parity --tag vX.Y.Z
python tools/project_facts.py check-readme
cargo test --workspace --locked
cargo clippy --workspace --all-targets --locked -- -D warnings
cargo fmt --check
npm --prefix extensions/vscode ci
npm --prefix extensions/vscode test
npm --prefix extensions/vscode run package

Cutting a release

  1. Commit the version bump, release notes, and any regenerated spec docs.
  2. Create the annotated tag:
git tag -a vX.Y.Z -m "Nexum Graph vX.Y.Z"
git push origin main --follow-tags
  1. Wait for the Release workflow to finish.
  2. Verify the GitHub Release contains:
    • one bundle per supported target
    • nexum-graph-vscode-X.Y.Z.vsix
    • SHA256SUMS.txt
  3. Spot-check install and automation flows with:
    • install.sh
    • install.ps1
    • nex demo
    • uses: NexumCorpus/Nexum-Graph@vX.Y.Z on a test pull request
    • nex check --install-hook in a local clone
    • VS Code Install from VSIX...

Manual rerun

If you need to rebuild assets for an existing tag, run the Release workflow manually and provide the exact tag, for example v0.1.0.