Skip to content

Releasing OntoCode / OntoIndex

Maintainer checklist for publishing crates, binaries, and the VS Code extension.

Version bump

  1. Update [workspace.package].version in root Cargo.toml on GitHub
  2. Update extension/package.json version
  3. Update CHANGELOG.md on GitHub and docs/changelog.md
  4. Regenerate NOTICES on GitHub if dependencies changed (cargo license recommended)
  5. Sync user-facing docs (see checklist below)

Documentation sync checklist (every release)

Tag and publish

Push a tag matching [workspace.package].version in Cargo.toml:

git tag v0.8.0   # must match [workspace.package].version in Cargo.toml
git push origin v0.8.0

The release workflow on GitHub:

  1. Verifies packages and runs tests
  2. Publishes workspace crates to crates.io in dependency order
  3. Creates a GitHub Release with:
  4. ontoindex Linux x64 binary
  5. ontoindex-lsp per-platform archives
  6. Multi-platform ontocode-*.vsix

Requires the CARGO_REGISTRY_TOKEN repository secret.

Published crates (dependency order)

ontoindex-coreontoindex-parserontoindex-owlontoindex-diagnosticsontoindex-catalogontoindex-refactorontoindex-queryontoindex-reasonerontoindex-robotontoindex-lspontoindex-cli

VS Code Marketplace

See marketplace-publish.md.

Verify artifacts

release-integrity.md — SHA256SUMS, --locked installs.

Security

Report vulnerabilities per security.md — not via public issues.

Read the Docs

The documentation site is built with MkDocs and hosted at ontocode-vs.readthedocs.io.

  1. Read the Docs project slug: ontocode-vs (this sets the *.readthedocs.io subdomain; it cannot be renamed after import — the display name can be “OntoCode” in RTD settings).
  2. RTD reads .readthedocs.yaml on GitHub and installs docs/requirements.txt.
  3. mkdocs.yml site_url must match the live subdomain (https://ontocode-vs.readthedocs.io/).
  4. Pushes to main rebuild the latest version; tags can publish versioned docs.

Local preview: pip install -r docs/requirements.txt && mkdocs serve.