Add a manually triggered workflow to build, test, package, and publish all
three Rust crates. The required `tag` must already exist in the remote
repository; the workflow checks out its corresponding commit. Match the
PyPI matrix: Linux x86_64/aarch64, Windows AMD64, and macOS arm64.

Derive crate and internal dependency versions from the selected Git tag
(e.g. `v0.1.15-rc0` → `0.1.15-rc.0`), replacing the development placeholders
in the CI checkout.

Default to `dry_run=true`: run publication checks on every platform and retain
crate artifacts without uploading to crates.io or requiring a token. With
`dry_run=false`, publish in dependency order after all matrix jobs pass,
using `CARGO_REGISTRY_TOKEN`.

Validation: pre-commit, actionlint, local Linux release builds/tests, version
mapping, crate packaging, and publication dry-runs passed. No live upload.
You can view, comment on, or merge this pull request online at:

  https://github.com/apache/tvm-ffi/pull/837

-- Commit Summary --

  * add the rust publish ci.
  * test dryrun.

-- File Changes --

    A .github/workflows/publish_crates.yml (188)
    M rust/tvm-ffi-macros/Cargo.toml (1)
    M rust/tvm-ffi-sys/Cargo.toml (1)
    M rust/tvm-ffi/Cargo.toml (2)

-- Patch Links --

https://github.com/apache/tvm-ffi/pull/837.patch
https://github.com/apache/tvm-ffi/pull/837.diff

-- 
Reply to this email directly or view it on GitHub:
https://github.com/apache/tvm-ffi/pull/837
You are receiving this because you are subscribed to this thread.

Message ID: <apache/tvm-ffi/pull/[email protected]>

Reply via email to