-
 

rmw package from rmw repo

rmw rmw_implementation_cmake

Package Summary

Tags No category tags.
Version 6.1.2
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ros2/rmw.git
VCS Type git
VCS Version humble
Last Updated 2024-05-15
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

Contains the ROS middleware API.

Additional Links

No additional links.

Maintainers

  • Ivan Paunovic
  • William Woodall

Authors

  • Dirk Thomas

RMW

The ROS 2 Middleware Interface provides an abstraction layer to different DDS implementations for communication with the ROS 2 Client Library. This package contains the rmw interface for DDS implementation and some general functionality useful for implementers.

For more information, see https://design.ros2.org/articles/ros_middleware_interface.html

Interface and Features

For specific information about the rmw interface and features, see its api docs.

Quality Declaration

This package claims to be in the Quality Level 1 category, see the Quality Declaration for more details.

CHANGELOG

Changelog for package rmw

6.1.2 (2024-05-15)

  • rmw_send_reqponse returns RMW_RET_TIMEOUT. (#350) (#367)
  • Contributors: mergify[bot]

6.1.1 (2022-11-07)

  • callback can be NULL to clear in Listener APIs. (#332) (#333)
  • Contributors: mergify[bot]

6.1.0 (2022-03-25)

  • Add content filtered topics support. (#302)
  • Add sequence numbers to rmw_message_info_t. (#318)
  • Add rmw_feature_supported(). (#318)
  • Contributors: Chen Lihui, Ivan Santiago Paunovic

6.0.0 (2022-03-01)

  • Add EventsExecutor (#286)
  • Document that rmw_wait() SHOULD use a monotonic clock (#316)
  • Install headers to include/${PROJECT_NAME} (#317)
  • Update rmw_server_is_available() API documentation. (#277)
  • Contributors: Ivan Santiago Paunovic, Michel Hidalgo, Shane Loretz, iRobot ROS

5.1.0 (2021-11-19)

  • Add client/service QoS getters. (#314)
  • Contributors: mauropasse

5.0.0 (2021-09-15)

  • Fix up documentation build for rmw when using rosdoc2 (#313)
  • Fix up errors in doxygen documentation (#311)
  • Fix copy-paste error in API doc for rmw_get_gid_for_publisher (#310)
  • Contributors: Chris Lalancette, Christophe Bedard, Michel Hidalgo

4.0.0 (2021-06-02)

  • Add rmw_publisher_wait_for_all_acked support. (#296)
  • Contributors: Barry Xu

3.3.1 (2021-04-26)

  • Document which QoS policies are correctly read by rmw_get_publishers/subscriptions_info_by_topic (#308)
  • Contributors: Ivan Santiago Paunovic

3.3.0 (2021-04-06)

  • Unique network flows (#294)
  • updating quality declaration links (re: ros2/docs.ros2.org#52) (#307)
  • Contributors: Ananya Muddukrishna, shonigmann

3.2.0 (2021-03-11)

  • Introduce RMW_DURATION_INFINITE constant and API return value promise (#301)
  • Contributors: Emerson Knapp

3.1.0 (2021-02-25)

  • Add declaration for function to check QoS profile compatibility (#299)
  • Update the rmw_take_sequence documentation. (#297)
  • Contributors: Chris Lalancette, Jacob Perron

3.0.0 (2021-01-25)

2.2.1 (2020-12-10)

  • Update rmw QD to QL 1 (#289)
  • Contributors: Stephen Brawner

2.2.0 (2020-11-04)

  • Extend rmw_qos_policy_kind_t, add functions to convert it to/from a string (#285)
  • Add functions to convert between qos policy values and strings (#284)
  • Update maintainers (#282)
  • Update service request/response API documentation (#279)
  • Update rmw_get_serialized_message_size docblock (#281)
  • Update rmw_service_server_is_available doc (#280)
  • Update wait and wait sets' API documentation (#275)
  • Update graph API documentation (#272)
  • Update service server/client creation/destruction API documentation. (#276)
  • Update rmw___allocation return values (#278)
  • Update gid API documentation (#274)
  • Do not link against pthread on Android (#267)
  • Update taking API documentation (#271)
  • Update publishing API documentation (#270)
  • Add fault injection macros for use in other packages (#254)
  • Add bad_alloc return to topic_endpoint_info functions (#269)
  • Update publisher/subscription matched count API documentation (#262)
  • Update publisher/subscription QoS query API documentation (#263)
  • Extend rmw_serialized_message_t tests (#261)
  • Update serialization/deserialization API documentation (#258)
  • Update subscription API documentation (#256)
  • Update publisher creation/destruction API documentation (#252)
  • Contributors: Alejandro Hernández Cordero, Ivan Santiago Paunovic, Jacob Perron, Michel Hidalgo, brawner

2.1.0 (2020-07-22)

  • Add actual domain id to rmw_context_t (#251)
  • Update node creation/destruction API documentation. (#249)
  • Correct parameter names to match documentation (#250)
  • Contributors: Geoffrey Biggs, Ivan Santiago Paunovic, Michel Hidalgo

2.0.0 (2020-07-08)

  • Remove domain_id and localhost_only from node API (#248)
  • Require enclave upon rmw_init() call. (#247)
  • Update init/shutdown API documentation. (#243)
  • Update init options API documentation. (#244)
  • Contributors: Ivan Santiago Paunovic, Michel Hidalgo

1.1.0 (2020-06-18)

  • Add message lost subscription event (#232)
  • Move statuses definitions to rmw/events_statuses/*.h (#232)
  • Increase rmw testing coverage above 95% (#238)
  • Handle zero-length names_and_types properly (#239)
  • Add missing RMW_PUBLIC to security_options_set_root_path (#236)
  • Update Quality Declaration for QL 2 (#233)
  • Add Security Vulnerability Policy pointing to REP-2006. (#230)
  • Contributors: Chris Lalancette, Ivan Santiago Paunovic, Karsten Knese, Scott K Logan, Stephen Brawner, brawner

1.0.1 (2020-05-19)

  • Fix cppcheck error (#229)
  • Update Quality Declaration to reflect 1.0 (#228)
  • Contributors: Michel Hidalgo, Stephen Brawner

1.0.0 (2020-05-12)

  • Remove MANUAL_BY_NODE liveliness API (#227)
  • Improved Quality declarations (#225)
  • Quality declarations for rmw and rmw_implementation_cmake (#205)
  • Add tests for untested public functionality (#203)
  • Contributors: Alejandro Hernández Cordero, Ivan Santiago Paunovic, Stephen Brawner

0.9.0 (2020-04-24)

  • Delete superfluous empty line (#222)
  • Fix linter warning (#224)
  • Rename rosidl_message_bounds_t (#223)
  • Adding doxygen documentation and READMEs to packages (#204)
  • Service timestamps (#217)
  • Add API for taking a sequence of messages (#212)
  • Add timestamps to message info (#214)
  • Add build dep on rosidl_runtime_c to work with CMake < 3.13 (#221)
  • Fix missing target dependency on rosidl_runtime_c (#220)
  • Export targets in addition to include directories / libraries (#218)
  • Document destroy_node may assume correct destruction order (#216)
  • security-context -> enclave (#211)
  • Rename rosidl_generator_c namespace to rosidl_runtime_c (#213)
  • Added the right dependency rosidl runtime c instead of rosidl generator c (#198)
  • Use one participant per context API changes (#189)
  • Add comment about RMW_RET_UNSUPPORTED for loaned_message. (#208)
  • Support for ON_REQUESTED_INCOMPATIBLE_QOS and ON_OFFERED_INCOMPATIBLE_QOS events (#193)
  • Move rmw_*_event_init() functions to rmw_implementation (#202)
  • Rename rmw_topic_endpoint_info_array [count]{.title-ref} to [size]{.title-ref}, and initialize it (#196)
  • Code style only: wrap after open parenthesis if not in one line (#195)
  • Update development version after merging #186 (#194)
  • Adding required structs and methods to get a list of publishers or subscribers with their respective qos (#186)
  • Contributors: Alejandro Hernández Cordero, Dirk Thomas, Ingo Lütkebohle, Ivan Santiago Paunovic, Jaison Titus, Karsten Knese, Miaofei Mei, Michael Carroll, Mikael Arguedas, Shane Loretz, William Woodall, Stephen Brawner, Tomoya Fujita

0.8.1 (2019-10-23)

  • Use return_loaned_message_from (#192)
  • Add function to enable localhost communication only from env var (#190)
  • Zero copy api (#185)
  • Add call to bump dev version to the upcoming version 0.8.1 (#191)
  • Add pub/sub option structures to support rmw specific payload feature (#187)
  • Contributors: Brian Marchi, Dirk Thomas, Karsten Knese, William Woodall

0.8.0 (2019-09-24)

  • Added specific return type for non existent node (#182)
  • Added function for getting clients by node (#179)
  • Added get_actual_qos() feature to subscriptions (#177)
  • Added RMW_QOS_POLICY_LIVELINESS_UNKNOWN enum (#175)
  • Contributors: Jacob Perron, M. M, ivanpauno

0.7.1 (2019-05-08)

  • Implement QoS: liveliness, deadline, lifespan (#171)
  • Rmw preallocate (#160)
  • Add new QoS policy data types to rmw (#173)
  • Contributors: M. M, Michael Carroll, Ross Desmond

0.7.0 (2019-04-13)

  • Add function to get publisher actual qos settings (#169)
  • fix checking boolean variable which might contain a string (#165)
  • change parameter events to use KEEP_LAST (#162)
  • Fix typo error (#164)
  • pass context to wait set, and provide fini function for context (#163)
  • minor notes explaining rmw_qos_profile_t (#156)
  • Contributors: Dirk Thomas, Lalit Begani, Mike Lautman, William Woodall, ivanpauno

0.6.1 (2018-12-06)

  • Add node graph functions (#158)
  • refactor init to allow options to be passed and to not be global (#154)
  • Methods to retrieve matched counts on publisher and subscriber (#155)
  • use uint8_t instead of char for serialized message (#161)
  • Contributors: Karsten Knese, Michael Carroll, Ross Desmond, William Woodall

0.6.0 (2018-11-16)

  • use new error handling API (#153)
  • Add semicolons to RCLCPP and RCUTILS macros. (#150)
  • Include node namespaces in get_node_names() (#148)
  • add missing doc for parameter (#149)
  • rcutils_serialized_message -> rcutils_char_array (#146)
  • rmw serialized to rcutils serialized (#145)
  • rcutil -> rcutils (#147)
  • get serialization format (#143)
  • Contributors: Chris Lalancette, Karsten Knese, Michael Carroll, Mikael Arguedas, William Woodall

0.5.0 (2018-06-23)

  • use rcutils allocator in allocators.c to avoid direct use of malloc/free (#140)
  • check the return value of rcutils_snprintf (#138)
  • _raw function (#125)
  • Merge pull request #137 from ros2/misra_fixup
  • Change #if to #ifdef.
  • add function to parse key-value user_data (#132)
  • Add validation functions accepting string length (#135)
  • Clarify that NULL blocks forever in rmw_wait (#134)
  • Enable setting log levels in DDS implementation (#124)
  • Optimize namespace node and topic validation (#130)
  • Contributors: Dirk Thomas, Ethan Gao, Karsten Knese, Michael Carroll, Shane Loretz, Sriram Raghunathan, William Woodall

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged rmw at Robotics Stack Exchange

rmw package from rmw repo

rmw rmw_implementation_cmake

Package Summary

Tags No category tags.
Version 7.1.0
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ros2/rmw.git
VCS Type git
VCS Version iron
Last Updated 2023-04-12
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

Contains the ROS middleware API.

Additional Links

No additional links.

Maintainers

  • Brandon Ong
  • Ivan Paunovic
  • William Woodall

Authors

  • Dirk Thomas

RMW

The ROS 2 Middleware Interface provides an abstraction layer to different DDS implementations for communication with the ROS 2 Client Library. This package contains the rmw interface for DDS implementation and some general functionality useful for implementers.

For more information, see https://design.ros2.org/articles/ros_middleware_interface.html

Interface and Features

For specific information about the rmw interface and features, see its api docs.

Quality Declaration

This package claims to be in the Quality Level 1 category, see the Quality Declaration for more details.

CHANGELOG

Changelog for package rmw

7.1.0 (2023-04-12)

  • Dynamic Subscription (BONUS: Allocators): rmw (#353)
  • Runtime Interface Reflection: rmw (#340)
  • [rmw] Improve handling of dynamic discovery (#338)
  • rmw_send_reqponse returns RMW_RET_TIMEOUT. (#350)
  • Add a note about asynchronicity of discovery. (#352)
  • Add matched event support (#331)
  • Add type hash to rmw_topic_endpoint_info_t (rep2011) (#348)
  • Add in inconsistent topic defines and data structures. (#339)
  • Update documented expectations for GIDs (#335)
  • Contributors: Barry Xu, Chris Lalancette, Emerson Knapp, Geoffrey Biggs, Jacob Perron, Tomoya Fujita, William Woodall, methylDragon

7.0.1 (2023-02-24)

  • Fix rmw->rwm typo (#347)
  • Contributors: Emerson Knapp

7.0.0 (2023-02-13)

  • Add rmw count clients, services (#334)
  • make writer_guid uint8_t[] instead of int8_t for consistency with rmw_gid_t (#329)
  • Update rmw to C++17. (#346)
  • Reduce GID storage to 16 bytes. (#345)
  • Move the RMW_CHECK_TYPE_IDENTIFIERS_MATCH macro to a C header. (#343)
  • [rolling] Update maintainers - 2022-11-07 (#337)
  • Contributors: Audrow Nash, Brian, Chris Lalancette, Minju, Lee

6.4.0 (2022-11-02)

  • Remove unused test_loaned_message_sequence.cpp (#336)
  • callback can be NULL to clear in Listener APIs. (#332)
  • Add rmw_get_gid_for_client method (#327)
  • Contributors: Brian, Nikolai Morin, Tomoya Fujita

6.3.1 (2022-09-13)

6.3.0 (2022-05-03)

  • Add 'best available' QoS policies (#320) The best available policy should select the highest level of service for the QoS setting while matching with the majority of endpoints. For example, in the case of a DDS middleware subscription, this means:
    • Prefer reliable reliability if all existing publishers on the same topic are reliable, otherwise use best effort.
    • Prefer transient local durability if all existing publishers on the same topic are transient local, otherwise use volatile.
    • Prefer manual by topic liveliness if all existing publishers on the same topic are manual by topic, otherwise use automatic.
    • Use a deadline that is equal to the largest deadline of existing publishers on the same topic.
    • Use a liveliness lease duration that is equal to the largest lease duration of existing publishers on the same topic.
  • Contributors: Jacob Perron

6.2.0 (2022-04-29)

6.1.0 (2022-03-25)

  • Add content filtered topics support. (#302)
  • Add sequence numbers to rmw_message_info_t. (#318)
  • Add rmw_feature_supported(). (#318)
  • Contributors: Chen Lihui, Ivan Santiago Paunovic

6.0.0 (2022-03-01)

  • Add EventsExecutor (#286)
  • Document that rmw_wait() SHOULD use a monotonic clock (#316)
  • Install headers to include/${PROJECT_NAME} (#317)
  • Update rmw_server_is_available() API documentation. (#277)
  • Contributors: Ivan Santiago Paunovic, Michel Hidalgo, Shane Loretz, iRobot ROS

5.1.0 (2021-11-19)

  • Add client/service QoS getters. (#314)
  • Contributors: mauropasse

5.0.0 (2021-09-15)

  • Fix up documentation build for rmw when using rosdoc2 (#313)
  • Fix up errors in doxygen documentation (#311)
  • Fix copy-paste error in API doc for rmw_get_gid_for_publisher (#310)
  • Contributors: Chris Lalancette, Christophe Bedard, Michel Hidalgo

4.0.0 (2021-06-02)

  • Add rmw_publisher_wait_for_all_acked support. (#296)
  • Contributors: Barry Xu

3.3.1 (2021-04-26)

  • Document which QoS policies are correctly read by rmw_get_publishers/subscriptions_info_by_topic (#308)
  • Contributors: Ivan Santiago Paunovic

3.3.0 (2021-04-06)

  • Unique network flows (#294)
  • updating quality declaration links (re: ros2/docs.ros2.org#52) (#307)
  • Contributors: Ananya Muddukrishna, shonigmann

3.2.0 (2021-03-11)

  • Introduce RMW_DURATION_INFINITE constant and API return value promise (#301)
  • Contributors: Emerson Knapp

3.1.0 (2021-02-25)

  • Add declaration for function to check QoS profile compatibility (#299)
  • Update the rmw_take_sequence documentation. (#297)
  • Contributors: Chris Lalancette, Jacob Perron

3.0.0 (2021-01-25)

2.2.1 (2020-12-10)

  • Update rmw QD to QL 1 (#289)
  • Contributors: Stephen Brawner

2.2.0 (2020-11-04)

  • Extend rmw_qos_policy_kind_t, add functions to convert it to/from a string (#285)
  • Add functions to convert between qos policy values and strings (#284)
  • Update maintainers (#282)
  • Update service request/response API documentation (#279)
  • Update rmw_get_serialized_message_size docblock (#281)
  • Update rmw_service_server_is_available doc (#280)
  • Update wait and wait sets' API documentation (#275)
  • Update graph API documentation (#272)
  • Update service server/client creation/destruction API documentation. (#276)
  • Update rmw___allocation return values (#278)
  • Update gid API documentation (#274)
  • Do not link against pthread on Android (#267)
  • Update taking API documentation (#271)
  • Update publishing API documentation (#270)
  • Add fault injection macros for use in other packages (#254)
  • Add bad_alloc return to topic_endpoint_info functions (#269)
  • Update publisher/subscription matched count API documentation (#262)
  • Update publisher/subscription QoS query API documentation (#263)
  • Extend rmw_serialized_message_t tests (#261)
  • Update serialization/deserialization API documentation (#258)
  • Update subscription API documentation (#256)
  • Update publisher creation/destruction API documentation (#252)
  • Contributors: Alejandro Hernández Cordero, Ivan Santiago Paunovic, Jacob Perron, Michel Hidalgo, brawner

2.1.0 (2020-07-22)

  • Add actual domain id to rmw_context_t (#251)
  • Update node creation/destruction API documentation. (#249)
  • Correct parameter names to match documentation (#250)
  • Contributors: Geoffrey Biggs, Ivan Santiago Paunovic, Michel Hidalgo

2.0.0 (2020-07-08)

  • Remove domain_id and localhost_only from node API (#248)
  • Require enclave upon rmw_init() call. (#247)
  • Update init/shutdown API documentation. (#243)
  • Update init options API documentation. (#244)
  • Contributors: Ivan Santiago Paunovic, Michel Hidalgo

1.1.0 (2020-06-18)

  • Add message lost subscription event (#232)
  • Move statuses definitions to rmw/events_statuses/ (#232)
  • Increase rmw testing coverage above 95% (#238)
  • Handle zero-length names_and_types properly (#239)
  • Add missing RMW_PUBLIC to security_options_set_root_path (#236)
  • Update Quality Declaration for QL 2 (#233)
  • Add Security Vulnerability Policy pointing to REP-2006. (#230)
  • Contributors: Chris Lalancette, Ivan Santiago Paunovic, Karsten Knese, Scott K Logan, Stephen Brawner, brawner

1.0.1 (2020-05-19)

  • Fix cppcheck error (#229)
  • Update Quality Declaration to reflect 1.0 (#228)
  • Contributors: Michel Hidalgo, Stephen Brawner

1.0.0 (2020-05-12)

  • Remove MANUAL_BY_NODE liveliness API (#227)
  • Improved Quality declarations (#225)
  • Quality declarations for rmw and rmw_implementation_cmake (#205)
  • Add tests for untested public functionality (#203)
  • Contributors: Alejandro Hernández Cordero, Ivan Santiago Paunovic, Stephen Brawner

0.9.0 (2020-04-24)

  • Delete superfluous empty line (#222)
  • Fix linter warning (#224)
  • Rename rosidl_message_bounds_t (#223)
  • Adding doxygen documentation and READMEs to packages (#204)
  • Service timestamps (#217)
  • Add API for taking a sequence of messages (#212)
  • Add timestamps to message info (#214)
  • Add build dep on rosidl_runtime_c to work with CMake < 3.13 (#221)
  • Fix missing target dependency on rosidl_runtime_c (#220)
  • Export targets in addition to include directories / libraries (#218)
  • Document destroy_node may assume correct destruction order (#216)
  • security-context -> enclave (#211)
  • Rename rosidl_generator_c namespace to rosidl_runtime_c (#213)
  • Added the right dependency rosidl runtime c instead of rosidl generator c (#198)
  • Use one participant per context API changes (#189)
  • Add comment about RMW_RET_UNSUPPORTED for loaned_message. (#208)
  • Support for ON_REQUESTED_INCOMPATIBLE_QOS and ON_OFFERED_INCOMPATIBLE_QOS events (#193)
  • Move rmw_*_event_init() functions to rmw_implementation (#202)
  • Rename rmw_topic_endpoint_info_array [count]{.title-ref} to [size]{.title-ref}, and initialize it (#196)
  • Code style only: wrap after open parenthesis if not in one line (#195)
  • Update development version after merging #186 (#194)
  • Adding required structs and methods to get a list of publishers or subscribers with their respective qos (#186)
  • Contributors: Alejandro Hernández Cordero, Dirk Thomas, Ingo Lütkebohle, Ivan Santiago Paunovic, Jaison Titus, Karsten Knese, Miaofei Mei, Michael Carroll, Mikael Arguedas, Shane Loretz, William Woodall, Stephen Brawner, Tomoya Fujita

0.8.1 (2019-10-23)

  • Use return_loaned_message_from (#192)
  • Add function to enable localhost communication only from env var (#190)
  • Zero copy api (#185)
  • Add call to bump dev version to the upcoming version 0.8.1 (#191)
  • Add pub/sub option structures to support rmw specific payload feature (#187)
  • Contributors: Brian Marchi, Dirk Thomas, Karsten Knese, William Woodall

0.8.0 (2019-09-24)

  • Added specific return type for non existent node (#182)
  • Added function for getting clients by node (#179)
  • Added get_actual_qos() feature to subscriptions (#177)
  • Added RMW_QOS_POLICY_LIVELINESS_UNKNOWN enum (#175)
  • Contributors: Jacob Perron, M. M, ivanpauno

0.7.1 (2019-05-08)

  • Implement QoS: liveliness, deadline, lifespan (#171)
  • Rmw preallocate (#160)
  • Add new QoS policy data types to rmw (#173)
  • Contributors: M. M, Michael Carroll, Ross Desmond

0.7.0 (2019-04-13)

  • Add function to get publisher actual qos settings (#169)
  • fix checking boolean variable which might contain a string (#165)
  • change parameter events to use KEEP_LAST (#162)
  • Fix typo error (#164)
  • pass context to wait set, and provide fini function for context (#163)
  • minor notes explaining rmw_qos_profile_t (#156)
  • Contributors: Dirk Thomas, Lalit Begani, Mike Lautman, William Woodall, ivanpauno

0.6.1 (2018-12-06)

  • Add node graph functions (#158)
  • refactor init to allow options to be passed and to not be global (#154)
  • Methods to retrieve matched counts on publisher and subscriber (#155)
  • use uint8_t instead of char for serialized message (#161)
  • Contributors: Karsten Knese, Michael Carroll, Ross Desmond, William Woodall

0.6.0 (2018-11-16)

  • use new error handling API (#153)
  • Add semicolons to RCLCPP and RCUTILS macros. (#150)
  • Include node namespaces in get_node_names() (#148)
  • add missing doc for parameter (#149)
  • rcutils_serialized_message -> rcutils_char_array (#146)
  • rmw serialized to rcutils serialized (#145)
  • rcutil -> rcutils (#147)
  • get serialization format (#143)
  • Contributors: Chris Lalancette, Karsten Knese, Michael Carroll, Mikael Arguedas, William Woodall

0.5.0 (2018-06-23)

  • use rcutils allocator in allocators.c to avoid direct use of malloc/free (#140)
  • check the return value of rcutils_snprintf (#138)
  • _raw function (#125)
  • Merge pull request #137 from ros2/misra_fixup
  • Change #if to #ifdef.
  • add function to parse key-value user_data (#132)
  • Add validation functions accepting string length (#135)
  • Clarify that NULL blocks forever in rmw_wait (#134)
  • Enable setting log levels in DDS implementation (#124)
  • Optimize namespace node and topic validation (#130)
  • Contributors: Dirk Thomas, Ethan Gao, Karsten Knese, Michael Carroll, Shane Loretz, Sriram Raghunathan, William Woodall

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged rmw at Robotics Stack Exchange

rmw package from rmw repo

rmw rmw_implementation_cmake

Package Summary

Tags No category tags.
Version 7.3.1
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ros2/rmw.git
VCS Type git
VCS Version jazzy
Last Updated 2024-04-24
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

Contains the ROS middleware API.

Additional Links

No additional links.

Maintainers

  • Brandon Ong
  • Ivan Paunovic
  • William Woodall

Authors

  • Dirk Thomas

RMW

The ROS 2 Middleware Interface provides an abstraction layer to different DDS implementations for communication with the ROS 2 Client Library. This package contains the rmw interface for DDS implementation and some general functionality useful for implementers.

For more information, see https://design.ros2.org/articles/ros_middleware_interface.html

Interface and Features

For specific information about the rmw interface and features, see its api docs.

Quality Declaration

This package claims to be in the Quality Level 1 category, see the Quality Declaration for more details.

CHANGELOG

Changelog for package rmw

7.3.1 (2024-04-24)

  • Removed warnings - strict-prototypes (#365) (#366)
  • Contributors: mergify[bot]

7.3.0 (2023-12-26)

  • Switch to target_link_libraries. (#361)
  • Remove unnecessary c++14 flag. (#360)
  • Contributors: Chris Lalancette

7.2.2 (2023-11-06)

  • definition of local means being in the same context. (#359)
  • Contributors: Tomoya Fujita

7.2.1 (2023-07-11)

  • typo fix. (#355)
  • Contributors: Tomoya Fujita

7.2.0 (2023-04-27)

7.1.0 (2023-04-12)

  • Dynamic Subscription (BONUS: Allocators): rmw (#353)
  • Runtime Interface Reflection: rmw (#340)
  • [rmw] Improve handling of dynamic discovery (#338)
  • rmw_send_reqponse returns RMW_RET_TIMEOUT. (#350)
  • Add a note about asynchronicity of discovery. (#352)
  • Add matched event support (#331)
  • Add type hash to rmw_topic_endpoint_info_t (rep2011) (#348)
  • Add in inconsistent topic defines and data structures. (#339)
  • Update documented expectations for GIDs (#335)
  • Contributors: Barry Xu, Chris Lalancette, Emerson Knapp, Geoffrey Biggs, Jacob Perron, Tomoya Fujita, William Woodall, methylDragon

7.0.1 (2023-02-24)

  • Fix rmw->rwm typo (#347)
  • Contributors: Emerson Knapp

7.0.0 (2023-02-13)

  • Add rmw count clients, services (#334)
  • make writer_guid uint8_t[] instead of int8_t for consistency with rmw_gid_t (#329)
  • Update rmw to C++17. (#346)
  • Reduce GID storage to 16 bytes. (#345)
  • Move the RMW_CHECK_TYPE_IDENTIFIERS_MATCH macro to a C header. (#343)
  • [rolling] Update maintainers - 2022-11-07 (#337)
  • Contributors: Audrow Nash, Brian, Chris Lalancette, Minju, Lee

6.4.0 (2022-11-02)

  • Remove unused test_loaned_message_sequence.cpp (#336)
  • callback can be NULL to clear in Listener APIs. (#332)
  • Add rmw_get_gid_for_client method (#327)
  • Contributors: Brian, Nikolai Morin, Tomoya Fujita

6.3.1 (2022-09-13)

6.3.0 (2022-05-03)

  • Add 'best available' QoS policies (#320) The best available policy should select the highest level of service for the QoS setting while matching with the majority of endpoints. For example, in the case of a DDS middleware subscription, this means:
    • Prefer reliable reliability if all existing publishers on the same topic are reliable, otherwise use best effort.
    • Prefer transient local durability if all existing publishers on the same topic are transient local, otherwise use volatile.
    • Prefer manual by topic liveliness if all existing publishers on the same topic are manual by topic, otherwise use automatic.
    • Use a deadline that is equal to the largest deadline of existing publishers on the same topic.
    • Use a liveliness lease duration that is equal to the largest lease duration of existing publishers on the same topic.
  • Contributors: Jacob Perron

6.2.0 (2022-04-29)

6.1.0 (2022-03-25)

  • Add content filtered topics support. (#302)
  • Add sequence numbers to rmw_message_info_t. (#318)
  • Add rmw_feature_supported(). (#318)
  • Contributors: Chen Lihui, Ivan Santiago Paunovic

6.0.0 (2022-03-01)

  • Add EventsExecutor (#286)
  • Document that rmw_wait() SHOULD use a monotonic clock (#316)
  • Install headers to include/${PROJECT_NAME} (#317)
  • Update rmw_server_is_available() API documentation. (#277)
  • Contributors: Ivan Santiago Paunovic, Michel Hidalgo, Shane Loretz, iRobot ROS

5.1.0 (2021-11-19)

  • Add client/service QoS getters. (#314)
  • Contributors: mauropasse

5.0.0 (2021-09-15)

  • Fix up documentation build for rmw when using rosdoc2 (#313)
  • Fix up errors in doxygen documentation (#311)
  • Fix copy-paste error in API doc for rmw_get_gid_for_publisher (#310)
  • Contributors: Chris Lalancette, Christophe Bedard, Michel Hidalgo

4.0.0 (2021-06-02)

  • Add rmw_publisher_wait_for_all_acked support. (#296)
  • Contributors: Barry Xu

3.3.1 (2021-04-26)

  • Document which QoS policies are correctly read by rmw_get_publishers/subscriptions_info_by_topic (#308)
  • Contributors: Ivan Santiago Paunovic

3.3.0 (2021-04-06)

  • Unique network flows (#294)
  • updating quality declaration links (re: ros2/docs.ros2.org#52) (#307)
  • Contributors: Ananya Muddukrishna, shonigmann

3.2.0 (2021-03-11)

  • Introduce RMW_DURATION_INFINITE constant and API return value promise (#301)
  • Contributors: Emerson Knapp

3.1.0 (2021-02-25)

  • Add declaration for function to check QoS profile compatibility (#299)
  • Update the rmw_take_sequence documentation. (#297)
  • Contributors: Chris Lalancette, Jacob Perron

3.0.0 (2021-01-25)

2.2.1 (2020-12-10)

  • Update rmw QD to QL 1 (#289)
  • Contributors: Stephen Brawner

2.2.0 (2020-11-04)

  • Extend rmw_qos_policy_kind_t, add functions to convert it to/from a string (#285)
  • Add functions to convert between qos policy values and strings (#284)
  • Update maintainers (#282)
  • Update service request/response API documentation (#279)
  • Update rmw_get_serialized_message_size docblock (#281)
  • Update rmw_service_server_is_available doc (#280)
  • Update wait and wait sets' API documentation (#275)
  • Update graph API documentation (#272)
  • Update service server/client creation/destruction API documentation. (#276)
  • Update rmw___allocation return values (#278)
  • Update gid API documentation (#274)
  • Do not link against pthread on Android (#267)
  • Update taking API documentation (#271)
  • Update publishing API documentation (#270)
  • Add fault injection macros for use in other packages (#254)
  • Add bad_alloc return to topic_endpoint_info functions (#269)
  • Update publisher/subscription matched count API documentation (#262)
  • Update publisher/subscription QoS query API documentation (#263)
  • Extend rmw_serialized_message_t tests (#261)
  • Update serialization/deserialization API documentation (#258)
  • Update subscription API documentation (#256)
  • Update publisher creation/destruction API documentation (#252)
  • Contributors: Alejandro Hernández Cordero, Ivan Santiago Paunovic, Jacob Perron, Michel Hidalgo, brawner

2.1.0 (2020-07-22)

  • Add actual domain id to rmw_context_t (#251)
  • Update node creation/destruction API documentation. (#249)
  • Correct parameter names to match documentation (#250)
  • Contributors: Geoffrey Biggs, Ivan Santiago Paunovic, Michel Hidalgo

2.0.0 (2020-07-08)

  • Remove domain_id and localhost_only from node API (#248)
  • Require enclave upon rmw_init() call. (#247)
  • Update init/shutdown API documentation. (#243)
  • Update init options API documentation. (#244)
  • Contributors: Ivan Santiago Paunovic, Michel Hidalgo

1.1.0 (2020-06-18)

  • Add message lost subscription event (#232)
  • Move statuses definitions to rmw/events_statuses/ (#232)
  • Increase rmw testing coverage above 95% (#238)
  • Handle zero-length names_and_types properly (#239)
  • Add missing RMW_PUBLIC to security_options_set_root_path (#236)
  • Update Quality Declaration for QL 2 (#233)
  • Add Security Vulnerability Policy pointing to REP-2006. (#230)
  • Contributors: Chris Lalancette, Ivan Santiago Paunovic, Karsten Knese, Scott K Logan, Stephen Brawner, brawner

1.0.1 (2020-05-19)

  • Fix cppcheck error (#229)
  • Update Quality Declaration to reflect 1.0 (#228)
  • Contributors: Michel Hidalgo, Stephen Brawner

1.0.0 (2020-05-12)

  • Remove MANUAL_BY_NODE liveliness API (#227)
  • Improved Quality declarations (#225)
  • Quality declarations for rmw and rmw_implementation_cmake (#205)
  • Add tests for untested public functionality (#203)
  • Contributors: Alejandro Hernández Cordero, Ivan Santiago Paunovic, Stephen Brawner

0.9.0 (2020-04-24)

  • Delete superfluous empty line (#222)
  • Fix linter warning (#224)
  • Rename rosidl_message_bounds_t (#223)
  • Adding doxygen documentation and READMEs to packages (#204)
  • Service timestamps (#217)
  • Add API for taking a sequence of messages (#212)
  • Add timestamps to message info (#214)
  • Add build dep on rosidl_runtime_c to work with CMake < 3.13 (#221)
  • Fix missing target dependency on rosidl_runtime_c (#220)
  • Export targets in addition to include directories / libraries (#218)
  • Document destroy_node may assume correct destruction order (#216)
  • security-context -> enclave (#211)
  • Rename rosidl_generator_c namespace to rosidl_runtime_c (#213)
  • Added the right dependency rosidl runtime c instead of rosidl generator c (#198)
  • Use one participant per context API changes (#189)
  • Add comment about RMW_RET_UNSUPPORTED for loaned_message. (#208)
  • Support for ON_REQUESTED_INCOMPATIBLE_QOS and ON_OFFERED_INCOMPATIBLE_QOS events (#193)
  • Move rmw_*_event_init() functions to rmw_implementation (#202)
  • Rename rmw_topic_endpoint_info_array [count]{.title-ref} to [size]{.title-ref}, and initialize it (#196)
  • Code style only: wrap after open parenthesis if not in one line (#195)
  • Update development version after merging #186 (#194)
  • Adding required structs and methods to get a list of publishers or subscribers with their respective qos (#186)
  • Contributors: Alejandro Hernández Cordero, Dirk Thomas, Ingo Lütkebohle, Ivan Santiago Paunovic, Jaison Titus, Karsten Knese, Miaofei Mei, Michael Carroll, Mikael Arguedas, Shane Loretz, William Woodall, Stephen Brawner, Tomoya Fujita

0.8.1 (2019-10-23)

  • Use return_loaned_message_from (#192)
  • Add function to enable localhost communication only from env var (#190)
  • Zero copy api (#185)
  • Add call to bump dev version to the upcoming version 0.8.1 (#191)
  • Add pub/sub option structures to support rmw specific payload feature (#187)
  • Contributors: Brian Marchi, Dirk Thomas, Karsten Knese, William Woodall

0.8.0 (2019-09-24)

  • Added specific return type for non existent node (#182)
  • Added function for getting clients by node (#179)
  • Added get_actual_qos() feature to subscriptions (#177)
  • Added RMW_QOS_POLICY_LIVELINESS_UNKNOWN enum (#175)
  • Contributors: Jacob Perron, M. M, ivanpauno

0.7.1 (2019-05-08)

  • Implement QoS: liveliness, deadline, lifespan (#171)
  • Rmw preallocate (#160)
  • Add new QoS policy data types to rmw (#173)
  • Contributors: M. M, Michael Carroll, Ross Desmond

0.7.0 (2019-04-13)

  • Add function to get publisher actual qos settings (#169)
  • fix checking boolean variable which might contain a string (#165)
  • change parameter events to use KEEP_LAST (#162)
  • Fix typo error (#164)
  • pass context to wait set, and provide fini function for context (#163)
  • minor notes explaining rmw_qos_profile_t (#156)
  • Contributors: Dirk Thomas, Lalit Begani, Mike Lautman, William Woodall, ivanpauno

0.6.1 (2018-12-06)

  • Add node graph functions (#158)
  • refactor init to allow options to be passed and to not be global (#154)
  • Methods to retrieve matched counts on publisher and subscriber (#155)
  • use uint8_t instead of char for serialized message (#161)
  • Contributors: Karsten Knese, Michael Carroll, Ross Desmond, William Woodall

0.6.0 (2018-11-16)

  • use new error handling API (#153)
  • Add semicolons to RCLCPP and RCUTILS macros. (#150)
  • Include node namespaces in get_node_names() (#148)
  • add missing doc for parameter (#149)
  • rcutils_serialized_message -> rcutils_char_array (#146)
  • rmw serialized to rcutils serialized (#145)
  • rcutil -> rcutils (#147)
  • get serialization format (#143)
  • Contributors: Chris Lalancette, Karsten Knese, Michael Carroll, Mikael Arguedas, William Woodall

0.5.0 (2018-06-23)

  • use rcutils allocator in allocators.c to avoid direct use of malloc/free (#140)
  • check the return value of rcutils_snprintf (#138)
  • _raw function (#125)
  • Merge pull request #137 from ros2/misra_fixup
  • Change #if to #ifdef.
  • add function to parse key-value user_data (#132)
  • Add validation functions accepting string length (#135)
  • Clarify that NULL blocks forever in rmw_wait (#134)
  • Enable setting log levels in DDS implementation (#124)
  • Optimize namespace node and topic validation (#130)
  • Contributors: Dirk Thomas, Ethan Gao, Karsten Knese, Michael Carroll, Shane Loretz, Sriram Raghunathan, William Woodall

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged rmw at Robotics Stack Exchange

rmw package from rmw repo

rmw rmw_implementation_cmake

Package Summary

Tags No category tags.
Version 7.5.0
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ros2/rmw.git
VCS Type git
VCS Version rolling
Last Updated 2024-10-03
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

Contains the ROS middleware API.

Additional Links

No additional links.

Maintainers

  • Brandon Ong
  • Ivan Paunovic
  • William Woodall

Authors

  • Dirk Thomas

RMW

The ROS 2 Middleware Interface provides an abstraction layer to different DDS implementations for communication with the ROS 2 Client Library. This package contains the rmw interface for DDS implementation and some general functionality useful for implementers.

For more information, see https://design.ros2.org/articles/ros_middleware_interface.html

Interface and Features

For specific information about the rmw interface and features, see its api docs.

Quality Declaration

This package claims to be in the Quality Level 1 category, see the Quality Declaration for more details.

CHANGELOG

Changelog for package rmw

7.5.0 (2024-10-03)

  • Initialize the NULL strucutre with static value. (#378)
  • Contributors: Tomoya Fujita

7.4.3 (2024-07-29)

  • remove rmw_localhost_only_t. (#376)
  • Fix typo with RMW_DURATION_UNSPECIFIED (#375)
  • Fix typo in rmw_validate_*_with_size() doc (#374)
  • Contributors: Christophe Bedard, Tomoya Fujita

7.4.2 (2024-07-09)

  • removed deprecated rmw_node_assert_liveliness() (#373)
  • Contributors: Alejandro Hernández Cordero

7.4.1 (2024-06-17)

  • add mingw support (#370)
  • Minor typo fix (#368)
  • Contributors: Felix F Xu, G.A. vd. Hoorn

7.4.0 (2024-04-26)

  • Removed warnings - strict-prototypes (#365)
  • Contributors: Alejandro Hernández Cordero

7.3.0 (2023-12-26)

  • Switch to target_link_libraries. (#361)
  • Remove unnecessary c++14 flag. (#360)
  • Contributors: Chris Lalancette

7.2.2 (2023-11-06)

  • definition of local means being in the same context. (#359)
  • Contributors: Tomoya Fujita

7.2.1 (2023-07-11)

  • typo fix. (#355)
  • Contributors: Tomoya Fujita

7.2.0 (2023-04-27)

7.1.0 (2023-04-12)

  • Dynamic Subscription (BONUS: Allocators): rmw (#353)
  • Runtime Interface Reflection: rmw (#340)
  • [rmw] Improve handling of dynamic discovery (#338)
  • rmw_send_reqponse returns RMW_RET_TIMEOUT. (#350)
  • Add a note about asynchronicity of discovery. (#352)
  • Add matched event support (#331)
  • Add type hash to rmw_topic_endpoint_info_t (rep2011) (#348)
  • Add in inconsistent topic defines and data structures. (#339)
  • Update documented expectations for GIDs (#335)
  • Contributors: Barry Xu, Chris Lalancette, Emerson Knapp, Geoffrey Biggs, Jacob Perron, Tomoya Fujita, William Woodall, methylDragon

7.0.1 (2023-02-24)

  • Fix rmw->rwm typo (#347)
  • Contributors: Emerson Knapp

7.0.0 (2023-02-13)

  • Add rmw count clients, services (#334)
  • make writer_guid uint8_t[] instead of int8_t for consistency with rmw_gid_t (#329)
  • Update rmw to C++17. (#346)
  • Reduce GID storage to 16 bytes. (#345)
  • Move the RMW_CHECK_TYPE_IDENTIFIERS_MATCH macro to a C header. (#343)
  • [rolling] Update maintainers - 2022-11-07 (#337)
  • Contributors: Audrow Nash, Brian, Chris Lalancette, Minju, Lee

6.4.0 (2022-11-02)

  • Remove unused test_loaned_message_sequence.cpp (#336)
  • callback can be NULL to clear in Listener APIs. (#332)
  • Add rmw_get_gid_for_client method (#327)
  • Contributors: Brian, Nikolai Morin, Tomoya Fujita

6.3.1 (2022-09-13)

6.3.0 (2022-05-03)

  • Add 'best available' QoS policies (#320) The best available policy should select the highest level of service for the QoS setting while matching with the majority of endpoints. For example, in the case of a DDS middleware subscription, this means:
    • Prefer reliable reliability if all existing publishers on the same topic are reliable, otherwise use best effort.
    • Prefer transient local durability if all existing publishers on the same topic are transient local, otherwise use volatile.
    • Prefer manual by topic liveliness if all existing publishers on the same topic are manual by topic, otherwise use automatic.
    • Use a deadline that is equal to the largest deadline of existing publishers on the same topic.
    • Use a liveliness lease duration that is equal to the largest lease duration of existing publishers on the same topic.
  • Contributors: Jacob Perron

6.2.0 (2022-04-29)

6.1.0 (2022-03-25)

  • Add content filtered topics support. (#302)
  • Add sequence numbers to rmw_message_info_t. (#318)
  • Add rmw_feature_supported(). (#318)
  • Contributors: Chen Lihui, Ivan Santiago Paunovic

6.0.0 (2022-03-01)

  • Add EventsExecutor (#286)
  • Document that rmw_wait() SHOULD use a monotonic clock (#316)
  • Install headers to include/${PROJECT_NAME} (#317)
  • Update rmw_server_is_available() API documentation. (#277)
  • Contributors: Ivan Santiago Paunovic, Michel Hidalgo, Shane Loretz, iRobot ROS

5.1.0 (2021-11-19)

  • Add client/service QoS getters. (#314)
  • Contributors: mauropasse

5.0.0 (2021-09-15)

  • Fix up documentation build for rmw when using rosdoc2 (#313)
  • Fix up errors in doxygen documentation (#311)
  • Fix copy-paste error in API doc for rmw_get_gid_for_publisher (#310)
  • Contributors: Chris Lalancette, Christophe Bedard, Michel Hidalgo

4.0.0 (2021-06-02)

  • Add rmw_publisher_wait_for_all_acked support. (#296)
  • Contributors: Barry Xu

3.3.1 (2021-04-26)

  • Document which QoS policies are correctly read by rmw_get_publishers/subscriptions_info_by_topic (#308)
  • Contributors: Ivan Santiago Paunovic

3.3.0 (2021-04-06)

  • Unique network flows (#294)
  • updating quality declaration links (re: ros2/docs.ros2.org#52) (#307)
  • Contributors: Ananya Muddukrishna, shonigmann

3.2.0 (2021-03-11)

  • Introduce RMW_DURATION_INFINITE constant and API return value promise (#301)
  • Contributors: Emerson Knapp

3.1.0 (2021-02-25)

  • Add declaration for function to check QoS profile compatibility (#299)
  • Update the rmw_take_sequence documentation. (#297)
  • Contributors: Chris Lalancette, Jacob Perron

3.0.0 (2021-01-25)

2.2.1 (2020-12-10)

  • Update rmw QD to QL 1 (#289)
  • Contributors: Stephen Brawner

2.2.0 (2020-11-04)

  • Extend rmw_qos_policy_kind_t, add functions to convert it to/from a string (#285)
  • Add functions to convert between qos policy values and strings (#284)
  • Update maintainers (#282)
  • Update service request/response API documentation (#279)
  • Update rmw_get_serialized_message_size docblock (#281)
  • Update rmw_service_server_is_available doc (#280)
  • Update wait and wait sets' API documentation (#275)
  • Update graph API documentation (#272)
  • Update service server/client creation/destruction API documentation. (#276)
  • Update rmw___allocation return values (#278)
  • Update gid API documentation (#274)
  • Do not link against pthread on Android (#267)
  • Update taking API documentation (#271)
  • Update publishing API documentation (#270)
  • Add fault injection macros for use in other packages (#254)
  • Add bad_alloc return to topic_endpoint_info functions (#269)
  • Update publisher/subscription matched count API documentation (#262)
  • Update publisher/subscription QoS query API documentation (#263)
  • Extend rmw_serialized_message_t tests (#261)
  • Update serialization/deserialization API documentation (#258)
  • Update subscription API documentation (#256)
  • Update publisher creation/destruction API documentation (#252)
  • Contributors: Alejandro Hernández Cordero, Ivan Santiago Paunovic, Jacob Perron, Michel Hidalgo, brawner

2.1.0 (2020-07-22)

  • Add actual domain id to rmw_context_t (#251)
  • Update node creation/destruction API documentation. (#249)
  • Correct parameter names to match documentation (#250)
  • Contributors: Geoffrey Biggs, Ivan Santiago Paunovic, Michel Hidalgo

2.0.0 (2020-07-08)

  • Remove domain_id and localhost_only from node API (#248)
  • Require enclave upon rmw_init() call. (#247)
  • Update init/shutdown API documentation. (#243)
  • Update init options API documentation. (#244)
  • Contributors: Ivan Santiago Paunovic, Michel Hidalgo

1.1.0 (2020-06-18)

  • Add message lost subscription event (#232)
  • Move statuses definitions to rmw/events_statuses/ (#232)
  • Increase rmw testing coverage above 95% (#238)
  • Handle zero-length names_and_types properly (#239)
  • Add missing RMW_PUBLIC to security_options_set_root_path (#236)
  • Update Quality Declaration for QL 2 (#233)
  • Add Security Vulnerability Policy pointing to REP-2006. (#230)
  • Contributors: Chris Lalancette, Ivan Santiago Paunovic, Karsten Knese, Scott K Logan, Stephen Brawner, brawner

1.0.1 (2020-05-19)

  • Fix cppcheck error (#229)
  • Update Quality Declaration to reflect 1.0 (#228)
  • Contributors: Michel Hidalgo, Stephen Brawner

1.0.0 (2020-05-12)

  • Remove MANUAL_BY_NODE liveliness API (#227)
  • Improved Quality declarations (#225)
  • Quality declarations for rmw and rmw_implementation_cmake (#205)
  • Add tests for untested public functionality (#203)
  • Contributors: Alejandro Hernández Cordero, Ivan Santiago Paunovic, Stephen Brawner

0.9.0 (2020-04-24)

  • Delete superfluous empty line (#222)
  • Fix linter warning (#224)
  • Rename rosidl_message_bounds_t (#223)
  • Adding doxygen documentation and READMEs to packages (#204)
  • Service timestamps (#217)
  • Add API for taking a sequence of messages (#212)
  • Add timestamps to message info (#214)
  • Add build dep on rosidl_runtime_c to work with CMake < 3.13 (#221)
  • Fix missing target dependency on rosidl_runtime_c (#220)
  • Export targets in addition to include directories / libraries (#218)
  • Document destroy_node may assume correct destruction order (#216)
  • security-context -> enclave (#211)
  • Rename rosidl_generator_c namespace to rosidl_runtime_c (#213)
  • Added the right dependency rosidl runtime c instead of rosidl generator c (#198)
  • Use one participant per context API changes (#189)
  • Add comment about RMW_RET_UNSUPPORTED for loaned_message. (#208)
  • Support for ON_REQUESTED_INCOMPATIBLE_QOS and ON_OFFERED_INCOMPATIBLE_QOS events (#193)
  • Move rmw_*_event_init() functions to rmw_implementation (#202)
  • Rename rmw_topic_endpoint_info_array [count]{.title-ref} to [size]{.title-ref}, and initialize it (#196)
  • Code style only: wrap after open parenthesis if not in one line (#195)
  • Update development version after merging #186 (#194)
  • Adding required structs and methods to get a list of publishers or subscribers with their respective qos (#186)
  • Contributors: Alejandro Hernández Cordero, Dirk Thomas, Ingo Lütkebohle, Ivan Santiago Paunovic, Jaison Titus, Karsten Knese, Miaofei Mei, Michael Carroll, Mikael Arguedas, Shane Loretz, William Woodall, Stephen Brawner, Tomoya Fujita

0.8.1 (2019-10-23)

  • Use return_loaned_message_from (#192)
  • Add function to enable localhost communication only from env var (#190)
  • Zero copy api (#185)
  • Add call to bump dev version to the upcoming version 0.8.1 (#191)
  • Add pub/sub option structures to support rmw specific payload feature (#187)
  • Contributors: Brian Marchi, Dirk Thomas, Karsten Knese, William Woodall

0.8.0 (2019-09-24)

  • Added specific return type for non existent node (#182)
  • Added function for getting clients by node (#179)
  • Added get_actual_qos() feature to subscriptions (#177)
  • Added RMW_QOS_POLICY_LIVELINESS_UNKNOWN enum (#175)
  • Contributors: Jacob Perron, M. M, ivanpauno

0.7.1 (2019-05-08)

  • Implement QoS: liveliness, deadline, lifespan (#171)
  • Rmw preallocate (#160)
  • Add new QoS policy data types to rmw (#173)
  • Contributors: M. M, Michael Carroll, Ross Desmond

0.7.0 (2019-04-13)

  • Add function to get publisher actual qos settings (#169)
  • fix checking boolean variable which might contain a string (#165)
  • change parameter events to use KEEP_LAST (#162)
  • Fix typo error (#164)
  • pass context to wait set, and provide fini function for context (#163)
  • minor notes explaining rmw_qos_profile_t (#156)
  • Contributors: Dirk Thomas, Lalit Begani, Mike Lautman, William Woodall, ivanpauno

0.6.1 (2018-12-06)

  • Add node graph functions (#158)
  • refactor init to allow options to be passed and to not be global (#154)
  • Methods to retrieve matched counts on publisher and subscriber (#155)
  • use uint8_t instead of char for serialized message (#161)
  • Contributors: Karsten Knese, Michael Carroll, Ross Desmond, William Woodall

0.6.0 (2018-11-16)

  • use new error handling API (#153)
  • Add semicolons to RCLCPP and RCUTILS macros. (#150)
  • Include node namespaces in get_node_names() (#148)
  • add missing doc for parameter (#149)
  • rcutils_serialized_message -> rcutils_char_array (#146)
  • rmw serialized to rcutils serialized (#145)
  • rcutil -> rcutils (#147)
  • get serialization format (#143)
  • Contributors: Chris Lalancette, Karsten Knese, Michael Carroll, Mikael Arguedas, William Woodall

0.5.0 (2018-06-23)

  • use rcutils allocator in allocators.c to avoid direct use of malloc/free (#140)
  • check the return value of rcutils_snprintf (#138)
  • _raw function (#125)
  • Merge pull request #137 from ros2/misra_fixup
  • Change #if to #ifdef.
  • add function to parse key-value user_data (#132)
  • Add validation functions accepting string length (#135)
  • Clarify that NULL blocks forever in rmw_wait (#134)
  • Enable setting log levels in DDS implementation (#124)
  • Optimize namespace node and topic validation (#130)
  • Contributors: Dirk Thomas, Ethan Gao, Karsten Knese, Michael Carroll, Shane Loretz, Sriram Raghunathan, William Woodall

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged rmw at Robotics Stack Exchange

rmw package from rmw repo

rmw rmw_implementation_cmake

Package Summary

Tags No category tags.
Version 3.3.1
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ros2/rmw.git
VCS Type git
VCS Version galactic
Last Updated 2021-04-26
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

Contains the ROS middleware API.

Additional Links

No additional links.

Maintainers

  • Ivan Paunovic
  • William Woodall

Authors

  • Dirk Thomas

RMW

The ROS 2 Middleware Interface provides an abstraction layer to different DDS implementations for communication with the ROS 2 Client Library. This package contains the rmw interface for DDS implementation and some general functionality useful for implementers.

For more information, see https://design.ros2.org/articles/ros_middleware_interface.html

Interface and Features

For specific information about the rmw interface and features, see its api docs.

Quality Declaration

This package claims to be in the Quality Level 1 category, see the Quality Declaration for more details.

CHANGELOG

Changelog for package rmw

3.3.1 (2021-04-26)

  • Document which QoS policies are correctly read by rmw_get_publishers/subscriptions_info_by_topic (#308)
  • Contributors: Ivan Santiago Paunovic

3.3.0 (2021-04-06)

  • Unique network flows (#294)
  • updating quality declaration links (re: ros2/docs.ros2.org#52) (#307)
  • Contributors: Ananya Muddukrishna, shonigmann

3.2.0 (2021-03-11)

  • Introduce RMW_DURATION_INFINITE constant and API return value promise (#301)
  • Contributors: Emerson Knapp

3.1.0 (2021-02-25)

  • Add declaration for function to check QoS profile compatibility (#299)
  • Update the rmw_take_sequence documentation. (#297)
  • Contributors: Chris Lalancette, Jacob Perron

3.0.0 (2021-01-25)

2.2.1 (2020-12-10)

  • Update rmw QD to QL 1 (#289)
  • Contributors: Stephen Brawner

2.2.0 (2020-11-04)

  • Extend rmw_qos_policy_kind_t, add functions to convert it to/from a string (#285)
  • Add functions to convert between qos policy values and strings (#284)
  • Update maintainers (#282)
  • Update service request/response API documentation (#279)
  • Update rmw_get_serialized_message_size docblock (#281)
  • Update rmw_service_server_is_available doc (#280)
  • Update wait and wait sets' API documentation (#275)
  • Update graph API documentation (#272)
  • Update service server/client creation/destruction API documentation. (#276)
  • Update rmw___allocation return values (#278)
  • Update gid API documentation (#274)
  • Do not link against pthread on Android (#267)
  • Update taking API documentation (#271)
  • Update publishing API documentation (#270)
  • Add fault injection macros for use in other packages (#254)
  • Add bad_alloc return to topic_endpoint_info functions (#269)
  • Update publisher/subscription matched count API documentation (#262)
  • Update publisher/subscription QoS query API documentation (#263)
  • Extend rmw_serialized_message_t tests (#261)
  • Update serialization/deserialization API documentation (#258)
  • Update subscription API documentation (#256)
  • Update publisher creation/destruction API documentation (#252)
  • Contributors: Alejandro Hernández Cordero, Ivan Santiago Paunovic, Jacob Perron, Michel Hidalgo, brawner

2.1.0 (2020-07-22)

  • Add actual domain id to rmw_context_t (#251)
  • Update node creation/destruction API documentation. (#249)
  • Correct parameter names to match documentation (#250)
  • Contributors: Geoffrey Biggs, Ivan Santiago Paunovic, Michel Hidalgo

2.0.0 (2020-07-08)

  • Remove domain_id and localhost_only from node API (#248)
  • Require enclave upon rmw_init() call. (#247)
  • Update init/shutdown API documentation. (#243)
  • Update init options API documentation. (#244)
  • Contributors: Ivan Santiago Paunovic, Michel Hidalgo

1.1.0 (2020-06-18)

  • Add message lost subscription event (#232)
  • Move statuses definitions to rmw/events_statuses/*.h (#232)
  • Increase rmw testing coverage above 95% (#238)
  • Handle zero-length names_and_types properly (#239)
  • Add missing RMW_PUBLIC to security_options_set_root_path (#236)
  • Update Quality Declaration for QL 2 (#233)
  • Add Security Vulnerability Policy pointing to REP-2006. (#230)
  • Contributors: Chris Lalancette, Ivan Santiago Paunovic, Karsten Knese, Scott K Logan, Stephen Brawner, brawner

1.0.1 (2020-05-19)

  • Fix cppcheck error (#229)
  • Update Quality Declaration to reflect 1.0 (#228)
  • Contributors: Michel Hidalgo, Stephen Brawner

1.0.0 (2020-05-12)

  • Remove MANUAL_BY_NODE liveliness API (#227)
  • Improved Quality declarations (#225)
  • Quality declarations for rmw and rmw_implementation_cmake (#205)
  • Add tests for untested public functionality (#203)
  • Contributors: Alejandro Hernández Cordero, Ivan Santiago Paunovic, Stephen Brawner

0.9.0 (2020-04-24)

  • Delete superfluous empty line (#222)
  • Fix linter warning (#224)
  • Rename rosidl_message_bounds_t (#223)
  • Adding doxygen documentation and READMEs to packages (#204)
  • Service timestamps (#217)
  • Add API for taking a sequence of messages (#212)
  • Add timestamps to message info (#214)
  • Add build dep on rosidl_runtime_c to work with CMake < 3.13 (#221)
  • Fix missing target dependency on rosidl_runtime_c (#220)
  • Export targets in addition to include directories / libraries (#218)
  • Document destroy_node may assume correct destruction order (#216)
  • security-context -> enclave (#211)
  • Rename rosidl_generator_c namespace to rosidl_runtime_c (#213)
  • Added the right dependency rosidl runtime c instead of rosidl generator c (#198)
  • Use one participant per context API changes (#189)
  • Add comment about RMW_RET_UNSUPPORTED for loaned_message. (#208)
  • Support for ON_REQUESTED_INCOMPATIBLE_QOS and ON_OFFERED_INCOMPATIBLE_QOS events (#193)
  • Move rmw_*_event_init() functions to rmw_implementation (#202)
  • Rename rmw_topic_endpoint_info_array [count]{.title-ref} to [size]{.title-ref}, and initialize it (#196)
  • Code style only: wrap after open parenthesis if not in one line (#195)
  • Update development version after merging #186 (#194)
  • Adding required structs and methods to get a list of publishers or subscribers with their respective qos (#186)
  • Contributors: Alejandro Hernández Cordero, Dirk Thomas, Ingo Lütkebohle, Ivan Santiago Paunovic, Jaison Titus, Karsten Knese, Miaofei Mei, Michael Carroll, Mikael Arguedas, Shane Loretz, William Woodall, Stephen Brawner, Tomoya Fujita

0.8.1 (2019-10-23)

  • Use return_loaned_message_from (#192)
  • Add function to enable localhost communication only from env var (#190)
  • Zero copy api (#185)
  • Add call to bump dev version to the upcoming version 0.8.1 (#191)
  • Add pub/sub option structures to support rmw specific payload feature (#187)
  • Contributors: Brian Marchi, Dirk Thomas, Karsten Knese, William Woodall

0.8.0 (2019-09-24)

  • Added specific return type for non existent node (#182)
  • Added function for getting clients by node (#179)
  • Added get_actual_qos() feature to subscriptions (#177)
  • Added RMW_QOS_POLICY_LIVELINESS_UNKNOWN enum (#175)
  • Contributors: Jacob Perron, M. M, ivanpauno

0.7.1 (2019-05-08)

  • Implement QoS: liveliness, deadline, lifespan (#171)
  • Rmw preallocate (#160)
  • Add new QoS policy data types to rmw (#173)
  • Contributors: M. M, Michael Carroll, Ross Desmond

0.7.0 (2019-04-13)

  • Add function to get publisher actual qos settings (#169)
  • fix checking boolean variable which might contain a string (#165)
  • change parameter events to use KEEP_LAST (#162)
  • Fix typo error (#164)
  • pass context to wait set, and provide fini function for context (#163)
  • minor notes explaining rmw_qos_profile_t (#156)
  • Contributors: Dirk Thomas, Lalit Begani, Mike Lautman, William Woodall, ivanpauno

0.6.1 (2018-12-06)

  • Add node graph functions (#158)
  • refactor init to allow options to be passed and to not be global (#154)
  • Methods to retrieve matched counts on publisher and subscriber (#155)
  • use uint8_t instead of char for serialized message (#161)
  • Contributors: Karsten Knese, Michael Carroll, Ross Desmond, William Woodall

0.6.0 (2018-11-16)

  • use new error handling API (#153)
  • Add semicolons to RCLCPP and RCUTILS macros. (#150)
  • Include node namespaces in get_node_names() (#148)
  • add missing doc for parameter (#149)
  • rcutils_serialized_message -> rcutils_char_array (#146)
  • rmw serialized to rcutils serialized (#145)
  • rcutil -> rcutils (#147)
  • get serialization format (#143)
  • Contributors: Chris Lalancette, Karsten Knese, Michael Carroll, Mikael Arguedas, William Woodall

0.5.0 (2018-06-23)

  • use rcutils allocator in allocators.c to avoid direct use of malloc/free (#140)
  • check the return value of rcutils_snprintf (#138)
  • _raw function (#125)
  • Merge pull request #137 from ros2/misra_fixup
  • Change #if to #ifdef.
  • add function to parse key-value user_data (#132)
  • Add validation functions accepting string length (#135)
  • Clarify that NULL blocks forever in rmw_wait (#134)
  • Enable setting log levels in DDS implementation (#124)
  • Optimize namespace node and topic validation (#130)
  • Contributors: Dirk Thomas, Ethan Gao, Karsten Knese, Michael Carroll, Shane Loretz, Sriram Raghunathan, William Woodall

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged rmw at Robotics Stack Exchange