
Security News
vlt Launches "reproduce": A New Tool Challenging the Limits of Package Provenance
vlt's new "reproduce" tool verifies npm packages against their source code, outperforming traditional provenance adoption in the JavaScript ecosystem.
@statoscope/cli
Advanced tools
This package supplies Statoscope as CLI tool
npm i @statoscope/cli -g
statoscope [command] [...args]
Validate or compare webpack stats.
validate [...args]
--input
(-i
) - path to a stats.json--reference
(-r
) - path to a stats-file to compare with (optional)--config
(-c
) - path to statoscope config (by default {pwd}/statoscope.config.js
has used)--warn-as-error
(-w
) - treat warnings as errorsExample:
Install webpack-plugin for the validator:
npm install --save-dev @statoscope/stats-validator-plugin-webpack
Create a statosope-config:
statoscope.config.js
module.exports = {
validate: {
// add webpack plugin with rules
plugins: ['@statoscope/webpack'],
reporters: [
// console-reporter to output results into console (enabled by default)
'@statoscope/console',
// reporter that generates UI-report with validation-results
['@statoscope/stats-report', {open: true}],
],
rules: {
// ensures that build-time of your bundle hasn't exceeded 10 sec
'@statoscope/webpack/build-time-limits': ['error', {global: 10000}],
// any other rules
}
}
}
statoscope validate --input path/to/stats.json
Learn more on @staoscope/stats-validator and @statoscope/stats-validator-plugin-webpack and
Start HTTP-server and serve JSON-stats as HTML report
serve input [...args]
--input
(-i
) - path to one or more webpack stats--host
(-h
) - server host--port
(-p
) - server port--open
(-o
) - open browser after server startExample:
statoscope serve path/to/stats.json -o
Start server and open browser.
Generate HTML report from JSON-stats.
generate input output [...args]
--input
(-i
) - path to one or more webpack stats--output
(-t
) - path to generated HTML--open
(-o
) - open browser after generateExample:
statoscope generate path/to/stats.json path/to/report.html -o
Create statoscope report, save it to path/to/report.html
and open
If you are an engineer or a company that is interested in Statoscope improvements, you may support Statoscope by financial contribution at OpenCollective.
5.9.0 (27 September 2021)
[stats-extension-custom-reports]
- add package for passing custom reports to the UI (#108)
[webpack-plugin]
- support custom reports (#108)
[webpack-ui]
- support custom reports (#108)
[helpers]
- support lock
/unlock
for Resolver
(#107)
By default, all the resolvers is locked (no items can be added to resolver storage)
const resolver = makeResolver(modules, m => m.identifier);
modules.push(fooModule);
resolver('foo'); // null
resolver.unlock(); // allow to fetch resolver storage for new elements
modules.push(fooModule);
resolver('foo'); // fooModule
In other words, locked resolver remembers its source items and ignores any source changes.
It is useful for performance.
[helpers]
- add Indexer
to build an index (#108)
Index is more complex of resolver. It provides some API to manipulate its storage:
const moduleIndex = makeIndex(module => module.identifier); // no source needed
moduleIndex.add(fooModule);
moduleIndex.get('foo'); // fooModule
moduleIndex.get('bar'); // null
moduleIndex.add(barModule);
moduleIndex.get('bar'); // barModule
moduleIndex.getAll(); // [fooModule, barModule]
[stats-extension-compressed]
- support indexer (#108)
[stats-extension-package-info]
- support indexer (#108)
[stats-extension-stats-validation-result]
- support indexer (#108)
[config]
- add requireConfig
(#108)
[cli]
- support requireConfig
(#108)
[cli]
- add makeReplacer
helper to create json replacer (#107)
[webpack-model]
- add __statoscope.context
field (#107)
[report-writer]
- remove context path from stats (it makes all the path relative from context) (#107)
[webpack-plugin]
- remove context path from stats (it makes all the path relative from context) (#107)
[webpack-stats-extension-package-info]
- remove context path from stats (it makes all the path relative from context) (#107)
[webpack-model]
- use module.identifier to resolve a module (#107)
[webpack-model]
- decouple extension and compilation (#108)
Extensions have attached to files, not to compilations
[webpack-ui]
- use module.identifier
to resolve a module (#107)
[webpack-stats-extension-compressed]
- use module.identifier
to resolve a module (#107)
[stats-validator-plugin-webpack]
- use module.identifier
to resolve a module (#107)
[webpack-model]
- not fail when incomplete stats have usedFAQs
Statoscope CLI tools
The npm package @statoscope/cli receives a total of 18,335 weekly downloads. As such, @statoscope/cli popularity was classified as popular.
We found that @statoscope/cli demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer 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
vlt's new "reproduce" tool verifies npm packages against their source code, outperforming traditional provenance adoption in the JavaScript ecosystem.
Research
Security News
Socket researchers uncovered a malicious PyPI package exploiting Deezer’s API to enable coordinated music piracy through API abuse and C2 server control.
Research
The Socket Research Team discovered a malicious npm package, '@ton-wallet/create', stealing cryptocurrency wallet keys from developers and users in the TON ecosystem.