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

common packages are not functioning as a true "common" #8695

Closed
5 tasks done
youtalk opened this issue Aug 30, 2024 · 1 comment · Fixed by autowarefoundation/autoware#5253
Closed
5 tasks done

common packages are not functioning as a true "common" #8695

youtalk opened this issue Aug 30, 2024 · 1 comment · Fixed by autowarefoundation/autoware#5253
Assignees
Labels
component:common Common packages from the autoware-common repository. (auto-assigned)

Comments

@youtalk
Copy link
Member

youtalk commented Aug 30, 2024

Checklist

  • I've read the contribution guidelines.
  • I've searched other issues and no duplicate issues were found.
  • I've agreed with the maintainers that I can plan this task.

Description

I am working on multi-containerizing Autoware, but I'm having trouble because autoware.universe/common is not functioning as a true "common" directory as following.

  1. The packages under common depend on packages outside of common.
  • For example, common depends on vehicle/autoware_vehicle_info_utils.
  • For example, common depends on simulator/dummy_perception_publisher.
  1. Some packages under common are only used in specific component directories.
  • For example, cuda_utils is only used under perception. If CUDA dependencies can be removed from common, CUDA dependencies can be also removed from containers other than perception, leading to a significant reduction in image size.
  • For example, common/perception_utils is only used in packages under perception.

While issue 2 is not a problem for now, issue 1 is a concern. When breaking down autoware-universe in the second step of the multi-containerization plan mentioned in
https://github.com/orgs/autowarefoundation/discussions/4661#discussioncomment-9995806, the idea is to create a shared autoware-universe-common stage to avoid redundant builds of common packages.

346866514-690b88ac-ee85-490a-93d8-14f8626c3e2e

However, under the current situation described in issue 1, this approach cannot be realized, and all container images will need to rebuild the packages under common repeatedly.

Ref. autowarefoundation/autoware#5077

Purpose

Ensure that the packages under common do not have mutual dependencies with packages outside of common.

Possible approaches

Ensure that the packages under common do not have mutual dependencies with packages outside of common.

Definition of done

Exclude dependencies on the following package list from the common packages to resolve issue 1.

  • autoware_vehicle_info_utils
  • dummy_perception_publisher
@youtalk
Copy link
Member Author

youtalk commented Oct 17, 2024

  • tensorrt_common

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component:common Common packages from the autoware-common repository. (auto-assigned)
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants