Commit Graph

1976 Commits

Author SHA1 Message Date
CY Chen
0b4d3d01c6 Add acceptable_buffer_backends field in SubscriptionOptionsBase
Signed-off-by: CY Chen <cyc@nvidia.com>
2026-03-16 17:19:13 +00:00
Danil
b6e9b4c9b4 Expose ServiceType in Service public API (#3088)
Signed-off-by: Danil <danil.nev@gmail.com>
2026-03-12 09:53:26 -07:00
solo
8cd4d47ec5 Avoid unecessary creation of MultiThreadedExecutor (#3090)
Signed-off-by: solonovamax <solonovamax@12oclockpoint.com>
2026-03-12 15:59:22 +01:00
Janosch Machowinski
f145c9ee04 perf: Optimized out shared_ptr copies (#3079)
* perf: Optimized out shared_ptr copies

Signed-off-by: Janosch Machowinski <J.Machowinski@cellumation.com>

* chore: indentation

Signed-off-by: Janosch Machowinski <J.Machowinski@cellumation.com>

---------

Signed-off-by: Janosch Machowinski <J.Machowinski@cellumation.com>
Co-authored-by: Janosch Machowinski <j.machowinski@cellumation.com>
2026-03-03 13:43:55 +01:00
Tomoya Fujita
dea57660b5 avoid stale parameter events in content filter tests. (#3085)
* avoid stale parameter events in content filter tests.

Signed-off-by: Tomoya Fujita <Tomoya.Fujita@sony.com>

* honor the test purpose to call add_parameter_callback().

Signed-off-by: Tomoya Fujita <Tomoya.Fujita@sony.com>

* make cpplint happy.

Signed-off-by: Tomoya Fujita <Tomoya.Fujita@sony.com>

---------

Signed-off-by: Tomoya Fujita <Tomoya.Fujita@sony.com>
2026-03-03 09:00:58 +09:00
Tomoya Fujita
aea98d665a improve lookup time for matches_any_publishers() (#3084)
* Reapply "improve lookup time for matches_any_publishers(). (#3068)" (#3077)

This reverts commit 1bf4e6a810.

Signed-off-by: Tomoya Fujita <Tomoya.Fujita@sony.com>

* a few extra fixes to harden the hash map lookup.

Signed-off-by: Tomoya Fujita <Tomoya.Fujita@sony.com>

* add missing include.

Signed-off-by: Tomoya Fujita <Tomoya.Fujita@sony.com>

---------

Signed-off-by: Tomoya Fujita <Tomoya.Fujita@sony.com>
2026-02-27 08:01:28 +09:00
Julien Enoch
87be5fbfd4 Add tests isolation (#3081)
Signed-off-by: Julien Enoch <julien.e@zettascale.tech>
2026-02-21 16:49:21 +09:00
Tomoya Fujita
1bf4e6a810 Revert "improve lookup time for matches_any_publishers(). (#3068)" (#3077)
This reverts commit b6730f9d4e.

Signed-off-by: Tomoya.Fujita <Tomoya.Fujita@sony.com>
2026-02-20 12:16:35 +01:00
pum1k
fc1afcb3bc Fix component registering in subdirectories (#3064)
Signed-off-by: pum1k <55055380+pum1k@users.noreply.github.com>
2026-02-19 10:03:08 +01:00
Tomoya Fujita
b6730f9d4e improve lookup time for matches_any_publishers(). (#3068)
Signed-off-by: Tomoya Fujita <Tomoya.Fujita@sony.com>
2026-02-18 15:44:33 +01:00
Janosch Machowinski
9f79f40621 fix: Use default rcl allocator if allocator is std::allocator (#3058)
* fix: Use default rcl allocator if allocator is std::allocator

This fixes a bunch of warnings if using ASAN / valgrind on newer
OS versions. It also fixed a real bug, as giving the wrong size
on deallocate is undefined behavior according to the C++ standard.

This version of the patch keeps the behavior for users that
specified an own allocator the same and in therefore back portable.

Signed-off-by: Janosch Machowinski <J.Machowinski@cellumation.com>

* feat: Provide a way to suppress the deprecation warning

This commit adds the feature, that the user can now specify a method
rcl_allocator_t get_rcl_allocator() on the given allocator. This method
will be called if present, to get the rcl allocator.
If the method is not present, the code will fall back to the old
(and faulty) implementation and show a deprecation warning.

Signed-off-by: Janosch Machowinski <J.Machowinski@cellumation.com>

---------

Signed-off-by: Janosch Machowinski <J.Machowinski@cellumation.com>
Co-authored-by: Janosch Machowinski <j.machowinski@cellumation.com>
2026-02-16 21:20:09 +01:00
Janosch Machowinski
6ff4d83498 fix: Various data races in test cases (#3057)
Signed-off-by: Janosch Machowinski <j.machowinski@cellumation.com>
Co-authored-by: Janosch Machowinski <j.machowinski@cellumation.com>
2026-02-11 22:25:06 +01:00
Janosch Machowinski
4d950baa15 fix: Fix data race in CallbackGroup::size() (#3056)
The computation of the size was not protected by a mutex, leading
to possible data races.

Signed-off-by: Janosch Machowinski <J.Machowinski@cellumation.com>
Co-authored-by: Janosch Machowinski <J.Machowinski@cellumation.com>
2026-02-11 18:05:09 +01:00
Alejandro Hernandez Cordero
866c56d153 30.1.5 30.1.5 2026-02-09 13:28:44 +01:00
Alejandro Hernandez Cordero
6a244e3305 Changelog
Signed-off-by: Alejandro Hernandez Cordero <ahcorde@gmail.com>
2026-02-09 13:28:42 +01:00
Jasper van Brakel
bddd6105c2 Compatiblity with 'Populate Transitions' ros2/rcl#1269 (#2967)
Signed-off-by: SuperJappie08 <36795178+SuperJappie08@users.noreply.github.com>
2026-02-04 09:10:38 +09:00
YuJin Hong
38cfc4c215 Add library dependency to node executable in rclcpp_components_register_node (#3047)
Fixes #2868

The executable created by rclcpp_components_register_node now depends on
the library target, ensuring the library is rebuilt when the executable
is rebuilt.

Added SKIP_LIBRARY_DEPENDENCY option for cases where the plugin is
provided by a different package.

Signed-off-by: dbwls99706 <yujinhong3@gmail.com>
2026-02-02 14:29:47 +01:00
Tomoya Fujita
b009212508 remove default: so that compiler can detect the missing case. (#3048)
Signed-off-by: Tomoya Fujita <Tomoya.Fujita@sony.com>
2026-02-02 12:31:55 +01:00
Tomoya Fujita
c7065f7f34 use weak_ptr for rcl entities in the memory strategy. (#2988)
Signed-off-by: Tomoya Fujita <Tomoya.Fujita@sony.com>
2026-02-01 13:26:38 +09:00
Tomoya Fujita
db7469798f remove test_static_executor_entities_collector.cpp (#3041)
Signed-off-by: Tomoya Fujita <Tomoya.Fujita@sony.com>
2026-01-30 08:48:08 +09:00
Tomoya Fujita
5ac7f1f024 include the 1st spin that might throw the exception. (#3042)
Signed-off-by: Tomoya Fujita <Tomoya.Fujita@sony.com>
Co-authored-by: Janosch Machowinski <J.Machowinski@cellumation.com>
2026-01-29 18:17:22 +01:00
Tomoya Fujita
f8a7ace7a8 print warning message on owner node if the parameter operation fails. (#3037)
Signed-off-by: Tomoya Fujita <Tomoya.Fujita@sony.com>
2026-01-28 08:22:17 +09:00
Rahat Dhande
fcc505f453 fix context in wait for message wait set (#3030)
Signed-off-by: Rahat Dhande <rahatchd@gmail.com>
2026-01-22 14:38:37 +01:00
Michael Carroll
841a4632a4 Revert "construct wait set with passed in context (#3021)" (#3028)
This reverts commit cd86362f75.
2026-01-22 07:41:27 +09:00
Rahat Dhande
cd86362f75 construct wait set with passed in context (#3021) 2026-01-21 14:24:10 +01:00
Andrei Costinescu
6397047d47 Update exception documentation for goal cancellation in ServerGoalHandle (#3019)
* Update exception documentation for goal cancellation

The documentation for the canceled function is misleading.
Previously, the description said: 
1. "Only call this if the goal is canceling." and 
2. "\throws rclcpp::exceptions::RCLError If the goal is in any state besides executing."
This is a contradiction.
Experimentally verified that if the goal is executing and this method is called, an error is thrown. This makes the second statement wrong => correct the statement in the documentation.

Signed-off-by: Andrei Costinescu <AndreiCostinescu@users.noreply.github.com>
2026-01-20 09:57:19 +01:00
Barry Xu
7f783cbf58 Improve the robustness of the TopicEndpointInfo constructor (#3013)
* Improve the robustness of the TopicEndpointInfo constructor

Signed-off-by: Barry Xu <barry.xu@sony.com>

* Improve TopicEndpointInfo constructor to validate input parameters

Signed-off-by: Barry Xu <barry.xu@sony.com>

---------

Signed-off-by: Barry Xu <barry.xu@sony.com>
2026-01-10 15:35:59 +01:00
Maurice Alexander Purnawan
c85ff926d2 Deprecate the shared_ptr<MessageT> subscription callback signatures (#2975)
Signed-off-by: mini-1235 <mauricepurnawan@gmail.com>
2025-12-26 17:03:47 +01:00
Alejandro Hernandez Cordero
a4a72ac544 30.1.4 30.1.4 2025-12-23 11:05:21 +01:00
Alejandro Hernandez Cordero
4e166cbed3 Changelog
Signed-off-by: Alejandro Hernandez Cordero <ahcorde@gmail.com>
2025-12-23 11:05:17 +01:00
Alejandro Hernández Cordero
6cbb994aca Updated deprecated ament_index_cpp API (#3011)
Signed-off-by: Alejandro Hernandez Cordero <ahcorde@gmail.com>
2025-12-23 10:27:30 +01:00
fabianhirmann
825b4e4650 Unified Node Interfaces: Add const version of get_node_x_interface() (#3006)
Signed-off-by: Fabian Hirmann <f.hirmann@arti-robots.com>
2025-12-16 10:24:41 +01:00
Lucas Wendland
41c7f68013 Parameter Descriptor Simplification (#2179)
Signed-off-by: CursedRock17 <mtglucas1@gmail.com>
Co-authored-by: Alejandro Hernandez Cordero <ahcorde@gmail.com>
2025-12-05 10:13:49 +01:00
Barry Xu
02caec12c3 ParameterEventHandler support ContentFiltering (#2971)
* ParameterEventHandler support ContentFiltering

Signed-off-by: Barry Xu <barry.xu@sony.com>

* Address review comments

Signed-off-by: Barry Xu <barry.xu@sony.com>

---------

Signed-off-by: Barry Xu <barry.xu@sony.com>
2025-12-03 16:45:45 +09:00
Andrianov Roman
87a4cefb83 update policy_name_from_kind && test_qos (#2156)
Signed-off-by: Splinter1984 <rom.andrianov1984@gmail.com>
Co-authored-by: Alejandro Hernandez Cordero <ahcorde@gmail.com>
2025-12-01 13:35:41 +01:00
Michael Orlov
d3c95a6a46 Add ability to disable and enable subscription's callbacks (#2985)
* Add disable(enable)_callbacks() API to the subscriptions

Signed-off-by: Michael Orlov <morlovmr@gmail.com>

* Add test coverage for the disable(enable)_calbacks()

Signed-off-by: Michael Orlov <morlovmr@gmail.com>

* Address code review comments. Add missing includes in tests

Signed-off-by: Michael Orlov <morlovmr@gmail.com>

* Don't trace callback in dispatch methods if callbacks are disabled

Signed-off-by: Michael Orlov <morlovmr@gmail.com>

* Protect enable/disable callbacks and callbacks execution with mutex

Reasoning:
 To avoid possible UB when callbacks disabled during callback
 execution and callback handler object deleted while execution hasn't
 been finished yet.

Signed-off-by: Michael Orlov <morlovmr@gmail.com>

* Renames for shadowed callback_mutex_ from the EventHandlerBase

Note: We can't reuse `on_new_event_callback_mutex_` from the
EventHandlerBase because those mutex used to protect another type of
callbacks.

Signed-off-by: Michael Orlov <morlovmr@gmail.com>

* Temporary removes the on_new_[message]event on disable_callbacks()

Note: While we are temporary removes the on new message callback and all
 on new event callbacks from the underlying rmw layer to prevent them
 from being called. We can't guarantee that the currently executing
 on_new_[message]event callbacks are finished before we exit from the
 disable_callbacks().

Signed-off-by: Michael Orlov <morlovmr@gmail.com>

* Use recursive_mutex for callback lock in any_subscription_callback

Signed-off-by: Michael Orlov <morlovmr@gmail.com>

* Address CI warnings about usage of deprecated rclcpp::spin_some(node)

- Use spin_some() from the rclcpp::executors::SingleThreadedExecutor
 directly.

Signed-off-by: Michael Orlov <morlovmr@gmail.com>

---------

Signed-off-by: Michael Orlov <morlovmr@gmail.com>
2025-11-27 11:09:49 -08:00
yadunund
1500449c11 Switch to isolated testing via rmw_test_fixture (#2929)
Signed-off-by: Yadunund <yadunund@gmail.com>
Signed-off-by: Alejandro Hernandez Cordero <ahcorde@gmail.com>
Co-authored-by: Alejandro Hernandez Cordero <ahcorde@gmail.com>
2025-11-25 10:48:28 +01:00
Tomoya Fujita
95cb964a3b remove I/O from signal handler. (#2986)
Signed-off-by: Tomoya Fujita <Tomoya.Fujita@sony.com>
2025-11-19 11:37:04 +01:00
Alejandro Hernandez Cordero
f160024ba4 30.1.3 30.1.3 2025-11-18 11:09:53 +01:00
Alejandro Hernandez Cordero
e6ea37ed5a Changelog
Signed-off-by: Alejandro Hernandez Cordero <ahcorde@gmail.com>
2025-11-18 11:09:49 +01:00
Yuchen966
354413c060 correct test function descriptions (#2970)
Signed-off-by: Yuchen Liu <lyuchen9696@gmail.com>
2025-11-17 15:51:23 +01:00
Minju, Lee
63bdf2add4 add : get clients, servers info (#2569)
Signed-off-by: Minju, Lee <dlalswn531@naver.com>
2025-11-17 13:43:50 +01:00
Tim Clephas
ad019b9827 Fix REP url locations (#2987)
This popped up in my global replace

Signed-off-by: Tim Clephas <tim.clephas@nobleo.nl>
2025-11-17 10:01:03 +01:00
Zheng Qu
eb49444c32 Add get_parameter_or overload returning value or alternative (#2973)
Signed-off-by: Zheng Qu <quzhengrobot@gmail.com>
2025-11-07 12:24:01 +01:00
Alejandro Hernandez Cordero
4d14414d91 30.1.2 30.1.2 2025-10-21 11:43:39 +02:00
Alejandro Hernandez Cordero
7fcc7e723c Changelog
Signed-off-by: Alejandro Hernandez Cordero <ahcorde@gmail.com>
2025-10-21 11:43:35 +02:00
Tomoya Fujita
db4f9c21de clear handles before node destruction in test_memory_strategy. (#2969)
Signed-off-by: Tomoya Fujita <Tomoya.Fujita@sony.com>
2025-10-21 08:50:48 +09:00
Ivo Ivanov
8499404709 Added static assert asserting custom types have no overloaded operator new (#2954)
Signed-off-by: Ivo Ivanov <ivo.ivanov@tha.de>
2025-10-20 09:14:36 +02:00
Skyler Medeiros
715a983c9f Store graph listener inside the context instead of the node graph (#2952)
* factor shutdown hook registration into its own method

Signed-off-by: Skyler Medeiros <smedeiros@irobot.com>

* run ament_uncrustify

Signed-off-by: Skyler Medeiros <smedeiros@irobot.com>

* consistent use of is_shutdown in graph-listener

Signed-off-by: Skyler Medeiros <smedeiros@irobot.com>

* this doesn't actually need to be a separate function

Signed-off-by: Skyler Medeiros <smedeiros@irobot.com>

* whitespace

Signed-off-by: Skyler Medeiros <smedeiros@irobot.com>

* fix typo

Signed-off-by: Skyler Medeiros <smedeiros@irobot.com>

* move graph listener into the context

Signed-off-by: Skyler Medeiros <smedeiros@irobot.com>

* make cpplint happy

Signed-off-by: Skyler Medeiros <smedeiros@irobot.com>

* Update rclcpp/src/rclcpp/context.cpp

Signed-off-by: Skyler Medeiros <smedeiros@irobot.com>

---------

Signed-off-by: Skyler Medeiros <smedeiros@irobot.com>
2025-10-09 10:09:39 +09:00
Tomoya Fujita
cd9099d85b Reapply "Catch the exception from rate.sleep() if the context is invalid. (#2956)" (#2963) (#2964)
This reverts commit 6fbf03945f.

Signed-off-by: Tomoya Fujita <Tomoya.Fujita@sony.com>
2025-10-06 17:12:43 +09:00