Added
-
The crate is
zoningand always will be — that's the thing youcargo install
orpip install— but nobody wants to type six syllables before everyverify.
zoneis now installed alongside it, from the same source, as the second
[[bin]]target of the identical binary:cargo install zoning,pipx install zoning, anduv tool install zoningall put bothzoneandzoningon
PATH, and either name runs the same executable byte-for-byte apart from its
own filename.zoneis the one the docs teach now —--help,--version, every error
message, and thezone map/zone [package]:report headers all sayzone
regardless of which name launched them, the wayrg --versionsaysrgand
notripgrep.zoningkeeps working exactly as before for anyone whose
fingers, scripts, or CI YAML already know it; nothing that nameszoning
today needs to change. -
The first parity pass copied what every sibling repo already had; this one catches what zoning
needed that they didn't, because zoning is the only one of the five that is 100% Rust rather than
Rust bindings over a Zig core.deny.tomlplus acargo deny checkstep in thecheckjob close
a real gap the siblings did not have either — this crate carries four real dependencies now
(lsp-server,lsp-types,serde,serde_json) for the in-process LSP server, and nothing was
watching that graph for a RustSec advisory, a license outside policy, or TLS/async-runtime crates
that transport has no reason to link.rust-toolchain.tomlresolvesrustfmt,clippy, and the
wasm32-wasip1targeteditors/zedneeds for a bare-rustup contributor with no mise — pinned to
stablerather than a fixed release like the siblings' copy of this file, because every job in
ci.ymlinstalls its toolchain withdtolnay/rust-toolchain@stable, and a fixed-version pin would
have silently frozen every one of those rolling jobs to whatever release was current the day the
file was written..vscode/{settings,extensions,tasks}.jsongives a contributor the same
watcher/search excludes, formatter bindings, and one-click cargo/dogfood/deny/editor tasks the
siblings ship, adapted off Rust rather than Zig as the primary language. -
zoning shipped without the governance and hygiene layer its sibling repos (
gist,relate,
blast,irregex) already carry: noCODE_OF_CONDUCT.md,SECURITY.md, or
CONTRIBUTING.md, no issue or pull-request templates orCODEOWNERS, no
labels.json/triage.pytriage automation, and no.typos.toml/.taplo.toml/
.yamllint/.editorconfig-checker.json/.mise.tomlto hold the parts of the tree that
aren't Rust to the same bar as the parts that are. Filing against this repo meant a
different experience than filing against a sibling for no reason but that nobody had
written the second one down yet.All of it is written now, specific to what zoning actually is rather than copied verbatim.
SECURITY.md's threat model covers a false verdict, glob semantics silently diverging from
the CPython contract they're specified against, and the in-process LSP server this crate now
ships (zoning lsp --stdio) - not a generic supply-chain section a zero-dependency crate has
no surface to justify.labels.jsoncarries zoning's ownarea/*taxonomy (cli,lsp,
contract,editors,ci,docs,build) mapped onto its real module tree, alongside the
size/*/status/*/type/*rows kept byte-identical with every sibling sotriage.py peers
still holds across all of them. A newdisciplineCI job runs markdownlint, typos,
yamllint, taplo, editorconfig-checker, ruff, and shellcheck over everythingcargo test
never touches, and it is arelease-readydependency exactly likecheckordogfood- a
tag can no longer ship with a broken paper trail any more than it can ship with a failing
test.