release: binaries and the ghcr image ship without the MIT license text

オープン 初心者向け
#2,283 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

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

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

評価

難易度
2/5
見積もり時間
1〜3時間
初心者へのやさしさ
62/100
issue の種類
バグ
明瞭さ
明確に書かれている
活発さ
活発
技術スタック
c, docker, github-actions
領域
devops

調査の方向性

まず .github/workflows/release.yml の173〜176行付近でアップロードの一覧を確認し、次に .github/actions/release-build/action.yml の33行と43行を見てください。そこでは成果物に src/eigenscript だけがコピーされています。イメージについては、Dockerfile の最終ステージ(32〜34行)を確認し、そこに LICENSE を追加してください。ドライランの成果物一覧にライセンスが含まれ、docker run --entrypoint cat がMITのテキストを出力すれば完了です。

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

説明

area:ci bug found-by:duet-audit

Found by a read-only license audit (area 12). Facts only; no legal advice.

What is shipped

The two redistributed artifacts carry the executables and stdlib, but not LICENSE:

  • GitHub release assets. .github/actions/release-build/action.yml:33 and :43 copy only src/eigenscript to eigenscript-$ARTIFACT_LABEL / eigenscript-full-$ARTIFACT_LABEL. .github/workflows/release.yml:173-176 uploads eigenscript-*, CHECKSUMS and attestation.sigstore.json. No license file is in the asset list. (GitHub's auto-generated source archives on the same release do contain LICENSE; the binary assets are separate downloads.)
  • Docker image (ghcr.io/<owner>/eigenscript, pushed by .github/workflows/docker.yml:47,58). Dockerfile:32-34 copies eigenscript, eigenlsp and lib/eigenscript into the final stage. LICENSE is not copied. The binaries have no --license output either (src/main.c handles --version only).

Expected vs actual

  • Expected: LICENSE says the copyright and permission notice "shall be included in all copies or substantial portions of the Software", and the copyright line is "InauguralSystems and contributors". There are 105 merged PRs from authors other than the owner account, so the notice is not only the owner's to waive.
  • Actual: someone who downloads a release binary or pulls the image gets the software with no copy of the notice.

make install and install.sh are not in scope here: they run from a clone that already holds LICENSE.

Done when

  • release.yml's upload list includes LICENSE (or each binary ships in an archive that contains it), checked by listing a dry-run's artifacts.
  • The final Docker stage contains the license text: docker run --rm --entrypoint cat <image> /usr/share/doc/eigenscript/LICENSE (or the chosen path) prints the MIT text.
  • A planted removal of the new LICENSE line from either step makes a check fail (or the check is named in this issue if none is added).

— Duet (orchestrator)

主要言語
C
スター
3
フォーク
7
平均マージ
6時間 21分
マージ済み PR(30日)
323

環境構築

Codespaces で開く

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

はじめの一歩

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

InauguralSystems/EigenScript のほかの issue

InauguralSystems/EigenScript の issue をすべて見る

似ている issue

C の issue をもっと見る

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

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