Skip to content

feat: update to 2.4.0#22

Open
russkel wants to merge 3 commits into
open-rmf:mainfrom
russkel:feature/update-to-latest
Open

feat: update to 2.4.0#22
russkel wants to merge 3 commits into
open-rmf:mainfrom
russkel:feature/update-to-latest

Conversation

@russkel
Copy link
Copy Markdown

@russkel russkel commented Apr 29, 2026

Bug fix

Fixed bug

Fixes #21.

I imagine this work will need to be done for the rush to get the ros2 rolling packages being built on Ubuntu 26.04 for the next ROS2 release.

Fix applied

  • Removed old cmake hacks and bump minimum version.
  • Works on a source checkout of ros2 rolling on Ubuntu 26.04.

This version of the validator requires a minimum version of nlohmann_json 3.8.0. This seems fine as version 3.11.0 is available in ubuntu 24.04, and 3.12.0 in ubuntu 26.04.

GenAI Use

We follow OSRA's policy on GenAI tools

  • I used a GenAI tool in this PR.
  • I did not use GenAI

Generated-by:

@mxgrey mxgrey added this to PMC Board Apr 29, 2026
@github-project-automation github-project-automation Bot moved this to Inbox in PMC Board Apr 29, 2026
@russkel russkel force-pushed the feature/update-to-latest branch from e7a5d84 to 7b4d7e2 Compare April 29, 2026 09:12
Signed-off-by: Russ Webber <russ.webber@greenroomrobotics.com>
@russkel russkel force-pushed the feature/update-to-latest branch from 7b4d7e2 to fb1cce9 Compare April 29, 2026 09:44
@mxgrey mxgrey requested a review from luca-della-vedova May 5, 2026 01:24
@mxgrey mxgrey moved this from Inbox to In Review in PMC Board May 5, 2026
Copy link
Copy Markdown
Contributor

@mxgrey mxgrey left a comment

Choose a reason for hiding this comment

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

Thanks for this contribution, I'm running into this problem as well while trying to test RMF on Lyrical.

There's just one change needed. I left an inline comment for it. After that we should be able to merge this.

Comment thread CMakeLists.txt Outdated
Co-authored-by: Grey <greyxmike@gmail.com>
Signed-off-by: Russ <russ@rw.id.au>
@russkel
Copy link
Copy Markdown
Author

russkel commented May 6, 2026

Done.

Added comment to indicate the version being cloned for nlohmann_json_schema_validator.

Signed-off-by: Russ <russ.webber@greenroomrobotics.com>
@mxgrey
Copy link
Copy Markdown
Contributor

mxgrey commented May 6, 2026

The switch to the newer version of nlohmann_json_schema_validator has changed the way cmake targets are exported, which breaks the cmake scripts of some downstream packages.

This is okay, but it means we should wait until open-rmf/rmf_ros2#520 and open-rmf/rmf_task#137 are approved so we can merge all affected packages simultaneously.

@russkel
Copy link
Copy Markdown
Author

russkel commented May 7, 2026

The switch to the newer version of nlohmann_json_schema_validator has changed the way cmake targets are exported, which breaks the cmake scripts of some downstream packages.

This is okay, but it means we should wait until open-rmf/rmf_ros2#520 and open-rmf/rmf_task#137 are approved so we can merge all affected packages simultaneously.

Pretty minor! Would be good to get this in as soon as we can so other downstream packages can get their fixes in.

@mxgrey
Copy link
Copy Markdown
Contributor

mxgrey commented May 7, 2026

Would be good to get this in as soon as we can so other downstream packages can get their fixes in.

We have a policy that all packages managed by Open-RMF are compatible with each other as source builds from their main branches across all currently supported ROS distros, which includes humble, jazzy, and kilted.

If there are other packages in the ROS ecosystem that depend on this schema validator then we can retarget this PR at a lyrical branch for now and do a quick release into rolling from that branch while we wait for the other PRs to get approved.

@russkel
Copy link
Copy Markdown
Author

russkel commented May 7, 2026

Would be good to get this in as soon as we can so other downstream packages can get their fixes in.

We have a policy that all packages managed by Open-RMF are compatible with each other as source builds from their main branches across all currently supported ROS distros, which includes humble, jazzy, and kilted.

If there are other packages in the ROS ecosystem that depend on this schema validator then we can retarget this PR at a lyrical branch for now and do a quick release into rolling from that branch while we wait for the other PRs to get approved.

I had a look at the ros index and it seems only rmf packages are dependencies. Maybe it's just us using it then ;).

@mxgrey
Copy link
Copy Markdown
Contributor

mxgrey commented May 7, 2026

The situation with nlohmann-json on Lyrical is turning out to be very messy (#Open-RMF PMC (Restricted posting) > Changes for Lyrical need testing @ 💬).

Basically Debian Unstable (and therefore Ubuntu Resolute) is fracturing the package ecosystem between two versions of nlohmann-json which cannot be installed side-by-side. One of those versions is required by pybind11-json-dev which we need for rmf_fleet_adapter_python, but almost all packages in the ecosystem require the other version.

Since there's no telling how long that might take to sort out, there may be a good case for merging this to a lyrical branch and moving forward with a release of only this change on Lyrical.

Copy link
Copy Markdown
Member

@luca-della-vedova luca-della-vedova left a comment

Choose a reason for hiding this comment

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

I gave this a try and it seems to fix the issue in Lyrical and not break anything in Humble so I think this is OK? I think the pybind issue will happen regardless of what this package does, pybind11-json is brought by the python fleet adapter in rmf_ros2 and nlohmann-json-dev by the fleet adapter, also in rmf_ros2

@mxgrey
Copy link
Copy Markdown
Contributor

mxgrey commented May 7, 2026

I gave this a try and it seems to fix the issue in Lyrical and not break anything in Humble

Did you try it with the current main branches of rmf_ros2 and rmf_task? With the changes in this PR, I needed to change the target names used in those repos, like in this PR. Without that I was getting linking failures.

@luca-della-vedova
Copy link
Copy Markdown
Member

luca-della-vedova commented May 7, 2026 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: In Review

Development

Successfully merging this pull request may close these issues.

[Bug]: CMake compat with 3.5 is dropped in Ubuntu 26.04

3 participants