Skip to content

Conversation

@MarqRazz
Copy link
Contributor

@MarqRazz MarqRazz commented Sep 9, 2024

Description

I'm working on debugging some issues and require building MoveIt2 and OMPL from source. This PR updates the package moveit_planners_ompl to work with the latest changes made in OMPL and it's more modern approach to exporting/linking the library but will require building it from source until a new release is made (I am working on getting it released and will keep this PR updated with the status).

I was also having issues with OMPL but that package was recently updated to properly work with Colcon. Here is a link to the issue.

Big thanks to @JafarAbdi and @mamoll for helping me debug some of these issues and getting this updated! 🥇

Checklist

  • Required by CI: Code is auto formatted using clang-format
  • Extend the tutorials / documentation reference
  • Document API changes relevant to the user in the MIGRATION.md notes
  • Create tests, which fail without this PR reference
  • Include a screenshot if changing a GUI
  • While waiting for someone to review your request, please help review another open pull request to support the maintainers

Copy link

@Ryanf55 Ryanf55 left a comment

Choose a reason for hiding this comment

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

LGTM.

@JafarAbdi
Copy link
Member

@MarqRazz
Copy link
Contributor Author

Would be good to see if lines https://github.com/moveit/moveit2/pull/2994/files#diff-18741df7cbb95f9292a57457e88318346213653f65f3932a5a03a1eaf7b2655bR27-R30 are still needed

According to OMPL's build documentation OMPL_LIBRARY_DIRS does not exist any more and the environment variables are not recommended any more so I removed it. If someone with a Mac could test this PR out that would be great!
image

@Ryanf55
Copy link

Ryanf55 commented Sep 10, 2024

Would be good to see if lines https://github.com/moveit/moveit2/pull/2994/files#diff-18741df7cbb95f9292a57457e88318346213653f65f3932a5a03a1eaf7b2655bR27-R30 are still needed

According to OMPL's build documentation OMPL_LIBRARY_DIRS does not exist any more and the environment variables are not recommended any more so I removed it. If someone with a Mac could test this PR out that would be great! image

To support the previous CMake module behavior, the following variables are defined. These are for backwards compatability, but not recommended anymore.

It was my intent to preserve them for backwards compatability, but the reality on ompl main is they only exist for consuming ompl through submodule, not find_package. This was an oversight/mistake on my part, and I only realized it yesterday. OMPL did not change its major version, so there should not be ABI breaks. I have recognized the downstream impact this is having is larger than it should be. If MoveIT has build failures for something that worked previously, I am in the wrong. Please let me know if you have a minimum reproducible example and I will do my best to bring those variables back in find_package.

@Ryanf55
Copy link

Ryanf55 commented Sep 10, 2024

This PR should get us closer to fixing the accidental breakage of the old variables in find_package. https://github.com/ompl/ompl/pull/1182/files#diff-148715d6ea0c0ea0a346af3f6bd610d010d490eca35ac6a9b408748f7ca9e3f4R10

We need to then add this back into the export, along with the other variables.

@mergify
Copy link

mergify bot commented Oct 13, 2024

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

@MarqRazz
Copy link
Contributor Author

Thanks for keeping this moving @sjahr!

@sjahr
Copy link
Contributor

sjahr commented Oct 14, 2024

@MarqRazz I'd just merge it now, since there aren't any CI failures related to the PR. Any concerns?

@MarqRazz
Copy link
Contributor Author

MarqRazz commented Oct 14, 2024

Nope, I was just waiting for the 👍

Actually we need to release OMPL for this change to work right. I have not tested this against the latest release to ROS2.

@mamoll I would be happy to help get the OMPL release to ROS updated. Is there anything I can help with? @JafarAbdi also said he was will to help maintain the release.

@sjahr
Copy link
Contributor

sjahr commented Oct 14, 2024

Ok, I'll wait for now 👍 Let me know when it's ready

@sjahr sjahr self-requested a review October 14, 2024 14:30
@MarqRazz
Copy link
Contributor Author

MarqRazz commented Jun 11, 2025

@moveit/maintainers I think this PR is ready to merge. I want to let everyone know that I removed testing main on Humble because OMPL 1.7 has not been released there. This PR is not planned to be back ported to Humble and on the next release cycle I can work on getting 1.7 released to Humble and re-enable humble-ci in a future PR if we feel this test is important/required. If we can get this PR merged I will start the process of releasing MoveIt.

FYI the CI failure is not related to these changes and I opened an upstream PR to moveit_resources to fix the issue.
edit: fixed ✔️

Copy link
Member

@JafarAbdi JafarAbdi left a comment

Choose a reason for hiding this comment

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

lgtm

@MarqRazz MarqRazz enabled auto-merge (squash) June 12, 2025 16:07
@MarqRazz MarqRazz disabled auto-merge June 12, 2025 16:09
@nbbrooks
Copy link
Contributor

I got the impression at the community meeting that there are a lot of people using Humble, but unclear how many are using the Humble branch/debians versions main. It would be a good topic for the next meeting if a 1.7 ompl release for humble is non-trivial.

@MarqRazz
Copy link
Contributor Author

I got the impression at the community meeting that there are a lot of people using Humble, but unclear how many are using the Humble branch/debians versions main. It would be a good topic for the next meeting if a 1.7 ompl release for humble is non-trivial.

People can still use Humble with main, they will just have to build OMPL from source until the binary is available there. The Humble MoveIt binary with OMPL 1.6 is still available and will continue to work.

@MarqRazz
Copy link
Contributor Author

I don't have sufficient permissions to merge this PR. Once complete I can start on the next release.

@github-actions
Copy link

This PR is stale because it has been open for 45 days with no activity. Please tag a maintainer for help on completing this PR, or close it if you think it has become obsolete.

@github-actions github-actions bot added the stale label Jul 28, 2025
@MarqRazz
Copy link
Contributor Author

@nbbrooks any update here? Are we ready to merge this?

@github-actions github-actions bot removed the stale label Jul 29, 2025
@nbbrooks
Copy link
Contributor

As discussed, the CI job that tests main against humble is disabled in this PR because

  1. OMPL 1.7 has not been released for Humble yet.
  2. We do not have a mechanism in CI to tell it to use a different .repos file that would build OMPL from source when doing the main-humble job / Have a CMake pattern to selectively run code depending on a library version (such as rclcpp).

The main-Humble CI job can be re-enabled when a humble release including ros/rosdistro#47332 is out!

@nbbrooks
Copy link
Contributor

nbbrooks commented Sep 3, 2025

I have some comments in #3529 about why the rolling tests are failing, which is blocking this from getting merged.

@nbbrooks
Copy link
Contributor

Force merging this since Rolling CI was fixed and this is now passing.

The tutorial failure is unrelated and should be resolved by moveit/moveit2_tutorials#1071

@nbbrooks nbbrooks merged commit 1a64bce into moveit:main Oct 16, 2025
9 of 10 checks passed
@github-project-automation github-project-automation bot moved this to ✅ Done in MoveIt Oct 16, 2025
mergify bot pushed a commit that referenced this pull request Oct 16, 2025
* Update ompl_interface with latest version of OMPL

* specify PUBLIC

* pre-commit

* only link ompl where required

* Fix formatting

* add ompl 1.7 release to .repos

* remove srdfdom from .repos

* revert ompl from source

* remove humble main testing

* No longer need to disable Humble CI job

---------

Co-authored-by: Sebastian Jahr <sebastian.jahr@picknik.ai>
Co-authored-by: Sebastian Jahr <sebastian.jahr@tuta.io>
Co-authored-by: Sebastian Castro <4603398+sea-bass@users.noreply.github.com>
Co-authored-by: Nathan Brooks <nathanbrooks@picknik.ai>
Co-authored-by: Nathan Brooks <nbbrooks@gmail.com>
(cherry picked from commit 1a64bce)
@MarqRazz MarqRazz deleted the update_ompl_version branch October 16, 2025 14:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backport-jazzy Mergify label that triggers a PR backport to Jazzy

Projects

None yet

Development

Successfully merging this pull request may close these issues.

9 participants