No version for distro humble showing github. Known supported distros are highlighted in the buttons above.
Package symbol

rclrs package from ros2_rust repo

rclrs

ROS Distro
github

Package Summary

Tags No category tags.
Version 0.5.0
License Apache License 2.0
Build type AMENT_CARGO
Use RECOMMENDED

Repository Summary

Description Rust bindings for ROS 2
Checkout URI https://github.com/ros2-rust/ros2_rust.git
VCS Type git
VCS Version main
Last Updated 2025-09-02
Dev Status UNKNOWN
Released UNRELEASED
Tags rust robotics ros ros2
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Package containing the Rust client library.

Additional Links

No additional links.

Maintainers

  • Esteve Fernandez
  • Nikolai Morin
  • Jacob Hassold

Authors

  • Esteve Fernandez

ROS 2 client library for Rust

ROS 2 is a popular open source robotics framework, used in a variety of fields (self-driving cars, drones, humanoid robots, etc.). rclrs is a library for writing robotics applications in Rust that integrate with ROS 2.

Please see the docs in the ros2_rust repo.

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[Unreleased]

0.5.1 - 2025-08-23

Other

  • Fix executor timeout (#519)

0.5.0 - 2025-08-15

Added

  • vendorize messages so that cargo update works (#509)

Other

  • Moved examples to its own repo (#504)
  • Wake up wait set when adding a new waitable (#505)
  • rename generate_docs feature to use_ros_shim (#501)
  • Async Workers (#446)
  • Shared state pattern (spin-off of #427) (#430)
  • Options pattern (spin-off of #427) (#429)
  • Fix RAII for subscription, client, and service (#463)
  • Execution structure (spin-off of #427) (#428)
  • Remove Iron support (#443)
  • Add Publisher::get_subscription_count (#457)
  • Bumb bindgen dependency to 0.70 (#452)
  • Update for clippy 1.83 (#441)
  • Add Publisher::can_loan_msgs (#434)
  • Add rosout logging to rclrs (#422)
  • Update vendored interface packages (#423)
  • Use latest stable Rust CI + Fix Test Errors (#420)
  • Add std::error::Error impls to Error enums of parameter module (#413)
  • Wrap slice::from_raw_parts to be compatible with rcl (#419)
  • Compile on targets where c_char ≠ i8 (#403)
  • Add parameter services (#342)
  • Fixup of #388 (#389)
  • Fix link formatting
  • Get rid of doc links to private structs
  • Update documentation on ENTITY_LIFECYCLE_MUTEX
  • Improve the documentation for the domain ID situation of test_graph_empty
  • Rename to avoid confusion with Handle pattern
  • Update documentation and safety info on rcl entity lifecycles
  • Remove the need for lazy_static
  • Satisfy clippy
  • Use usize instead of u8 for domain id
  • Ensure that test_graph_empty works even if the system has ROS_DOMAIN_ID set to 99
  • Run clippy
  • Run rustfmt
  • Apply lifecycle lock to all middleware entities
  • Ensure that mutex guards are not being dropped prematurely
  • Introduce InitOptions to allow manually setting domain ID
  • Keep context alive for guard conditions
  • Manage all rcl bindings with Handle structs
  • Reworking the lifecycle management of rcl bindings
  • Import the builtin_interfaces directly from the internal vendor module.
  • Added test_msgs as a test dependency
  • Move the tests in the rclrs_tests crate into rclrs.
  • Move rcl structs to end of Node declaration
  • Allow ros2_rust to be built within a distro workspace
  • Add default implementation and builder pattern for QoS (#361)
  • Adding a simple helper function for converting rclrs::Time to a ros message (#359)
  • Remove leading underscore from private fields (#354)

0.4.1 - 2023-11-28

  • Added minor changes to enable documentation generation on docs.rs for the ros2-rust projects.

0.4.0 - 2023-11-07

  • Service clients now support service_is_ready to check if a service server is present ahead of calling (#399)
  • Added preliminary support for parameters
  • Added support for Iron Irwini
  • Added Serde big array support
  • Added basic functionality for loading introspection type support libraries
  • Added extended string types
  • Added time source and clock API to nodes
  • Removed support for Galactic
  • Removed support for Foxy

0.3.1 - 2022-10-17

  • Fixed segfault when re-using WaitSet
  • Fixed Node::get_{publishers,subscriptions}_info_by_topic()

0.3.0 - 2022-10-03

  • Loaned messages (zero-copy) (#212)
  • Graph queries (#234)
  • Guard conditions (#249)

[0.2.0] (2022-07-21)

  • First release
  • colcon-cargo and colcon-ros-cargo can now build any pure Cargo and ament-aware Cargo projects
  • rclrs and rclrs_examples are now ament_cargo projects, no more CMake involved
  • rosidl_generator_rs has been updated to support all ROS message types
  • rclrs now supports clients and services

File truncated at 100 lines see the full file

Package Dependencies

System Dependencies

Dependant Packages

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged rclrs at Robotics Stack Exchange

No version for distro jazzy showing github. Known supported distros are highlighted in the buttons above.
Package symbol

rclrs package from ros2_rust repo

rclrs

ROS Distro
github

Package Summary

Tags No category tags.
Version 0.5.0
License Apache License 2.0
Build type AMENT_CARGO
Use RECOMMENDED

Repository Summary

Description Rust bindings for ROS 2
Checkout URI https://github.com/ros2-rust/ros2_rust.git
VCS Type git
VCS Version main
Last Updated 2025-09-02
Dev Status UNKNOWN
Released UNRELEASED
Tags rust robotics ros ros2
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Package containing the Rust client library.

Additional Links

No additional links.

Maintainers

  • Esteve Fernandez
  • Nikolai Morin
  • Jacob Hassold

Authors

  • Esteve Fernandez

ROS 2 client library for Rust

ROS 2 is a popular open source robotics framework, used in a variety of fields (self-driving cars, drones, humanoid robots, etc.). rclrs is a library for writing robotics applications in Rust that integrate with ROS 2.

Please see the docs in the ros2_rust repo.

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[Unreleased]

0.5.1 - 2025-08-23

Other

  • Fix executor timeout (#519)

0.5.0 - 2025-08-15

Added

  • vendorize messages so that cargo update works (#509)

Other

  • Moved examples to its own repo (#504)
  • Wake up wait set when adding a new waitable (#505)
  • rename generate_docs feature to use_ros_shim (#501)
  • Async Workers (#446)
  • Shared state pattern (spin-off of #427) (#430)
  • Options pattern (spin-off of #427) (#429)
  • Fix RAII for subscription, client, and service (#463)
  • Execution structure (spin-off of #427) (#428)
  • Remove Iron support (#443)
  • Add Publisher::get_subscription_count (#457)
  • Bumb bindgen dependency to 0.70 (#452)
  • Update for clippy 1.83 (#441)
  • Add Publisher::can_loan_msgs (#434)
  • Add rosout logging to rclrs (#422)
  • Update vendored interface packages (#423)
  • Use latest stable Rust CI + Fix Test Errors (#420)
  • Add std::error::Error impls to Error enums of parameter module (#413)
  • Wrap slice::from_raw_parts to be compatible with rcl (#419)
  • Compile on targets where c_char ≠ i8 (#403)
  • Add parameter services (#342)
  • Fixup of #388 (#389)
  • Fix link formatting
  • Get rid of doc links to private structs
  • Update documentation on ENTITY_LIFECYCLE_MUTEX
  • Improve the documentation for the domain ID situation of test_graph_empty
  • Rename to avoid confusion with Handle pattern
  • Update documentation and safety info on rcl entity lifecycles
  • Remove the need for lazy_static
  • Satisfy clippy
  • Use usize instead of u8 for domain id
  • Ensure that test_graph_empty works even if the system has ROS_DOMAIN_ID set to 99
  • Run clippy
  • Run rustfmt
  • Apply lifecycle lock to all middleware entities
  • Ensure that mutex guards are not being dropped prematurely
  • Introduce InitOptions to allow manually setting domain ID
  • Keep context alive for guard conditions
  • Manage all rcl bindings with Handle structs
  • Reworking the lifecycle management of rcl bindings
  • Import the builtin_interfaces directly from the internal vendor module.
  • Added test_msgs as a test dependency
  • Move the tests in the rclrs_tests crate into rclrs.
  • Move rcl structs to end of Node declaration
  • Allow ros2_rust to be built within a distro workspace
  • Add default implementation and builder pattern for QoS (#361)
  • Adding a simple helper function for converting rclrs::Time to a ros message (#359)
  • Remove leading underscore from private fields (#354)

0.4.1 - 2023-11-28

  • Added minor changes to enable documentation generation on docs.rs for the ros2-rust projects.

0.4.0 - 2023-11-07

  • Service clients now support service_is_ready to check if a service server is present ahead of calling (#399)
  • Added preliminary support for parameters
  • Added support for Iron Irwini
  • Added Serde big array support
  • Added basic functionality for loading introspection type support libraries
  • Added extended string types
  • Added time source and clock API to nodes
  • Removed support for Galactic
  • Removed support for Foxy

0.3.1 - 2022-10-17

  • Fixed segfault when re-using WaitSet
  • Fixed Node::get_{publishers,subscriptions}_info_by_topic()

0.3.0 - 2022-10-03

  • Loaned messages (zero-copy) (#212)
  • Graph queries (#234)
  • Guard conditions (#249)

[0.2.0] (2022-07-21)

  • First release
  • colcon-cargo and colcon-ros-cargo can now build any pure Cargo and ament-aware Cargo projects
  • rclrs and rclrs_examples are now ament_cargo projects, no more CMake involved
  • rosidl_generator_rs has been updated to support all ROS message types
  • rclrs now supports clients and services

File truncated at 100 lines see the full file

Package Dependencies

System Dependencies

Dependant Packages

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged rclrs at Robotics Stack Exchange

No version for distro kilted showing github. Known supported distros are highlighted in the buttons above.
Package symbol

rclrs package from ros2_rust repo

rclrs

ROS Distro
github

Package Summary

Tags No category tags.
Version 0.5.0
License Apache License 2.0
Build type AMENT_CARGO
Use RECOMMENDED

Repository Summary

Description Rust bindings for ROS 2
Checkout URI https://github.com/ros2-rust/ros2_rust.git
VCS Type git
VCS Version main
Last Updated 2025-09-02
Dev Status UNKNOWN
Released UNRELEASED
Tags rust robotics ros ros2
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Package containing the Rust client library.

Additional Links

No additional links.

Maintainers

  • Esteve Fernandez
  • Nikolai Morin
  • Jacob Hassold

Authors

  • Esteve Fernandez

ROS 2 client library for Rust

ROS 2 is a popular open source robotics framework, used in a variety of fields (self-driving cars, drones, humanoid robots, etc.). rclrs is a library for writing robotics applications in Rust that integrate with ROS 2.

Please see the docs in the ros2_rust repo.

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[Unreleased]

0.5.1 - 2025-08-23

Other

  • Fix executor timeout (#519)

0.5.0 - 2025-08-15

Added

  • vendorize messages so that cargo update works (#509)

Other

  • Moved examples to its own repo (#504)
  • Wake up wait set when adding a new waitable (#505)
  • rename generate_docs feature to use_ros_shim (#501)
  • Async Workers (#446)
  • Shared state pattern (spin-off of #427) (#430)
  • Options pattern (spin-off of #427) (#429)
  • Fix RAII for subscription, client, and service (#463)
  • Execution structure (spin-off of #427) (#428)
  • Remove Iron support (#443)
  • Add Publisher::get_subscription_count (#457)
  • Bumb bindgen dependency to 0.70 (#452)
  • Update for clippy 1.83 (#441)
  • Add Publisher::can_loan_msgs (#434)
  • Add rosout logging to rclrs (#422)
  • Update vendored interface packages (#423)
  • Use latest stable Rust CI + Fix Test Errors (#420)
  • Add std::error::Error impls to Error enums of parameter module (#413)
  • Wrap slice::from_raw_parts to be compatible with rcl (#419)
  • Compile on targets where c_char ≠ i8 (#403)
  • Add parameter services (#342)
  • Fixup of #388 (#389)
  • Fix link formatting
  • Get rid of doc links to private structs
  • Update documentation on ENTITY_LIFECYCLE_MUTEX
  • Improve the documentation for the domain ID situation of test_graph_empty
  • Rename to avoid confusion with Handle pattern
  • Update documentation and safety info on rcl entity lifecycles
  • Remove the need for lazy_static
  • Satisfy clippy
  • Use usize instead of u8 for domain id
  • Ensure that test_graph_empty works even if the system has ROS_DOMAIN_ID set to 99
  • Run clippy
  • Run rustfmt
  • Apply lifecycle lock to all middleware entities
  • Ensure that mutex guards are not being dropped prematurely
  • Introduce InitOptions to allow manually setting domain ID
  • Keep context alive for guard conditions
  • Manage all rcl bindings with Handle structs
  • Reworking the lifecycle management of rcl bindings
  • Import the builtin_interfaces directly from the internal vendor module.
  • Added test_msgs as a test dependency
  • Move the tests in the rclrs_tests crate into rclrs.
  • Move rcl structs to end of Node declaration
  • Allow ros2_rust to be built within a distro workspace
  • Add default implementation and builder pattern for QoS (#361)
  • Adding a simple helper function for converting rclrs::Time to a ros message (#359)
  • Remove leading underscore from private fields (#354)

0.4.1 - 2023-11-28

  • Added minor changes to enable documentation generation on docs.rs for the ros2-rust projects.

0.4.0 - 2023-11-07

  • Service clients now support service_is_ready to check if a service server is present ahead of calling (#399)
  • Added preliminary support for parameters
  • Added support for Iron Irwini
  • Added Serde big array support
  • Added basic functionality for loading introspection type support libraries
  • Added extended string types
  • Added time source and clock API to nodes
  • Removed support for Galactic
  • Removed support for Foxy

0.3.1 - 2022-10-17

  • Fixed segfault when re-using WaitSet
  • Fixed Node::get_{publishers,subscriptions}_info_by_topic()

0.3.0 - 2022-10-03

  • Loaned messages (zero-copy) (#212)
  • Graph queries (#234)
  • Guard conditions (#249)

[0.2.0] (2022-07-21)

  • First release
  • colcon-cargo and colcon-ros-cargo can now build any pure Cargo and ament-aware Cargo projects
  • rclrs and rclrs_examples are now ament_cargo projects, no more CMake involved
  • rosidl_generator_rs has been updated to support all ROS message types
  • rclrs now supports clients and services

File truncated at 100 lines see the full file

Package Dependencies

System Dependencies

Dependant Packages

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged rclrs at Robotics Stack Exchange

No version for distro rolling showing github. Known supported distros are highlighted in the buttons above.
Package symbol

rclrs package from ros2_rust repo

rclrs

ROS Distro
github

Package Summary

Tags No category tags.
Version 0.5.0
License Apache License 2.0
Build type AMENT_CARGO
Use RECOMMENDED

Repository Summary

Description Rust bindings for ROS 2
Checkout URI https://github.com/ros2-rust/ros2_rust.git
VCS Type git
VCS Version main
Last Updated 2025-09-02
Dev Status UNKNOWN
Released UNRELEASED
Tags rust robotics ros ros2
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Package containing the Rust client library.

Additional Links

No additional links.

Maintainers

  • Esteve Fernandez
  • Nikolai Morin
  • Jacob Hassold

Authors

  • Esteve Fernandez

ROS 2 client library for Rust

ROS 2 is a popular open source robotics framework, used in a variety of fields (self-driving cars, drones, humanoid robots, etc.). rclrs is a library for writing robotics applications in Rust that integrate with ROS 2.

Please see the docs in the ros2_rust repo.

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[Unreleased]

0.5.1 - 2025-08-23

Other

  • Fix executor timeout (#519)

0.5.0 - 2025-08-15

Added

  • vendorize messages so that cargo update works (#509)

Other

  • Moved examples to its own repo (#504)
  • Wake up wait set when adding a new waitable (#505)
  • rename generate_docs feature to use_ros_shim (#501)
  • Async Workers (#446)
  • Shared state pattern (spin-off of #427) (#430)
  • Options pattern (spin-off of #427) (#429)
  • Fix RAII for subscription, client, and service (#463)
  • Execution structure (spin-off of #427) (#428)
  • Remove Iron support (#443)
  • Add Publisher::get_subscription_count (#457)
  • Bumb bindgen dependency to 0.70 (#452)
  • Update for clippy 1.83 (#441)
  • Add Publisher::can_loan_msgs (#434)
  • Add rosout logging to rclrs (#422)
  • Update vendored interface packages (#423)
  • Use latest stable Rust CI + Fix Test Errors (#420)
  • Add std::error::Error impls to Error enums of parameter module (#413)
  • Wrap slice::from_raw_parts to be compatible with rcl (#419)
  • Compile on targets where c_char ≠ i8 (#403)
  • Add parameter services (#342)
  • Fixup of #388 (#389)
  • Fix link formatting
  • Get rid of doc links to private structs
  • Update documentation on ENTITY_LIFECYCLE_MUTEX
  • Improve the documentation for the domain ID situation of test_graph_empty
  • Rename to avoid confusion with Handle pattern
  • Update documentation and safety info on rcl entity lifecycles
  • Remove the need for lazy_static
  • Satisfy clippy
  • Use usize instead of u8 for domain id
  • Ensure that test_graph_empty works even if the system has ROS_DOMAIN_ID set to 99
  • Run clippy
  • Run rustfmt
  • Apply lifecycle lock to all middleware entities
  • Ensure that mutex guards are not being dropped prematurely
  • Introduce InitOptions to allow manually setting domain ID
  • Keep context alive for guard conditions
  • Manage all rcl bindings with Handle structs
  • Reworking the lifecycle management of rcl bindings
  • Import the builtin_interfaces directly from the internal vendor module.
  • Added test_msgs as a test dependency
  • Move the tests in the rclrs_tests crate into rclrs.
  • Move rcl structs to end of Node declaration
  • Allow ros2_rust to be built within a distro workspace
  • Add default implementation and builder pattern for QoS (#361)
  • Adding a simple helper function for converting rclrs::Time to a ros message (#359)
  • Remove leading underscore from private fields (#354)

0.4.1 - 2023-11-28

  • Added minor changes to enable documentation generation on docs.rs for the ros2-rust projects.

0.4.0 - 2023-11-07

  • Service clients now support service_is_ready to check if a service server is present ahead of calling (#399)
  • Added preliminary support for parameters
  • Added support for Iron Irwini
  • Added Serde big array support
  • Added basic functionality for loading introspection type support libraries
  • Added extended string types
  • Added time source and clock API to nodes
  • Removed support for Galactic
  • Removed support for Foxy

0.3.1 - 2022-10-17

  • Fixed segfault when re-using WaitSet
  • Fixed Node::get_{publishers,subscriptions}_info_by_topic()

0.3.0 - 2022-10-03

  • Loaned messages (zero-copy) (#212)
  • Graph queries (#234)
  • Guard conditions (#249)

[0.2.0] (2022-07-21)

  • First release
  • colcon-cargo and colcon-ros-cargo can now build any pure Cargo and ament-aware Cargo projects
  • rclrs and rclrs_examples are now ament_cargo projects, no more CMake involved
  • rosidl_generator_rs has been updated to support all ROS message types
  • rclrs now supports clients and services

File truncated at 100 lines see the full file

Package Dependencies

System Dependencies

Dependant Packages

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged rclrs at Robotics Stack Exchange

Package symbol

rclrs package from ros2_rust repo

rclrs

ROS Distro
github

Package Summary

Tags No category tags.
Version 0.5.0
License Apache License 2.0
Build type AMENT_CARGO
Use RECOMMENDED

Repository Summary

Description Rust bindings for ROS 2
Checkout URI https://github.com/ros2-rust/ros2_rust.git
VCS Type git
VCS Version main
Last Updated 2025-09-02
Dev Status UNKNOWN
Released UNRELEASED
Tags rust robotics ros ros2
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Package containing the Rust client library.

Additional Links

No additional links.

Maintainers

  • Esteve Fernandez
  • Nikolai Morin
  • Jacob Hassold

Authors

  • Esteve Fernandez

ROS 2 client library for Rust

ROS 2 is a popular open source robotics framework, used in a variety of fields (self-driving cars, drones, humanoid robots, etc.). rclrs is a library for writing robotics applications in Rust that integrate with ROS 2.

Please see the docs in the ros2_rust repo.

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[Unreleased]

0.5.1 - 2025-08-23

Other

  • Fix executor timeout (#519)

0.5.0 - 2025-08-15

Added

  • vendorize messages so that cargo update works (#509)

Other

  • Moved examples to its own repo (#504)
  • Wake up wait set when adding a new waitable (#505)
  • rename generate_docs feature to use_ros_shim (#501)
  • Async Workers (#446)
  • Shared state pattern (spin-off of #427) (#430)
  • Options pattern (spin-off of #427) (#429)
  • Fix RAII for subscription, client, and service (#463)
  • Execution structure (spin-off of #427) (#428)
  • Remove Iron support (#443)
  • Add Publisher::get_subscription_count (#457)
  • Bumb bindgen dependency to 0.70 (#452)
  • Update for clippy 1.83 (#441)
  • Add Publisher::can_loan_msgs (#434)
  • Add rosout logging to rclrs (#422)
  • Update vendored interface packages (#423)
  • Use latest stable Rust CI + Fix Test Errors (#420)
  • Add std::error::Error impls to Error enums of parameter module (#413)
  • Wrap slice::from_raw_parts to be compatible with rcl (#419)
  • Compile on targets where c_char ≠ i8 (#403)
  • Add parameter services (#342)
  • Fixup of #388 (#389)
  • Fix link formatting
  • Get rid of doc links to private structs
  • Update documentation on ENTITY_LIFECYCLE_MUTEX
  • Improve the documentation for the domain ID situation of test_graph_empty
  • Rename to avoid confusion with Handle pattern
  • Update documentation and safety info on rcl entity lifecycles
  • Remove the need for lazy_static
  • Satisfy clippy
  • Use usize instead of u8 for domain id
  • Ensure that test_graph_empty works even if the system has ROS_DOMAIN_ID set to 99
  • Run clippy
  • Run rustfmt
  • Apply lifecycle lock to all middleware entities
  • Ensure that mutex guards are not being dropped prematurely
  • Introduce InitOptions to allow manually setting domain ID
  • Keep context alive for guard conditions
  • Manage all rcl bindings with Handle structs
  • Reworking the lifecycle management of rcl bindings
  • Import the builtin_interfaces directly from the internal vendor module.
  • Added test_msgs as a test dependency
  • Move the tests in the rclrs_tests crate into rclrs.
  • Move rcl structs to end of Node declaration
  • Allow ros2_rust to be built within a distro workspace
  • Add default implementation and builder pattern for QoS (#361)
  • Adding a simple helper function for converting rclrs::Time to a ros message (#359)
  • Remove leading underscore from private fields (#354)

0.4.1 - 2023-11-28

  • Added minor changes to enable documentation generation on docs.rs for the ros2-rust projects.

0.4.0 - 2023-11-07

  • Service clients now support service_is_ready to check if a service server is present ahead of calling (#399)
  • Added preliminary support for parameters
  • Added support for Iron Irwini
  • Added Serde big array support
  • Added basic functionality for loading introspection type support libraries
  • Added extended string types
  • Added time source and clock API to nodes
  • Removed support for Galactic
  • Removed support for Foxy

0.3.1 - 2022-10-17

  • Fixed segfault when re-using WaitSet
  • Fixed Node::get_{publishers,subscriptions}_info_by_topic()

0.3.0 - 2022-10-03

  • Loaned messages (zero-copy) (#212)
  • Graph queries (#234)
  • Guard conditions (#249)

[0.2.0] (2022-07-21)

  • First release
  • colcon-cargo and colcon-ros-cargo can now build any pure Cargo and ament-aware Cargo projects
  • rclrs and rclrs_examples are now ament_cargo projects, no more CMake involved
  • rosidl_generator_rs has been updated to support all ROS message types
  • rclrs now supports clients and services

File truncated at 100 lines see the full file

Package Dependencies

System Dependencies

Dependant Packages

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged rclrs at Robotics Stack Exchange

No version for distro galactic showing github. Known supported distros are highlighted in the buttons above.
Package symbol

rclrs package from ros2_rust repo

rclrs

ROS Distro
github

Package Summary

Tags No category tags.
Version 0.5.0
License Apache License 2.0
Build type AMENT_CARGO
Use RECOMMENDED

Repository Summary

Description Rust bindings for ROS 2
Checkout URI https://github.com/ros2-rust/ros2_rust.git
VCS Type git
VCS Version main
Last Updated 2025-09-02
Dev Status UNKNOWN
Released UNRELEASED
Tags rust robotics ros ros2
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Package containing the Rust client library.

Additional Links

No additional links.

Maintainers

  • Esteve Fernandez
  • Nikolai Morin
  • Jacob Hassold

Authors

  • Esteve Fernandez

ROS 2 client library for Rust

ROS 2 is a popular open source robotics framework, used in a variety of fields (self-driving cars, drones, humanoid robots, etc.). rclrs is a library for writing robotics applications in Rust that integrate with ROS 2.

Please see the docs in the ros2_rust repo.

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[Unreleased]

0.5.1 - 2025-08-23

Other

  • Fix executor timeout (#519)

0.5.0 - 2025-08-15

Added

  • vendorize messages so that cargo update works (#509)

Other

  • Moved examples to its own repo (#504)
  • Wake up wait set when adding a new waitable (#505)
  • rename generate_docs feature to use_ros_shim (#501)
  • Async Workers (#446)
  • Shared state pattern (spin-off of #427) (#430)
  • Options pattern (spin-off of #427) (#429)
  • Fix RAII for subscription, client, and service (#463)
  • Execution structure (spin-off of #427) (#428)
  • Remove Iron support (#443)
  • Add Publisher::get_subscription_count (#457)
  • Bumb bindgen dependency to 0.70 (#452)
  • Update for clippy 1.83 (#441)
  • Add Publisher::can_loan_msgs (#434)
  • Add rosout logging to rclrs (#422)
  • Update vendored interface packages (#423)
  • Use latest stable Rust CI + Fix Test Errors (#420)
  • Add std::error::Error impls to Error enums of parameter module (#413)
  • Wrap slice::from_raw_parts to be compatible with rcl (#419)
  • Compile on targets where c_char ≠ i8 (#403)
  • Add parameter services (#342)
  • Fixup of #388 (#389)
  • Fix link formatting
  • Get rid of doc links to private structs
  • Update documentation on ENTITY_LIFECYCLE_MUTEX
  • Improve the documentation for the domain ID situation of test_graph_empty
  • Rename to avoid confusion with Handle pattern
  • Update documentation and safety info on rcl entity lifecycles
  • Remove the need for lazy_static
  • Satisfy clippy
  • Use usize instead of u8 for domain id
  • Ensure that test_graph_empty works even if the system has ROS_DOMAIN_ID set to 99
  • Run clippy
  • Run rustfmt
  • Apply lifecycle lock to all middleware entities
  • Ensure that mutex guards are not being dropped prematurely
  • Introduce InitOptions to allow manually setting domain ID
  • Keep context alive for guard conditions
  • Manage all rcl bindings with Handle structs
  • Reworking the lifecycle management of rcl bindings
  • Import the builtin_interfaces directly from the internal vendor module.
  • Added test_msgs as a test dependency
  • Move the tests in the rclrs_tests crate into rclrs.
  • Move rcl structs to end of Node declaration
  • Allow ros2_rust to be built within a distro workspace
  • Add default implementation and builder pattern for QoS (#361)
  • Adding a simple helper function for converting rclrs::Time to a ros message (#359)
  • Remove leading underscore from private fields (#354)

0.4.1 - 2023-11-28

  • Added minor changes to enable documentation generation on docs.rs for the ros2-rust projects.

0.4.0 - 2023-11-07

  • Service clients now support service_is_ready to check if a service server is present ahead of calling (#399)
  • Added preliminary support for parameters
  • Added support for Iron Irwini
  • Added Serde big array support
  • Added basic functionality for loading introspection type support libraries
  • Added extended string types
  • Added time source and clock API to nodes
  • Removed support for Galactic
  • Removed support for Foxy

0.3.1 - 2022-10-17

  • Fixed segfault when re-using WaitSet
  • Fixed Node::get_{publishers,subscriptions}_info_by_topic()

0.3.0 - 2022-10-03

  • Loaned messages (zero-copy) (#212)
  • Graph queries (#234)
  • Guard conditions (#249)

[0.2.0] (2022-07-21)

  • First release
  • colcon-cargo and colcon-ros-cargo can now build any pure Cargo and ament-aware Cargo projects
  • rclrs and rclrs_examples are now ament_cargo projects, no more CMake involved
  • rosidl_generator_rs has been updated to support all ROS message types
  • rclrs now supports clients and services

File truncated at 100 lines see the full file

Package Dependencies

System Dependencies

Dependant Packages

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged rclrs at Robotics Stack Exchange

No version for distro iron showing github. Known supported distros are highlighted in the buttons above.
Package symbol

rclrs package from ros2_rust repo

rclrs

ROS Distro
github

Package Summary

Tags No category tags.
Version 0.5.0
License Apache License 2.0
Build type AMENT_CARGO
Use RECOMMENDED

Repository Summary

Description Rust bindings for ROS 2
Checkout URI https://github.com/ros2-rust/ros2_rust.git
VCS Type git
VCS Version main
Last Updated 2025-09-02
Dev Status UNKNOWN
Released UNRELEASED
Tags rust robotics ros ros2
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Package containing the Rust client library.

Additional Links

No additional links.

Maintainers

  • Esteve Fernandez
  • Nikolai Morin
  • Jacob Hassold

Authors

  • Esteve Fernandez

ROS 2 client library for Rust

ROS 2 is a popular open source robotics framework, used in a variety of fields (self-driving cars, drones, humanoid robots, etc.). rclrs is a library for writing robotics applications in Rust that integrate with ROS 2.

Please see the docs in the ros2_rust repo.

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[Unreleased]

0.5.1 - 2025-08-23

Other

  • Fix executor timeout (#519)

0.5.0 - 2025-08-15

Added

  • vendorize messages so that cargo update works (#509)

Other

  • Moved examples to its own repo (#504)
  • Wake up wait set when adding a new waitable (#505)
  • rename generate_docs feature to use_ros_shim (#501)
  • Async Workers (#446)
  • Shared state pattern (spin-off of #427) (#430)
  • Options pattern (spin-off of #427) (#429)
  • Fix RAII for subscription, client, and service (#463)
  • Execution structure (spin-off of #427) (#428)
  • Remove Iron support (#443)
  • Add Publisher::get_subscription_count (#457)
  • Bumb bindgen dependency to 0.70 (#452)
  • Update for clippy 1.83 (#441)
  • Add Publisher::can_loan_msgs (#434)
  • Add rosout logging to rclrs (#422)
  • Update vendored interface packages (#423)
  • Use latest stable Rust CI + Fix Test Errors (#420)
  • Add std::error::Error impls to Error enums of parameter module (#413)
  • Wrap slice::from_raw_parts to be compatible with rcl (#419)
  • Compile on targets where c_char ≠ i8 (#403)
  • Add parameter services (#342)
  • Fixup of #388 (#389)
  • Fix link formatting
  • Get rid of doc links to private structs
  • Update documentation on ENTITY_LIFECYCLE_MUTEX
  • Improve the documentation for the domain ID situation of test_graph_empty
  • Rename to avoid confusion with Handle pattern
  • Update documentation and safety info on rcl entity lifecycles
  • Remove the need for lazy_static
  • Satisfy clippy
  • Use usize instead of u8 for domain id
  • Ensure that test_graph_empty works even if the system has ROS_DOMAIN_ID set to 99
  • Run clippy
  • Run rustfmt
  • Apply lifecycle lock to all middleware entities
  • Ensure that mutex guards are not being dropped prematurely
  • Introduce InitOptions to allow manually setting domain ID
  • Keep context alive for guard conditions
  • Manage all rcl bindings with Handle structs
  • Reworking the lifecycle management of rcl bindings
  • Import the builtin_interfaces directly from the internal vendor module.
  • Added test_msgs as a test dependency
  • Move the tests in the rclrs_tests crate into rclrs.
  • Move rcl structs to end of Node declaration
  • Allow ros2_rust to be built within a distro workspace
  • Add default implementation and builder pattern for QoS (#361)
  • Adding a simple helper function for converting rclrs::Time to a ros message (#359)
  • Remove leading underscore from private fields (#354)

0.4.1 - 2023-11-28

  • Added minor changes to enable documentation generation on docs.rs for the ros2-rust projects.

0.4.0 - 2023-11-07

  • Service clients now support service_is_ready to check if a service server is present ahead of calling (#399)
  • Added preliminary support for parameters
  • Added support for Iron Irwini
  • Added Serde big array support
  • Added basic functionality for loading introspection type support libraries
  • Added extended string types
  • Added time source and clock API to nodes
  • Removed support for Galactic
  • Removed support for Foxy

0.3.1 - 2022-10-17

  • Fixed segfault when re-using WaitSet
  • Fixed Node::get_{publishers,subscriptions}_info_by_topic()

0.3.0 - 2022-10-03

  • Loaned messages (zero-copy) (#212)
  • Graph queries (#234)
  • Guard conditions (#249)

[0.2.0] (2022-07-21)

  • First release
  • colcon-cargo and colcon-ros-cargo can now build any pure Cargo and ament-aware Cargo projects
  • rclrs and rclrs_examples are now ament_cargo projects, no more CMake involved
  • rosidl_generator_rs has been updated to support all ROS message types
  • rclrs now supports clients and services

File truncated at 100 lines see the full file

Package Dependencies

System Dependencies

Dependant Packages

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged rclrs at Robotics Stack Exchange

No version for distro melodic showing github. Known supported distros are highlighted in the buttons above.
Package symbol

rclrs package from ros2_rust repo

rclrs

ROS Distro
github

Package Summary

Tags No category tags.
Version 0.5.0
License Apache License 2.0
Build type AMENT_CARGO
Use RECOMMENDED

Repository Summary

Description Rust bindings for ROS 2
Checkout URI https://github.com/ros2-rust/ros2_rust.git
VCS Type git
VCS Version main
Last Updated 2025-09-02
Dev Status UNKNOWN
Released UNRELEASED
Tags rust robotics ros ros2
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Package containing the Rust client library.

Additional Links

No additional links.

Maintainers

  • Esteve Fernandez
  • Nikolai Morin
  • Jacob Hassold

Authors

  • Esteve Fernandez

ROS 2 client library for Rust

ROS 2 is a popular open source robotics framework, used in a variety of fields (self-driving cars, drones, humanoid robots, etc.). rclrs is a library for writing robotics applications in Rust that integrate with ROS 2.

Please see the docs in the ros2_rust repo.

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[Unreleased]

0.5.1 - 2025-08-23

Other

  • Fix executor timeout (#519)

0.5.0 - 2025-08-15

Added

  • vendorize messages so that cargo update works (#509)

Other

  • Moved examples to its own repo (#504)
  • Wake up wait set when adding a new waitable (#505)
  • rename generate_docs feature to use_ros_shim (#501)
  • Async Workers (#446)
  • Shared state pattern (spin-off of #427) (#430)
  • Options pattern (spin-off of #427) (#429)
  • Fix RAII for subscription, client, and service (#463)
  • Execution structure (spin-off of #427) (#428)
  • Remove Iron support (#443)
  • Add Publisher::get_subscription_count (#457)
  • Bumb bindgen dependency to 0.70 (#452)
  • Update for clippy 1.83 (#441)
  • Add Publisher::can_loan_msgs (#434)
  • Add rosout logging to rclrs (#422)
  • Update vendored interface packages (#423)
  • Use latest stable Rust CI + Fix Test Errors (#420)
  • Add std::error::Error impls to Error enums of parameter module (#413)
  • Wrap slice::from_raw_parts to be compatible with rcl (#419)
  • Compile on targets where c_char ≠ i8 (#403)
  • Add parameter services (#342)
  • Fixup of #388 (#389)
  • Fix link formatting
  • Get rid of doc links to private structs
  • Update documentation on ENTITY_LIFECYCLE_MUTEX
  • Improve the documentation for the domain ID situation of test_graph_empty
  • Rename to avoid confusion with Handle pattern
  • Update documentation and safety info on rcl entity lifecycles
  • Remove the need for lazy_static
  • Satisfy clippy
  • Use usize instead of u8 for domain id
  • Ensure that test_graph_empty works even if the system has ROS_DOMAIN_ID set to 99
  • Run clippy
  • Run rustfmt
  • Apply lifecycle lock to all middleware entities
  • Ensure that mutex guards are not being dropped prematurely
  • Introduce InitOptions to allow manually setting domain ID
  • Keep context alive for guard conditions
  • Manage all rcl bindings with Handle structs
  • Reworking the lifecycle management of rcl bindings
  • Import the builtin_interfaces directly from the internal vendor module.
  • Added test_msgs as a test dependency
  • Move the tests in the rclrs_tests crate into rclrs.
  • Move rcl structs to end of Node declaration
  • Allow ros2_rust to be built within a distro workspace
  • Add default implementation and builder pattern for QoS (#361)
  • Adding a simple helper function for converting rclrs::Time to a ros message (#359)
  • Remove leading underscore from private fields (#354)

0.4.1 - 2023-11-28

  • Added minor changes to enable documentation generation on docs.rs for the ros2-rust projects.

0.4.0 - 2023-11-07

  • Service clients now support service_is_ready to check if a service server is present ahead of calling (#399)
  • Added preliminary support for parameters
  • Added support for Iron Irwini
  • Added Serde big array support
  • Added basic functionality for loading introspection type support libraries
  • Added extended string types
  • Added time source and clock API to nodes
  • Removed support for Galactic
  • Removed support for Foxy

0.3.1 - 2022-10-17

  • Fixed segfault when re-using WaitSet
  • Fixed Node::get_{publishers,subscriptions}_info_by_topic()

0.3.0 - 2022-10-03

  • Loaned messages (zero-copy) (#212)
  • Graph queries (#234)
  • Guard conditions (#249)

[0.2.0] (2022-07-21)

  • First release
  • colcon-cargo and colcon-ros-cargo can now build any pure Cargo and ament-aware Cargo projects
  • rclrs and rclrs_examples are now ament_cargo projects, no more CMake involved
  • rosidl_generator_rs has been updated to support all ROS message types
  • rclrs now supports clients and services

File truncated at 100 lines see the full file

Package Dependencies

System Dependencies

Dependant Packages

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged rclrs at Robotics Stack Exchange

No version for distro noetic showing github. Known supported distros are highlighted in the buttons above.
Package symbol

rclrs package from ros2_rust repo

rclrs

ROS Distro
github

Package Summary

Tags No category tags.
Version 0.5.0
License Apache License 2.0
Build type AMENT_CARGO
Use RECOMMENDED

Repository Summary

Description Rust bindings for ROS 2
Checkout URI https://github.com/ros2-rust/ros2_rust.git
VCS Type git
VCS Version main
Last Updated 2025-09-02
Dev Status UNKNOWN
Released UNRELEASED
Tags rust robotics ros ros2
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Package containing the Rust client library.

Additional Links

No additional links.

Maintainers

  • Esteve Fernandez
  • Nikolai Morin
  • Jacob Hassold

Authors

  • Esteve Fernandez

ROS 2 client library for Rust

ROS 2 is a popular open source robotics framework, used in a variety of fields (self-driving cars, drones, humanoid robots, etc.). rclrs is a library for writing robotics applications in Rust that integrate with ROS 2.

Please see the docs in the ros2_rust repo.

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[Unreleased]

0.5.1 - 2025-08-23

Other

  • Fix executor timeout (#519)

0.5.0 - 2025-08-15

Added

  • vendorize messages so that cargo update works (#509)

Other

  • Moved examples to its own repo (#504)
  • Wake up wait set when adding a new waitable (#505)
  • rename generate_docs feature to use_ros_shim (#501)
  • Async Workers (#446)
  • Shared state pattern (spin-off of #427) (#430)
  • Options pattern (spin-off of #427) (#429)
  • Fix RAII for subscription, client, and service (#463)
  • Execution structure (spin-off of #427) (#428)
  • Remove Iron support (#443)
  • Add Publisher::get_subscription_count (#457)
  • Bumb bindgen dependency to 0.70 (#452)
  • Update for clippy 1.83 (#441)
  • Add Publisher::can_loan_msgs (#434)
  • Add rosout logging to rclrs (#422)
  • Update vendored interface packages (#423)
  • Use latest stable Rust CI + Fix Test Errors (#420)
  • Add std::error::Error impls to Error enums of parameter module (#413)
  • Wrap slice::from_raw_parts to be compatible with rcl (#419)
  • Compile on targets where c_char ≠ i8 (#403)
  • Add parameter services (#342)
  • Fixup of #388 (#389)
  • Fix link formatting
  • Get rid of doc links to private structs
  • Update documentation on ENTITY_LIFECYCLE_MUTEX
  • Improve the documentation for the domain ID situation of test_graph_empty
  • Rename to avoid confusion with Handle pattern
  • Update documentation and safety info on rcl entity lifecycles
  • Remove the need for lazy_static
  • Satisfy clippy
  • Use usize instead of u8 for domain id
  • Ensure that test_graph_empty works even if the system has ROS_DOMAIN_ID set to 99
  • Run clippy
  • Run rustfmt
  • Apply lifecycle lock to all middleware entities
  • Ensure that mutex guards are not being dropped prematurely
  • Introduce InitOptions to allow manually setting domain ID
  • Keep context alive for guard conditions
  • Manage all rcl bindings with Handle structs
  • Reworking the lifecycle management of rcl bindings
  • Import the builtin_interfaces directly from the internal vendor module.
  • Added test_msgs as a test dependency
  • Move the tests in the rclrs_tests crate into rclrs.
  • Move rcl structs to end of Node declaration
  • Allow ros2_rust to be built within a distro workspace
  • Add default implementation and builder pattern for QoS (#361)
  • Adding a simple helper function for converting rclrs::Time to a ros message (#359)
  • Remove leading underscore from private fields (#354)

0.4.1 - 2023-11-28

  • Added minor changes to enable documentation generation on docs.rs for the ros2-rust projects.

0.4.0 - 2023-11-07

  • Service clients now support service_is_ready to check if a service server is present ahead of calling (#399)
  • Added preliminary support for parameters
  • Added support for Iron Irwini
  • Added Serde big array support
  • Added basic functionality for loading introspection type support libraries
  • Added extended string types
  • Added time source and clock API to nodes
  • Removed support for Galactic
  • Removed support for Foxy

0.3.1 - 2022-10-17

  • Fixed segfault when re-using WaitSet
  • Fixed Node::get_{publishers,subscriptions}_info_by_topic()

0.3.0 - 2022-10-03

  • Loaned messages (zero-copy) (#212)
  • Graph queries (#234)
  • Guard conditions (#249)

[0.2.0] (2022-07-21)

  • First release
  • colcon-cargo and colcon-ros-cargo can now build any pure Cargo and ament-aware Cargo projects
  • rclrs and rclrs_examples are now ament_cargo projects, no more CMake involved
  • rosidl_generator_rs has been updated to support all ROS message types
  • rclrs now supports clients and services

File truncated at 100 lines see the full file

Package Dependencies

System Dependencies

Dependant Packages

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged rclrs at Robotics Stack Exchange