最近、vue+Goでwebアプリを作成している駆け出しエンジニアです。
今回は、npm
とgo
のパッケージやモジュールについて、LICENSEファイルを一つのjsonにまとめるシェルを作成しました。
経緯
バックでもフロントの両方でオープンソースのパッケージやモジュールを使用しているのですが、一ライセンス周りでつまづきました。
LICENSEファイルを転記するには数が多すぎる。
世の中にはnpmのlicense-checkerやgoのgo-licensesなど、驚くほどに便利なツールがあるのですが、LICENSEファイルをまとめてくれる機能は無いようです。
そこで、今回は上記のlicense-checker
とgo-licenses
を拡張したPowerShellを書いてみました。
GitHubにアップロードしたので、よければご利用ください。
使い方の詳細はREADME.md
をご参照ください。
結果
テストで作ってみたvueのアプリに使ってみると・・・
しっかり出力されています。
Goも同様に出力してみますが、こちらはモジュールの2階層の部分だけをインポートしてるため、1階層目にあるライセンスファイルを取得できなかったようです。こういったケースはままあると思うのですが、ちょっと複雑な動きになりそうなので手作業で追加することにしました。
エラーはありましたが、数十件分の作業は自動化できたので、役立たずではなさそうです。
以上です。
ライセンス表記は先人の技術や知恵に対して最低限の敬意思うので、気を付けたいです・・・
この記事について間違い等ありましたらコメントでご指摘いただけると助かります。