Skip to content

Replace all moveit.ros.org to moveit.ai#3676

Merged
davetcoleman merged 1 commit intomoveit:galacticfrom
L4co77:galactic
Jan 28, 2026
Merged

Replace all moveit.ros.org to moveit.ai#3676
davetcoleman merged 1 commit intomoveit:galacticfrom
L4co77:galactic

Conversation

@L4co77
Copy link
Copy Markdown

@L4co77 L4co77 commented Jan 27, 2026

The ROS.org team is turning of moveit.ros.org, which redirects to moveit.ai currently. We need to find all instances of moveit.ros.org and make PRs to replace them.

@gbiggs is pushing to turn off moveit.ros.rog per this post from a year ago

https://discourse.openrobotics.org/t/move-of-nav2-and-moveit-repositories-at-github/37450

@mergify
Copy link
Copy Markdown

mergify bot commented Jan 27, 2026

Please target the main branch for development, we will backport the changes to galactic for you if approved and if they don't break API.

@davetcoleman davetcoleman merged commit 6fe61c1 into moveit:galactic Jan 28, 2026
6 of 9 checks passed
@github-project-automation github-project-automation bot moved this to ✅ Done in MoveIt Jan 28, 2026
apirsic pushed a commit to CroboticSolutions/moveit2 that referenced this pull request Feb 3, 2026
* Use separate callback queue + spinner for ExecuteTrajectoryAction (moveit#3676)

This allows parallel execution + planning.

Also required modifying updateSceneWithCurrentState() to allow skipping a scene update with a new robot state (from CurrentStateMonitor), if the planning scene is currently locked (due to planning).
Otherwise, the CurrentStateMonitor would block too.

Co-authored-by: Robert Haschke <rhaschke@techfak.uni-bielefeld.de>

* PSM: simplify state_update_pending_ (moveit#3682)

* Move update of state_update_pending_ to updateSceneWithCurrentState()

* Revert to try_lock

While there are a few other locks except explicit user locks (getPlanningSceneServiceCallback(), collisionObjectCallback(), attachObjectCallback(), newPlanningSceneCallback(), and scenePublishingThread()), these occur rather seldom
(scenePublishingThread() publishes at 2Hz).

Hence, we might indeed balance a non-blocking CSM vs. missed PS updates in favour of CSM.

* Don't block for scene update from stateUpdateTimerCallback too

The timer callback and CSM's state update callbacks are served from the same callback queue, which would block CSM again.

* further locking adaptations

reading dt_state_update_ and last_robot_state_update_wall_time_
does not lead to logic errors, but at most to a skipped or redundant update on corrupted data.
Alternatively we could be on the safe side and turn both variables into std::atomic, but that
would effectively mean locks on every read.

Instead, only set state_update_pending_ as an atomic, which is lockfree in this case.

Co-authored-by: Michael Görner <me@v4hn.de>

* Ports changes to ROS2.

---------

Co-authored-by: Robert Haschke <rhaschke@techfak.uni-bielefeld.de>
Co-authored-by: Michael Görner <me@v4hn.de>
(cherry picked from commit ba35aaa)

Co-authored-by: Mark Johnson <104826595+rr-mark@users.noreply.github.com>
helen9975 pushed a commit to personalrobotics/moveit2 that referenced this pull request Feb 17, 2026
* Use separate callback queue + spinner for ExecuteTrajectoryAction (moveit#3676)

This allows parallel execution + planning.

Also required modifying updateSceneWithCurrentState() to allow skipping a scene update with a new robot state (from CurrentStateMonitor), if the planning scene is currently locked (due to planning).
Otherwise, the CurrentStateMonitor would block too.

Co-authored-by: Robert Haschke <rhaschke@techfak.uni-bielefeld.de>

* PSM: simplify state_update_pending_ (moveit#3682)

* Move update of state_update_pending_ to updateSceneWithCurrentState()

* Revert to try_lock

While there are a few other locks except explicit user locks (getPlanningSceneServiceCallback(), collisionObjectCallback(), attachObjectCallback(), newPlanningSceneCallback(), and scenePublishingThread()), these occur rather seldom
(scenePublishingThread() publishes at 2Hz).

Hence, we might indeed balance a non-blocking CSM vs. missed PS updates in favour of CSM.

* Don't block for scene update from stateUpdateTimerCallback too

The timer callback and CSM's state update callbacks are served from the same callback queue, which would block CSM again.

* further locking adaptations

reading dt_state_update_ and last_robot_state_update_wall_time_
does not lead to logic errors, but at most to a skipped or redundant update on corrupted data.
Alternatively we could be on the safe side and turn both variables into std::atomic, but that
would effectively mean locks on every read.

Instead, only set state_update_pending_ as an atomic, which is lockfree in this case.

Co-authored-by: Michael Görner <me@v4hn.de>

* Ports changes to ROS2.

---------

Co-authored-by: Robert Haschke <rhaschke@techfak.uni-bielefeld.de>
Co-authored-by: Robert Haschke <rhaschke@users.noreply.github.com>
Co-authored-by: Michael Görner <me@v4hn.de>
Co-authored-by: Sebastian Castro <4603398+sea-bass@users.noreply.github.com>
Co-authored-by: Sebastian Jahr <sebastian.jahr@picknik.ai>
AravindhDeivaG pushed a commit to AravindhDeivaG/moveit2 that referenced this pull request Mar 21, 2026
…it#3317)

* Ports moveit moveit#3676 and moveit#3682 (moveit#3283)

* Use separate callback queue + spinner for ExecuteTrajectoryAction (moveit#3676)

This allows parallel execution + planning.

Also required modifying updateSceneWithCurrentState() to allow skipping a scene update with a new robot state (from CurrentStateMonitor), if the planning scene is currently locked (due to planning).
Otherwise, the CurrentStateMonitor would block too.

Co-authored-by: Robert Haschke <rhaschke@techfak.uni-bielefeld.de>

* PSM: simplify state_update_pending_ (moveit#3682)

* Move update of state_update_pending_ to updateSceneWithCurrentState()

* Revert to try_lock

While there are a few other locks except explicit user locks (getPlanningSceneServiceCallback(), collisionObjectCallback(), attachObjectCallback(), newPlanningSceneCallback(), and scenePublishingThread()), these occur rather seldom
(scenePublishingThread() publishes at 2Hz).

Hence, we might indeed balance a non-blocking CSM vs. missed PS updates in favour of CSM.

* Don't block for scene update from stateUpdateTimerCallback too

The timer callback and CSM's state update callbacks are served from the same callback queue, which would block CSM again.

* further locking adaptations

reading dt_state_update_ and last_robot_state_update_wall_time_
does not lead to logic errors, but at most to a skipped or redundant update on corrupted data.
Alternatively we could be on the safe side and turn both variables into std::atomic, but that
would effectively mean locks on every read.

Instead, only set state_update_pending_ as an atomic, which is lockfree in this case.

Co-authored-by: Michael Görner <me@v4hn.de>

* Ports changes to ROS2.

---------

Co-authored-by: Robert Haschke <rhaschke@techfak.uni-bielefeld.de>
Co-authored-by: Robert Haschke <rhaschke@users.noreply.github.com>
Co-authored-by: Michael Görner <me@v4hn.de>
Co-authored-by: Sebastian Castro <4603398+sea-bass@users.noreply.github.com>
Co-authored-by: Sebastian Jahr <sebastian.jahr@picknik.ai>
(cherry picked from commit ba35aaa)

# Conflicts:
#	moveit_ros/move_group/src/default_capabilities/execute_trajectory_action_capability.cpp
#	moveit_ros/planning/planning_scene_monitor/include/moveit/planning_scene_monitor/planning_scene_monitor.hpp
#	moveit_ros/planning/planning_scene_monitor/src/planning_scene_monitor.cpp

* Resolves merge conflicts. (moveit#3322)

* Resolves merge conflicts.

* Undoes erroneous auto-format.

* Undoes erroneous auto-format.

---------

Co-authored-by: Mark Johnson <104826595+rr-mark@users.noreply.github.com>
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.

2 participants