feat!: split the repo — zblob and zenkey graduate to their own repos #518
No reviewers
Labels
No labels
area:frontend
area:gui
area:transfer
area:zenoh
breaking-change
bug
correlation
deployment
documentation
duplicate
enhancement
good first issue
help wanted
invalid
keyspace-v2
netring-0.27
netring-0.28
netring-0.29
nlink-0.24
performance
priority:p0
priority:p1
priority:p2
prototype
question
redesign
rerun
research
security
sensor:logs
sensor:netlink
sensor:netring
sensor:parallax
sensor:snmp
sensor:sysinfo
sensor:systemd
v3-roadmap
wave:0
wave:1
wave:2
wave:3
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
marcpardo/zensight!518
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "feat/repo-split-zblob-zenkey"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Splits the monorepo three ways. Two new repos are live, extracted with full history via
git filter-repo:zenoh-blob/, renamed zblobrfcs/(keyspace-v2 RFC set), the zenkey enforcement crate (waszensight-keyspace), and zenctlStage A — zblob (closes #202, epic #193)
scripts/extract-zenoh-blob.sh+zenoh-blob/docs/graduation.md), then renamed the crate before first publish — thezenoh-prefix wrongly implied Zenoh-team origin, and crates.io names are permanent.zblob = { git = … }; imports renamedzenoh_blob::→zblob::(4 crates, ~15 sites). Extraction script deleted (job done).zenoh-blob boundary guardCI step is deleted — the boundary is now enforced structurally (separate repo, own CI withcargo publish --dry-run).Stage B — zenkey
zensight-keyspace/,zenctl/,docs/rfcs/keyspace-v2/are gone; the workspace consumeszenkey = { git = … }and all imports/doc references renamezensight_keyspace→zenkey(~30 files, mechanical).docs/KEYSPACE.mdstays — it's the deployed-profile summary — and now cites the zenkey repo as the normative spec. RFC ch. 11 (the ZenSight reference profile) moved with the RFC set, like OTel semconv reference profiles.zensight-keyspace/srcfrom their scan lists;scripts/image-verify.shtakeszenctlfromPATH(or$ZENCTL) with an install hint, instead ofcargo run -p zenctl.Verified
cargo test --workspacegreen after both switches (pipefail-checked exit 0),cargo fmt --checkclean,cargo clippy -D warningsclean, all four custom CI guards re-run locally and clean.cargo publish --dry-rungreen. zenkey standalone: build + 48 tests + fmt + clippy green.Known state / follow-ups
zensight-commonfrom this PR's merge (otherwise two copies of the keyspace crate meet across therefine_full_keyAPI and types mismatch). Re-enable tracked in zenkey#3 — I'll open that PR right after this merges.DEFAULT_BASE(zenkey#1); zenctl still compiles in the payload table (zenkey#2).cargo publishfor both repos is a manual owner step (crates.io token); #517 then flips the git deps to version deps.[patch] zenkey = { path = "../zenkey" }avoids the dance.🤖 Generated with Claude Code