
Security News
Rust RFC Proposes a Security Tab on crates.io for RustSec Advisories
Rust’s crates.io team is advancing an RFC to add a Security tab that surfaces RustSec vulnerability and unsoundness advisories directly on crate pages.
@bbc/apache2-license-checker
Advanced tools
Automated license checker for validating project dependencies for compatable Apache2 licenses.
Automated license checker for validating project dependencies for compatible Apache2 licenses.
npm install @bbc/apache2-license-checker --save-devpackage.json to include apache2-license-checker as part of your test scriptFor example:
...
"scripts": {
"test": "mocha && npm run check-licenses",
"check-licenses": "apache2-license-checker"
},
...
The license checker will fail with an exit code of 1 if there are any problems with the license, and will pass with an exit code of 0 if all checks are ok.
A temporary file licenses.json will be created containing a full license analysis based on output from the license-checker tool. You will probably want to .gitignore this file.
If the license checker throws errors, and you've verified the errors as acceptable risks, then you may want to create an exceptions file in your local project. For example:
license-exceptions.json{
"exceptions": {
"cosmos-deploy@*": {
"reason": "Not required, acceptable use for BBC internal deployments"
},
"cycle@1.0.3": {
"reason": "Public Domain; see: https://github.com/dscape/cycle/"
},
"map-stream@0.1.0": {
"reason": "MIT License; see: https://github.com/dominictarr/map-stream"
},
"ua-parser-js@0.7.17": {
"reason": "Public Domain; see https://github.com/faisalman/ua-parser-js"
}
}
}
To support
npm installnpm testModify scripts/whitelist.js to allow additional licenses or license combinations.
Modify scripts/exceptions.js to allow specific modules for a given reason.
Please push to a branch and raise a pull request, or fork and do the same.
In normal usage running npm run check-licenses produces an output similar to:
Acceptable project licenses (uses):
(MIT AND CC-BY-3.0) (1)
Apache-2.0 (3)
BSD-2-Clause (1)
BSD-3-Clause (1)
ISC (15)
MIT (23)
Unlicense (1)
WTFPL (1)
Acceptable project license exceptions:
cosmos-deploy@3.1.2
Reason: Not required, acceptable use for BBC internal deployments
cycle@1.0.3
Reason: Public Domain; see: https://github.com/dscape/cycle/
map-stream@0.1.0
Reason: MIT License; see: https://github.com/dominictarr/map-stream
All licenses ok Licensed (46) Exceptions (0) Problems (0)
If there is a problem with the licenses, then expect an output similar to:
Acceptable project licenses (uses):
Apache-2.0 (3)
BSD-2-Clause (1)
BSD-3-Clause (1)
CC-BY-3.0 (1)
CC0-1.0 (1)
ISC (16)
MIT (25)
Acceptable project license exceptions:
spdx-exceptions@2.1.0
Reason: Public Domain; see https://github.com/kemitchell/spdx-exceptions.json
Problems with the licenses for these dependencies:
spdx-license-ids@3.0.0
License: CC0-1.0
Repository: https://github.com/shinnn/spdx-license-ids
Publisher: Shinnosuke Watanabe
Url: https://github.com/shinnn
Licenses not ok Licensed (46) Exceptions (1) Problems (1)
FAQs
Automated license checker for validating project dependencies for compatable Apache2 licenses.
The npm package @bbc/apache2-license-checker receives a total of 805 weekly downloads. As such, @bbc/apache2-license-checker popularity was classified as not popular.
We found that @bbc/apache2-license-checker demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 476 open source maintainers collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Rust’s crates.io team is advancing an RFC to add a Security tab that surfaces RustSec vulnerability and unsoundness advisories directly on crate pages.

Security News
/Research
Socket found a Rust typosquat (finch-rust) that loads sha-rust to steal credentials, using impersonation and an unpinned dependency to auto-deliver updates.

Research
/Security Fundamentals
A pair of typosquatted Go packages posing as Google’s UUID library quietly turn helper functions into encrypted exfiltration channels to a paste site, putting developer and CI data at risk.