Hi Steve, * Steve Langasek <steve.langa...@canonical.com> [2019-11-29 19:35]:
In Ubuntu, the latest version of ros-rosdep was failing to build due to test failures related to ros-rospkg, which was not properly detecting the platform as Ubuntu. Digging into this, I found that ros-rospkg was relying on the lsb_release command to detect Debian and Ubuntu as platforms; but lsb_release is not part of the base system, so this fails when the additional lsb-release package is not installed.
Thanks for bringing this to my attention, could you add a link to the failing log next time? I think I know where it fails, but it would be easier to verify with a log (and I wasn't able to find one).
rospkg is not using lsb_release directly but used to use the Python 3 platform module (dropped in 3.8) and I patched it to use python-distro. I added a basic patch in 1.2.0-2 and upstream is currently reviewing a new version:
https://github.com/ros-infrastructure/rospkg/pull/182I will push a new version to Debian once that is through (including a build dependency on python3-distro), which should fix your issue.
The attached patch fixes ros-rospkg to use os-release on Ubuntu, which works for all supported releases. I have not looked to confirm that /etc/os-release is also guaranteed to be present on all supported Debian releases, but it probably is.
Interesting idea, I would propose you send this upstream and discuss with them.
Cheers Jochen
signature.asc
Description: PGP signature