mirror of
https://github.com/hanzoai/zap.git
synced 2026-10-30 18:17:49 +00:00
`cargo test --all-targets` does NOT imply `--doc` — it selects lib/bins/ tests/benches/examples and skips doctests entirely. Injecting `compile_error!` into a lib.rs doc example passes the old gate with exit 0 and fails `cargo test --doc` immediately, so a doc example that does not compile could ship green. Added the `--doc` line; the same injection now takes `make test` to exit 2. `.github/workflows/test.yml` runs `make test`, so CI picks this up with no second edit — the gate is one thing, not a CI-only copy of one. LLM.md: `zapwire` 1.0.0 and `zapc` 1.0.0 are published, so the collision table no longer says "never published", and the crosswire entry names `go run ./interop/golden` as the way to regenerate its hex. Also recorded the part of the collision this repo CANNOT fix. crates.io takes a crate's `repository` link from the most recently PUBLISHED version, not the highest: `hanzo-zap` 0.2.1 (2026-06-23, from a zap-proto/spec checkout) declares `repository = hanzoai/zap`, while max_version 0.6.75 (2026-05-13) declares hanzonet/network. So crates.io/crates/hanzo-zap still sends readers HERE for a crate whose source is hanzo/net. Having vacated the name, this repo can no longer correct it; hanzo/net publishing 0.6.76 would. Yanking 0.2.1 would not — ~25 engine forks pin it exactly and would fail to resolve. make test: 27 lib + 10 crosswire + 2 live-Go interop + 1 doctest, exit 0. Co-authored-by: Hanzo Dev <[email protected]>
22 lines
671 B
Makefile
22 lines
671 B
Makefile
.PHONY: test fmt tidy
|
|
|
|
# The gate. `cargo test` includes rust/tests/interop.rs, which builds
|
|
# interop/main.go against github.com/zap-proto/go and drives a REAL Go
|
|
# ZAP server from the Rust client — so wire agreement is proved, not
|
|
# asserted. That test skips loudly if no Go toolchain is present.
|
|
#
|
|
# cargo clippy is deliberately NOT here yet: the rustup clippy shim
|
|
# fails with "multiple input filenames provided" on this workspace's
|
|
# build-dependency. Add it back once that is fixed.
|
|
test:
|
|
cd rust && cargo fmt --all -- --check
|
|
cd rust && cargo test --all-targets
|
|
cd rust && cargo test --doc
|
|
go vet ./...
|
|
|
|
fmt:
|
|
cd rust && cargo fmt --all
|
|
|
|
tidy:
|
|
go mod tidy
|