feat: add Nix flake build infrastructure and upgrade all Rust demos to zenoh 1.9.0 - #42
Open
YuanYuYuan wants to merge 10 commits into
Open
feat: add Nix flake build infrastructure and upgrade all Rust demos to zenoh 1.9.0#42YuanYuYuan wants to merge 10 commits into
YuanYuYuan wants to merge 10 commits into
Conversation
Introduces Nix flake for reproducible builds of zenoh-demos Rust demos. Initial package: zcam (computer-vision/zcam/zcam-rust, already on zenoh 1.9.0). devShells: - default: base Rust toolchain (cargo, clippy, rustfmt, rust-analyzer, mold) - with-opencv: adds OpenCV + clang for zcam/zturtle-rust builds - zlidar: adds udev/serialport deps for zlidar-rust - python-cv: Python + opencv4 + numpy for CV Python demos Build flags: CARGO_BUILD_JOBS=4, clang+mold linker.
Phase 2 — version bumps: - turtlebot3/zlidar-rust: 1.4.0 → 1.9.0 - ROS2/zenoh-rust-replay: 1.0.3 → 1.9.0, async-std → tokio Phase 3 — full API rewrites (0.10.x/0.11 → 1.9.0): - zenoh-dds-interop/shapes_demo: drop zenoh-util, update config API - zenoh-shamir: clap v3 → v4 derive, sync → tokio async, new queryable API - zenoh-tetris: SyncResolve → .wait(), remove subscriber.receiver - ROS2/zenoh-rust-teleop: async-std → tokio, clap v3 → v4, new publisher API - turtlebot3/zturtle-rust: SyncResolve → .wait(), opencv 0.86 → 0.94, clap v4 Phase 4 — Python: pin eclipse-zenoh==1.9.0 in all requirements.txt Phase 5 — archive gamepad-dragonbot (zenoh-flow v0.3.0 is unmaintained) flake.nix: add packages for all upgraded demos
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
flake.nixwith crane-based build infrastructure covering 11 packages and 4 devShellseclipse-zenoh==1.9.0inrequirements.txtgamepad-dragonbotas deprecated (depends on zenoh-flow which is no longer maintained)Key Changes
flake.nix— root Nix flake with crane, packages:zcam,zlidar,zenoh-rust-replay,zenoh-dds-shapes,zenoh-shamir-put,zenoh-shamir-queryable,zenoh-tetris-{server,client,hotseat},zenoh-rust-teleop,zturtle; devShells:default,zlidar,with-opencv,python-cvzenoh-dds-interop/shapes_demo— 0.11 → 1.9.0, droppedzenoh-util, updated config/queryable APIzenoh-shamir— 0.10.0-rc → 1.9.0, full tokio async rewrite, new queryable/get APIzenoh-tetris— 0.10.0-rc → 1.9.0, sync.wait()API, subscriber bridged via flume callbackROS2/zenoh-rust-replay— 1.0.3 → 1.9.0, async-std → tokioROS2/zenoh-rust-teleop— 0.10.0-rc → 1.9.0, async-std → tokio,recv_async()APIturtlebot3/zturtle-rust— 0.10.0-rc → 1.9.0, opencv 0.86 → 0.94, clap v4turtlebot3/zlidar-rust— 1.4.0 → 1.9.0eclipse-zenoh==1.9.0pinned in allrequirements.txtgamepad-dragonbot/README.md— deprecation notice addedBreaking Changes
None — all changes are within each demo's own directory.