Add builds for EasyNav + NavMap + PlanSys2 - #260
Conversation
Signed-off-by: Francisco Martín Rico <fmrico@gmail.com>
Signed-off-by: Francisco Martín Rico <fmrico@gmail.com>
|
I’ll let @traversaro take a look at the Eigen cmake patch |
|
Quick reminder @traversaro |
There was a problem hiding this comment.
Pull request overview
This PR expands the Jazzy build set to include PlanSys2-related dependencies and adds Linux-only selection for EasyNav (EasyNavigation) + NavMap packages, along with packaging support patches/dependency overrides to improve build reliability in the RoboStack/conda environment.
Changes:
- Add
rclcpp_cascade_lifecycleto the global selection set (intended as a PlanSys2 dependency). - Add a Linux-only
vinca.yamlselection block for EasyNav + NavMap packages. - Add a
navmap_rosCMake patch to avoid mixing system Eigen with the conda/pixi Eigen, plus dependency overrides for select EasyNav packages.
Reviewed changes
Copilot reviewed 3 out of 4 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
vinca.yaml |
Adds package selections for PlanSys2 dependency and Linux-only EasyNav/NavMap stack. |
patch/ros-jazzy-navmap-ros.patch |
Patches navmap_ros CMake to control Eigen discovery / PCL include paths. |
patch/dependencies.yaml |
Adds conda-level dependency overrides for specific EasyNav packages (Eigen ABI + octomap). |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
| if(PCL_INCLUDE_DIRS) | ||
| # Be permissive: the entry may have a trailing slash or whitespace depending | ||
| # on how PCL was configured. | ||
| list(FILTER PCL_INCLUDE_DIRS EXCLUDE REGEX "/usr/include/eigen3") | ||
| endif() |
| # Used by PlanSys2's plansys2_lifecycle_manager; builds on all platforms. | ||
| - rclcpp_cascade_lifecycle |
My bad, I was off work and I lost this notices. |
| +# PCLConfig.cmake may inject system Eigen include paths; filter them out to | ||
| +# prevent mixing system Eigen with the conda/pixi Eigen. |
There was a problem hiding this comment.
I disagree with this comment. conda-forge's PCL build should never leak any system eigen3, unless there is something wrong somewhere. Can you please report the error you get if this patch is not here?
| easynav_bonxai_maps_manager: | ||
| # robostack-jazzy's already-published pcl_ros requires the newer eigen-abi | ||
| # package (>=5.0.1.80); pin eigen-abi-devel so this package resolves it too. | ||
| add_host: ["eigen-abi-devel"] |
There was a problem hiding this comment.
This is strange, eigen-abi-devel should already end up in host thanks to the eigen's package.xml dep of easynav_bonxai_maps_manager, see https://github.com/RoboStack/ros-jazzy/blob/main/robostack.yaml#L83-L84 . I guess this is necessary only we are trying to package easynav_boxmai_maps_manager 0.4.0 here, while 0.4.2 has the right fix (i.e. EasyNavigation/easynav_plugins@0b95273)?
Can we add a comment here writing that we can drop this once easynav_bonxai_maps_manager is updated to the version 0.4.2 ?
| # "octomap" isn't auto-resolved from rosdep for this package (same gap as | ||
| # geometric_shapes below); without it CMake fails to find octomapConfig.cmake. | ||
| add_host: ["octomap"] | ||
| add_run: ["octomap"] |
There was a problem hiding this comment.
Similar to https://github.com/RoboStack/ros-jazzy/pull/260/changes#r3773763070, this is actully fixed in 0.4.2 by adding the correct dep key in package.xml, can we add a comment saying that this can be dropped once we have easynav_octomap_maps_manager ?
|
Yes, I am not sure about what is the point of patch/ros-jazzy-navmap-ros.patch , I guess we can just drop it. |
I added the packages in #263 and they build fine even without that patch. |
Hi,
This PR contains:
rosdistro_snapshot.yamlI hope it helps!!