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

Add velocity based polygon #3708

Merged
merged 36 commits into from
Feb 5, 2024

Conversation

kaichie
Copy link
Contributor

@kaichie kaichie commented Jul 23, 2023


Basic Info

Info Please fill out this column
Ticket(s) this addresses #3313
Primary OS tested on (Ubuntu)
Robotic platform tested on Nav2 TB3 /Dexory gazebo simulation

Description of contribution in a few bullet points

  • Adds velocity based polygon as a new Polygon type in Collision Monitor

Description of documentation updates required from your changes

  • Added new polygon_velocity type, so need to add that to default configs and documentation page(configuration, tutorial + migration)

Future work that may be required in bullet points

  • Add odom speed condition check (linear, direction + theta too) for speed based polygon. (Better control on when to switch based on actual speed)

For Maintainers:

  • Check that any new parameters added are updated in navigation.ros.org
  • Check that any significant change is added to the migration guide
  • Check that any new features OR changes to existing behaviors are reflected in the tuning guide
  • Check that any new functions have Doxygen added
  • Check that any new features have test coverage
  • Check that any new plugins is added to the plugins page
  • If BT Node, Additionally: add to BT's XML index of nodes for groot, BT package's readme table, and BT library lists

Copy link
Collaborator

@AlexeyMerzlyakov AlexeyMerzlyakov left a comment

Choose a reason for hiding this comment

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

Overall approach seems good for me.

The rotation at the place could be handled by making small polygon inside when the linear velocity is equal to 0.0 (+ epsilon).

Another point, that developer could intentionally leave some ranges in the velocities, where no one polygon_velocity will be applied. This case should be tracked (informed, or warned), but I do not see any reason to check all the velocity ranges in {linear, angular} space preliminary for the consistency before we will apply the rules.

The question with overlapped polygons_velocity for one polygon remains to be discussed: should we find safest polygon_velocity responsing to the input velocity, or agree that velocity ranges within one polygon shouldn't be overlapped?

Please note, that circles will not have an ability of polygons_velocity utilization (which is OK from my point of view, and already handled by this change as polygons_velocity_ vector is not being initialized in the constructor).

There are some changes to be noted in the review items below, please refer to them

nav2_collision_monitor/src/polygon_velocity.cpp Outdated Show resolved Hide resolved
nav2_collision_monitor/src/collision_monitor_node.cpp Outdated Show resolved Hide resolved
nav2_collision_monitor/src/polygon.cpp Outdated Show resolved Hide resolved
nav2_collision_monitor/src/polygon.cpp Outdated Show resolved Hide resolved
nav2_collision_monitor/src/polygon_velocity.cpp Outdated Show resolved Hide resolved
nav2_collision_monitor/src/polygon.cpp Outdated Show resolved Hide resolved
nav2_collision_monitor/src/polygon.cpp Outdated Show resolved Hide resolved
@codecov
Copy link

codecov bot commented Jul 25, 2023

Codecov Report

Attention: 82 lines in your changes are missing coverage. Please review.

Comparison is base (a8a0c3a) 64.68% compared to head (898d8c0) 90.06%.

❗ Current head 898d8c0 differs from pull request most recent head 680f7ca. Consider uploading reports for the commit 680f7ca to get more accurate results

Files Patch % Lines
nav2_collision_monitor/src/velocity_polygon.cpp 0.00% 76 Missing ⚠️
..._collision_monitor/src/collision_detector_node.cpp 25.00% 3 Missing ⚠️
...2_collision_monitor/src/collision_monitor_node.cpp 40.00% 3 Missing ⚠️
Additional details and impacted files
@@             Coverage Diff             @@
##             main    #3708       +/-   ##
===========================================
+ Coverage   64.68%   90.06%   +25.37%     
===========================================
  Files         415      416        +1     
  Lines       18701    18732       +31     
===========================================
+ Hits        12097    16871     +4774     
+ Misses       6604     1861     -4743     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@kaichie
Copy link
Contributor Author

kaichie commented Jul 29, 2023

Another point, that developer could intentionally leave some ranges in the velocities, where no one polygon_velocity will be applied. This case should be tracked (informed, or warned), but I do not see any reason to check all the velocity ranges in {linear, angular} space preliminary for the consistency before we will apply the rules.

@AlexeyMerzlyakov Regarding of this point, the warning(on run-time) of uncovered velocity is added in this commit. If the user is intentionally leaving some ranges in the velocities, then this might conflict with what we were discussing in the issue to check the full range velocity(@SteveMacenski). We might need to specify the intended gap(s) in the config but I think this will greatly increase the complexity of setting it up.

@SteveMacenski
Copy link
Member

I commented back on the main ticket thread on that topic. Maybe just logging is enough if we provide good example profiles with the documentation

@SteveMacenski
Copy link
Member

Blah blah blah, the usual bits on documentation (readme + configuration guide + migration guide) and test coverage :-)

@mergify
Copy link
Contributor

mergify bot commented Aug 14, 2023

This pull request is in conflict. Could you fix it @kaichie?

@SteveMacenski
Copy link
Member

Any update? I think we're on the same page now, its just about adding your graphic to the docs so that things are clear to end-users & a trivial renaming of the params

@kaichie
Copy link
Contributor Author

kaichie commented Aug 31, 2023

Yes I think we are on the same page now. Sorry I was quite occupied in the last two weeks. I will jump back into this on the coming weekend!

@kaichie
Copy link
Contributor Author

kaichie commented Sep 3, 2023

The core features have been updated based on the reviews and discussions above. Documentation and test cases are currently in progress, with more to follow later this week.

@SteveMacenski
Copy link
Member

Great!

nav2_collision_monitor/src/velocity_polygon.cpp Outdated Show resolved Hide resolved
nav2_collision_monitor/src/polygon.cpp Outdated Show resolved Hide resolved
nav2_collision_monitor/src/polygon.cpp Outdated Show resolved Hide resolved
Copy link
Collaborator

@AlexeyMerzlyakov AlexeyMerzlyakov left a comment

Choose a reason for hiding this comment

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

Review in progress. More comments will arrive shortly

nav2_collision_monitor/CMakeLists.txt Show resolved Hide resolved
nav2_collision_monitor/src/polygon.cpp Outdated Show resolved Hide resolved
@mergify
Copy link
Contributor

mergify bot commented Sep 13, 2023

This pull request is in conflict. Could you fix it @kaichie?

@kaichie
Copy link
Contributor Author

kaichie commented Jan 7, 2024

@SteveMacenski @AlexeyMerzlyakov I have rewrite the VelocityPolygon class, using Polygon as it's base class and will be added as a new type -- velocity_polygon. All parameter reading and logic are now consolidated within the same file, which looks much cleaner. I have also updated the code based on the feedback and reviews.

Copy link
Member

@SteveMacenski SteveMacenski left a comment

Choose a reason for hiding this comment

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

@kaichie pull in main, any remaining linting failure are then things this PR introduces. Obviously, we need to address test coverage of this feature but its understandable that you haven't gotten there yet given the level of rewriting we've asked for. You should prioritize this now, no more large changes needed. I assume you tested this on the robot / simulation to make sure at a high level it works?

Very close now :-)

kaichie and others added 3 commits January 17, 2024 09:53
@kaichie
Copy link
Contributor Author

kaichie commented Jan 17, 2024

Updated the reviewed comments and added unit tests.

I assume you tested this on the robot / simulation to make sure at a high level it works?

Re-tested the latest changes using the nav2 tb3 simulation:

cm_test.mp4

Next is to finish up the documentation.

Signed-off-by: nelson <[email protected]>
Signed-off-by: nelson <[email protected]>
@SteveMacenski
Copy link
Member

SteveMacenski commented Jan 17, 2024

  • Docs: migration guide about changes, configuration guide with new params and brief description at top, tutorial show velocity polygons, and readme updates appropriate
  • Docs: explain the open comments on the direction for omni, definitions of angles using the table you made, etc
  • A nice video, for tutorial / readme

Then we can move on to the other PRs

  • Approach model using dynamics for slowing down based on decelleration distances
  • Approach model report in status message if the actual robot footprint (t = 0) is in collision causing a deadlock
  • Option to use cmd_vel or odom for each velocity polygon
  • allowing different limits for different sub-polygon

Copy link
Member

@SteveMacenski SteveMacenski left a comment

Choose a reason for hiding this comment

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

@doisyg please review

@kaichie your test coverage is being picked up now, that's all good. I have a few doc requests in the website PR though

nav2_collision_monitor/README.md Show resolved Hide resolved
Signed-off-by: nelson <[email protected]>
@doisyg
Copy link
Contributor

doisyg commented Feb 5, 2024

Finally tested and looks good to me! Great work!
Once thing that could be improved (probably as a separate PR) is an example of how to configure a velocity_polygon with action_type: "limit". When trying, I naively filled linear_limit and angular_limit in the sub-polygon parameter spaces (with no effect). Maybe worth considering allowing different limits for different sub-polygon ?

@SteveMacenski SteveMacenski merged commit 8070aea into ros-navigation:main Feb 5, 2024
9 of 11 checks passed
@SteveMacenski
Copy link
Member

SteveMacenski commented Feb 5, 2024

Added to @kaichie TODO list above: #3708 (comment)

@kaichie which are your next steps?

MichaelT64 pushed a commit to MichaelT64/navigation2 that referenced this pull request Feb 16, 2024
* add velocity based polygon

* fix header, copyright and variable name change

* optimise polygon update

* optimise duplicated code with setPolygonShape

* add warning log for uncovered speed

* update feedback

* rename polygon velocity to velocity polygon

* cleanup

* fix typo

* add dynamic support for velocity polygon

* wrap try catch for getting parameters

* update naming and linting

* use switch case

* Revert "use switch case"

This reverts commit 1230ede.

* fix proper return for invalid parameters

* remove topic parameter for velocity polygon

* fix formatting manually

* continue if points are not defined

* rewrite velocity polygon with polygon base class

Signed-off-by: nelson <[email protected]>

* update review comments and description

Signed-off-by: nelson <[email protected]>

* add VelocityPolygon to detector node

Signed-off-by: nelson <[email protected]>

* review update

Signed-off-by: nelson <[email protected]>

* fix cpplint

Signed-off-by: nelson <[email protected]>

* Update nav2_collision_monitor/src/velocity_polygon.cpp

Co-authored-by: Steve Macenski <[email protected]>
Signed-off-by: nelson <[email protected]>

* add velocity polygon tests

Signed-off-by: nelson <[email protected]>

* fix cpplint

Signed-off-by: nelson <[email protected]>

* add in-line comment

Signed-off-by: nelson <[email protected]>

* fix push back

Signed-off-by: nelson <[email protected]>

* minor change and update README

Signed-off-by: nelson <[email protected]>

* update README

Signed-off-by: nelson <[email protected]>

---------

Signed-off-by: nelson <[email protected]>
Co-authored-by: Steve Macenski <[email protected]>
% Conflicts:
%	nav2_collision_monitor/CMakeLists.txt
%	nav2_collision_monitor/README.md
%	nav2_collision_monitor/include/nav2_collision_monitor/collision_detector_node.hpp
%	nav2_collision_monitor/params/collision_monitor_params.yaml
%	nav2_collision_monitor/src/collision_detector_node.cpp
%	nav2_collision_monitor/src/collision_monitor_node.cpp
%	nav2_collision_monitor/src/polygon.cpp
%	nav2_collision_monitor/test/collision_monitor_node_test.cpp
%	nav2_collision_monitor/test/polygons_test.cpp
SteveMacenski added a commit that referenced this pull request Apr 4, 2024
* add velocity based polygon

* fix header, copyright and variable name change

* optimise polygon update

* optimise duplicated code with setPolygonShape

* add warning log for uncovered speed

* update feedback

* rename polygon velocity to velocity polygon

* cleanup

* fix typo

* add dynamic support for velocity polygon

* wrap try catch for getting parameters

* update naming and linting

* use switch case

* Revert "use switch case"

This reverts commit 1230ede.

* fix proper return for invalid parameters

* remove topic parameter for velocity polygon

* fix formatting manually

* continue if points are not defined

* rewrite velocity polygon with polygon base class

Signed-off-by: nelson <[email protected]>

* update review comments and description

Signed-off-by: nelson <[email protected]>

* add VelocityPolygon to detector node

Signed-off-by: nelson <[email protected]>

* review update

Signed-off-by: nelson <[email protected]>

* fix cpplint

Signed-off-by: nelson <[email protected]>

* Update nav2_collision_monitor/src/velocity_polygon.cpp

Co-authored-by: Steve Macenski <[email protected]>
Signed-off-by: nelson <[email protected]>

* add velocity polygon tests

Signed-off-by: nelson <[email protected]>

* fix cpplint

Signed-off-by: nelson <[email protected]>

* add in-line comment

Signed-off-by: nelson <[email protected]>

* fix push back

Signed-off-by: nelson <[email protected]>

* minor change and update README

Signed-off-by: nelson <[email protected]>

* update README

Signed-off-by: nelson <[email protected]>

---------

Signed-off-by: nelson <[email protected]>
Co-authored-by: Steve Macenski <[email protected]>
SteveMacenski added a commit that referenced this pull request Apr 4, 2024
SteveMacenski added a commit that referenced this pull request Apr 4, 2024
* nav2_controller: add loop rate log (#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]>

* completely shutdown inital_pose_sub_ (#4176)

Signed-off-by: GoesM <[email protected]>
Co-authored-by: GoesM <[email protected]>

* chore(nav2_behavior_tree): log actual wait period in bt_action_node (#4178)

Signed-off-by: Felix <[email protected]>
Co-authored-by: Felix <[email protected]>

* replace throw-error with error-log to avoid UAF mentioned in #4175 (#4180)

* replace throw-error with error-log to avoid UAF

Signed-off-by: GoesM <[email protected]>

* fix typo

Signed-off-by: GoesM <[email protected]>

---------

Signed-off-by: GoesM <[email protected]>
Co-authored-by: GoesM <[email protected]>

* fix typos in description messages (#4188)

Signed-off-by: Antonio Park <[email protected]>

* AMCL: Set an initial guess by service call (#4182)

* Added initial guess service. Signed-off-by: Alexander Mock

Signed-off-by: Alexander Mock <[email protected]>

* - Removed added empty line
- Renamed initialGuessCallback to initialPoseReceivedSrv
- Added new line to SetInitialPose service definition
- Removed mutex from initialPoseReceived
- Cleanup service server

Signed-off-by: Alexander Mock <[email protected]>

* added whitespace

Signed-off-by: Alexander Mock <[email protected]>

* renamed initial pose service in callback bind

Signed-off-by: Alexander Mock <[email protected]>

---------

Signed-off-by: Alexander Mock <[email protected]>

* Move lines for pre-computation to outside a loop (#4191)

Signed-off-by: Kyungsik Park <[email protected]>

* Fix typo (#4196)

* Fix BT.CPP import

Signed-off-by: Tony Najjar <[email protected]>

* Update README.md

---------

Signed-off-by: Tony Najjar <[email protected]>

* Update footprint iif changed (#4193)

Signed-off-by: Brice <[email protected]>

* fix missing param declare (#4203)

Signed-off-by: nelson <[email protected]>

* Revert "nav2_controller: add loop rate log (#4171)" (#4210)

This reverts commit 4737462.

* add polygon_subscribe_transient_local parameter in collision monitor (#4207)

Signed-off-by: asarazin <[email protected]>
Co-authored-by: asarazin <[email protected]>

* nav2_controller: add loop rate log (#4228)

* added current loop rate printout

Signed-off-by: ARK3r <[email protected]>

* remove empty line

Signed-off-by: ARK3r <[email protected]>

---------

Signed-off-by: ARK3r <[email protected]>

* bump to 1.2.7 for iron sync

* change pointer free order in amcl to avoid use-after-free bug mentioned in #4068 (#4070)

Signed-off-by: GoesM <[email protected]>
Co-authored-by: GoesM <[email protected]>

* Allow path end pose deviation revive (#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]>

* Change costmap_queue to shared library (#4072)

Signed-off-by: cybaol <[email protected]>

* free `map_sub_` before `map_free(map_)` to avoid UAF&&NullPtr bug mentioned in #4078 (#4079)

* free `map_sub_` before `map_free(map_)`

Signed-off-by: GoesM <[email protected]>

* reformat

Signed-off-by: GoesM <[email protected]>

---------

Signed-off-by: GoesM <[email protected]>
Co-authored-by: GoesM <[email protected]>

* Fix typo (#4087)

Fix AttributeError: 'BasicNavigator' object has no attribute '_BasicNavigator__getPathThroughPosesImpl'

Signed-off-by: nfriedrich00 <[email protected]>

* Add velocity based polygon (#3708)

* add velocity based polygon

* fix header, copyright and variable name change

* optimise polygon update

* optimise duplicated code with setPolygonShape

* add warning log for uncovered speed

* update feedback

* rename polygon velocity to velocity polygon

* cleanup

* fix typo

* add dynamic support for velocity polygon

* wrap try catch for getting parameters

* update naming and linting

* use switch case

* Revert "use switch case"

This reverts commit 1230ede.

* fix proper return for invalid parameters

* remove topic parameter for velocity polygon

* fix formatting manually

* continue if points are not defined

* rewrite velocity polygon with polygon base class

Signed-off-by: nelson <[email protected]>

* update review comments and description

Signed-off-by: nelson <[email protected]>

* add VelocityPolygon to detector node

Signed-off-by: nelson <[email protected]>

* review update

Signed-off-by: nelson <[email protected]>

* fix cpplint

Signed-off-by: nelson <[email protected]>

* Update nav2_collision_monitor/src/velocity_polygon.cpp

Co-authored-by: Steve Macenski <[email protected]>
Signed-off-by: nelson <[email protected]>

* add velocity polygon tests

Signed-off-by: nelson <[email protected]>

* fix cpplint

Signed-off-by: nelson <[email protected]>

* add in-line comment

Signed-off-by: nelson <[email protected]>

* fix push back

Signed-off-by: nelson <[email protected]>

* minor change and update README

Signed-off-by: nelson <[email protected]>

* update README

Signed-off-by: nelson <[email protected]>

---------

Signed-off-by: nelson <[email protected]>
Co-authored-by: Steve Macenski <[email protected]>

* avoid implicit type case (#4098)

* adding progress checker selector BT node (#4109)

* New MPPI Cost Critic (Contrib: Brice Renaudeau) (#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  (#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: Steve Macenski <[email protected]>
Signed-off-by: Brice <[email protected]>

* Prevent analytic expansions from shortcutting Smac Planner feasible paths (#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 #4068 (#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 (#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" (#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 (#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 (#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 (#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 (#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]>

* Use ament_export_targets for all targets (#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]>

* Update default recommendation from Obstacles to Cost critic in MPPI (#4170)

Signed-off-by: Steve Macenski <[email protected]>

* fix merge conflict

* Revert "Add velocity based polygon (#3708)"

This reverts commit a3ed745.

* custom backported version of cost critic inscribed cost

---------

Signed-off-by: ARK3r <[email protected]>
Signed-off-by: Steve Macenski <[email protected]>
Signed-off-by: GoesM <[email protected]>
Signed-off-by: Felix <[email protected]>
Signed-off-by: Antonio Park <[email protected]>
Signed-off-by: Alexander Mock <[email protected]>
Signed-off-by: Kyungsik Park <[email protected]>
Signed-off-by: Tony Najjar <[email protected]>
Signed-off-by: Brice <[email protected]>
Signed-off-by: nelson <[email protected]>
Signed-off-by: asarazin <[email protected]>
Signed-off-by: gg <[email protected]>
Signed-off-by: cybaol <[email protected]>
Signed-off-by: nfriedrich00 <[email protected]>
Signed-off-by: Davide Faconti <[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: Brice Renaudeau <[email protected]>
Co-authored-by: Reza Kermani <[email protected]>
Co-authored-by: GoesM <[email protected]>
Co-authored-by: GoesM <[email protected]>
Co-authored-by: bi0ha2ard <[email protected]>
Co-authored-by: Felix <[email protected]>
Co-authored-by: Antonio Park <[email protected]>
Co-authored-by: Alexander Mock <[email protected]>
Co-authored-by: Tony Najjar <[email protected]>
Co-authored-by: BriceRenaudeau <[email protected]>
Co-authored-by: nelson <[email protected]>
Co-authored-by: anaelle-sw <[email protected]>
Co-authored-by: asarazin <[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: Kino <[email protected]>
Co-authored-by: nfriedrich00 <[email protected]>
Co-authored-by: Davide Faconti <[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]>
enricosutera pushed a commit to enricosutera/navigation2 that referenced this pull request May 19, 2024
* add velocity based polygon

* fix header, copyright and variable name change

* optimise polygon update

* optimise duplicated code with setPolygonShape

* add warning log for uncovered speed

* update feedback

* rename polygon velocity to velocity polygon

* cleanup

* fix typo

* add dynamic support for velocity polygon

* wrap try catch for getting parameters

* update naming and linting

* use switch case

* Revert "use switch case"

This reverts commit 1230ede.

* fix proper return for invalid parameters

* remove topic parameter for velocity polygon

* fix formatting manually

* continue if points are not defined

* rewrite velocity polygon with polygon base class

Signed-off-by: nelson <[email protected]>

* update review comments and description

Signed-off-by: nelson <[email protected]>

* add VelocityPolygon to detector node

Signed-off-by: nelson <[email protected]>

* review update

Signed-off-by: nelson <[email protected]>

* fix cpplint

Signed-off-by: nelson <[email protected]>

* Update nav2_collision_monitor/src/velocity_polygon.cpp

Co-authored-by: Steve Macenski <[email protected]>
Signed-off-by: nelson <[email protected]>

* add velocity polygon tests

Signed-off-by: nelson <[email protected]>

* fix cpplint

Signed-off-by: nelson <[email protected]>

* add in-line comment

Signed-off-by: nelson <[email protected]>

* fix push back

Signed-off-by: nelson <[email protected]>

* minor change and update README

Signed-off-by: nelson <[email protected]>

* update README

Signed-off-by: nelson <[email protected]>

---------

Signed-off-by: nelson <[email protected]>
Co-authored-by: Steve Macenski <[email protected]>
Signed-off-by: enricosutera <[email protected]>
maksymdidukh pushed a commit to logivations/navigation2 that referenced this pull request Jun 24, 2024
* 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]>

* completely shutdown inital_pose_sub_ (ros-navigation#4176)

Signed-off-by: GoesM <[email protected]>
Co-authored-by: GoesM <[email protected]>

* chore(nav2_behavior_tree): log actual wait period in bt_action_node (ros-navigation#4178)

Signed-off-by: Felix <[email protected]>
Co-authored-by: Felix <[email protected]>

* replace throw-error with error-log to avoid UAF mentioned in ros-navigation#4175 (ros-navigation#4180)

* replace throw-error with error-log to avoid UAF

Signed-off-by: GoesM <[email protected]>

* fix typo

Signed-off-by: GoesM <[email protected]>

---------

Signed-off-by: GoesM <[email protected]>
Co-authored-by: GoesM <[email protected]>

* fix typos in description messages (ros-navigation#4188)

Signed-off-by: Antonio Park <[email protected]>

* AMCL: Set an initial guess by service call (ros-navigation#4182)

* Added initial guess service. Signed-off-by: Alexander Mock

Signed-off-by: Alexander Mock <[email protected]>

* - Removed added empty line
- Renamed initialGuessCallback to initialPoseReceivedSrv
- Added new line to SetInitialPose service definition
- Removed mutex from initialPoseReceived
- Cleanup service server

Signed-off-by: Alexander Mock <[email protected]>

* added whitespace

Signed-off-by: Alexander Mock <[email protected]>

* renamed initial pose service in callback bind

Signed-off-by: Alexander Mock <[email protected]>

---------

Signed-off-by: Alexander Mock <[email protected]>

* Move lines for pre-computation to outside a loop (ros-navigation#4191)

Signed-off-by: Kyungsik Park <[email protected]>

* Fix typo (ros-navigation#4196)

* Fix BT.CPP import

Signed-off-by: Tony Najjar <[email protected]>

* Update README.md

---------

Signed-off-by: Tony Najjar <[email protected]>

* Update footprint iif changed (ros-navigation#4193)

Signed-off-by: Brice <[email protected]>

* fix missing param declare (ros-navigation#4203)

Signed-off-by: nelson <[email protected]>

* Revert "nav2_controller: add loop rate log (ros-navigation#4171)" (ros-navigation#4210)

This reverts commit 4737462.

* add polygon_subscribe_transient_local parameter in collision monitor (ros-navigation#4207)

Signed-off-by: asarazin <[email protected]>
Co-authored-by: asarazin <[email protected]>

* nav2_controller: add loop rate log (ros-navigation#4228)

* added current loop rate printout

Signed-off-by: ARK3r <[email protected]>

* remove empty line

Signed-off-by: ARK3r <[email protected]>

---------

Signed-off-by: ARK3r <[email protected]>

* bump to 1.2.7 for iron sync

* 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]>

* 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]>

* Change costmap_queue to shared library (ros-navigation#4072)

Signed-off-by: cybaol <[email protected]>

* free `map_sub_` before `map_free(map_)` to avoid UAF&&NullPtr bug mentioned in ros-navigation#4078 (ros-navigation#4079)

* free `map_sub_` before `map_free(map_)`

Signed-off-by: GoesM <[email protected]>

* reformat

Signed-off-by: GoesM <[email protected]>

---------

Signed-off-by: GoesM <[email protected]>
Co-authored-by: GoesM <[email protected]>

* Fix typo (ros-navigation#4087)

Fix AttributeError: 'BasicNavigator' object has no attribute '_BasicNavigator__getPathThroughPosesImpl'

Signed-off-by: nfriedrich00 <[email protected]>

* Add velocity based polygon (ros-navigation#3708)

* add velocity based polygon

* fix header, copyright and variable name change

* optimise polygon update

* optimise duplicated code with setPolygonShape

* add warning log for uncovered speed

* update feedback

* rename polygon velocity to velocity polygon

* cleanup

* fix typo

* add dynamic support for velocity polygon

* wrap try catch for getting parameters

* update naming and linting

* use switch case

* Revert "use switch case"

This reverts commit 1230ede.

* fix proper return for invalid parameters

* remove topic parameter for velocity polygon

* fix formatting manually

* continue if points are not defined

* rewrite velocity polygon with polygon base class

Signed-off-by: nelson <[email protected]>

* update review comments and description

Signed-off-by: nelson <[email protected]>

* add VelocityPolygon to detector node

Signed-off-by: nelson <[email protected]>

* review update

Signed-off-by: nelson <[email protected]>

* fix cpplint

Signed-off-by: nelson <[email protected]>

* Update nav2_collision_monitor/src/velocity_polygon.cpp

Co-authored-by: Steve Macenski <[email protected]>
Signed-off-by: nelson <[email protected]>

* add velocity polygon tests

Signed-off-by: nelson <[email protected]>

* fix cpplint

Signed-off-by: nelson <[email protected]>

* add in-line comment

Signed-off-by: nelson <[email protected]>

* fix push back

Signed-off-by: nelson <[email protected]>

* minor change and update README

Signed-off-by: nelson <[email protected]>

* update README

Signed-off-by: nelson <[email protected]>

---------

Signed-off-by: nelson <[email protected]>
Co-authored-by: Steve Macenski <[email protected]>

* avoid implicit type case (ros-navigation#4098)

* adding progress checker selector BT node (ros-navigation#4109)

* 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: 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]>

* 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]>

* Update default recommendation from Obstacles to Cost critic in MPPI (ros-navigation#4170)

Signed-off-by: Steve Macenski <[email protected]>

* fix merge conflict

* Revert "Add velocity based polygon (ros-navigation#3708)"

This reverts commit a3ed745.

* custom backported version of cost critic inscribed cost

---------

Signed-off-by: ARK3r <[email protected]>
Signed-off-by: Steve Macenski <[email protected]>
Signed-off-by: GoesM <[email protected]>
Signed-off-by: Felix <[email protected]>
Signed-off-by: Antonio Park <[email protected]>
Signed-off-by: Alexander Mock <[email protected]>
Signed-off-by: Kyungsik Park <[email protected]>
Signed-off-by: Tony Najjar <[email protected]>
Signed-off-by: Brice <[email protected]>
Signed-off-by: nelson <[email protected]>
Signed-off-by: asarazin <[email protected]>
Signed-off-by: gg <[email protected]>
Signed-off-by: cybaol <[email protected]>
Signed-off-by: nfriedrich00 <[email protected]>
Signed-off-by: Davide Faconti <[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: Brice Renaudeau <[email protected]>
Co-authored-by: Reza Kermani <[email protected]>
Co-authored-by: GoesM <[email protected]>
Co-authored-by: GoesM <[email protected]>
Co-authored-by: bi0ha2ard <[email protected]>
Co-authored-by: Felix <[email protected]>
Co-authored-by: Antonio Park <[email protected]>
Co-authored-by: Alexander Mock <[email protected]>
Co-authored-by: Tony Najjar <[email protected]>
Co-authored-by: BriceRenaudeau <[email protected]>
Co-authored-by: nelson <[email protected]>
Co-authored-by: anaelle-sw <[email protected]>
Co-authored-by: asarazin <[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: Kino <[email protected]>
Co-authored-by: nfriedrich00 <[email protected]>
Co-authored-by: Davide Faconti <[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]>
Marc-Morcos pushed a commit to Marc-Morcos/navigation2 that referenced this pull request Jul 4, 2024
* add velocity based polygon

* fix header, copyright and variable name change

* optimise polygon update

* optimise duplicated code with setPolygonShape

* add warning log for uncovered speed

* update feedback

* rename polygon velocity to velocity polygon

* cleanup

* fix typo

* add dynamic support for velocity polygon

* wrap try catch for getting parameters

* update naming and linting

* use switch case

* Revert "use switch case"

This reverts commit 1230ede.

* fix proper return for invalid parameters

* remove topic parameter for velocity polygon

* fix formatting manually

* continue if points are not defined

* rewrite velocity polygon with polygon base class

Signed-off-by: nelson <[email protected]>

* update review comments and description

Signed-off-by: nelson <[email protected]>

* add VelocityPolygon to detector node

Signed-off-by: nelson <[email protected]>

* review update

Signed-off-by: nelson <[email protected]>

* fix cpplint

Signed-off-by: nelson <[email protected]>

* Update nav2_collision_monitor/src/velocity_polygon.cpp

Co-authored-by: Steve Macenski <[email protected]>
Signed-off-by: nelson <[email protected]>

* add velocity polygon tests

Signed-off-by: nelson <[email protected]>

* fix cpplint

Signed-off-by: nelson <[email protected]>

* add in-line comment

Signed-off-by: nelson <[email protected]>

* fix push back

Signed-off-by: nelson <[email protected]>

* minor change and update README

Signed-off-by: nelson <[email protected]>

* update README

Signed-off-by: nelson <[email protected]>

---------

Signed-off-by: nelson <[email protected]>
Co-authored-by: Steve Macenski <[email protected]>
Marc-Morcos pushed a commit to Marc-Morcos/navigation2 that referenced this pull request Jul 4, 2024
* 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]>

* completely shutdown inital_pose_sub_ (ros-navigation#4176)

Signed-off-by: GoesM <[email protected]>
Co-authored-by: GoesM <[email protected]>

* chore(nav2_behavior_tree): log actual wait period in bt_action_node (ros-navigation#4178)

Signed-off-by: Felix <[email protected]>
Co-authored-by: Felix <[email protected]>

* replace throw-error with error-log to avoid UAF mentioned in ros-navigation#4175 (ros-navigation#4180)

* replace throw-error with error-log to avoid UAF

Signed-off-by: GoesM <[email protected]>

* fix typo

Signed-off-by: GoesM <[email protected]>

---------

Signed-off-by: GoesM <[email protected]>
Co-authored-by: GoesM <[email protected]>

* fix typos in description messages (ros-navigation#4188)

Signed-off-by: Antonio Park <[email protected]>

* AMCL: Set an initial guess by service call (ros-navigation#4182)

* Added initial guess service. Signed-off-by: Alexander Mock

Signed-off-by: Alexander Mock <[email protected]>

* - Removed added empty line
- Renamed initialGuessCallback to initialPoseReceivedSrv
- Added new line to SetInitialPose service definition
- Removed mutex from initialPoseReceived
- Cleanup service server

Signed-off-by: Alexander Mock <[email protected]>

* added whitespace

Signed-off-by: Alexander Mock <[email protected]>

* renamed initial pose service in callback bind

Signed-off-by: Alexander Mock <[email protected]>

---------

Signed-off-by: Alexander Mock <[email protected]>

* Move lines for pre-computation to outside a loop (ros-navigation#4191)

Signed-off-by: Kyungsik Park <[email protected]>

* Fix typo (ros-navigation#4196)

* Fix BT.CPP import

Signed-off-by: Tony Najjar <[email protected]>

* Update README.md

---------

Signed-off-by: Tony Najjar <[email protected]>

* Update footprint iif changed (ros-navigation#4193)

Signed-off-by: Brice <[email protected]>

* fix missing param declare (ros-navigation#4203)

Signed-off-by: nelson <[email protected]>

* Revert "nav2_controller: add loop rate log (ros-navigation#4171)" (ros-navigation#4210)

This reverts commit 4737462.

* add polygon_subscribe_transient_local parameter in collision monitor (ros-navigation#4207)

Signed-off-by: asarazin <[email protected]>
Co-authored-by: asarazin <[email protected]>

* nav2_controller: add loop rate log (ros-navigation#4228)

* added current loop rate printout

Signed-off-by: ARK3r <[email protected]>

* remove empty line

Signed-off-by: ARK3r <[email protected]>

---------

Signed-off-by: ARK3r <[email protected]>

* bump to 1.2.7 for iron sync

* 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]>

* 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]>

* Change costmap_queue to shared library (ros-navigation#4072)

Signed-off-by: cybaol <[email protected]>

* free `map_sub_` before `map_free(map_)` to avoid UAF&&NullPtr bug mentioned in ros-navigation#4078 (ros-navigation#4079)

* free `map_sub_` before `map_free(map_)`

Signed-off-by: GoesM <[email protected]>

* reformat

Signed-off-by: GoesM <[email protected]>

---------

Signed-off-by: GoesM <[email protected]>
Co-authored-by: GoesM <[email protected]>

* Fix typo (ros-navigation#4087)

Fix AttributeError: 'BasicNavigator' object has no attribute '_BasicNavigator__getPathThroughPosesImpl'

Signed-off-by: nfriedrich00 <[email protected]>

* Add velocity based polygon (ros-navigation#3708)

* add velocity based polygon

* fix header, copyright and variable name change

* optimise polygon update

* optimise duplicated code with setPolygonShape

* add warning log for uncovered speed

* update feedback

* rename polygon velocity to velocity polygon

* cleanup

* fix typo

* add dynamic support for velocity polygon

* wrap try catch for getting parameters

* update naming and linting

* use switch case

* Revert "use switch case"

This reverts commit 1230ede.

* fix proper return for invalid parameters

* remove topic parameter for velocity polygon

* fix formatting manually

* continue if points are not defined

* rewrite velocity polygon with polygon base class

Signed-off-by: nelson <[email protected]>

* update review comments and description

Signed-off-by: nelson <[email protected]>

* add VelocityPolygon to detector node

Signed-off-by: nelson <[email protected]>

* review update

Signed-off-by: nelson <[email protected]>

* fix cpplint

Signed-off-by: nelson <[email protected]>

* Update nav2_collision_monitor/src/velocity_polygon.cpp

Co-authored-by: Steve Macenski <[email protected]>
Signed-off-by: nelson <[email protected]>

* add velocity polygon tests

Signed-off-by: nelson <[email protected]>

* fix cpplint

Signed-off-by: nelson <[email protected]>

* add in-line comment

Signed-off-by: nelson <[email protected]>

* fix push back

Signed-off-by: nelson <[email protected]>

* minor change and update README

Signed-off-by: nelson <[email protected]>

* update README

Signed-off-by: nelson <[email protected]>

---------

Signed-off-by: nelson <[email protected]>
Co-authored-by: Steve Macenski <[email protected]>

* avoid implicit type case (ros-navigation#4098)

* adding progress checker selector BT node (ros-navigation#4109)

* 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: 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]>

* 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]>

* Update default recommendation from Obstacles to Cost critic in MPPI (ros-navigation#4170)

Signed-off-by: Steve Macenski <[email protected]>

* fix merge conflict

* Revert "Add velocity based polygon (ros-navigation#3708)"

This reverts commit a3ed745.

* custom backported version of cost critic inscribed cost

---------

Signed-off-by: ARK3r <[email protected]>
Signed-off-by: Steve Macenski <[email protected]>
Signed-off-by: GoesM <[email protected]>
Signed-off-by: Felix <[email protected]>
Signed-off-by: Antonio Park <[email protected]>
Signed-off-by: Alexander Mock <[email protected]>
Signed-off-by: Kyungsik Park <[email protected]>
Signed-off-by: Tony Najjar <[email protected]>
Signed-off-by: Brice <[email protected]>
Signed-off-by: nelson <[email protected]>
Signed-off-by: asarazin <[email protected]>
Signed-off-by: gg <[email protected]>
Signed-off-by: cybaol <[email protected]>
Signed-off-by: nfriedrich00 <[email protected]>
Signed-off-by: Davide Faconti <[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: Brice Renaudeau <[email protected]>
Co-authored-by: Reza Kermani <[email protected]>
Co-authored-by: GoesM <[email protected]>
Co-authored-by: GoesM <[email protected]>
Co-authored-by: bi0ha2ard <[email protected]>
Co-authored-by: Felix <[email protected]>
Co-authored-by: Antonio Park <[email protected]>
Co-authored-by: Alexander Mock <[email protected]>
Co-authored-by: Tony Najjar <[email protected]>
Co-authored-by: BriceRenaudeau <[email protected]>
Co-authored-by: nelson <[email protected]>
Co-authored-by: anaelle-sw <[email protected]>
Co-authored-by: asarazin <[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: Kino <[email protected]>
Co-authored-by: nfriedrich00 <[email protected]>
Co-authored-by: Davide Faconti <[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]>
Signed-off-by: MarcM0 <[email protected]>
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.

4 participants