Fix error parsing subtree when loading from file path#5950
Fix error parsing subtree when loading from file path#5950SteveMacenski merged 20 commits intoros-navigation:mainfrom
Conversation
This reverts commit 00dfd67. Signed-off-by: mini-1235 <mauricepurnawan@gmail.com>
Signed-off-by: mini-1235 <mauricepurnawan@gmail.com>
Signed-off-by: mini-1235 <mauricepurnawan@gmail.com>
16916a8 to
61c5236
Compare
|
This PR reverts #5938 and #5594. I believe the correct logic should be:
|
|
Thanks @mini-1235 Tested:
|
Yeah, I think this is expected since it can be confusing which BT is being referenced if there are duplicate ids and the tree is requested by id. In that case, I would expect the user to see this warning and update their BTs accordingly. But I am open to suggestions on how to make this clearer, perhaps doing something similar to what was proposed in #5938? |
|
The other failing test seems to be related to 797a171 |
I think that would be nice. Thought it is already better since it doesn't have the |
SteveMacenski
left a comment
There was a problem hiding this comment.
Seems like this may drop a feature or two accidentally
nav2_behavior_tree/include/nav2_behavior_tree/bt_action_server_impl.hpp
Outdated
Show resolved
Hide resolved
nav2_behavior_tree/include/nav2_behavior_tree/bt_action_server_impl.hpp
Outdated
Show resolved
Hide resolved
nav2_behavior_tree/include/nav2_behavior_tree/bt_action_server_impl.hpp
Outdated
Show resolved
Hide resolved
Signed-off-by: mini-1235 <mauricepurnawan@gmail.com>
Signed-off-by: mini-1235 <mauricepurnawan@gmail.com>
Codecov Report✅ All modified and coverable lines are covered by tests.
... and 5 files with indirect coverage changes 🚀 New features to boost your workflow:
|
SteveMacenski
left a comment
There was a problem hiding this comment.
Generally LGTM as long as it does what we need functionally!
| auto id = bt_->extractBehaviorTreeID(entry.path().string()); | ||
| if (id.empty()) { | ||
| auto tree_info = bt_->parseTreeInfo(entry.path().string()); | ||
| if (tree_info.all_ids.empty()) { |
There was a problem hiding this comment.
What about renaming all_ids to behavior_tree_ids, so in the new struct BTInfo:
main_id -> the ID provided in main_tree_to_execute
behavior_tree_ids -> all <BehaviorTree> tag IDs
Can you clarify? I don't think we are using main_id in this function
There was a problem hiding this comment.
Shouldn't the main_id be checked as required, not all_ids? But I think from the recent comments below, this point is much less important - semantically it will have the same effect
There was a problem hiding this comment.
We are looping through all ids to check if it has been registered, so I think we should still check all instead of main here
Signed-off-by: mini-1235 <mauricepurnawan@gmail.com>
I tested these again with my latest version, and everything looks fine to me |
Signed-off-by: mini-1235 <mauricepurnawan@gmail.com>
Signed-off-by: Maurice Alexander Purnawan <mauricepurnawan@gmail.com>
I didn't do a full test again now, just tested our main xml file, and it is working with this PR, even when requesting a filename |
Thank you @adivardi ! |
…present Signed-off-by: mini-1235 <mauricepurnawan@gmail.com>
SteveMacenski
left a comment
There was a problem hiding this comment.
LGTM - did you update / add all the testing you wanted?
Signed-off-by: mini-1235 <mauricepurnawan@gmail.com>
|
022477e added some test cases, hopefully this covers all the corner cases :) |
SteveMacenski
left a comment
There was a problem hiding this comment.
@adivardi are you happy with the final changes as well?
|
In general looks good, also tested a few scenarios and it is working fine. |
|
Great, thanks for being persistent on this issue & thanks @mini-1235 for handling this! |
…#5950) * Revert "Changing BT loading warning to be more clear (ros-navigation#5938)" This reverts commit 517ebf4. Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Revert "Bt warning fix (ros-navigation#5594)" This reverts commit 00dfd67. Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Fix subtree parsing error when using filepath Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Revert unrelated changes Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Lint Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Fix test Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Apply suggestions Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Second prototype Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Lint Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Fix test Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Apply suggestions Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Lint Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Lint Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Only require main id when using filepath Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Fix comment formatting in behavior_tree_engine.cpp Signed-off-by: Maurice Alexander Purnawan <mauricepurnawan@gmail.com> * Lint Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Fix test Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Require main_tree_to_execute to be set if multiple BehaviorTree tags present Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Add test to cover corner case Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> --------- Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> Signed-off-by: Maurice Alexander Purnawan <mauricepurnawan@gmail.com> Signed-off-by: panav <panav@10xconstruction.com>
…#5950) * Revert "Changing BT loading warning to be more clear (ros-navigation#5938)" This reverts commit 517ebf4. Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Revert "Bt warning fix (ros-navigation#5594)" This reverts commit 00dfd67. Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Fix subtree parsing error when using filepath Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Revert unrelated changes Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Lint Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Fix test Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Apply suggestions Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Second prototype Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Lint Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Fix test Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Apply suggestions Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Lint Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Lint Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Only require main id when using filepath Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Fix comment formatting in behavior_tree_engine.cpp Signed-off-by: Maurice Alexander Purnawan <mauricepurnawan@gmail.com> * Lint Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Fix test Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Require main_tree_to_execute to be set if multiple BehaviorTree tags present Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Add test to cover corner case Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> --------- Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> Signed-off-by: Maurice Alexander Purnawan <mauricepurnawan@gmail.com> Signed-off-by: panav <panav@10xconstruction.com>
…#5950) * Revert "Changing BT loading warning to be more clear (ros-navigation#5938)" This reverts commit 517ebf4. Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Revert "Bt warning fix (ros-navigation#5594)" This reverts commit 00dfd67. Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Fix subtree parsing error when using filepath Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Revert unrelated changes Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Lint Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Fix test Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Apply suggestions Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Second prototype Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Lint Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Fix test Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Apply suggestions Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Lint Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Lint Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Only require main id when using filepath Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Fix comment formatting in behavior_tree_engine.cpp Signed-off-by: Maurice Alexander Purnawan <mauricepurnawan@gmail.com> * Lint Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Fix test Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Require main_tree_to_execute to be set if multiple BehaviorTree tags present Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Add test to cover corner case Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> --------- Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> Signed-off-by: Maurice Alexander Purnawan <mauricepurnawan@gmail.com>
…#5950) * Revert "Changing BT loading warning to be more clear (ros-navigation#5938)" This reverts commit 517ebf4. Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Revert "Bt warning fix (ros-navigation#5594)" This reverts commit 00dfd67. Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Fix subtree parsing error when using filepath Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Revert unrelated changes Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Lint Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Fix test Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Apply suggestions Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Second prototype Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Lint Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Fix test Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Apply suggestions Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Lint Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Lint Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Only require main id when using filepath Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Fix comment formatting in behavior_tree_engine.cpp Signed-off-by: Maurice Alexander Purnawan <mauricepurnawan@gmail.com> * Lint Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Fix test Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Require main_tree_to_execute to be set if multiple BehaviorTree tags present Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Add test to cover corner case Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> --------- Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> Signed-off-by: Maurice Alexander Purnawan <mauricepurnawan@gmail.com> Signed-off-by: panav <panav@10xconstruction.com>
…#5950) * Revert "Changing BT loading warning to be more clear (ros-navigation#5938)" This reverts commit 517ebf4. Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Revert "Bt warning fix (ros-navigation#5594)" This reverts commit 00dfd67. Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Fix subtree parsing error when using filepath Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Revert unrelated changes Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Lint Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Fix test Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Apply suggestions Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Second prototype Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Lint Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Fix test Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Apply suggestions Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Lint Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Lint Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Only require main id when using filepath Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Fix comment formatting in behavior_tree_engine.cpp Signed-off-by: Maurice Alexander Purnawan <mauricepurnawan@gmail.com> * Lint Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Fix test Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Require main_tree_to_execute to be set if multiple BehaviorTree tags present Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Add test to cover corner case Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> --------- Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> Signed-off-by: Maurice Alexander Purnawan <mauricepurnawan@gmail.com> Signed-off-by: panav <panav@10xconstruction.com> Signed-off-by: Maurice <mauricepurnawan@gmail.com>
…#5950) * Revert "Changing BT loading warning to be more clear (ros-navigation#5938)" This reverts commit 517ebf4. Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Revert "Bt warning fix (ros-navigation#5594)" This reverts commit 00dfd67. Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Fix subtree parsing error when using filepath Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Revert unrelated changes Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Lint Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Fix test Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Apply suggestions Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Second prototype Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Lint Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Fix test Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Apply suggestions Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Lint Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Lint Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Only require main id when using filepath Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Fix comment formatting in behavior_tree_engine.cpp Signed-off-by: Maurice Alexander Purnawan <mauricepurnawan@gmail.com> * Lint Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Fix test Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Require main_tree_to_execute to be set if multiple BehaviorTree tags present Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> * Add test to cover corner case Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> --------- Signed-off-by: mini-1235 <mauricepurnawan@gmail.com> Signed-off-by: Maurice Alexander Purnawan <mauricepurnawan@gmail.com>
Basic Info
Description of contribution in a few bullet points
Description of documentation updates required from your changes
Description of how this change was tested
Future work that may be required in bullet points
For Maintainers:
backport-*.