warehouse_ros_mongo icon indicating copy to clipboard operation
warehouse_ros_mongo copied to clipboard

ROS2 Humble and Rolling incompatibility

Open prasuchit opened this issue 2 years ago • 6 comments

Hi,

I'm unable to install the warehouse-ros-mongo package for humble using the command:

 sudo apt-get install -y ros-humble-warehouse-ros-mongo

I get this error:

 E: Unable to locate package ros-humble-warehouse-ros-mongo

Kindly help! :/

prasuchit avatar May 03 '23 14:05 prasuchit

130s avatar Jun 07 '23 19:06 130s

@nuclearsandwich You may be able to help this?

  • 20230320 I saw https://github.com/ros/rosdistro/pull/36536 was merged in.
  • 20230426 AFAICT latest of some ros-humble-warehouse-* on http://packages.ros.org/ros2/ubuntu/dists/jammy/main/binary-amd64/Packages are built.

Would there be any build triggered after GBP repo URL change? If not, that might be the culprit? Just a guess though.

130s avatar Jun 07 '23 19:06 130s

Missing in rolling too. Coincidence or not, both humble and rolling rosdistro were updated in https://github.com/ros/rosdistro/pull/36536. @prasuchit would you mind updating the ticket's title to indicate both humble and rolling?

130s avatar Jun 08 '23 09:06 130s

Would there be any build triggered after GBP repo URL change? If not, that might be the culprit? Just a guess though.

There is no releasable version of these packages on Ubuntu Jammy because the mongodb dependency is missing. As part of the transition to Ubuntu Jammy in Rolling, the release stanza for the package had its version field dropped, preserving source and release repository metadata but stopping the buildfarm from attempting to create and build source and binary packages on any platform.

The relevant distribution.yaml entries for Rolling: https://github.com/ros/rosdistro/blob/9fe8cabefd231fb6cf7722cfbfa179322c805cf4/roling/distribution.yaml#L6991-L6994 and Humble: https://github.com/ros/rosdistro/blob/9fe8cabefd231fb6cf7722cfbfa179322c805cf4/humble/distribution.yaml#L8090-L8093

As far as I know MongoDB is no longer available in upstream due in part to the license changes upstream, making the dependency on mongodb impossible to satisfy using the expected rosdep sources, which are in turn the only valid sources for build farm builds.

In order to make this package releaseable you'd have to remove the dependency on mongodb or find a package in Debian and Ubuntu which provides the mongodb dependency.

nuclearsandwich avatar Jun 16 '23 16:06 nuclearsandwich

Indeed I no longer see mongodb pkg on packages.ubuntu.com for jammy and it's removed from rosdep key for jammy https://github.com/ros/rosdistro/pull/31551.

As far as I read installation instruction on mongodb.com, deb packages are available but their custom apt key must be added, which removes rosdep from an option IINM.

Not sure what to do esp. as a non-maintainer. Pinging @ros-planning/moveit-maintainers

130s avatar Jun 16 '23 17:06 130s

deb packages are available but their custom apt key must be added, which removes rosdep from an option IINM.

Indeed you're not mistaken. Officially released packages do not allow custom repositories to be used in dependencies which is enforced by the build farm not allowing custom repositories.

nuclearsandwich avatar Jun 16 '23 22:06 nuclearsandwich