autowarefoundation / autoware.universe

https://autowarefoundation.github.io/autoware.universe/
Apache License 2.0
996 stars 640 forks source link

planning/control component is dependent on the packages outside of planning/control component #8805

Open youtalk opened 1 month ago

youtalk commented 1 month ago

Checklist

Description

https://github.com/autowarefoundation/autoware/pull/5194 found that the planning/control component is dependent on the following packages outside of the planning/control component.

Since the dependencies will no longer follow a parent-child relationship, the components become tightly coupled.

Purpose

Ensure that there are no dependency packages spanning across components. Connections between components should depend only on the core packages or the autoware.universe/common packages.

Possible approaches

Ensure that there are no dependency packages spanning across components. Connections between components should depend only on the core packages or the autoware.universe/common packages.

Definition of done

The planning/control packages will no longer directly depend on the following packages.

takayuki5168 commented 2 weeks ago

@youtalk Thank you for the issues, and sorry to be late. Could you give me the command to show the list of the packages outside of the planning/control component which the planning/control component is dependent on?

youtalk commented 2 weeks ago

@takayuki5168 I only checked by CI builds. I made a reproducible PR https://github.com/autowarefoundation/autoware/pull/5331 and the latest result was https://github.com/autowarefoundation/autoware/actions/runs/11287273469/job/31392958946?pr=5331#step:5:988.

 > [rosdep-universe-planning-control-depend 3/4] RUN rosdep keys --ignore-src --from-paths src     | xargs rosdep resolve --rosdistro humble     | grep -v '^#'     | sed 's/ \+/\n/g'    | sort     > /rosdep-universe-planning-control-depend-packages.txt     && cat /rosdep-universe-planning-control-depend-packages.txt:
1.349 ERROR: no rosdep rule for 'autoware_map_projection_loader'
1.349 ERROR: no rosdep rule for 'autoware_pointcloud_preprocessor'
1.349 ERROR: no rosdep rule for 'map_loader'