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

colcon-core 0.13.1python3.8 dependency breaks ROS 2 Dashing #586

Closed
Guillaumebeuzeboc opened this issue Oct 2, 2023 · 5 comments · Fixed by #587 or #588
Closed

colcon-core 0.13.1python3.8 dependency breaks ROS 2 Dashing #586

Guillaumebeuzeboc opened this issue Oct 2, 2023 · 5 comments · Fixed by #587 or #588
Assignees
Labels
bug Something isn't working
Milestone

Comments

@Guillaumebeuzeboc
Copy link

I noticed that the package python3-colcon-core 0.13.1 depend on python3.8. Python3.8 is not available on 18.04 (from Ubuntu or ROS 2 repo)
Thus, installing colcon-core from the ROS 2 PPA is no longer working with Dashing (18.04).

To reproduce:

  • Fresh 18.04 container.
  • Add ROS 2 PPA.
  • sudo apt install python3-colcon-core

To get the following output:

Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 python3-colcon-core : Depends: python3 (>= 3.8) but 3.6.7-1~18.04 is to be installed or
                                python3-importlib-metadata but it is not installable
                       Recommends: python3-pytest-cov but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

While ROS 2 Dashing is EOL, the default installation for colcon (via APT) is no longer working.

It seems that the colcon package from the ROS 2 PPA is shared between the ROS 2 distros.

This is probably not the correct repository to report this, but I am unsure where to report it.

Was it expected that new colcon-core releases would break old ROS 2 distros?

@cottsay cottsay self-assigned this Oct 2, 2023
@cottsay cottsay linked a pull request Oct 2, 2023 that will close this issue
@cottsay cottsay added the bug Something isn't working label Oct 2, 2023
@cottsay cottsay added this to the 0.13.2 milestone Oct 2, 2023
@cottsay cottsay linked a pull request Oct 2, 2023 that will close this issue
@tonynajjar
Copy link

tonynajjar commented Oct 4, 2023

I'm having the same issue, thanks for already fixing, I suppose the fix is in 0.15.0. I'm not very familiar with the release process to ubuntu -> how long until I can expect to be able to install 0.15.0 with apt update && apt install python3-colcon-core on bionic?

I'd also appreciate a way to workaround this issue until then

@Guillaumebeuzeboc
Copy link
Author

Thanks @cottsay for the quick fix!

@tonynajjar I personally used the pip3 package in the meantime.

@cottsay
Copy link
Member

cottsay commented Oct 4, 2023

Hi folks -

The issue here is that we need to move from pkg_resources to importlib.metadata. The latter is available in Python 3.8 or as a standalone backport package importlib-metadata. Ubuntu Bionic has neither available in the debs.

We're dropping support for debs on Bionic (and Buster) because of this. That doesn't mean you can't use pip to get the latest versions of colcon packages (where pip will install the importlib-metadata backport package), but the last release of colcon-core you'll get from debs is 0.14.0.

This issue was auto-closed because I merged a PR which reverted the importlib.metadata changes temporarily to release 0.14.0 so that we leave Bionic and Buster in a "good state" before we stop producing debs there. This should resolve the issue for you, and you should continue to use the debs if you like, but you'll receive no further updates to colcon packages.


All that aside, I recommend getting debs from Canonical for ESM platforms.

@tonynajjar
Copy link

Thanks for the explanation, so the fix for bionic is in 0.14.0, same question though:

I'm not very familiar with the release process to ubuntu -> how long until I can expect to be able to install 0.14.0 with apt update && apt install python3-colcon-core on bionic?

@cottsay
Copy link
Member

cottsay commented Oct 5, 2023

how long until I can expect to be able to install 0.14.0 with apt update && apt install python3-colcon-core on bionic?

The update had been pushed to all debian repositories before I wrote that comment, so it should be available to you now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
3 participants