-
Notifications
You must be signed in to change notification settings - Fork 11.9k
Description
Command
build
Description
When running ng build angular will generate the file 3rdpartylicenses.txt which contains information about 3rd party licenses included in the build result.
While this is awesome, it would be good to have an option to allow licenses that can be included in the build. For example MIT, Apache-2.0 and as soon as a license which is not allowed is included, the build should fail.
angular-cli/packages/angular/build/src/builders/application/execute-build.ts
Lines 247 to 253 in ec7dd59
| if (options.extractLicenses) { | |
| executionResult.addOutputFile( | |
| '3rdpartylicenses.txt', | |
| await extractLicenses(metafile, workspaceRoot), | |
| BuildOutputFileType.Root, | |
| ); | |
| } |
Describe the solution you'd like
In go, the package https://github.com/google/go-licenses for example supports --allowed_licenses=<comma separated license names>. As soon as a different license is found, the build fails. also php or other languages have tools for this.
Describe alternatives you've considered
Currently I'm trying to implement this using the npm package: https://www.npmjs.com/package/@onebeyond/license-checker
The issue is, that it includes a lot of npm packages which are not part of the final angular app - such as argparse for example.