-
Notifications
You must be signed in to change notification settings - Fork 1.4k
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
behavior_tree: migration to BT.CPP 4.5.x #4128
behavior_tree: migration to BT.CPP 4.5.x #4128
Conversation
The fastest I've ever reviewed 93 files 😆 I'll pick up the rest tomorrow |
I am realizing that this is more work than I expected and converted this to DRAFT. I will keep you posted on the progress; in the meantime, I added a list of TODOs in the description above |
OK, LMK explicitly when you want me to review again, I'll ignore updates until then Was |
@facontidavide, your PR has failed to build. Please check CI outputs and resolve issues. |
|
@SteveMacenski I believe that the tests on CI might be flaky, and I can not spot any relationship between those errors and my changes. Can you? |
@facontidavide your branch may be out of sync by several weeks. I fixed the spin tests if you rebase (something in the rclcpp libs changed in rolling and exposed some issues that this is just an application manifestation of). That spin test failure and the WPF flaky test were resolved in mainline - but either way you're probably right if you're only seeing those 2 that its not related to you. But, I do want to see coverage metrics after this transition, so rebase so that it'll generate |
Signed-off-by: Davide Faconti <[email protected]>
Signed-off-by: Davide Faconti <[email protected]>
Signed-off-by: Davide Faconti <[email protected]>
Signed-off-by: Davide Faconti <[email protected]>
Signed-off-by: Davide Faconti <[email protected]>
Signed-off-by: Davide Faconti <[email protected]>
a7cfba3
to
1cf3fb7
Compare
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #4128 +/- ##
==========================================
- Coverage 90.11% 90.04% -0.07%
==========================================
Files 432 432
Lines 19406 19407 +1
==========================================
- Hits 17487 17475 -12
- Misses 1919 1932 +13 ☔ View full report in Codecov by Sentry. |
Signed-off-by: Davide Faconti <[email protected]>
Signed-off-by: Davide Faconti <[email protected]>
5942a6f
to
8b07e54
Compare
Signed-off-by: Davide Faconti <[email protected]>
@SteveMacenski waiting for CI to confirm but tests should pass now. I added all the changes that I wanted to, also some test cases. let me know what you think. If you need more information about the SKIPPED status, just ask |
There's a DWB test that seems to be failing deterministically on this PR (2/2) which is odd. Its a known flaky test, but flaky means like 1/500 I see it, seeing it 2x in row here is extremely unusual. But, I think safely not your fault unless it fails for a third time right now. Let me know when you're ready. |
Code is ready to be reviewed, but I will investigate that |
Signed-off-by: Davide Faconti <[email protected]>
e72e99e
to
76a2b67
Compare
Signed-off-by: Davide Faconti <[email protected]>
Signed-off-by: Davide Faconti <[email protected]>
nav2_system_tests/src/behavior_tree/test_behavior_tree_node.cpp
Outdated
Show resolved
Hide resolved
@@ -32,6 +32,11 @@ BehaviorTreeEngine::BehaviorTreeEngine( | |||
for (const auto & p : plugin_libraries) { | |||
factory_.registerFromPlugin(loader.getOSName(p)); | |||
} | |||
|
|||
// FIXME: the next two line are needed for back-compatibility with BT.CPP 3.8.x |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please explain for my knowledge + file a separate ticket for this so its not forgotten. Also, why twice?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
the two lines are not the same :)
The explanation can be found here: BehaviorTree/BehaviorTree.CPP#755
In short, I changed the way these nodes work, but that change made things worse, so I am reverting it in 4.6.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I added this specifically because you mentioned that you don't want to use the "latest version".
This is the workaround, if you want to use 4.5 (a small price to pay)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
OK - please file a separate ticket as a reminder to us both about this - we don't accept inline FIXME / TODOs as proper documentation of issues (there are some in the codebase, but those all predate my tenure)
Signed-off-by: Davide Faconti <[email protected]>
Signed-off-by: Davide Faconti <[email protected]>
@facontidavide, your PR has failed to build. Please check CI outputs and resolve issues. |
Signed-off-by: Davide Faconti <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Last change - otherwise I went through the rest of the files and I approve
Question: What if a post-callback fails? The skipped is for pre-conditions not being met, do post-conditions throw or something? (also not mentioned in the v3 to v4 guide what is SOP) |
Signed-off-by: Davide Faconti <[email protected]>
@facontidavide, your PR has failed to build. Please check CI outputs and resolve issues. |
Signed-off-by: Davide Faconti <[email protected]>
Do you plan to backport this PR to humble? Thanks |
No, its not ABI compatible. |
* behavior_tree: migration to BT.CPP 4.5.x Signed-off-by: Davide Faconti <[email protected]> * fix formatting Signed-off-by: Davide Faconti <[email protected]> * fix lint warning Signed-off-by: Davide Faconti <[email protected]> * remove setStatus(BT::NodeStatus::IDLE) Signed-off-by: Davide Faconti <[email protected]> * handle SKIPPED state Signed-off-by: Davide Faconti <[email protected]> * fix SequenceStar Signed-off-by: Davide Faconti <[email protected]> * add tests Signed-off-by: Davide Faconti <[email protected]> * fix Signed-off-by: Davide Faconti <[email protected]> * fix unit tests Signed-off-by: Davide Faconti <[email protected]> * add emitWakeUpSignal() Signed-off-by: Davide Faconti <[email protected]> * fit test Signed-off-by: Davide Faconti <[email protected]> * fix Signed-off-by: Davide Faconti <[email protected]> * remove SequenceStar Signed-off-by: Davide Faconti <[email protected]> * remove SequenceStar Signed-off-by: Davide Faconti <[email protected]> * keep resetStatus() in action_node Signed-off-by: Davide Faconti <[email protected]> * add suggestions from peer reviewer Signed-off-by: Davide Faconti <[email protected]> * fix compilation Signed-off-by: Davide Faconti <[email protected]> --------- Signed-off-by: Davide Faconti <[email protected]> Signed-off-by: stevedan <[email protected]>
Signed-off-by: stevedan <[email protected]> New MPPI Cost Critic (Contrib: Brice Renaudeau) (ros-navigation#4090) * Share code Signed-off-by: Brice <[email protected]> * Update inflation_cost_critic.hpp - copyright - ifndef Signed-off-by: Brice <[email protected]> * fix lint cpp - extra space Signed-off-by: Brice <[email protected]> * Fix Smac Planner confined collision checker (ros-navigation#4055) * Update collision_checker.cpp Signed-off-by: Steve Macenski <[email protected]> * Fix tests Signed-off-by: Steve Macenski <[email protected]> * Update test_a_star.cpp Signed-off-by: Steve Macenski <[email protected]> --------- Signed-off-by: Brice <[email protected]> * Prevent analytic expansions from shortcutting Smac Planner feasible paths (ros-navigation#3962) * a potential solution to smac shortcutting * costmap reoslution * some fixes * completed prototype * some fixes for collision detection and performance * completing shortcutting fix * updating tests * adding readme --------- Signed-off-by: Steve Macenski <[email protected]> Signed-off-by: Brice <[email protected]> * change pointer free order in amcl to avoid use-after-free bug mentioned in ros-navigation#4068 (ros-navigation#4070) Signed-off-by: GoesM <[email protected]> Co-authored-by: GoesM <[email protected]> Signed-off-by: Brice <[email protected]> * [Smac Planner] Massive Improvement of Behavior for SE2 Footprint Checking (ie non-circular robots) In Confined Settings (ros-navigation#4067) * prototype to test SE2 footprint H improvements * some fixes * fixed * invert logic * Working final prototype to be tested * complete unit test conversions * Update inflation_layer.hpp Signed-off-by: Steve Macenski <[email protected]> --------- Signed-off-by: Steve Macenski <[email protected]> Signed-off-by: Brice <[email protected]> * Adding new Smac paper to readme Signed-off-by: Steve Macenski <[email protected]> Signed-off-by: Brice <[email protected]> * Update README.md Signed-off-by: Steve Macenski <[email protected]> Signed-off-by: Brice <[email protected]> * [behavior_tree] don't repeat yourself in "blackboard->set" (ros-navigation#4074) * don't repeat yourself: templates in tests Signed-off-by: Davide Faconti <[email protected]> * misse change Signed-off-by: Davide Faconti <[email protected]> --------- Signed-off-by: Davide Faconti <[email protected]> Signed-off-by: Brice <[email protected]> * Allow path end pose deviation revive (ros-navigation#4065) * Support stitching paths in compute path to poses * Update nav2_planner/src/planner_server.cpp Co-authored-by: Steve Macenski <[email protected]> * Rename parameter to allow_path_through_poses_goal_deviation * Fix description * restore nav2_params * missing whitespace * lint fix * removed parameter Signed-off-by: gg <[email protected]> * Update planner_server.hpp * Update planner_server.cpp --------- Signed-off-by: gg <[email protected]> Co-authored-by: pepisg <[email protected]> Co-authored-by: Pedro Alejandro González <[email protected]> Co-authored-by: Steve Macenski <[email protected]> Signed-off-by: Brice <[email protected]> * Updated code to use getInflationLayer() method (ros-navigation#4076) * updated code to use getInflationLayer method Signed-off-by: Jose Faria <[email protected]> * Fix linting Signed-off-by: Jose Faria <[email protected]> --------- Signed-off-by: Jose Faria <[email protected]> Signed-off-by: Brice <[email protected]> * 1594 twist stamped publisher (ros-navigation#4077) * Add TwistStamped to controller_server via TwistPublisher util * Add a new util class for publishing either Twist or TwistStamped * Add a new parameter for selecting to stamp the twist data * Consume TwistPublisher in nav2_controller Signed-off-by: Ryan Friedman <[email protected]> * Fix small issues * Unused variable * Incorrect doxygen Signed-off-by: Ryan Friedman <[email protected]> * Remove stored node and assert Signed-off-by: Ryan Friedman <[email protected]> * Add tests for node * Facing timeout even though it does the same thing as velocity smoother test Signed-off-by: Ryan Friedman <[email protected]> * Add missing spin call to solve timeout Signed-off-by: Ryan Friedman <[email protected]> * Fix copyright (me instead of intel) Signed-off-by: Ryan Friedman <[email protected]> * Add full test coverage with subscriber Signed-off-by: Ryan Friedman <[email protected]> * Remove unused rclcpp fixture * Can't use it due to needing to join the pub thread after rclcpp shuts down Signed-off-by: Ryan Friedman <[email protected]> * Use TwistStamped in nav2_behaviors Signed-off-by: Ryan Friedman <[email protected]> * Use TwistStamped in collision monitor node Signed-off-by: Ryan Friedman <[email protected]> * Add TwistStamped readme updates to velocity smoother Signed-off-by: Ryan Friedman <[email protected]> * Add TwistSubscriber implementation Signed-off-by: Ryan Friedman <[email protected]> * Fix syntax errors Signed-off-by: Ryan Friedman <[email protected]> * Use TwistSubscriber in test_velocity_smoother Signed-off-by: Ryan Friedman <[email protected]> * Use TwistSubscriber in assisted_teleop Signed-off-by: Ryan Friedman <[email protected]> * Use TwistSubscriber in collision monitor node Signed-off-by: Ryan Friedman <[email protected]> * Use TwistSubscriber in velocity smoother Signed-off-by: Ryan Friedman <[email protected]> * Remove unused code Signed-off-by: Ryan Friedman <[email protected]> * add timestamp and frame_id to TwistStamped message * Add missing utility include Signed-off-by: Ryan Friedman <[email protected]> * Document TwistPublisher and TwistSubscriber usage Signed-off-by: Ryan Friedman <[email protected]> * Use pass-by-reference * Instead of std::move(std::unique_ptr<TwistStamped>) Signed-off-by: Ryan Friedman <[email protected]> * Finish twist subscriber tests Signed-off-by: Ryan Friedman <[email protected]> * Add other constructor and docs Signed-off-by: Ryan Friedman <[email protected]> * Fix linter issues Signed-off-by: Ryan Friedman <[email protected]> * Manually fix paren alignment Signed-off-by: Ryan Friedman <[email protected]> * Remove GSoC reference Signed-off-by: Ryan Friedman <[email protected]> * Document twist bool param in README Signed-off-by: Ryan Friedman <[email protected]> * Handle twistPublisher in collision monitor * Implement behavior in the stamped callback * Unstamped callback calls the stamped callback * Switch to unique pointer for publisher Signed-off-by: Ryan Friedman <[email protected]> * Convert to using TwistStamped interally * Use incoming twistStamped timestamp if available * Convert all internal representations to use TwistStamped Signed-off-by: Ryan Friedman <[email protected]> * Remove nav2_util usage instructions Signed-off-by: Ryan Friedman <[email protected]> * Remove unused Twist only subscriber Signed-off-by: Ryan Friedman <[email protected]> * More linter fixes Signed-off-by: Ryan Friedman <[email protected]> * Prefer working with unique_ptr for cmd_vel * This makes it easier to switch to std::move instead of dereference on publish Signed-off-by: Ryan Friedman <[email protected]> * Completing twist stamped migration * shared to unique ptr Signed-off-by: Steve Macenski <[email protected]> * twist add stamps and properly propogated * nav2_util: fix for compiling with clang - Resolve error: moving a temporary object prevents copy elision [-Werror,-Wpessimizing-move] Signed-off-by: Rhys Mainwaring <[email protected]> --------- Signed-off-by: Ryan Friedman <[email protected]> Signed-off-by: Steve Macenski <[email protected]> Signed-off-by: Rhys Mainwaring <[email protected]> Co-authored-by: pedro-fuoco <[email protected]> Co-authored-by: Steve Macenski <[email protected]> Co-authored-by: Rhys Mainwaring <[email protected]> Signed-off-by: Brice <[email protected]> * Change costmap_queue to shared library (ros-navigation#4072) Signed-off-by: cybaol <[email protected]> Signed-off-by: Brice <[email protected]> * fix include of hpp Signed-off-by: Brice Renaudeau <[email protected]> * inflation cost optmiizations and cleanu * rename, add defaults, and docs * smoke test addition * lintg * normalize weight * update readme * increment cache * Update cost_critic.hpp Signed-off-by: Steve Macenski <[email protected]> * Update cost_critic.cpp Signed-off-by: Steve Macenski <[email protected]> --------- Signed-off-by: Brice <[email protected]> Signed-off-by: Steve Macenski <[email protected]> Signed-off-by: GoesM <[email protected]> Signed-off-by: Davide Faconti <[email protected]> Signed-off-by: gg <[email protected]> Signed-off-by: Jose Faria <[email protected]> Signed-off-by: Ryan Friedman <[email protected]> Signed-off-by: Rhys Mainwaring <[email protected]> Signed-off-by: cybaol <[email protected]> Signed-off-by: Brice Renaudeau <[email protected]> Co-authored-by: BriceRenaudeau <[email protected]> Co-authored-by: GoesM <[email protected]> Co-authored-by: GoesM <[email protected]> Co-authored-by: Davide Faconti <[email protected]> Co-authored-by: Joshua Wallace <[email protected]> Co-authored-by: pepisg <[email protected]> Co-authored-by: Pedro Alejandro González <[email protected]> Co-authored-by: jncfa <[email protected]> Co-authored-by: Ryan <[email protected]> Co-authored-by: pedro-fuoco <[email protected]> Co-authored-by: Rhys Mainwaring <[email protected]> Co-authored-by: Kino <[email protected]> [behavior_tree] support both ports and blackboard (ros-navigation#4060) * check result of blackboard->get and use halTree Signed-off-by: Davide Faconti <[email protected]> * remove unused header Signed-off-by: Davide Faconti <[email protected]> * BT: add port inputs when missing and use getInputPortOrBlackboard Signed-off-by: Davide Faconti <[email protected]> * add description Signed-off-by: Davide Faconti <[email protected]> * change return value of getInputPortOrBlackboard Signed-off-by: Davide Faconti <[email protected]> * updated tree XML Signed-off-by: Davide Faconti <[email protected]> --------- Signed-off-by: Davide Faconti <[email protected]> Use ament_export_targets for all targets (ros-navigation#4112) * Matches new internal ALIAS targets * Use ALIAS targets for all internal linkage * Remove unnecessary calls to ament_target_dependencies in test code * Export includes in proper folders for overlays in colcon Signed-off-by: Ryan Friedman <[email protected]> adding new Friends of Nav2 Sponsors! Update README.md (ros-navigation#4114) Signed-off-by: Steve Macenski <[email protected]> CI green P3 (ros-navigation#4117) Refactors `possible_inscribed_cost` to `possible_circumscribed_cost` in collision checker for smac_planner and mppi_controller (ros-navigation#4113). (ros-navigation#4118) * Utilizes circumscribed radius to assess potential collision points on the robot. * Ensures safety when the robot's center is outside the circumscribed radius, eliminating additional checks and optimizing CPU usage. Signed-off-by: Alan Xue <[email protected]> Added cast to float to getClosestAngularBin return for behavior consistency (ros-navigation#4123) * Added cast to float to getClosestAngularBin return for behavior consistency. Signed-off-by: Hunter Song <[email protected]> * Revised test name Signed-off-by: Hunter Song <[email protected]> --------- Signed-off-by: Hunter Song <[email protected]> Adding context to MPPI readme Signed-off-by: Steve Macenski <[email protected]> [behavior_tree] Add generate_nav2_tree_nodes_xml (ros-navigation#4073) * Add generate_nav2_tree_nodes_xml Signed-off-by: Davide Faconti <[email protected]> * behavior_tree: removed list of plugins from yaml Signed-off-by: Davide Faconti <[email protected]> * check result of get_parameter(plugin_lib_names) Signed-off-by: Davide Faconti <[email protected]> * fix previous commit (uncrustify) Signed-off-by: Davide Faconti <[email protected]> * revert change Signed-off-by: Davide Faconti <[email protected]> --------- Signed-off-by: Davide Faconti <[email protected]> Fix compilation with clang (ros-navigation#4131) Signed-off-by: Ramon Wijnands <[email protected]> code improvement based on feedback. Name changes and minor code improvement Signed-off-by: stevedan <[email protected]> Fix goal handle was not freed correctly (ros-navigation#4137) * Fix goal handle was not freed correctly * Update nav2_util/include/nav2_util/simple_action_server.hpp Signed-off-by: Steve Macenski <[email protected]> --------- Signed-off-by: Steve Macenski <[email protected]> Co-authored-by: Ziohang <[email protected]> Co-authored-by: Steve Macenski <[email protected]> Adding Nvidia as Gold Sponsor! (ros-navigation#4144) Prevent a possible segmentation fault (ros-navigation#4141) (ros-navigation#4147) * Prevent a possible segmentation fault Signed-off-by: Joni Pöllänen <[email protected]> * Cleanup Signed-off-by: Joni Pöllänen <[email protected]> --------- Signed-off-by: Joni Pöllänen <[email protected]> Updating stereolabs logo (ros-navigation#4158) Update README.md Signed-off-by: Steve Macenski <[email protected]> behavior_tree: migration to BT.CPP 4.5.x (ros-navigation#4128) * behavior_tree: migration to BT.CPP 4.5.x Signed-off-by: Davide Faconti <[email protected]> * fix formatting Signed-off-by: Davide Faconti <[email protected]> * fix lint warning Signed-off-by: Davide Faconti <[email protected]> * remove setStatus(BT::NodeStatus::IDLE) Signed-off-by: Davide Faconti <[email protected]> * handle SKIPPED state Signed-off-by: Davide Faconti <[email protected]> * fix SequenceStar Signed-off-by: Davide Faconti <[email protected]> * add tests Signed-off-by: Davide Faconti <[email protected]> * fix Signed-off-by: Davide Faconti <[email protected]> * fix unit tests Signed-off-by: Davide Faconti <[email protected]> * add emitWakeUpSignal() Signed-off-by: Davide Faconti <[email protected]> * fit test Signed-off-by: Davide Faconti <[email protected]> * fix Signed-off-by: Davide Faconti <[email protected]> * remove SequenceStar Signed-off-by: Davide Faconti <[email protected]> * remove SequenceStar Signed-off-by: Davide Faconti <[email protected]> * keep resetStatus() in action_node Signed-off-by: Davide Faconti <[email protected]> * add suggestions from peer reviewer Signed-off-by: Davide Faconti <[email protected]> * fix compilation Signed-off-by: Davide Faconti <[email protected]> --------- Signed-off-by: Davide Faconti <[email protected]> bug fix (ros-navigation#4160) Signed-off-by: Tianchu <[email protected]> Stop planner if the goal is cancelled (ros-navigation#4148) * Add support for stopping planners when the action is cancelled Signed-off-by: Kemal Bektas <[email protected]> * Support cancel in Smac planner Signed-off-by: Kemal Bektas <[email protected]> * Support cancel in Theta* planner Signed-off-by: Kemal Bektas <[email protected]> * Support cancel in Navfn planner Signed-off-by: Kemal Bektas <[email protected]> * Update nav2_system_tests to use cancel checker Signed-off-by: Kemal Bektas <[email protected]> * Add terminal_checking_interval parameter Signed-off-by: Kemal Bektas <[email protected]> * Handle timeout and cancel check on the same branch and default to 5000 iterations Signed-off-by: Kemal Bektas <[email protected]> * Add system tests for cancel Signed-off-by: Kemal Bektas <[email protected]> --------- Signed-off-by: Kemal Bektas <[email protected]> Co-authored-by: Kemal Bektas <[email protected]> Improvement on the wat the distance heuristic is calculated Signed-off-by: stevedan <[email protected]> Fix BT.CPP import (ros-navigation#4165) Signed-off-by: Tony Najjar <[email protected]> Update default recommendation from Obstacles to Cost critic in MPPI (ros-navigation#4170) Signed-off-by: Steve Macenski <[email protected]> nav2_controller: add loop rate log (ros-navigation#4171) * update smac_planner README Signed-off-by: ARK3r <[email protected]> * added current controller loop rate logging Signed-off-by: ARK3r <[email protected]> * linting Signed-off-by: ARK3r <[email protected]> * uncrustify lint Signed-off-by: ARK3r <[email protected]> * Update nav2_controller/src/controller_server.cpp Signed-off-by: Steve Macenski <[email protected]> * Update nav2_controller/src/controller_server.cpp Signed-off-by: Steve Macenski <[email protected]> * Update nav2_controller/src/controller_server.cpp Signed-off-by: Steve Macenski <[email protected]> --------- Signed-off-by: ARK3r <[email protected]> Signed-off-by: Steve Macenski <[email protected]> Co-authored-by: Steve Macenski <[email protected]> improvement based on feedback Signed-off-by: stevedan <[email protected]>
* behavior_tree: migration to BT.CPP 4.5.x Signed-off-by: Davide Faconti <[email protected]> * fix formatting Signed-off-by: Davide Faconti <[email protected]> * fix lint warning Signed-off-by: Davide Faconti <[email protected]> * remove setStatus(BT::NodeStatus::IDLE) Signed-off-by: Davide Faconti <[email protected]> * handle SKIPPED state Signed-off-by: Davide Faconti <[email protected]> * fix SequenceStar Signed-off-by: Davide Faconti <[email protected]> * add tests Signed-off-by: Davide Faconti <[email protected]> * fix Signed-off-by: Davide Faconti <[email protected]> * fix unit tests Signed-off-by: Davide Faconti <[email protected]> * add emitWakeUpSignal() Signed-off-by: Davide Faconti <[email protected]> * fit test Signed-off-by: Davide Faconti <[email protected]> * fix Signed-off-by: Davide Faconti <[email protected]> * remove SequenceStar Signed-off-by: Davide Faconti <[email protected]> * remove SequenceStar Signed-off-by: Davide Faconti <[email protected]> * keep resetStatus() in action_node Signed-off-by: Davide Faconti <[email protected]> * add suggestions from peer reviewer Signed-off-by: Davide Faconti <[email protected]> * fix compilation Signed-off-by: Davide Faconti <[email protected]> --------- Signed-off-by: Davide Faconti <[email protected]>
* behavior_tree: migration to BT.CPP 4.5.x Signed-off-by: Davide Faconti <[email protected]> * fix formatting Signed-off-by: Davide Faconti <[email protected]> * fix lint warning Signed-off-by: Davide Faconti <[email protected]> * remove setStatus(BT::NodeStatus::IDLE) Signed-off-by: Davide Faconti <[email protected]> * handle SKIPPED state Signed-off-by: Davide Faconti <[email protected]> * fix SequenceStar Signed-off-by: Davide Faconti <[email protected]> * add tests Signed-off-by: Davide Faconti <[email protected]> * fix Signed-off-by: Davide Faconti <[email protected]> * fix unit tests Signed-off-by: Davide Faconti <[email protected]> * add emitWakeUpSignal() Signed-off-by: Davide Faconti <[email protected]> * fit test Signed-off-by: Davide Faconti <[email protected]> * fix Signed-off-by: Davide Faconti <[email protected]> * remove SequenceStar Signed-off-by: Davide Faconti <[email protected]> * remove SequenceStar Signed-off-by: Davide Faconti <[email protected]> * keep resetStatus() in action_node Signed-off-by: Davide Faconti <[email protected]> * add suggestions from peer reviewer Signed-off-by: Davide Faconti <[email protected]> * fix compilation Signed-off-by: Davide Faconti <[email protected]> --------- Signed-off-by: Davide Faconti <[email protected]> Signed-off-by: enricosutera <[email protected]>
* behavior_tree: migration to BT.CPP 4.5.x Signed-off-by: Davide Faconti <[email protected]> * fix formatting Signed-off-by: Davide Faconti <[email protected]> * fix lint warning Signed-off-by: Davide Faconti <[email protected]> * remove setStatus(BT::NodeStatus::IDLE) Signed-off-by: Davide Faconti <[email protected]> * handle SKIPPED state Signed-off-by: Davide Faconti <[email protected]> * fix SequenceStar Signed-off-by: Davide Faconti <[email protected]> * add tests Signed-off-by: Davide Faconti <[email protected]> * fix Signed-off-by: Davide Faconti <[email protected]> * fix unit tests Signed-off-by: Davide Faconti <[email protected]> * add emitWakeUpSignal() Signed-off-by: Davide Faconti <[email protected]> * fit test Signed-off-by: Davide Faconti <[email protected]> * fix Signed-off-by: Davide Faconti <[email protected]> * remove SequenceStar Signed-off-by: Davide Faconti <[email protected]> * remove SequenceStar Signed-off-by: Davide Faconti <[email protected]> * keep resetStatus() in action_node Signed-off-by: Davide Faconti <[email protected]> * add suggestions from peer reviewer Signed-off-by: Davide Faconti <[email protected]> * fix compilation Signed-off-by: Davide Faconti <[email protected]> --------- Signed-off-by: Davide Faconti <[email protected]>
* behavior_tree: migration to BT.CPP 4.5.x Signed-off-by: Davide Faconti <[email protected]> * fix formatting Signed-off-by: Davide Faconti <[email protected]> * fix lint warning Signed-off-by: Davide Faconti <[email protected]> * remove setStatus(BT::NodeStatus::IDLE) Signed-off-by: Davide Faconti <[email protected]> * handle SKIPPED state Signed-off-by: Davide Faconti <[email protected]> * fix SequenceStar Signed-off-by: Davide Faconti <[email protected]> * add tests Signed-off-by: Davide Faconti <[email protected]> * fix Signed-off-by: Davide Faconti <[email protected]> * fix unit tests Signed-off-by: Davide Faconti <[email protected]> * add emitWakeUpSignal() Signed-off-by: Davide Faconti <[email protected]> * fit test Signed-off-by: Davide Faconti <[email protected]> * fix Signed-off-by: Davide Faconti <[email protected]> * remove SequenceStar Signed-off-by: Davide Faconti <[email protected]> * remove SequenceStar Signed-off-by: Davide Faconti <[email protected]> * keep resetStatus() in action_node Signed-off-by: Davide Faconti <[email protected]> * add suggestions from peer reviewer Signed-off-by: Davide Faconti <[email protected]> * fix compilation Signed-off-by: Davide Faconti <[email protected]> --------- Signed-off-by: Davide Faconti <[email protected]>
Basic Info
Description of contribution in a few bullet points
Moving from BT.CPP 3.8 to BT.CPP 4.5 (latest in Rolling).
TODO:
NodeStatus::SKIPPED
in Control Nodes and Decorators.List of changes:
BTCPP_format="4"
to root and removing the redundantmain_tree_to_execute
blackboard->get
is[[nodiscard]]
in BT.CPP 4.x.ReactiveSequence
andReactiveFallback
tickRoot
renamed totickOnce
Description of documentation updates required from your changes
None of these changes should affect the user's code, nor in terms of Behavior or API.
But we need to add the migration guide to the website.
I will also need to update mine here: https://www.behaviortree.dev/docs/migration
Future work that may be required in bullet points
blackboard->get
prevent the use of SubTrees, but not the topic of this PR.For Maintainers: