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

python3-bloom depends on both python3-rosdep2 and python3-rosdep #671

Closed
progtologist opened this issue Apr 21, 2022 · 5 comments
Closed
Assignees

Comments

@progtologist
Copy link

Seems that something went wrong with the dependency handling for the release of 0.11.0 on the build servers, because I am now getting a dependency for both python3-rosdep and python3-rosdep2 when trying to install bloom from the repositories.

image

@hodnajit
Copy link

I am facing the same issue, please HELP.

@ehiker
Copy link

ehiker commented Apr 21, 2022

Me too.

@mgrrx
Copy link

mgrrx commented Apr 21, 2022

we have the same issue

@nuclearsandwich nuclearsandwich self-assigned this Apr 21, 2022
@nuclearsandwich
Copy link
Contributor

Thanks for the report. This issue has recurred several times in the past and has do with environmental issues in the release pipeline. I'm working on a fix which will likely be published as bloom 0.11.1 later today.

@nuclearsandwich
Copy link
Contributor

The challenge here is with the stdeb program we use to generate these dependencies.
stdeb uses dh_python and the templates that it generates include automatically guessed dependencies for python modules.
However, this guessing is resolving packages like rosdep to the upstream-provided package, python3-rosdep2. Which conflicts with the package in the ROS repositories, python3-rosdep. We've previously skirted this issue by using a release platform which doesn't contain an upstream python3-rosdep package however most of those platforms are no longer available. Instead there are a few different approaches.
@cottsay included a wwrapper script for dh_python3 which added the --no-guessing-deps parameter and put that on his PATH ahead of dh_python3. When bloomed with guessed dependencies on Ubuntu Bionic, the list of dependencies is:

 python3:any (>= 3.4~)
 python3-yaml
 python3-empy
 python3-rosdep (>= 0.15.0)
 python3-rosdistro (>= 0.8.0)
 python3-vcstools (>= 0.1.22)
 python3-setuptools
 python3-catkin-pkg (>= 0.4.3)

Whereas with guessing turned off it is just the dependencies in stdeb.cfg:

 python3-catkin-pkg (>= 0.4.3)
 python3-dateutil
 python3-empy
 python3-pkg-resources
 python3-rosdep2
 python3-rosdistro (>= 0.8.0)
 python3-vcstools (>= 0.1.22)
 python3-yaml
 python3:any (>= 3.4~)
 python3-rosdep (>= 0.15.0)
 python3-setuptools

Next we'll want to make sure that our specified dependencies are correct on our current platforms and make any updates that we need to.

In the meantime however, I've opened a PR for stdeb to support passing parameters through to dh_python3 (astraw/stdeb#186) and have used that to release bloom 0.11.1.

I've confirmed that python3-bloom 0.11.1 is installable on Ubuntu Focal and does not have the conflicting dependency with the upstream rosdep package.

If anyone runs into the same problem please re-open this issue.

Please open new issues for any other problems related to the recent bloom releases.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants