open-rmf / rmf

Root repository for the RMF software
Apache License 2.0
233 stars 60 forks source link

Rosdep keys could not be resolved #26

Closed jh-chng closed 3 years ago

jh-chng commented 3 years ago

Bug report

rosdep install --from-paths src --ignore-src --rosdistro foxy -yr ERROR: the following packages/stacks could not have their rosdep keys resolved to system dependencies: rmf_demos_panel: Cannot locate rosdep definition for [python3-flask-cors] building_systems_visualizer: Cannot locate rosdep definition for [rmf_schedule_visualizer_msgs] rmf_demos: Cannot locate rosdep definition for [rmf_rviz_plugin] rmf_visualization: Cannot locate rosdep definition for [rmf_visualization_fleet_building_systems] Continuing to install resolvable dependencies...

All required rosdeps installed successfully

Required information:

Description of the bug

While following the README in https://github.com/open-rmf/rmf, in the Download the Source Code section, during the rosdep install --from-paths src --ignore-src --rosdistro foxy -yr, I got a rosdep key error. I attached the console printout in the bug report.

Expected behavior

rosdep should finish without error

Actual behavior

ERROR: the following packages/stacks could not have their rosdep keys resolved to system dependencies: rmf_visualization: Cannot locate rosdep definition for [rmf_visualization_fleet_building_systems] rmf_demos_panel: Cannot locate rosdep definition for [python3-flask-cors] building_systems_visualizer: Cannot locate rosdep definition for [rmf_schedule_visualizer_msgs] rmf_demos: Cannot locate rosdep definition for [rmf_rviz_plugin] Continuing to install resolvable dependencies...

All required rosdeps installed successfully

Screenshots

Additional information

Yadunund commented 3 years ago

Hi there,

You should have still been able to build your workspace without any build errors. The expectation that rosdep should execute without flagging any errors is not accurate. There may be dependencies that rosdep is unable to install (eg python3-flask-cors) but the installation guide has steps to install these manually. Having said that, there were some packages with incorrect dependencies that have been fixed. You can pull in the latest changes in rmf_visualization and rmf_demos. Now running rosdep should only return an error for python3-flask-cors which can be ignored as you will manually install this package as stated in the installation guide.

codebot commented 3 years ago

should we add that rosdep key definition upstream?

Yadunund commented 3 years ago

That would be great. There are other python3 packages that we manually install as well https://github.com/open-rmf/rmf#additional-dependencies. Should we consider adding rosdep keys for those as well?

codebot commented 3 years ago

Yes, I think ideally everything will be captured as rosdep, both to simplify these from-source build instructions, and so that .deb and .rpm package dependency rules can automatically be generated for the binary packages.

Yadunund commented 3 years ago

Roger, will open a separate ticket to address this.

codebot commented 3 years ago

not sure why, but flask-cors exists in rosdep already, using pip instead of apt. I do not know anything about the differences between the resulting versions of flask-cors

https://github.com/ros/rosdistro/blob/master/rosdep/python.yaml#L1636-L1642