connectors: carry the NOTICE content of bundled crates into the fat iggy-connect image

Đang mở
#4,748 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

Chưa có ai nhận issue này.

Đánh giá

Độ khó
5/5
Thời gian dự kiến
Hơn một tuần
Mức phù hợp với người mới
30/100
Loại issue
Tính năng
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
docker, github-actions, rust

Hướng nghiên cứu

First confirm that #4533 has merged and review its full crate list; the issue says work before then may be incomplete. Read core/connectors/runtime/Dockerfile, about.hbs, and scripts/ci/third-party-licenses.sh to understand how the manifest and fat image are built. Decide where to collect and ship bundled crate NOTICE content, check whether the slim image is affected, and get a PMC member to review the legal text.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

CI/CD connectors
Description

This issue is valid only after #4533 is merged. It depends on the crate list that PR produces: the connectors runtime plus every connector plugin. Work started before the merge can use an incomplete list.

The fat apache/iggy-connect image bundles many third-party crates. Some of them ship their own NOTICE file, for example parquet, arrow-array, object_store (NOTICE.txt), and iceberg, apache-avro (NOTICE).

The image carries only the repository NOTICE, which core/connectors/runtime/Dockerfile copies to /usr/share/doc/iggy-connect/. The generated LICENSE-binary comes from about.hbs. That template prints license names, the crates that use each license, and the license text. It does not print NOTICE content.

ASF policy requires that the NOTICE content of bundled Apache-2.0 software reaches the distribution. The fat image does not do this today. The fat image must ship the NOTICE content of every bundled crate that has one, taken from the full crate list and not from the plugins alone.

Raised in the review of #4533 (https://github.com/apache/iggy/pull/4533), comment on core/connectors/runtime/Dockerfile. The reviewer agreed that this can be a follow-up.

Affected area / component

Connectors, CI / build / tooling

Proposed solution

Collect the NOTICE files of the bundled crates when the license manifest is generated, and ship their content in the fat image. Open points:

  • Does the content go into the shipped NOTICE file, or into a separate file next to it?
  • Does the slim image need the same change for the runtime crates?
  • Which tool collects the NOTICE files: cargo-about, or a step in scripts/ci/third-party-licenses.sh?
  • A PMC member must review the result, because it is legal text.
Alternatives considered

Leave the NOTICE content out and document the gap. This does not meet the ASF policy, so it is not an option for a release.

Contribution
  • I'm willing to submit a pull request to implement this feature
Good first issue
  • I think this could be a good first issue for a new contributor
Ngôn ngữ chính
Rust
Star
5.2k
Fork
516
Merge trung bình
2 ngày 17 giờ
Pull request đã merge (30 ngày)
155

Chuẩn bị môi trường

Mở trong Codespaces

Khởi chạy dev container của dự án ngay trên trình duyệt, bằng tài khoản GitHub của bạn.

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của apache/iggy

Tất cả issue của apache/iggy

Issue tương tự

Thêm issue về Rust

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.