Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

importlib_metadata dependency breaks rosdep for ROS Melodic #968

Closed
giusebar opened this issue May 7, 2024 · 1 comment
Closed

importlib_metadata dependency breaks rosdep for ROS Melodic #968

giusebar opened this issue May 7, 2024 · 1 comment
Assignees
Labels

Comments

@giusebar
Copy link

giusebar commented May 7, 2024

Summary

The introduction of the importlib_metadata requirement in this commit, and the addition of the 0.23.0-1 package (which contains the commit) to the bionic ros.packages.list, has caused rosdep to break on ROS Melodic installations running on Ubuntu 18.04.

Error details

When calling rosdep install, the command fails with the pkg_resources.DistributionNotFound error due to a missing importlib_metadata dependency. The traceback is reported here:

Traceback (most recent call last):
  File "/usr/bin/rosdep", line 6, in <module>
    from pkg_resources import load_entry_point
  File "/usr/lib/python2.7/dist-packages/pkg_resources/__init__.py", line 3088, in <module>
    @_call_aside
  File "/usr/lib/python2.7/dist-packages/pkg_resources/__init__.py", line 3072, in _call_aside
    f(*args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/pkg_resources/__init__.py", line 3101, in _initialize_master_working_set
    working_set = WorkingSet._build_master()
  File "/usr/lib/python2.7/dist-packages/pkg_resources/__init__.py", line 574, in _build_master
    ws.require(__requires__)
  File "/usr/lib/python2.7/dist-packages/pkg_resources/__init__.py", line 892, in require
    needed = self.resolve(parse_requirements(requirements))
  File "/usr/lib/python2.7/dist-packages/pkg_resources/__init__.py", line 778, in resolve
    raise DistributionNotFound(req, requirers)
pkg_resources.DistributionNotFound: The 'importlib_metadata' distribution was not found and is required by rosdep

Steps to reproduce

  • Install ROS Melodic on Ubuntu 18.04.
  • Install python-rosdep via sudo apt install python-rosdep
  • Run rosdep install
@cottsay cottsay self-assigned this May 7, 2024
@cottsay cottsay added the bug label May 7, 2024
@cottsay
Copy link
Member

cottsay commented May 8, 2024

Alright, here's the plan.

We're ending support for Python 2 in rosdep, and we're also ending support for Ubuntu Bionic. That said, we don't want to leave the deb packages provided in the ROS repositories in a "bad state", so I'm going to revert the importlib_metadata change and do one last release of rosdep for Bionic and Buster and then remove those platforms from future releases.

tl;dr - 0.23.1 will be the final release of rosdep which will support your platform. Please consider moving to a non-EOL platform.

@cottsay cottsay closed this as completed May 8, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants