This directory contains the Rust link-cli crate, which publishes both a
reusable [lib] (link_cli) and the clink [[bin]] from the same
package. It mirrors the core query processor, named references, LiNo
import/export, and structure formatting used by the production C# tool.
The WebAssembly wrapper crate lives in rust/wasm/ and depends on this
package.
# Build and install the CLI binary.
cargo install link-cli# Or pull in the public API to build your own tooling.
cargo add link-cliAPI documentation for every published version is hosted on
docs.rs/link-cli. A copy is also published to
GitHub Pages alongside the C# DocFX site by .github/workflows/docs.yml.
clink '() ((1 1))' --changes --afterPass --transactions (or any flag in the family — --transactions-file,
--commit-mode, --retention, --log) to record each Create/Update/Delete
as a reversible transition in a sidecar doublets store. Pass --vc
(or --vc-file, --branch, --branch-from, --checkout, --tag,
--list-branches, --list-tags) to add a version-control layer over the
recorded transitions log:
# Record reversible transitions into data.transitions.links
clink --db data.links --transactions --auto-create-missing-references '() ((1 1))'
clink --db data.links --log
# Branch and tag on top of the transitions log
clink --db data.links --vc --tag v1
clink --db data.links --vc --branch feature --branch-from 1
clink --db data.links --vc --list-branchesEnd-to-end demo scripts live in
examples/transactions/ and
examples/version-control/.
cargo fmt --manifest-path rust/Cargo.toml --all -- --check
cargo clippy --manifest-path rust/Cargo.toml --all-targets --all-features
cargo test --manifest-path rust/Cargo.toml --all-featuresRelease automation for this package lives in rust/scripts/ and uses changelog
fragments from rust/changelog.d/.