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

オープン
#4,748 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

メンテナーはふだん 1 日以内に返信

まだ誰も着手していません。

評価

難易度
5/5
見積もり時間
1週間以上
初心者へのやさしさ
30/100
issue の種類
機能追加
明瞭さ
おおむね明確
活発さ
活発
技術スタック
docker, github-actions, rust

調査の方向性

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.

索引モデルが issue の本文から書いたものです。

説明

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
主要言語
Rust
スター
5.2k
フォーク
516
平均マージ
2日 17時間
マージ済み PR(30日)
155

環境構築

Codespaces で開く

このプロジェクトの開発コンテナを、あなたの GitHub アカウントでブラウザ上に起動します。

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

apache/iggy のほかの issue

apache/iggy の issue をすべて見る

似ている issue

Rust の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。