diff --git a/CHANGELOG.md b/CHANGELOG.md index 957df06..b63baa8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,12 +10,18 @@ Steps: - Edit change log - Revise the version numbers in Cargo.toml files - Commit the changes -- Release packages in order: roslibrust_codegen -> roslibrust_codegen_macro -> roslibrust +- Release packages in order: + - roslibrust_common + - roslibrust_codegen + - roslibrust_codegen_macro + - roslibrust_mock + - roslibrust_ros1 + - roslibrust_rosbridge + - roslibrust_zenoh + - roslibrust - Push to master - Tag and push tag -Note: need to publish with `cargo publish --all-features` - The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). @@ -23,6 +29,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added +### Fixed + +### Changed + +## 0.12.0 - January 7th, 2025 + +### Added + - roslibrust_mock now provides a basic mock implementation of roslibrust's generic traits for use in building automated testing of nodes. - roslibrust_zenoh now proivides a Zenoh client that is compatible with the zenoh-ros1-plugin / zenoh-ros1-bridge - roslibrust_ros1 now provides a ROS1 native client as a standalone crate @@ -44,6 +58,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 `roslibrust::ClientHandle` now becomes `roslibrust::rosbridge::ClientHandle`. - Internal integral type Time changed from u32 to i32 representation to better align with ROS1 - Conversions between ROS Time and Duration to std::time::Time and std::time::Duration switched to TryFrom as they can be fallible. +- Main crate Error type has been simplified to leak fewer internal types. +- roslibrust_codegen is now intended to be accessed by users via the `codegen` feature flag on roslibrust. +- roslibrust_codegen_macro is now intended to be accessed by users via the `macro` feature flag on roslibrust. +- Code generated by roslibrust_codegen now depends on `roslibrust` with the `codegen` feature flag being available to it. ## 0.11.1 diff --git a/Cargo.lock b/Cargo.lock index c978ced..cbab2e3 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2549,7 +2549,7 @@ dependencies = [ [[package]] name = "roslibrust" -version = "0.11.1" +version = "0.12.0" dependencies = [ "abort-on-drop", "env_logger 0.11.5", @@ -2570,7 +2570,7 @@ dependencies = [ [[package]] name = "roslibrust_codegen" -version = "0.11.1" +version = "0.12.0" dependencies = [ "env_logger 0.10.2", "lazy_static", @@ -2594,7 +2594,7 @@ dependencies = [ [[package]] name = "roslibrust_codegen_macro" -version = "0.11.1" +version = "0.12.0" dependencies = [ "proc-macro2", "quote", @@ -2604,7 +2604,7 @@ dependencies = [ [[package]] name = "roslibrust_common" -version = "0.1.0" +version = "0.12.0" dependencies = [ "anyhow", "futures", @@ -2631,7 +2631,7 @@ dependencies = [ [[package]] name = "roslibrust_mock" -version = "0.1.0" +version = "0.12.0" dependencies = [ "bincode", "log", @@ -2642,7 +2642,7 @@ dependencies = [ [[package]] name = "roslibrust_ros1" -version = "0.1.0" +version = "0.12.0" dependencies = [ "abort-on-drop", "anyhow", @@ -2674,7 +2674,7 @@ dependencies = [ [[package]] name = "roslibrust_rosbridge" -version = "0.1.0" +version = "0.12.0" dependencies = [ "anyhow", "dashmap", @@ -2720,7 +2720,7 @@ dependencies = [ [[package]] name = "roslibrust_zenoh" -version = "0.1.0" +version = "0.12.0" dependencies = [ "anyhow", "env_logger 0.11.5", diff --git a/roslibrust/Cargo.toml b/roslibrust/Cargo.toml index 9fd85ac..e28175e 100644 --- a/roslibrust/Cargo.toml +++ b/roslibrust/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "roslibrust" -version = "0.11.1" +version = "0.12.0" authors = ["carter ", "ssnover "] edition = "2021" license = "MIT" @@ -11,13 +11,13 @@ keywords = ["ROS", "robotics", "websocket", "json", "async"] categories = ["science::robotics"] [dependencies] -roslibrust_common = { path = "../roslibrust_common" } -roslibrust_ros1 = { path = "../roslibrust_ros1", optional = true } -roslibrust_rosbridge = { path = "../roslibrust_rosbridge", optional = true } -roslibrust_zenoh = { path = "../roslibrust_zenoh", optional = true } -roslibrust_mock = { path = "../roslibrust_mock", optional = true } -roslibrust_codegen = { path = "../roslibrust_codegen", optional = true } -roslibrust_codegen_macro = { path = "../roslibrust_codegen_macro", optional = true } +roslibrust_common = { path = "../roslibrust_common", version = "0.12" } +roslibrust_ros1 = { path = "../roslibrust_ros1", version = "0.12", optional = true } +roslibrust_rosbridge = { path = "../roslibrust_rosbridge", version = "0.12", optional = true } +roslibrust_zenoh = { path = "../roslibrust_zenoh", version = "0.12", optional = true } +roslibrust_mock = { path = "../roslibrust_mock", version = "0.12", optional = true } +roslibrust_codegen = { path = "../roslibrust_codegen", version = "0.12", optional = true } +roslibrust_codegen_macro = { path = "../roslibrust_codegen_macro", version = "0.12", optional = true } [dev-dependencies] env_logger = "0.11" diff --git a/roslibrust/src/lib.rs b/roslibrust/src/lib.rs index 91f1254..aeba551 100644 --- a/roslibrust/src/lib.rs +++ b/roslibrust/src/lib.rs @@ -1,4 +1,4 @@ -#![doc = include_str!("../../README.md")] +#![doc = include_str!("../README.md")] // Re-export common types and traits under the roslibrust namespace pub use roslibrust_common::*; diff --git a/roslibrust_codegen/Cargo.toml b/roslibrust_codegen/Cargo.toml index 370f839..a5d6e22 100644 --- a/roslibrust_codegen/Cargo.toml +++ b/roslibrust_codegen/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "roslibrust_codegen" -version = "0.11.1" +version = "0.12.0" edition = "2021" authors = ["carter ", "ssnover "] license = "MIT" @@ -16,7 +16,7 @@ categories = ["science::robotics"] tokio = { workspace = true, optional = true} log = { workspace = true } serde = { workspace = true } -roslibrust_common = { path = "../roslibrust_common" } +roslibrust_common = { path = "../roslibrust_common", version = "0.12.0" } lazy_static = "1.4" md5 = "0.7" proc-macro2 = "1.0" diff --git a/roslibrust_codegen_macro/Cargo.toml b/roslibrust_codegen_macro/Cargo.toml index bad9125..4d3e680 100644 --- a/roslibrust_codegen_macro/Cargo.toml +++ b/roslibrust_codegen_macro/Cargo.toml @@ -2,7 +2,7 @@ name = "roslibrust_codegen_macro" edition = "2021" description = "Provides macro-based message generation for roslibrust" -version = "0.11.1" +version = "0.12.0" repository = "https://github.com/Carter12s/roslibrust" license = "MIT" readme = "README.md" @@ -16,5 +16,5 @@ proc-macro2 = "1.0" quote = "1.0" # Note: finds path version when building locally, and crates.io version when publishing # https://doc.rust-lang.org/cargo/reference/specifying-dependencies.html#multiple-locations -roslibrust_codegen = { path = "../roslibrust_codegen", version = "0.11.1" } +roslibrust_codegen = { path = "../roslibrust_codegen", version = "0.12" } syn = "1.0" diff --git a/roslibrust_common/Cargo.toml b/roslibrust_common/Cargo.toml index 78db222..6168abe 100644 --- a/roslibrust_common/Cargo.toml +++ b/roslibrust_common/Cargo.toml @@ -1,7 +1,12 @@ [package] name = "roslibrust_common" -version = "0.1.0" +version = "0.12.0" edition = "2021" +authors = [ "carter " ] +license = "MIT" +description = "Common types and traits used throughout the roslibrust ecosystem." +repository = "https://github.com/roslibrust/roslibrust" +categories = ["science::robotics"] [dependencies] # Used for error handling diff --git a/roslibrust_genmsg/Cargo.toml b/roslibrust_genmsg/Cargo.toml index bbc8128..3ea02db 100644 --- a/roslibrust_genmsg/Cargo.toml +++ b/roslibrust_genmsg/Cargo.toml @@ -20,7 +20,7 @@ path = "src/main.rs" [dependencies] log = { workspace = true } serde = { workspace = true } -roslibrust_codegen = { path = "../roslibrust_codegen", version = "0.11.0" } +roslibrust_codegen = { path = "../roslibrust_codegen", version = "0.12" } clap = { version = "4.1", features = ["derive"] } env_logger = "0.11" itertools = "0.12" diff --git a/roslibrust_mock/Cargo.toml b/roslibrust_mock/Cargo.toml index 2cb758d..10db8d3 100644 --- a/roslibrust_mock/Cargo.toml +++ b/roslibrust_mock/Cargo.toml @@ -1,10 +1,16 @@ [package] name = "roslibrust_mock" -version = "0.1.0" +version = "0.12.0" edition = "2021" +authors = [ "carter " ] +license = "MIT" +description = "Mock implementation of roslibrust's generic traits useful for testing ROS behaviors." +repository = "https://github.com/roslibrust/roslibrust" +categories = ["science::robotics"] + [dependencies] -roslibrust_common = { path = "../roslibrust_common" } +roslibrust_common = { path = "../roslibrust_common", version = "0.12.0" } tokio = { workspace = true } # Used for serializing messages bincode = "1.3" diff --git a/roslibrust_ros1/Cargo.toml b/roslibrust_ros1/Cargo.toml index 445690e..fe0fc3a 100644 --- a/roslibrust_ros1/Cargo.toml +++ b/roslibrust_ros1/Cargo.toml @@ -1,11 +1,16 @@ [package] name = "roslibrust_ros1" -version = "0.1.0" +version = "0.12.0" edition = "2021" +authors = [ "carter ", "ssnover " ] +license = "MIT" +description = "A implementation of roslibrust's generic traits for native ROS1 communication." +repository = "https://github.com/roslibrust/roslibrust" +categories = ["science::robotics"] [dependencies] # Provides common types and traits used throughout the roslibrust ecosystem. -roslibrust_common = { path = "../roslibrust_common" } +roslibrust_common = { path = "../roslibrust_common", version = "0.12" } # Standard dependencies: tokio = { workspace = true } diff --git a/roslibrust_rosbridge/Cargo.toml b/roslibrust_rosbridge/Cargo.toml index 0ca77f7..1e3731e 100644 --- a/roslibrust_rosbridge/Cargo.toml +++ b/roslibrust_rosbridge/Cargo.toml @@ -1,10 +1,15 @@ [package] name = "roslibrust_rosbridge" -version = "0.1.0" +version = "0.12.0" edition = "2021" +authors = [ "carter ", "ssnover " ] +license = "MIT" +description = "An implementation of roslibrust's generic traits for rosbridge_suite communication." +repository = "https://github.com/roslibrust/roslibrust" +categories = ["science::robotics"] [dependencies] -roslibrust_common = { path = "../roslibrust_common" } +roslibrust_common = { path = "../roslibrust_common", version = "0.12" } tokio = { workspace = true } log = { workspace = true } tokio-tungstenite = { version = "0.17" } diff --git a/roslibrust_zenoh/Cargo.toml b/roslibrust_zenoh/Cargo.toml index 300bc97..e139b29 100644 --- a/roslibrust_zenoh/Cargo.toml +++ b/roslibrust_zenoh/Cargo.toml @@ -1,7 +1,12 @@ [package] name = "roslibrust_zenoh" -version = "0.1.0" +version = "0.12.0" edition = "2021" +authors = [ "carter " ] +license = "MIT" +description = "A zenoh backend for roslibrust compatible with zenoh-ros1-plugin / zenoh-ros1-bridge." +repository = "https://github.com/roslibrust/roslibrust" +categories = ["science::robotics"] # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html @@ -9,7 +14,7 @@ edition = "2021" roslibrust_serde_rosmsg = { workspace = true } log = { workspace = true } tokio = { workspace = true } -roslibrust_common = { path = "../roslibrust_common" } +roslibrust_common = { path = "../roslibrust_common", version = "0.12" } zenoh = "1.0" hex = "0.4" anyhow = "1.0"