Clone the repository
Rust quality gates
Node.js installed-package test
Browser/WASM installed-package test
Python installed-package test
Documentation preview
The Mintlify content root isdocs/.
mint dev --no-open starts a local preview without opening a browser.
Repository structure
Publish a release from GitHub Actions
Keep the four Cargo package versions, Python project version, both npm package versions, and their lockfiles aligned. The publishing workflows runpython3 scripts/check-release.py <runtime> and reject inconsistent versions
or a release tag that does not match the package version.
For future releases, run the quality gates and installed-package tests above
on the release commit, complete the
integration checklist, and merge the
release preparation PR before creating runtime tags on that same commit.
Version 0.4.1 has already been published using the tags below; do not recreate
or move these tags. A source version bump alone does not publish packages:
Push runtime tags individually and confirm that each publishing workflow starts.
If a tag already exists without a run, dispatch its publishing workflow against
that existing tag; never move the tag to retrigger publication. For 0.4.1, the
workflows were dispatched after a batch tag push did not produce workflow events.
Check all four runs and install the published versions before announcing the
combined release. Registry
publication is not atomic across packages; inspect any partial result before
retrying. Never move a tag that has already published a package.
The npm workflows also accept a manual
dry_run input, which defaults to
true. A dry run builds and verifies package contents without publishing.
For an actual manual publish, select the intended release tag and set
dry_run to false.
npm trusted publisher setup
Configure npm trusted publishing once in each package’s npm settings. Use GitHub organization DataFog, repository datafog-core, environment npm, and allow directnpm publish:
The publish jobs request GitHub’s OIDC identity with
id-token: write and use
npm 11.17.0 on Node 24. They do not use NPM_TOKEN or a local machine’s npm
session. npm generates provenance for these public packages automatically.
The Node workflow builds all five native binaries, transfers the generated
JavaScript loader and types to the publish job, and runs the installed-package
suite against the assembled package and its Linux native dependency before
publishing. The WASM workflow runs the browser package suite before publishing.