License リストを生成する
License リストを生成する
API の場合、Web 上で表示することはないが、利用している OSS の License を法務確認のために提出せよと言われることがある。セキュリティのため、package は気軽に更新したいので、自動で生成されるようにしたい。
提出が必要なのは、Production で使うものだけ。依存関係まで含めると、ものすごい量になるので、直接読み込んでいるものだけで良いことが多いので、そうする。
license-checker を利用することにする。これは、API の機能には全く関係ないので、本来はアプリケーションに含めるべきではない。今回は説明のため、入れておいた。
$ yarn add license-checker --dev
├── src/app
│ └── licenses
│ ├── licenses.json
│ ├── licenses.module.css
│ └── page.tsx
└── tools
└── LicenseChecker.ts
それぞれは、特に説明するようなこともないので、直接ソースコードを参照。
package.json に script を追加しておく。
package.json
{
"scripts": {
...
"license:generate": "ts-node tools/LicenseChecker.ts",
...
},
...
}
yarn license:generate
で、src/app/licenses/licenses.json
が更新される。一覧はブラウザ( /licenses )で確認できる。
必ずしも正確に生成できる訳ではないので、適宜 licenses.json
を修正する。これで、やべーのが入ってないかも一目瞭然である。ライセンスの諸々については、こちら を確認。