Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make service/client construction/destruction implementation compliant #445

Merged
merged 5 commits into from
Sep 24, 2020

Conversation

hidmic
Copy link
Contributor

@hidmic hidmic commented Sep 23, 2020

Connected to ros2/rmw#276. This pull request simply updates return codes for rmw_fastrtps_dynamic_cpp, but refactors rmw_fastrtps_cpp (i.e. new expressions cannot be allowed to throw).

Signed-off-by: Michel Hidalgo <michel@ekumenlabs.com>
…on API return codes.

Signed-off-by: Michel Hidalgo <michel@ekumenlabs.com>
…lementation for compliance.

Signed-off-by: Michel Hidalgo <michel@ekumenlabs.com>
Signed-off-by: Michel Hidalgo <michel@ekumenlabs.com>
Signed-off-by: Michel Hidalgo <michel@ekumenlabs.com>
@hidmic
Copy link
Contributor Author

hidmic commented Sep 23, 2020

CI up to test_rmw_implementation and rcl:

  • Linux Build Status
  • Linux-aarch64 Build Status
  • macOS Build Status
  • Windows Build Status

Comment on lines 130 to +133
participant, request_type_name.c_str(),
reinterpret_cast<TopicDataType **>(&info->request_type_support_)))
{
info->request_type_support_ = new RequestTypeSupport_cpp(service_members);
info->request_type_support_ = new (std::nothrow) RequestTypeSupport_cpp(service_members);
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Unrelated, but there's a TOCTTOW race here (getRegisteredType/_register_type race).
I fixed something similar in rmw_connext a bit ago: ros2/rmw_connext#442.
We should open an issue about this one too.

Note: maybe registering the same type twice isn't an issue in rmw_fastrtps, but I bet that's not the case.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ha, this is interesting. You're spot on about the race, but alas these functions are not expected to be thread-safe to begin with (see ros2/rmw#276 (comment)).

I see much discussion incoming. I'll add it to the backlog.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ha, this is interesting. You're spot on about the race, but alas these functions are not expected to be thread-safe to begin with (see ros2/rmw#276 (comment)).

So, the node-object doesn't have to be thread safe, we're mutexing all the accesses to rcl_node_t in rclcpp/rclpy.
The problem is that the function isn't concurrent at all (the domain participant factory is a singleton), and when you compose different nodes in the same process this function calls can randomly break.

I never have that problem with fastrtps, but that was a problem in connext. Of course, it was almost impossible to reproduce.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So, the node-object doesn't have to be thread safe, we're mutexing all the accesses to rcl_node_t in rclcpp/rclpy.

I'm surprised we're actually not doing that (in rclcpp at least)

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The problem is that the function isn't concurrent at all (the domain participant factory is a singleton), and when you compose different nodes in the same process this function calls can randomly break.

We actually would need one mutex per context to avoid this race https://github.com/eProsima/Fast-DDS/blob/724fa5741d569eff6d5633b6eb587238df97604d/src/cpp/fastrtps_deprecated/Domain.cpp#L309-L316.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The problem is that the function isn't concurrent at all (the domain participant factory is a singleton), and when you compose different nodes in the same process this function calls can randomly break.

Hmm I see. And I agree, non-reentrant functions are a problem. I'll open an issue.

delete info->listener_;
}
});
info->listener_ = new (std::nothrow) ClientListener(info);
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should really update the info class to store std::unique_ptr instead of raw pointers.
That's cleaner than the scope_exit trick and it avoids duplicated code with the destruction function.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Agreed. We still have to deal with type erasure to some extent, but it'd make it a lot easier.

I won't pursue that change here though. We can open a separate issue.

@@ -51,24 +54,30 @@ rmw_create_client(
const rosidl_service_type_support_t * type_supports,
const char * service_name, const rmw_qos_profile_t * qos_policies)
{
if (!node) {
RMW_SET_ERROR_MSG("node handle is null");
RMW_CHECK_ARGUMENT_FOR_NULL(node, nullptr);
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why all the error handling changes were applied to rmw_fastrtps_cpp function and not here?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Lack of time. For basic compliance with updated rmw API specs, changing return codes is enough. That's pretty much what happened to rmw_fastrtps_dynamic_cpp, and in ros2/rmw_cyclonedds#247 and ros2/rmw_connext#464. rmw_fastrtps_cpp got a bonus cleanup solely because it's the default implementation (and thus the one I care the most right now).

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would like to keep rmw_fastrtps_cpp and rmw_fastrtps_dynamic_cpp close, but ok

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah, I'm not super happy about it either, but I can't afford changing it right now. I promise I'll circle back later if time allows.

Copy link
Contributor

@Lobotuerk Lobotuerk left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure I would take into account my feedback here, but LGTM

@hidmic
Copy link
Contributor Author

hidmic commented Sep 24, 2020

CI up to test_rmw_implementation and rcl:

  • Linux Build Status
  • Linux-aarch64 Build Status
  • macOS Build Status
  • Windows Build Status

@hidmic hidmic merged commit e52b68b into master Sep 24, 2020
@delete-merged-branch delete-merged-branch bot deleted the hidmic/compliant-service-n-client-creation branch September 24, 2020 17:28
ahcorde pushed a commit that referenced this pull request Oct 9, 2020
…#445)

Signed-off-by: Michel Hidalgo <michel@ekumenlabs.com>
ahcorde pushed a commit that referenced this pull request Oct 15, 2020
…#445)

Signed-off-by: Michel Hidalgo <michel@ekumenlabs.com>
timonegk pushed a commit to timonegk/ros-rolling-rmw-fastrtps-cpp-release that referenced this pull request May 21, 2022
ros-rolling-rmw-fastrtps-cpp (6.2.1-1jammy) jammy; urgency=high
.
  * Add pub/sub init, publish and take instrumentation using tracetools (#591 <ros2/rmw_fastrtps#591>)
  * Add content filter topic feature (#513 <ros2/rmw_fastrtps#513>)
  * Add sequence numbers to message info structure (#587 <ros2/rmw_fastrtps#587>)
  * Removed some heap interactions in rmw_serialize.cpp (#590 <ros2/rmw_fastrtps#590>)
  * Contributors: Chen Lihui, Christophe Bedard, Ivan Santiago Paunovic, WideAwakeTN
.
ros-rolling-rmw-fastrtps-cpp (6.2.0-1jammy) jammy; urgency=high
.
  * Add EventsExecutor (#468 <ros2/rmw_fastrtps#468>)
  * Install headers to include/${PROJECT_NAME} (#578 <ros2/rmw_fastrtps#578>)
  * Contributors: Shane Loretz, iRobot ROS
.
ros-rolling-rmw-fastrtps-cpp (6.1.2-1jammy) jammy; urgency=high
.
.
.
ros-rolling-rmw-fastrtps-cpp (6.1.1-1jammy) jammy; urgency=high
.
.
.
ros-rolling-rmw-fastrtps-cpp (6.1.0-1jammy) jammy; urgency=high
.
  * Add client/service QoS getters. (#560 <ros2/rmw_fastrtps#560>)
  * Contributors: mauropasse
.
ros-rolling-rmw-fastrtps-cpp (6.0.0-1jammy) jammy; urgency=high
.
.
.
ros-rolling-rmw-fastrtps-cpp (5.2.2-1jammy) jammy; urgency=high
.
  * Correctly recalculate serialized size on bounded sequences. (#540 <ros2/rmw_fastrtps#540>)
  * Fix type size alignment. (#550 <ros2/rmw_fastrtps#550>)
  * Contributors: Miguel Company
.
ros-rolling-rmw-fastrtps-cpp (5.2.1-1jammy) jammy; urgency=high
.
  * Change links from index.ros.org -> docs.ros.org (#539 <ros2/rmw_fastrtps#539>)
  * Contributors: Chris Lalancette
.
ros-rolling-rmw-fastrtps-cpp (5.2.0-1jammy) jammy; urgency=high
.
  * Add rmw_publisher_wait_for_all_acked support. (#519 <ros2/rmw_fastrtps#519>)
  * Contributors: Barry Xu
.
ros-rolling-rmw-fastrtps-cpp (5.1.0-1jammy) jammy; urgency=high
.
  * Loan messages implementation (#523 <ros2/rmw_fastrtps#523>)
    * Added is_plain_ attribute to base TypeSupport.
    * Added new methods to base TypeSupport.
    * Implementation of rmw_borrow_loaned_message.
    * Implementation of rmw_return_loaned_message_from_publisher.
    * Enable loan messages on publishers of plain types.
    * Implementation for taking loaned messages.
    * Enable loan messages on subscriptions of plain types.
  * Contributors: Miguel Company
.
ros-rolling-rmw-fastrtps-cpp (5.0.0-1jammy) jammy; urgency=high
.
  * Refactor to use DDS standard API (#518 <ros2/rmw_fastrtps#518>)
  * Unique network flows (#502 <ros2/rmw_fastrtps#502>)
  * updating quality declaration links (re: ros2/docs.ros2.org#52 <ros2/docs.ros2.org#52>) (#520 <ros2/rmw_fastrtps#520>)
  * Contributors: Miguel Company, shonigmann
.
ros-rolling-rmw-fastrtps-cpp (4.5.0-1jammy) jammy; urgency=high
.
.
.
ros-rolling-rmw-fastrtps-cpp (4.4.0-1jammy) jammy; urgency=high
.
  * Add RMW function to check QoS compatibility (#511 <ros2/rmw_fastrtps#511>)
  * Capture cdr exceptions (#505 <ros2/rmw_fastrtps#505>)
  * Contributors: Jacob Perron, Miguel Company
.
ros-rolling-rmw-fastrtps-cpp (4.3.0-1jammy) jammy; urgency=high
.
  * Load profiles based on topic names (#335 <ros2/rmw_fastrtps#335>)
  * Set rmw_dds_common::GraphCache callback after init succeeds. (#496 <ros2/rmw_fastrtps#496>)
  * Handle typesupport errors on fetch. (#495 <ros2/rmw_fastrtps#495>)
  * Contributors: Eduardo Ponz Segrelles, Michel Hidalgo
.
ros-rolling-rmw-fastrtps-cpp (4.2.0-1jammy) jammy; urgency=high
.
.
.
ros-rolling-rmw-fastrtps-cpp (4.1.0-1jammy) jammy; urgency=high
.
  * Check for correct context shutdown (#486 <ros2/rmw_fastrtps#486>)
  * New environment variable to change easily the publication mode (#470 <ros2/rmw_fastrtps#470>)
  * Contributors: Ignacio Montesino Valle, José Luis Bueno López
.
ros-rolling-rmw-fastrtps-cpp (4.0.0-1jammy) jammy; urgency=high
.
  * Discriminate when the Client has gone from when the Client has not completely matched (#467 <ros2/rmw_fastrtps#467>)
    * Workaround when the client is gone before server sends response
    * Change add to the map to listener callback
  * Update the package.xml files with the latest Open Robotics maintainers (#459 <ros2/rmw_fastrtps#459>)
  * Update Quality Declarations and READMEs (#455 <ros2/rmw_fastrtps#455>)
    * Add QD links for dependencies to rmw_fastrtps_cpp QD
    * Provide external dependencies QD links
    * Update rmw_fastrtps README to use Fast DDS
    * Update rmw_fastrtps_cpp QD: Fast DDS & unit test
    * Update README rmw_fastrtps_cpp to QL2
  * Contributors: JLBuenoLopez-eProsima, Jaime Martin Losa, José Luis Bueno López, Michael Jeronimo
.
ros-rolling-rmw-fastrtps-cpp (3.1.4-1jammy) jammy; urgency=high
.
  * Perform fault injection in all creation/destruction APIs. (#453 <ros2/rmw_fastrtps#453>)
  * Ensure rmw_destroy_node() completes despite run-time errors. (#458 <ros2/rmw_fastrtps#458>)
  * Update rmw_fastrtps_cpp and rmw_fastrtps_shared_cpp QDs to QL2. (#456 <ros2/rmw_fastrtps#456>)
  * Contributors: Michel Hidalgo
.
ros-rolling-rmw-fastrtps-cpp (3.1.3-1jammy) jammy; urgency=high
.
  * Return RMW_RET_UNSUPPORTED in rmw_get_serialized_message_size (#452 <ros2/rmw_fastrtps#452>)
  * Contributors: Alejandro Hernández Cordero
.
ros-rolling-rmw-fastrtps-cpp (3.1.2-1jammy) jammy; urgency=high
.
  * Updated publisher/subscription allocation and wait set API return codes (#443 <ros2/rmw_fastrtps#443>)
  * Added rmw_logging tests (#442 <ros2/rmw_fastrtps#442>)
  * Contributors: Alejandro Hernández Cordero
.
ros-rolling-rmw-fastrtps-cpp (3.1.1-1jammy) jammy; urgency=high
.
  * Make service/client construction/destruction implementation compliant (#445 <ros2/rmw_fastrtps#445>)
  * Make sure type can be unregistered successfully (#437 <ros2/rmw_fastrtps#437>)
  * Contributors: Barry Xu, Michel Hidalgo
.
ros-rolling-rmw-fastrtps-cpp (3.1.0-1jammy) jammy; urgency=high
.
  * Add tests for native entity getters. (#439 <ros2/rmw_fastrtps#439>)
  * Avoid deadlock if graph update fails. (#438 <ros2/rmw_fastrtps#438>)
  * Contributors: Michel Hidalgo
.
ros-rolling-rmw-fastrtps-cpp (3.0.0-1jammy) jammy; urgency=high
.
  * Call Domain::removePublisher while failure occurs in create_publisher (#434 <ros2/rmw_fastrtps#434>)
  * Contributors: Barry Xu
.
ros-rolling-rmw-fastrtps-cpp (2.6.0-1jammy) jammy; urgency=high
.
  * Ensure compliant matched pub/sub count API. (#424 <ros2/rmw_fastrtps#424>)
  * Ensure compliant publisher QoS queries. (#425 <ros2/rmw_fastrtps#425>)
  * Contributors: Michel Hidalgo
.
ros-rolling-rmw-fastrtps-cpp (2.5.0-1jammy) jammy; urgency=high
.
.
.
ros-rolling-rmw-fastrtps-cpp (2.4.0-1jammy) jammy; urgency=high
.
  * Ensure compliant subscription API. (#419 <ros2/rmw_fastrtps#419>)
  * Contributors: Michel Hidalgo
.
ros-rolling-rmw-fastrtps-cpp (2.3.0-1jammy) jammy; urgency=high
.
  * Ensure compliant publisher API. (#414 <ros2/rmw_fastrtps#414>)
  * Contributors: Michel Hidalgo
.
ros-rolling-rmw-fastrtps-cpp (2.2.0-1jammy) jammy; urgency=high
.
  * Set context actual domain id (#410 <ros2/rmw_fastrtps#410>)
  * Contributors: Ivan Santiago Paunovic
.
ros-rolling-rmw-fastrtps-cpp (2.1.0-1jammy) jammy; urgency=high
.
  * Ensure compliant node construction/destruction API. (#408 <ros2/rmw_fastrtps#408>)
  * Contributors: Michel Hidalgo
.
ros-rolling-rmw-fastrtps-cpp (2.0.0-1jammy) jammy; urgency=high
.
  * Remove domain_id and localhost_only from node API (#407 <ros2/rmw_fastrtps#407>)
  * Amend rmw_init() implementation: require enclave. (#406 <ros2/rmw_fastrtps#406>)
  * Update Quality Declarations to QL3. (#404 <ros2/rmw_fastrtps#404>)
  * Contributors: Ivan Santiago Paunovic, Michel Hidalgo
.
ros-rolling-rmw-fastrtps-cpp (1.1.0-1jammy) jammy; urgency=high
.
  * Ensure compliant init/shutdown API implementation. (#401 <ros2/rmw_fastrtps#401>)
  * Update Quality Declaration to QL3. (#403 <ros2/rmw_fastrtps#403>)
  * Finalize context iff shutdown. (#396 <ros2/rmw_fastrtps#396>)
  * Make service wait for response reader (#390 <ros2/rmw_fastrtps#390>)
  * Contributors: Michel Hidalgo, Miguel Company
.
ros-rolling-rmw-fastrtps-cpp (1.0.1-1jammy) jammy; urgency=high
.
  * Add Security Vulnerability Policy pointing to REP-2006 (#389 <ros2/rmw_fastrtps#389>)
  * Update QDs for 1.0 (#383 <ros2/rmw_fastrtps#383>)
  * Contributors: Chris Lalancette, Stephen Brawner
.
ros-rolling-rmw-fastrtps-cpp (1.0.0-1jammy) jammy; urgency=high
.
  * Remove API related to manual by node liveliness.  (#379 <ros2/rmw_fastrtps#379>)
  * Update quality declarations on feature testing. (#380 <ros2/rmw_fastrtps#380>)
  * Contributors: Ivan Santiago Paunovic, Michel Hidalgo
.
ros-rolling-rmw-fastrtps-cpp (0.9.1-1jammy) jammy; urgency=high
.
  * Add package READMEs and QUALITY_DECLARATION files (#375 <ros2/rmw_fastrtps#375>)
  * Added doxyfiles (#372 <ros2/rmw_fastrtps#372>)
  * Contributors: Alejandro Hernández Cordero, brawner
.
ros-rolling-rmw-fastrtps-cpp (0.9.0-1jammy) jammy; urgency=high
.
  * Add missing export of rmw_dds_common. (#374 <ros2/rmw_fastrtps#374>)
  * Rename rosidl_message_bounds_t. (#373 <ros2/rmw_fastrtps#373>)
  * Feature/services timestamps. (#369 <ros2/rmw_fastrtps#369>)
  * Add support for taking a sequence of messages. (#366 <ros2/rmw_fastrtps#366>)
  * security-context -> enclave. (#365 <ros2/rmw_fastrtps#365>)
  * Rename rosidl_generator_c namespace to rosidl_runtime_c. (#367 <ros2/rmw_fastrtps#367>)
  * Remove custom typesupport for rmw_dds_common interfaces. (#364 <ros2/rmw_fastrtps#364>)
  * Added rosidl_runtime c and cpp depencencies. (#351 <ros2/rmw_fastrtps#351>)
  * Switch to one Participant per Context. (#312 <ros2/rmw_fastrtps#312>)
  * Add rmw_*_event_init() functions. (#354 <ros2/rmw_fastrtps#354>)
  * Fixing type support C/CPP mix on rmw_fastrtps_dynamic_cpp. (#350 <ros2/rmw_fastrtps#350>)
  * Fix build warning in Ubuntu Focal. (#346 <ros2/rmw_fastrtps#346>)
  * Code style only: wrap after open parenthesis if not in one line. (#347 <ros2/rmw_fastrtps#347>)
  * Passing down type support information (#342 <ros2/rmw_fastrtps#342>)
  * Implement functions to get publisher and subcription informations like QoS policies from topic name. (#336 <ros2/rmw_fastrtps#336>)
  * Contributors: Alejandro Hernández Cordero, Dirk Thomas, Ingo Lütkebohle, Ivan Santiago Paunovic, Jaison Titus, Miaofei Mei, Michael Carroll, Miguel Company, Mikael Arguedas
.
ros-rolling-rmw-fastrtps-cpp (0.8.1-1jammy) jammy; urgency=high
.
  * use return_loaned_message_from (#334 <ros2/rmw_fastrtps#334>)
  * Restrict traffic to localhost only if env var is provided (#331 <ros2/rmw_fastrtps#331>)
  * Zero copy api (#322 <ros2/rmw_fastrtps#322>)
  * update signature for added pub/sub options (#329 <ros2/rmw_fastrtps#329>)
  * Contributors: Brian Marchi, Karsten Knese, William Woodall
.
ros-rolling-rmw-fastrtps-cpp (0.8.0-1jammy) jammy; urgency=high
.
  * Add function for getting clients by node (#293 <ros2/rmw_fastrtps#293>)
  * Implement get_actual_qos() for subscriptions (#287 <ros2/rmw_fastrtps#287>)
  * Fix error message (#290 <ros2/rmw_fastrtps#290>)
  * Contributors: Jacob Perron, M. M
.
ros-rolling-rmw-fastrtps-cpp (0.7.3-1jammy) jammy; urgency=high
.
.
.
ros-rolling-rmw-fastrtps-cpp (0.7.2-1jammy) jammy; urgency=high
.
  * Centralize topic name creation logic and update to match FastRTPS 1.8 API (#272 <ros2/rmw_fastrtps#272>)
  * Contributors: Nick Burek
.
ros-rolling-rmw-fastrtps-cpp (0.7.1-1jammy) jammy; urgency=high
.
  * Support arbitrary message namespaces  (#266 <ros2/rmw_fastrtps#266>)
  * Add qos interfaces with no-op (#271 <ros2/rmw_fastrtps#271>)
  * Updates for preallocation API. (#274 <ros2/rmw_fastrtps#274>)
  * Contributors: Jacob Perron, Michael Carroll, Ross Desmond
.
ros-rolling-rmw-fastrtps-cpp (0.7.0-1jammy) jammy; urgency=high
.
  * Add function to get publisher actual qos settings (#267 <ros2/rmw_fastrtps#267>)
  * pass context to wait set and fini context (#252 <ros2/rmw_fastrtps#252>)
  * Improve service_is_available logic to protect that client is waiting forever (#238 <ros2/rmw_fastrtps#238>)
  * Merge pull request #250 <ros2/rmw_fastrtps#250> from ros2/support_static_lib
  * use namespace_prefix from shared package
  * Contributors: Dirk Thomas, DongheeYe, William Woodall, ivanpauno
.
ros-rolling-rmw-fastrtps-cpp (0.6.1-1jammy) jammy; urgency=high
.
  * Add topic cache object for managing topic relations (#236 <ros2/rmw_fastrtps#236>)
  * Fastrtps 1.7.0 (#233 <ros2/rmw_fastrtps#233>)
  * RMW_FastRTPS configuration from XML only (#243 <ros2/rmw_fastrtps#243>)
  * refactor to support init options and context (#237 <ros2/rmw_fastrtps#237>)
  * Methods to retrieve matched counts on pub/sub (#234 <ros2/rmw_fastrtps#234>)
  * use uint8_array (#240 <ros2/rmw_fastrtps#240>)
  * Contributors: Juan Carlos, Karsten Knese, Michael Carroll, MiguelCompany, Ross Desmond, William Woodall
.
ros-rolling-rmw-fastrtps-cpp (0.6.0-1jammy) jammy; urgency=high
.
  * Add semicolons to all RCLCPP and RCUTILS macros. (#229 <ros2/rmw_fastrtps#229>)
  * Include node namespaces in get_node_names (#224 <ros2/rmw_fastrtps#224>)
  * add rmw_get_serialization_format (#215 <ros2/rmw_fastrtps#215>)
  * Merge pull request #218 <ros2/rmw_fastrtps#218> from ros2/pr203
  * Revert "fix template closing indentation (#214 <ros2/rmw_fastrtps#214>)"
  * fix template closing indentation (#214 <ros2/rmw_fastrtps#214>)
  * Contributors: Chris Lalancette, Dirk Thomas, Karsten Knese, Michael Carroll, Miguel Company, Mikael Arguedas
.
ros-rolling-rmw-fastrtps-cpp (0.5.1-1jammy) jammy; urgency=high
.
  * update maintainer
  * Contributors: Dirk Thomas
.
ros-rolling-rmw-fastrtps-cpp (0.5.0-1jammy) jammy; urgency=high
.
  * Avoid allocations (#211 <ros2/rmw_fastrtps#211>)
  * Temporary buffer remove (#207 <ros2/rmw_fastrtps#207>)
  * Validate the buffer_ of CustomServiceRequest object before using it to (#210 <ros2/rmw_fastrtps#210>)
  * update usage of rcutils_join_path() (#208 <ros2/rmw_fastrtps#208>)
  * Expose raw CDR stream for publish and subscribe (#186 <ros2/rmw_fastrtps#186>)
  * Remove topic partitions (#192 <ros2/rmw_fastrtps#192>)
  * Fix leak if client reponse is never taken (#201 <ros2/rmw_fastrtps#201>)
  * Revert "Export rmw_fastrtps_cpp target" (#200 <ros2/rmw_fastrtps#200>)
  * Support access control  (#197 <ros2/rmw_fastrtps#197>)
  * Export rmw_fastrtps_cpp target (#198 <ros2/rmw_fastrtps#198>)
  * Fix deserialization segfault in bionic. (#199 <ros2/rmw_fastrtps#199>)
  * Fix namespaces (#196 <ros2/rmw_fastrtps#196>)
  * Merge pull request #182 <ros2/rmw_fastrtps#182> from ros2/node_name_in_user_data
  * add participant listener
  * add node name to user data
  * change export order for static linking (#190 <ros2/rmw_fastrtps#190>)
  * update style (#189 <ros2/rmw_fastrtps#189>)
  * optimize timeout judgement according to different condition (#187 <ros2/rmw_fastrtps#187>)
  * use existing check_wait_set_for_data to avoid duplicated code (#185 <ros2/rmw_fastrtps#185>)
  * Enable logging level manipulation from rmw_fastrtps (#156 <ros2/rmw_fastrtps#156>)
  * Small performance improvements (#183 <ros2/rmw_fastrtps#183>)
  * Segmentation error to dereference nullptr (#180 <ros2/rmw_fastrtps#180>)
  * Contributors: Dirk Thomas, Ethan Gao, Guillaume Autran, Karsten Knese, Michael Carroll, MiguelCompany, Mikael Arguedas, Minggang Wang, Rohit Salem, Shane Loretz, Sriram Raghunathan, William Woodall, jwang11
.
ros-rolling-rmw-fastrtps-cpp (0.4.0-1jammy) jammy; urgency=high
.
  * Merge pull request #178 <ros2/rmw_fastrtps#178> from ros2/fix_wrong_count
  * Merge pull request #177 <ros2/rmw_fastrtps#177> from ros2/rename_group
  * Wait set two words (#175 <ros2/rmw_fastrtps#175>)
  * not exporting pthread manually (#174 <ros2/rmw_fastrtps#174>)
  * Merge pull request #169 <ros2/rmw_fastrtps#169> from ros2/rep149
  * Merge pull request #171 <ros2/rmw_fastrtps#171> from jwang11/master
  * rcutils_join_path returns a char * now. (#173 <ros2/rmw_fastrtps#173>)
  * memory leak issue (#172 <ros2/rmw_fastrtps#172>)
  * Unify and simplify de/serializeROSmessage processing
  * Avoid duplicated code in calculateMaxSerializedSize for array and normal member (#168 <ros2/rmw_fastrtps#168>)
  * Fix the issues to dereference to nullptr (#165 <ros2/rmw_fastrtps#165>)
  * Fix rmw_fastrtps dead code (#163 <ros2/rmw_fastrtps#163>)
  * Merge pull request #167 <ros2/rmw_fastrtps#167> from deng02/tune-count-pub-sub
  * Remove string allocation in the count of subscribers and publishers
  * use auto deduction and nullptr to keep coding style consistent (#162 <ros2/rmw_fastrtps#162>)
  * Merge pull request #164 <ros2/rmw_fastrtps#164> from dejanpan/master
  * Fix several parameter check issues in rmw_fastrtps_cpp apis
  * Remove unnecessary dependency on rosidl_generator_cpp (#161 <ros2/rmw_fastrtps#161>)
  * Move the hasData checks for non-blocking wait 'timeout' higher (#158 <ros2/rmw_fastrtps#158>)
  * Support loading default XML profile file (#153 <ros2/rmw_fastrtps#153>)
  * Drop duplicated rmw_init.cpp in rmw_fastrtps_cpp/CMakeLists.txt (#155 <ros2/rmw_fastrtps#155>)
  * Merge pull request #154 <ros2/rmw_fastrtps#154> from ros2/uncrustify_master
  * Removing magic numbers: old maximun lengths (#152 <ros2/rmw_fastrtps#152>)
timonegk pushed a commit to timonegk/ros-rolling-rmw-fastrtps-shared-cpp-release that referenced this pull request May 21, 2022
ros-rolling-rmw-fastrtps-shared-cpp (6.2.1-1jammy) jammy; urgency=high
.
  * Address linter waning for windows. (#592 <ros2/rmw_fastrtps#592>)
  * Add pub/sub init, publish and take instrumentation using tracetools (#591 <ros2/rmw_fastrtps#591>)
  * Add content filter topic feature (#513 <ros2/rmw_fastrtps#513>)
  * Add sequence numbers to message info structure (#587 <ros2/rmw_fastrtps#587>)
  * Contributors: Chen Lihui, Christophe Bedard, Ivan Santiago Paunovic, Tomoya Fujita
.
ros-rolling-rmw-fastrtps-shared-cpp (6.2.0-1jammy) jammy; urgency=high
.
  * Add EventsExecutor (#468 <ros2/rmw_fastrtps#468>)
  * Complete events support (#583 <ros2/rmw_fastrtps#583>)
  * Install headers to include/${PROJECT_NAME} (#578 <ros2/rmw_fastrtps#578>)
  * Change default to synchronous (#571 <ros2/rmw_fastrtps#571>)
  * Contributors: Audrow Nash, Miguel Company, Shane Loretz, iRobot ROS
.
ros-rolling-rmw-fastrtps-shared-cpp (6.1.2-1jammy) jammy; urgency=high
.
  * Fix cpplint error (#574 <ros2/rmw_fastrtps#574>)
  * Contributors: Jacob Perron
.
ros-rolling-rmw-fastrtps-shared-cpp (6.1.1-1jammy) jammy; urgency=high
.
  * Fixes for uncrustify 0.72 (#572 <ros2/rmw_fastrtps#572>)
  * Contributors: Chris Lalancette
.
ros-rolling-rmw-fastrtps-shared-cpp (6.1.0-1jammy) jammy; urgency=high
.
  * Add client/service QoS getters. (#560 <ros2/rmw_fastrtps#560>)
  * Fix QoS depth settings for clients/service being ignored. (#564 <ros2/rmw_fastrtps#564>)
  * Contributors: Chen Lihui, mauropasse
.
ros-rolling-rmw-fastrtps-shared-cpp (6.0.0-1jammy) jammy; urgency=high
.
  * Update rmw_context_impl_t definition. (#558 <ros2/rmw_fastrtps#558>)
  * Update the LoanManager to do internal locking. (#552 <ros2/rmw_fastrtps#552>)
  * Contributors: Chris Lalancette, Michel Hidalgo
.
ros-rolling-rmw-fastrtps-shared-cpp (5.2.2-1jammy) jammy; urgency=high
.
  * Pass the CRL down to Fast-DDS if available. (#546 <ros2/rmw_fastrtps#546>)
  * Contributors: Chris Lalancette
.
ros-rolling-rmw-fastrtps-shared-cpp (5.2.1-1jammy) jammy; urgency=high
.
  * Use the new rmw_dds_common::get_security_files (#544 <ros2/rmw_fastrtps#544>)
  * Support for SubscriptionOptions::ignore_local_publications (#536 <ros2/rmw_fastrtps#536>)
  * Change links from index.ros.org -> docs.ros.org (#539 <ros2/rmw_fastrtps#539>)
  * Contributors: Chris Lalancette, Jose Antonio Moral
.
ros-rolling-rmw-fastrtps-shared-cpp (5.2.0-1jammy) jammy; urgency=high
.
  * Add rmw_publisher_wait_for_all_acked support. (#519 <ros2/rmw_fastrtps#519>)
  * Contributors: Barry Xu
.
ros-rolling-rmw-fastrtps-shared-cpp (5.1.0-1jammy) jammy; urgency=high
.
  * Loan messages implementation (#523 <ros2/rmw_fastrtps#523>)
    * Added is_plain_ attribute to base TypeSupport.
    * Added new methods to base TypeSupport.
    * Implementation of rmw_borrow_loaned_message.
    * Implementation of rmw_return_loaned_message_from_publisher.
    * Enable loan messages on publishers of plain types.
    * Implementation for taking loaned messages.
    * Enable loan messages on subscriptions of plain types.
  * Export rmw_dds_common as an rmw_fastrtps_shared_cpp dependency (#530 <ros2/rmw_fastrtps#530>)
  * Update includes after rcutils/get_env.h deprecation (#529 <ros2/rmw_fastrtps#529>)
  * Contributors: Christophe Bedard, Michel Hidalgo, Miguel Company
.
ros-rolling-rmw-fastrtps-shared-cpp (5.0.0-1jammy) jammy; urgency=high
.
  * Refactor to use DDS standard API (#518 <ros2/rmw_fastrtps#518>)
  * Unique network flows (#502 <ros2/rmw_fastrtps#502>)
  * updating quality declaration links (re: ros2/docs.ros2.org#52 <ros2/docs.ros2.org#52>) (#520 <ros2/rmw_fastrtps#520>)
  * Contributors: Miguel Company, shonigmann
.
ros-rolling-rmw-fastrtps-shared-cpp (4.5.0-1jammy) jammy; urgency=high
.
  * Take and return new RMW_DURATION_INFINITE correctly (#515 <ros2/rmw_fastrtps#515>)
  * Contributors: Emerson Knapp
.
ros-rolling-rmw-fastrtps-shared-cpp (4.4.0-1jammy) jammy; urgency=high
.
  * Add RMW function to check QoS compatibility (#511 <ros2/rmw_fastrtps#511>)
  * Capture cdr exceptions (#505 <ros2/rmw_fastrtps#505>)
  * Contributors: Jacob Perron, Miguel Company
.
ros-rolling-rmw-fastrtps-shared-cpp (4.3.0-1jammy) jammy; urgency=high
.
.
.
ros-rolling-rmw-fastrtps-shared-cpp (4.2.0-1jammy) jammy; urgency=high
.
  * Make sure to lock the mutex protecting client_endpoints_. (#492 <ros2/rmw_fastrtps#492>)
  * Contributors: Chris Lalancette
.
ros-rolling-rmw-fastrtps-shared-cpp (4.1.0-1jammy) jammy; urgency=high
.
  * Use interface whitelist for localhost only (#476 <ros2/rmw_fastrtps#476>)
  * Make use of error return value in decrement_context_impl_ref_count (#488 <ros2/rmw_fastrtps#488>)
  * Remove unnecessary includes (#487 <ros2/rmw_fastrtps#487>)
  * Use new time_utils function to limit rmw_time_t values to 32-bits (#485 <ros2/rmw_fastrtps#485>)
  * New environment variable to change easily the publication mode (#470 <ros2/rmw_fastrtps#470>)
  * Remove unused headers MessageTypeSupport.hpp and ServiceTypeSupport.hpp (#481 <ros2/rmw_fastrtps#481>)
  * Contributors: Jacob Perron, José Luis Bueno López, Michael Jeronimo, Miguel Company, Stephen Brawner
.
ros-rolling-rmw-fastrtps-shared-cpp (4.0.0-1jammy) jammy; urgency=high
.
  * Discriminate when the Client has gone from when the Client has not completely matched (#467 <ros2/rmw_fastrtps#467>)
    * Workaround when the client is gone before server sends response
    * Change add to the map to listener callback
  * Update the package.xml files with the latest Open Robotics maintainers (#459 <ros2/rmw_fastrtps#459>)
  * Update Quality Declarations and READMEs (#455 <ros2/rmw_fastrtps#455>)
    * Add QD links for dependencies to rmw_fastrtps_shared_cpp QD.
    * Provide external dependencies QD links.
    * Update rmw_fastrtps_shared_cpp QD: Fast DDS
    * Update README rmw_fastrtps_shared_cpp to QL2
  * Contributors: JLBuenoLopez-eProsima, Jaime Martin Losa, José Luis Bueno López, Michael Jeronimo
.
ros-rolling-rmw-fastrtps-shared-cpp (3.1.4-1jammy) jammy; urgency=high
.
  * Perform fault injection in all creation/destruction APIs. (#453 <ros2/rmw_fastrtps#453>)
  * Ensure rmw_destroy_node() completes despite run-time errors. (#458 <ros2/rmw_fastrtps#458>)
  * Handle too large QoS queue depths.  (#457 <ros2/rmw_fastrtps#457>)
  * Update rmw_fastrtps_cpp and rmw_fastrtps_shared_cpp QDs to QL2. (#456 <ros2/rmw_fastrtps#456>)
  * Contributors: Michel Hidalgo
.
ros-rolling-rmw-fastrtps-shared-cpp (3.1.3-1jammy) jammy; urgency=high
.
  * checked client implementation and return RMW_RET_INCORRECT_RMW_IMPLEMENTATION (#451 <ros2/rmw_fastrtps#451>)
  * Update service/client request/response API error returns (#450 <ros2/rmw_fastrtps#450>)
  * Contributors: Alejandro Hernández Cordero, Jose Tomas Lorente
.
ros-rolling-rmw-fastrtps-shared-cpp (3.1.2-1jammy) jammy; urgency=high
.
  * Updated publisher/subscription allocation and wait set API return codes (#443 <ros2/rmw_fastrtps#443>)
  * Added rmw_logging tests (#442 <ros2/rmw_fastrtps#442>)
  * Contributors: Alejandro Hernández Cordero
.
ros-rolling-rmw-fastrtps-shared-cpp (3.1.1-1jammy) jammy; urgency=high
.
  * Add tests for RMW QoS to DDS attribute conversion. (#449 <ros2/rmw_fastrtps#449>)
  * Make service/client construction/destruction implementation compliant (#445 <ros2/rmw_fastrtps#445>)
  * Contributors: Michel Hidalgo
.
ros-rolling-rmw-fastrtps-shared-cpp (3.1.0-1jammy) jammy; urgency=high
.
  * Inject faults on __rmw_publish() and run_listener_thread() call. (#441 <ros2/rmw_fastrtps#441>)
  * Update gid API return codes. (#440 <ros2/rmw_fastrtps#440>)
  * Update graph API return codes. (#436 <ros2/rmw_fastrtps#436>)
  * Contributors: Michel Hidalgo
.
ros-rolling-rmw-fastrtps-shared-cpp (3.0.0-1jammy) jammy; urgency=high
.
  * Update rmw_take_serialized() and rmw_take_with_message_info() error returns  (#435 <ros2/rmw_fastrtps#435>)
  * Update rmw_take() error returns (#432 <ros2/rmw_fastrtps#432>)
  * Update rmw_publish() error returns (#430 <ros2/rmw_fastrtps#430>)
  * Update rmw_publish_serialized_message() error returns (#431 <ros2/rmw_fastrtps#431>)
  * Contributors: Jose Tomas Lorente, Lobotuerk
.
ros-rolling-rmw-fastrtps-shared-cpp (2.6.0-1jammy) jammy; urgency=high
.
  * Improve __rmw_create_wait_set() implementation. (#427 <ros2/rmw_fastrtps#427>)
  * Ensure compliant matched pub/sub count API. (#424 <ros2/rmw_fastrtps#424>)
  * Ensure compliant publisher QoS queries. (#425 <ros2/rmw_fastrtps#425>)
  * Fix memory leak that wait_set might be not destoryed in some case. (#423 <ros2/rmw_fastrtps#423>)
  * Contributors: Chen Lihui, Michel Hidalgo
.
ros-rolling-rmw-fastrtps-shared-cpp (2.5.0-1jammy) jammy; urgency=high
.
  * Avoid unused identifier variable warnings. (#422 <ros2/rmw_fastrtps#422>)
  * Fix trying to get topic data that was already removed. (#417 <ros2/rmw_fastrtps#417>)
  * Contributors: Chen Lihui, Michel Hidalgo
.
ros-rolling-rmw-fastrtps-shared-cpp (2.4.0-1jammy) jammy; urgency=high
.
  * Ensure compliant subscription API. (#419 <ros2/rmw_fastrtps#419>)
  * Use package path to TypeSupport.hpp headers in ServiceTypeSupport and MessageTypeSupport (#415 <ros2/rmw_fastrtps#415>)
    Use package in path to TypeSupport header for ServiceTypeSupport/MessageTypeSupport
  * Contributors: Jose Luis Rivero, Michel Hidalgo
.
ros-rolling-rmw-fastrtps-shared-cpp (2.3.0-1jammy) jammy; urgency=high
.
  * Ensure compliant publisher API. (#414 <ros2/rmw_fastrtps#414>)
  * Contributors: Michel Hidalgo
.
ros-rolling-rmw-fastrtps-shared-cpp (2.2.0-1jammy) jammy; urgency=high
.
  * Set context actual domain id (#410 <ros2/rmw_fastrtps#410>)
  * Contributors: Ivan Santiago Paunovic
.
ros-rolling-rmw-fastrtps-shared-cpp (2.1.0-1jammy) jammy; urgency=high
.
  * Add missing thread-safety annotation in ServicePubListener (#409 <ros2/rmw_fastrtps#409>)
  * Ensure compliant node construction/destruction API. (#408 <ros2/rmw_fastrtps#408>)
  * Contributors: Michel Hidalgo
.
ros-rolling-rmw-fastrtps-shared-cpp (2.0.0-1jammy) jammy; urgency=high
.
  * Update Quality Declarations to QL3. (#404 <ros2/rmw_fastrtps#404>)
  * Contributors: Michel Hidalgo
.
ros-rolling-rmw-fastrtps-shared-cpp (1.1.0-1jammy) jammy; urgency=high
.
  * Do not use string literals as implementation identifiers in tests. (#402 <ros2/rmw_fastrtps#402>)
  * Ensure compliant init options API implementations. (#399 <ros2/rmw_fastrtps#399>)
  * Finalize context iff shutdown. (#396 <ros2/rmw_fastrtps#396>)
  * Handle RMW_DEFAULT_DOMAIN_ID. (#394 <ros2/rmw_fastrtps#394>)
  * Make service wait for response reader (#390 <ros2/rmw_fastrtps#390>)
  * Contributors: Michel Hidalgo, Miguel Company
.
ros-rolling-rmw-fastrtps-shared-cpp (1.0.1-1jammy) jammy; urgency=high
.
  * Add Security Vulnerability Policy pointing to REP-2006 (#389 <ros2/rmw_fastrtps#389>)
  * Do not compile assert death tests in Release builds (#393 <ros2/rmw_fastrtps#393>)
  * Add test coverage for name mangling and namespacing-specific API (#388 <ros2/rmw_fastrtps#388>)
  * Add test coverage for GUID utilities (#387 <ros2/rmw_fastrtps#387>)
  * Drop unused TopicCache sources (#386 <ros2/rmw_fastrtps#386>)
  * Add test coverage for rmw_init_options API (#385 <ros2/rmw_fastrtps#385>)
  * Update QDs for 1.0 (#383 <ros2/rmw_fastrtps#383>)
  * Contributors: Chris Lalancette, Michel Hidalgo, Stephen Brawner
.
ros-rolling-rmw-fastrtps-shared-cpp (1.0.0-1jammy) jammy; urgency=high
.
  * Remove API related to manual by node liveliness. (#379 <ros2/rmw_fastrtps#379>)
  * Update quality declarations on feature testing. (#380 <ros2/rmw_fastrtps#380>)
  * Contributors: Ivan Santiago Paunovic, Michel Hidalgo
.
ros-rolling-rmw-fastrtps-shared-cpp (0.9.1-1jammy) jammy; urgency=high
.
  * Fill service_info timestamps from sample_info (#378 <ros2/rmw_fastrtps#378>)
  * Fix unused variabled warning (#377 <ros2/rmw_fastrtps#377>)
  * Add basic support for security logging plugin (#362 <ros2/rmw_fastrtps#362>)
  * Add package READMEs and QUALITY_DECLARATION files (#375 <ros2/rmw_fastrtps#375>)
  * Added doxyfiles (#372 <ros2/rmw_fastrtps#372>)
  * Contributors: Alejandro Hernández Cordero, Ingo Lütkebohle, Jacob Perron, Kyle Fazzari, brawner
.
ros-rolling-rmw-fastrtps-shared-cpp (0.9.0-1jammy) jammy; urgency=high
.
  * Feature/services timestamps. (#369 <ros2/rmw_fastrtps#369>)
  * Add support for taking a sequence of messages. (#366 <ros2/rmw_fastrtps#366>)
  * Fill message_info timestamp. (#368 <ros2/rmw_fastrtps#368>)
  * Export targets in a addition to include directories / libraries. (#371 <ros2/rmw_fastrtps#371>)
  * Support for API break on Fast RTPS 2.0. (#370 <ros2/rmw_fastrtps#370>)
  * security-context -> enclave. (#365 <ros2/rmw_fastrtps#365>)
  * Switch to one Participant per Context. (#312 <ros2/rmw_fastrtps#312>)
  * Correct error message when event is not supported. (#358 <ros2/rmw_fastrtps#358>)
  * Add rmw_*_event_init() functions. (#354 <ros2/rmw_fastrtps#354>)
  * Fixing type support C/CPP mix on rmw_fastrtps_dynamic_cpp. (#350 <ros2/rmw_fastrtps#350>)
  * Fix build warning in Ubuntu Focal. (#346 <ros2/rmw_fastrtps#346>)
  * Change rmw_topic_endpoint_info_array.count to .size. (#348 <ros2/rmw_fastrtps#348>)
  * Code style only: wrap after open parenthesis if not in one line. (#347 <ros2/rmw_fastrtps#347>)
  * Fix unprotected use of mutex-guarded variable. (#345 <ros2/rmw_fastrtps#345>)
  * Passing down type support information (#342 <ros2/rmw_fastrtps#342>)
  * Implement functions to get publisher and subcription informations like QoS policies from topic name. (#336 <ros2/rmw_fastrtps#336>)
  * Contributors: Dirk Thomas, Emerson Knapp, Ingo Lütkebohle, Ivan Santiago Paunovic, Jaison Titus, Miaofei Mei, Michael Carroll, Miguel Company, Mikael Arguedas
.
ros-rolling-rmw-fastrtps-shared-cpp (0.8.1-1jammy) jammy; urgency=high
.
  * Restrict traffic to localhost only if env var is provided (#331 <ros2/rmw_fastrtps#331>)
  * Added new functions which can be used to get rmw_qos_profile_t from WriterQos and ReaderQos (#328 <ros2/rmw_fastrtps#328>)
  * Renamed dds_qos_to_rmw_qos to dds_attributes_to_rmw_qos (#330 <ros2/rmw_fastrtps#330>)
  * Contributors: Brian Marchi, jaisontj
.
ros-rolling-rmw-fastrtps-shared-cpp (0.8.0-1jammy) jammy; urgency=high
.
  * Correct error message (#320 <ros2/rmw_fastrtps#320>)
  * Return specific error code when node is not found (#311 <ros2/rmw_fastrtps#311>)
  * Correct linter failure (#318 <ros2/rmw_fastrtps#318>)
  * Fix bug in graph API by node (#316 <ros2/rmw_fastrtps#316>)
  * fix method name change from 1.8.1->1.9.0 (#302 <ros2/rmw_fastrtps#302>)
  * Add missing lock guards for discovered_names and discovered_namespaces (#301 <ros2/rmw_fastrtps#301>)
  * Add function for getting clients by node (#293 <ros2/rmw_fastrtps#293>)
  * Enable manual_by_node and node liveliness assertion (#298 <ros2/rmw_fastrtps#298>)
  * Enable assert liveliness on publisher. (#296 <ros2/rmw_fastrtps#296>)
  * Use rcpputils::find_and_replace instead of std::regex_replace (#291 <ros2/rmw_fastrtps#291>)
  * Fix a comparison with a sign mismatch (#288 <ros2/rmw_fastrtps#288>)
  * Implement get_actual_qos() for subscriptions (#287 <ros2/rmw_fastrtps#287>)
  * add missing qos setings in get_actual_qos() (#284 <ros2/rmw_fastrtps#284>)
  * Fix ABBA deadlock.
  * Contributors: Chris Lalancette, Emerson Knapp, Jacob Perron, M. M, Scott K Logan, William Woodall, ivanpauno
.
ros-rolling-rmw-fastrtps-shared-cpp (0.7.3-1jammy) jammy; urgency=high
.
  * Protection of discovered_names and discovered_namespaces (#283 <ros2/rmw_fastrtps#283>)
  * Disable all liveliness until it is actually supported (#282 <ros2/rmw_fastrtps#282>)
  * Contributors: Emerson Knapp, MiguelCompany
.
ros-rolling-rmw-fastrtps-shared-cpp (0.7.2-1jammy) jammy; urgency=high
.
  * fix log_debug typo in rmw_count (#279 <ros2/rmw_fastrtps#279>)
  * Fastrtps18 event callbacks policies (#275 <ros2/rmw_fastrtps#275>)
  * Centralize topic name creation logic and update to match FastRTPS 1.8 API (#272 <ros2/rmw_fastrtps#272>)
  * Contributors: 1r0b1n0, Emerson Knapp, Nick Burek
.
ros-rolling-rmw-fastrtps-shared-cpp (0.7.1-1jammy) jammy; urgency=high
.
  * Support arbitrary message namespaces  (#266 <ros2/rmw_fastrtps#266>)
  * Set more correct return values for unimplemented features (#276 <ros2/rmw_fastrtps#276>)
  * Add qos interfaces with no-op (#271 <ros2/rmw_fastrtps#271>)
  * Updates for preallocation API. (#274 <ros2/rmw_fastrtps#274>)
  * Fix logging in rmw_node_info_and_types.cpp (#273 <ros2/rmw_fastrtps#273>)
  * Contributors: Emerson Knapp, Jacob Perron, Michael Carroll, Ross Desmond, Thomas Moulard
.
ros-rolling-rmw-fastrtps-shared-cpp (0.7.0-1jammy) jammy; urgency=high
.
  * Thread safety annotation - minimally intrusive first pass (#259 <ros2/rmw_fastrtps#259>)
  * Add function to get publisher actual qos settings (#267 <ros2/rmw_fastrtps#267>)
  * Fixed race condition between taking sample and updating counter. (#264 <ros2/rmw_fastrtps#264>)
  * Fix cpplint error
  * change count type to size_t to avoid warning (#262 <ros2/rmw_fastrtps#262>)
  * update listener logic for accurate counting (#262 <ros2/rmw_fastrtps#262>)
  * Make sure to include the C++ headers used by these headers. (#256 <ros2/rmw_fastrtps#256>)
  * pass context to wait set and fini context (#252 <ros2/rmw_fastrtps#252>)
  * Improve service_is_available logic to protect that client is waiting forever (#238 <ros2/rmw_fastrtps#238>)
  * Merge pull request #250 <ros2/rmw_fastrtps#250> from ros2/support_static_lib
  * use namespace_prefix from shared package
  * make namespace_prefix header public
  * Use empty() to check for an empty string (#247 <ros2/rmw_fastrtps#247>)
  * We can compare a std::string with a const char* using operator==, simplifies the code (#248 <ros2/rmw_fastrtps#248>)
  * Use empty() instead of size() to check if a vector/map contains elements and fixed some incorrect logging (#245 <ros2/rmw_fastrtps#245>)
  * Fix guard condition trigger error (#235 <ros2/rmw_fastrtps#235>)
  * Contributors: Chris Lalancette, Dirk Thomas, DongheeYe, Emerson Knapp, Jacob Perron, Johnny Willemsen, Ricardo González, William Woodall, ivanpauno
.
ros-rolling-rmw-fastrtps-shared-cpp (0.6.1-1jammy) jammy; urgency=high
.
  * Add topic cache object for managing topic relations (#236 <ros2/rmw_fastrtps#236>)
  * Fix lint: remove trailing whitespace (#244 <ros2/rmw_fastrtps#244>)
  * Fastrtps 1.7.0 (#233 <ros2/rmw_fastrtps#233>)
  * RMW_FastRTPS configuration from XML only (#243 <ros2/rmw_fastrtps#243>)
  * Methods to retrieve matched counts on pub/sub (#234 <ros2/rmw_fastrtps#234>)
  * use uint8_array (#240 <ros2/rmw_fastrtps#240>)
  * Contributors: Jacob Perron, Juan Carlos, Karsten Knese, Michael Carroll, MiguelCompany, Ross Desmond
.
ros-rolling-rmw-fastrtps-shared-cpp (0.6.0-1jammy) jammy; urgency=high
.
  * use new error handling API from rcutils (#231 <ros2/rmw_fastrtps#231>)
  * Add semicolons to all RCLCPP and RCUTILS macros. (#229 <ros2/rmw_fastrtps#229>)
  * separating identity and permission CAs (#227 <ros2/rmw_fastrtps#227>)
  * Include node namespaces in get_node_names (#224 <ros2/rmw_fastrtps#224>)
  * allow builtin reader/writer to reallocate memory if needed (#221 <ros2/rmw_fastrtps#221>)
  * Improve runtime performance of rmw_count_XXX functions (#216 <ros2/rmw_fastrtps#216>) (#217 <ros2/rmw_fastrtps#217>)
  * Merge pull request #218 <ros2/rmw_fastrtps#218> from ros2/pr203
  * Refs #3061 <https://github.com/ros2/rmw_fastrtps/issues/3061>. Leaving common code only on rmw_fastrtps_shared_cpp.
  * Refs #3061 <https://github.com/ros2/rmw_fastrtps/issues/3061>. Package rmw_fastrtps_cpp copied to rmw_fastrtps_shared_cpp.
  * Contributors: Chris Lalancette, Dirk Thomas, Guillaume Autran, Michael Carroll, Miguel Company, Mikael Arguedas, William Woodall
.
ros-rolling-rmw-fastrtps-shared-cpp (0.5.1-1jammy) jammy; urgency=high
.
.
.
ros-rolling-rmw-fastrtps-shared-cpp (0.5.0-1jammy) jammy; urgency=high
.
.
.
ros-rolling-rmw-fastrtps-shared-cpp (0.4.0-1jammy) jammy; urgency=high
timonegk pushed a commit to timonegk/ros-rolling-rmw-fastrtps-dynamic-cpp-release that referenced this pull request May 21, 2022
ros-rolling-rmw-fastrtps-dynamic-cpp (6.2.1-1jammy) jammy; urgency=high
.
  * Add content filter topic feature (#513 <ros2/rmw_fastrtps#513>)
  * Add sequence numbers to message info structure (#587 <ros2/rmw_fastrtps#587>)
  * Contributors: Chen Lihui, Ivan Santiago Paunovic
.
ros-rolling-rmw-fastrtps-dynamic-cpp (6.2.0-1jammy) jammy; urgency=high
.
  * Add EventsExecutor (#468 <ros2/rmw_fastrtps#468>)
  * Install headers to include/${PROJECT_NAME} (#578 <ros2/rmw_fastrtps#578>)
  * Contributors: Shane Loretz, iRobot ROS
.
ros-rolling-rmw-fastrtps-dynamic-cpp (6.1.2-1jammy) jammy; urgency=high
.
.
.
ros-rolling-rmw-fastrtps-dynamic-cpp (6.1.1-1jammy) jammy; urgency=high
.
.
.
ros-rolling-rmw-fastrtps-dynamic-cpp (6.1.0-1jammy) jammy; urgency=high
.
  * Add client/service QoS getters. (#560 <ros2/rmw_fastrtps#560>)
  * Contributors: mauropasse
.
ros-rolling-rmw-fastrtps-dynamic-cpp (6.0.0-1jammy) jammy; urgency=high
.
.
.
ros-rolling-rmw-fastrtps-dynamic-cpp (5.2.2-1jammy) jammy; urgency=high
.
  * Correctly recalculate serialized size on bounded sequences. (#540 <ros2/rmw_fastrtps#540>)
  * Fix type size alignment. (#550 <ros2/rmw_fastrtps#550>)
  * Contributors: Miguel Company
.
ros-rolling-rmw-fastrtps-dynamic-cpp (5.2.1-1jammy) jammy; urgency=high
.
.
.
ros-rolling-rmw-fastrtps-dynamic-cpp (5.2.0-1jammy) jammy; urgency=high
.
  * Add rmw_publisher_wait_for_all_acked support. (#519 <ros2/rmw_fastrtps#519>)
  * Contributors: Barry Xu
.
ros-rolling-rmw-fastrtps-dynamic-cpp (5.1.0-1jammy) jammy; urgency=high
.
  * Loan messages implementation (#523 <ros2/rmw_fastrtps#523>)
    * Added is_plain_ attribute to base TypeSupport.
    * Added new methods to base TypeSupport.
    * Implementation of rmw_borrow_loaned_message.
    * Implementation of rmw_return_loaned_message_from_publisher.
    * Enable loan messages on publishers of plain types.
    * Implementation for taking loaned messages.
    * Enable loan messages on subscriptions of plain types.
  * Contributors: Miguel Company
.
ros-rolling-rmw-fastrtps-dynamic-cpp (5.0.0-1jammy) jammy; urgency=high
.
  * Refactor to use DDS standard API (#518 <ros2/rmw_fastrtps#518>)
  * Unique network flows (#502 <ros2/rmw_fastrtps#502>)
  * updating quality declaration links (re: ros2/docs.ros2.org#52 <ros2/docs.ros2.org#52>) (#520 <ros2/rmw_fastrtps#520>)
  * Contributors: Miguel Company, shonigmann
.
ros-rolling-rmw-fastrtps-dynamic-cpp (4.5.0-1jammy) jammy; urgency=high
.
.
.
ros-rolling-rmw-fastrtps-dynamic-cpp (4.4.0-1jammy) jammy; urgency=high
.
  * Add RMW function to check QoS compatibility (#511 <ros2/rmw_fastrtps#511>)
  * Capture cdr exceptions (#505 <ros2/rmw_fastrtps#505>)
  * Load profiles based on topic names in rmw_fastrtps_dynamic_cpp (#497 <ros2/rmw_fastrtps#497>)
  * Contributors: Eduardo Ponz Segrelles, Jacob Perron, Miguel Company
.
ros-rolling-rmw-fastrtps-dynamic-cpp (4.3.0-1jammy) jammy; urgency=high
.
  * Set rmw_dds_common::GraphCache callback after init succeeds. (#496 <ros2/rmw_fastrtps#496>)
  * Handle typesupport errors on fetch. (#495 <ros2/rmw_fastrtps#495>)
  * Contributors: Michel Hidalgo
.
ros-rolling-rmw-fastrtps-dynamic-cpp (4.2.0-1jammy) jammy; urgency=high
.
.
.
ros-rolling-rmw-fastrtps-dynamic-cpp (4.1.0-1jammy) jammy; urgency=high
.
  * Check for correct context shutdown (#486 <ros2/rmw_fastrtps#486>)
  * New environment variable to change easily the publication mode (#470 <ros2/rmw_fastrtps#470>)
  * Contributors: Ignacio Montesino Valle, José Luis Bueno López
.
ros-rolling-rmw-fastrtps-dynamic-cpp (4.0.0-1jammy) jammy; urgency=high
.
  * Discriminate when the Client has gone from when the Client has not completely matched (#467 <ros2/rmw_fastrtps#467>)
    * Workaround when the client is gone before server sends response
    * Change add to the map to listener callback
  * Update the package.xml files with the latest Open Robotics maintainers (#459 <ros2/rmw_fastrtps#459>)
  * Update Quality Declarations and READMEs (#455 <ros2/rmw_fastrtps#455>)
    * Add QL of external dependencies to rmw_fastrtps_dynamic_cpp QD
    * Add QD links for dependencies to rmw_fastrtps_dynamic_cpp QD
    * Provide external dependencies QD links
    * Add README to rmw_fastrtps_dynamic
    * Add QD for rmw_fastrtps_dynamic
  * Contributors: JLBuenoLopez-eProsima, Jaime Martin Losa, José Luis Bueno López, Michael Jeronimo
.
ros-rolling-rmw-fastrtps-dynamic-cpp (3.1.4-1jammy) jammy; urgency=high
.
  * Ensure rmw_destroy_node() completes despite run-time errors. (#458 <ros2/rmw_fastrtps#458>)
  * Contributors: Michel Hidalgo
.
ros-rolling-rmw-fastrtps-dynamic-cpp (3.1.3-1jammy) jammy; urgency=high
.
  * Return RMW_RET_UNSUPPORTED in rmw_get_serialized_message_size (#452 <ros2/rmw_fastrtps#452>)
  * Contributors: Alejandro Hernández Cordero
.
ros-rolling-rmw-fastrtps-dynamic-cpp (3.1.2-1jammy) jammy; urgency=high
.
  * Updated publisher/subscription allocation and wait set API return codes (#443 <ros2/rmw_fastrtps#443>)
  * Added rmw_logging tests (#442 <ros2/rmw_fastrtps#442>)
  * Contributors: Alejandro Hernández Cordero
.
ros-rolling-rmw-fastrtps-dynamic-cpp (3.1.1-1jammy) jammy; urgency=high
.
  * Fix array get_function semantics (#448 <ros2/rmw_fastrtps#448>)
  * Make service/client construction/destruction implementation compliant (#445 <ros2/rmw_fastrtps#445>)
  * Make sure type can be unregistered successfully (#437 <ros2/rmw_fastrtps#437>)
  * Contributors: Barry Xu, Ivan Santiago Paunovic, Michel Hidalgo
.
ros-rolling-rmw-fastrtps-dynamic-cpp (3.1.0-1jammy) jammy; urgency=high
.
  * Add tests for native entity getters. (#439 <ros2/rmw_fastrtps#439>)
  * Avoid deadlock if graph update fails. (#438 <ros2/rmw_fastrtps#438>)
  * Contributors: Michel Hidalgo
.
ros-rolling-rmw-fastrtps-dynamic-cpp (3.0.0-1jammy) jammy; urgency=high
.
  * Call Domain::removePublisher while failure occurs in create_publisher (#434 <ros2/rmw_fastrtps#434>)
  * Avoid memory leaks and undefined behavior in rmw_fastrtps_dynamic_cpp typesupport code (#429 <ros2/rmw_fastrtps#429>)
  * Contributors: Barry Xu, Miguel Company
.
ros-rolling-rmw-fastrtps-dynamic-cpp (2.6.0-1jammy) jammy; urgency=high
.
  * Ensure compliant matched pub/sub count API. (#424 <ros2/rmw_fastrtps#424>)
  * Ensure compliant publisher QoS queries. (#425 <ros2/rmw_fastrtps#425>)
  * Contributors: Michel Hidalgo
.
ros-rolling-rmw-fastrtps-dynamic-cpp (2.5.0-1jammy) jammy; urgency=high
.
.
.
ros-rolling-rmw-fastrtps-dynamic-cpp (2.4.0-1jammy) jammy; urgency=high
.
  * Ensure compliant subscription API. (#419 <ros2/rmw_fastrtps#419>)
  * Contributors: Michel Hidalgo
.
ros-rolling-rmw-fastrtps-dynamic-cpp (2.3.0-1jammy) jammy; urgency=high
.
  * Ensure compliant publisher API. (#414 <ros2/rmw_fastrtps#414>)
  * Contributors: Michel Hidalgo
.
ros-rolling-rmw-fastrtps-dynamic-cpp (2.2.0-1jammy) jammy; urgency=high
.
  * Set context actual domain id (#410 <ros2/rmw_fastrtps#410>)
  * Contributors: Ivan Santiago Paunovic
.
ros-rolling-rmw-fastrtps-dynamic-cpp (2.1.0-1jammy) jammy; urgency=high
.
  * Ensure compliant node construction/destruction API. (#408 <ros2/rmw_fastrtps#408>)
  * Contributors: Michel Hidalgo
.
ros-rolling-rmw-fastrtps-dynamic-cpp (2.0.0-1jammy) jammy; urgency=high
.
  * Remove domain_id and localhost_only from node API (#407 <ros2/rmw_fastrtps#407>)
  * Amend rmw_init() implementation: require enclave. (#406 <ros2/rmw_fastrtps#406>)
  * Contributors: Ivan Santiago Paunovic, Michel Hidalgo
.
ros-rolling-rmw-fastrtps-dynamic-cpp (1.1.0-1jammy) jammy; urgency=high
.
  * Ensure compliant init/shutdown API implementation. (#401 <ros2/rmw_fastrtps#401>)
  * Finalize context iff shutdown. (#396 <ros2/rmw_fastrtps#396>)
  * Make service wait for response reader (#390 <ros2/rmw_fastrtps#390>)
  * Contributors: Michel Hidalgo, Miguel Company
.
ros-rolling-rmw-fastrtps-dynamic-cpp (1.0.1-1jammy) jammy; urgency=high
.
.
.
ros-rolling-rmw-fastrtps-dynamic-cpp (1.0.0-1jammy) jammy; urgency=high
.
  * Fix single rmw build for rmw_fastrtps_dynamic_cpp (#381 <ros2/rmw_fastrtps#381>)
  * Remove API related to manual by node liveliness (#379 <ros2/rmw_fastrtps#379>)
  * Contributors: Ivan Santiago Paunovic
.
ros-rolling-rmw-fastrtps-dynamic-cpp (0.9.1-1jammy) jammy; urgency=high
.
  * Added doxyfiles (#372 <ros2/rmw_fastrtps#372>)
  * Contributors: Alejandro Hernández Cordero
.
ros-rolling-rmw-fastrtps-dynamic-cpp (0.9.0-1jammy) jammy; urgency=high
.
  * Fixed rmw_fastrtps_dynamic_cpp package description. (#376 <ros2/rmw_fastrtps#376>)
  * Rename rosidl_message_bounds_t. (#373 <ros2/rmw_fastrtps#373>)
  * Feature/services timestamps. (#369 <ros2/rmw_fastrtps#369>)
  * Add support for taking a sequence of messages. (#366 <ros2/rmw_fastrtps#366>)
  * security-context -> enclave. (#365 <ros2/rmw_fastrtps#365>)
  * Rename rosidl_generator_c namespace to rosidl_runtime_c. (#367 <ros2/rmw_fastrtps#367>)
  * Remove custom typesupport for rmw_dds_common interfaces. (#364 <ros2/rmw_fastrtps#364>)
  * Added rosidl_runtime c and cpp depencencies. (#351 <ros2/rmw_fastrtps#351>)
  * Switch to one Participant per Context. (#312 <ros2/rmw_fastrtps#312>)
  * Add rmw_*_event_init() functions. (#354 <ros2/rmw_fastrtps#354>)
  * Fixing type support C/CPP mix on rmw_fastrtps_dynamic_cpp. (#350 <ros2/rmw_fastrtps#350>)
  * Fix build warning in Ubuntu Focal. (#346 <ros2/rmw_fastrtps#346>)
  * Code style only: wrap after open parenthesis if not in one line. (#347 <ros2/rmw_fastrtps#347>)
  * Passing down type support information (#342 <ros2/rmw_fastrtps#342>)
  * Implement functions to get publisher and subcription informations like QoS policies from topic name. (#336 <ros2/rmw_fastrtps#336>)
  * Contributors: Alejandro Hernández Cordero, Dirk Thomas, Ingo Lütkebohle, Ivan Santiago Paunovic, Jaison Titus, Miaofei Mei, Michael Carroll, Miguel Company, Mikael Arguedas
.
ros-rolling-rmw-fastrtps-dynamic-cpp (0.8.1-1jammy) jammy; urgency=high
.
  * use return_loaned_message_from (#334 <ros2/rmw_fastrtps#334>)
  * Restrict traffic to localhost only if env var is provided (#331 <ros2/rmw_fastrtps#331>)
  * Zero copy api (#322 <ros2/rmw_fastrtps#322>)
  * update signature for added pub/sub options (#329 <ros2/rmw_fastrtps#329>)
  * Contributors: Brian Marchi, Karsten Knese, William Woodall
.
ros-rolling-rmw-fastrtps-dynamic-cpp (0.8.0-1jammy) jammy; urgency=high
.
  * Add function for getting clients by node (#293 <ros2/rmw_fastrtps#293>)
  * Use rcpputils::find_and_replace instead of std::regex_replace (#291 <ros2/rmw_fastrtps#291>)
  * Export typesupport_fastrtps package dependencies (#294 <ros2/rmw_fastrtps#294>)
  * Implement get_actual_qos() for subscriptions (#287 <ros2/rmw_fastrtps#287>)
  * Contributors: Jacob Perron, M. M, kurcha01-arm
.
ros-rolling-rmw-fastrtps-dynamic-cpp (0.7.3-1jammy) jammy; urgency=high
.
.
.
ros-rolling-rmw-fastrtps-dynamic-cpp (0.7.2-1jammy) jammy; urgency=high
.
  * add support for WString in rmw_fastrtps_dynamic_cpp (#278 <ros2/rmw_fastrtps#278>)
  * Centralize topic name creation logic and update to match FastRTPS 1.8 API (#272 <ros2/rmw_fastrtps#272>)
  * Contributors: Dirk Thomas, Nick Burek
.
ros-rolling-rmw-fastrtps-dynamic-cpp (0.7.1-1jammy) jammy; urgency=high
.
  * Support arbitrary message namespaces  (#266 <ros2/rmw_fastrtps#266>)
  * Add qos interfaces with no-op (#271 <ros2/rmw_fastrtps#271>)
  * Updates for preallocation API. (#274 <ros2/rmw_fastrtps#274>)
  * Contributors: Jacob Perron, Michael Carroll, Ross Desmond
.
ros-rolling-rmw-fastrtps-dynamic-cpp (0.7.0-1jammy) jammy; urgency=high
.
  * Add function to get publisher actual qos settings (#267 <ros2/rmw_fastrtps#267>)
  * pass context to wait set and fini context (#252 <ros2/rmw_fastrtps#252>)
  * Add missing logic to dynamic RMW client implementation (#254 <ros2/rmw_fastrtps#254>)
  * Merge pull request #250 <ros2/rmw_fastrtps#250> from ros2/support_static_lib
  * use namespace_prefix from shared package
  * Use empty() instead of size() to check if a vector/map contains elements and fixed some incorrect logging (#245 <ros2/rmw_fastrtps#245>)
  * Contributors: Dirk Thomas, Jacob Perron, Johnny Willemsen, William Woodall, ivanpauno
.
ros-rolling-rmw-fastrtps-dynamic-cpp (0.6.1-1jammy) jammy; urgency=high
.
  * Add topic cache object for managing topic relations (#236 <ros2/rmw_fastrtps#236>)
  * Fastrtps 1.7.0 (#233 <ros2/rmw_fastrtps#233>)
  * RMW_FastRTPS configuration from XML only (#243 <ros2/rmw_fastrtps#243>)
  * refactor to support init options and context (#237 <ros2/rmw_fastrtps#237>)
  * Methods to retrieve matched counts on pub/sub (#234 <ros2/rmw_fastrtps#234>)
  * Fixing failing tests on rmw_fastrtps_dynamic_cpp. (#242 <ros2/rmw_fastrtps#242>)
  * use uint8_array (#240 <ros2/rmw_fastrtps#240>)
  * fix linter warnings (#241 <ros2/rmw_fastrtps#241>)
  * Contributors: Dirk Thomas, Juan Carlos, Karsten Knese, Michael Carroll, MiguelCompany, Ross Desmond, William Woodall
.
ros-rolling-rmw-fastrtps-dynamic-cpp (0.6.0-1jammy) jammy; urgency=high
.
  * Merge pull request #232 <ros2/rmw_fastrtps#232> from ros2/array-terminology
  * rename files
  * rename dynamic array to sequence
  * Add semicolons to all RCLCPP and RCUTILS macros. (#229 <ros2/rmw_fastrtps#229>)
  * Include node namespaces in get_node_names (#224 <ros2/rmw_fastrtps#224>)
  * add rmw_get_serialization_format (#215 <ros2/rmw_fastrtps#215>)
  * Merge pull request #218 <ros2/rmw_fastrtps#218> from ros2/pr203
  * Refs #3061 <https://github.com/ros2/rmw_fastrtps/issues/3061>. Adapting code on rmw_fastrtps_dynamic_cpp.
  * Refs #3061 <https://github.com/ros2/rmw_fastrtps/issues/3061>. Package rmw_fastrtps_cpp duplicated as rmw_fastrtps_dynamic_cpp.
  * Contributors: Chris Lalancette, Dirk Thomas, Karsten Knese, Michael Carroll, Miguel Company
.
ros-rolling-rmw-fastrtps-dynamic-cpp (0.5.1-1jammy) jammy; urgency=high
.
.
.
ros-rolling-rmw-fastrtps-dynamic-cpp (0.5.0-1jammy) jammy; urgency=high
.
.
.
ros-rolling-rmw-fastrtps-dynamic-cpp (0.4.0-1jammy) jammy; urgency=high
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants