@statoscope/cli
Advanced tools
Changelog
5.5.1 (08 July 2021)
[report-writer]
rollback to sync stream polling model[webpack-plugin]
broken html reportChangelog
5.5.0 (08 July 2021)
[webpack-plugin]
add new property saveOnlyStats
[webpack-plugin]
add new property saveReportTo
(as a replacement for saveTo
)[webpack-plugin]
refactoring to make code more flexible[report-writer]
refactor work with the streamsChangelog
5.4.3 (06 July 2021)
[webpack-ui]
handle unresolved module reasons for a package[webpack-stats-extension-package-info]
match package version for webpack 4Changelog
5.4.2 (05 July 2021)
[webpack-plugin]
sometimes a report was opening before it written to the disk[webpack-stats-extension-compressed]
fix fails on reexport usage on webpack 4[webpack-stats-extension-package-info]
taking into account that webpack 4 uses absolute path for some module namesChangelog
5.4.1 (03 July 2021)
[webpack-model]
stats extensions now works for child compilationsChangelog
5.4.0 (03 July 2021)
[ui-webpack]
use as an alias to webpack-ui and webpack-plugin[webpack-plugin]
create directory before write the stats and report[webpack-ui]
add package version-diff
Adds the badges like: major upgrade from x.x.x
[helpers]
add semverGT
-helper[helpers]
add semverGTE
-helper[helpers]
add semverLT
-helper[helpers]
add semverLTE
-helper[helpers]
add semverEQ
-helper[helpers]
add semverDiff
-helper[helpers]
add semverParse
-helper[webpack-model]
add context
-param to jora query-method (#82)[cli]
add context
-param to jora query-method (#82)[webpack-stats-extension-compressed]
fix CssModule handling[webpack-stats-extension-compressed]
fix temporary assets handling[helpers]
move formatDiff
-helper from webpack-ui
Changelog
5.3.2 (30 June 2021)
[report-writer]
return options.scripts
as Array<stirng, Item>
Changelog
5.3.0 (30 June 2021)
[webpack-plugin]
collect compressed (e.g. gzip) size of the resources (assets and modules)
There is a new compressor
- option that can be false | 'gzip' | ['gzip', ZlibOptions] | CompressFunction
:
'gzip'
(default) - compress all the resources with gzip (compression level - 6) and collect the compressed sizes
['gzip', ZlibOptions]
- the same as gzip
but with custom zlib settings
CompressFunction
- a function that takes source as an input and should return compressed size for this resource (useful if you want to use a non-gzip compressor)
false
- don't collect compressed sizes
It uses
webpack-stats-extension-compressed
under the hood
[webpack-plugin]
collect packages versions
It uses
webpack-stats-extension-package-info
under the hood
[webpack-ui]
taking compressed (e.g. gzip) size of the resources into account
There is a new setting to taking resources compressed size into account.
If enabled then all the sizes will be shown as compressed.
New jora-helpers:
getModuleSize(module, hash)
return compressed or normal module size
getAssetSize(asset, hash)
return compressed or normal asset size
It uses
stats-extension-compressed
under the hood and works only when the stats-file was taken fromwebpack-plugin@>=5.3
or any source that usesstats-extension-compressed
[webpack-ui]
taking packages versions into account and output these in all the package items
Also, added instance version into compilations.nodeModules.instance
It uses
stats-extension-package-info
under the hood and works only when the stats-file was taken fromwebpack-plugin@>=5.3
or any source that usesstats-extension-package-info
[webpack-ui]
download time measure
There are two new settings to select network speed and assets inject type. A download time for assets/chunks/entrypoints will be calculated based on specified network speed and assets inject type.
There are two assets inject types:
sync
: download time = sum(downloadTime(assets))
Download time is a sum of the download time of all the assets
async
: download time = max(downloadTime(assets))
Download time is a download time of most heavy asset (usefull if async
/defer
used to inject your assets)
The default network type is 3G Fast (1.37 MBit/s)
(like in Chromium).
Assets inject type is sync
by default.
[webpack-ui]
add compact
-property to asset/chunk/module/entry-item
-widget
This property removes all the badges from the entity item
[webpack-ui]
add Entrypoints
tab on diff
-page
Honestly, I just forgot to enable this tab a few releases ago 🙈
[stats-extension-compressed]
extension for collecting compressed resource sizes
It allows compressing specified resource content (string
or Buffer
) with gzip
or any other compressor.
Also, it contains the API to generate and extract this info.
[webpack-stats-extension-compressed]
webpack adapter for stats-extension-compressed
It allows collecting compressed resource sizes from webpack compilation
[stats-extension-package-info]
extension for collecting packages versions
It allows compressing specified resource content (string
or Buffer
) with gzip
or any other compressor.
Also, it contains the API to generate and extract this info.
[webpack-stats-extension-package-info]
webpack adapter for stats-extension-package-info
It allows collecting package versions from webpack compilation
[webpack-model]
added resolveExtension(name)
jora-helper that returns extension API
[webpack-model]
support stats-extension-package-info
extension
There is a new jora-helpers:
getPackageInstanceInfo(package, instancePath, hash)
that returns a package instance information[webpack-model]
support stats-extension-compressed
extension
There are new jora-helpers:
getModuleSize(module, compressed?, hash?)
returns compressed or normal module sizegetAssetSize(asset, compressed?, hash?)
returns compressed or normal asset size[webpack-model]
added jora-helpers to getting network type and download speed:
getNetworkTypeInfo(networkType: string)
return full info about specified network by its name (full list of type you can find at network-type-list.ts)getNetworkTypeName(networkType: Item)
return full name for specified networkgetDownloadTime(size: number, networkType: string)
calculate download time based on selected network type[helpers]
add locale
-parameter to formatDate
-helper
[cli]
(validate): use info
-type for messages by default
[stats]
a new package that contains Statoscope own stats format (extension-entity for now, but there are will be more entities)
[extensions]
a new package that contains Statoscope extensions toolkit
[report-writer]
add Piper - a proxy to ensure that all stream consumers have got a chunk
[webpack-model]
fix cases in normalization when no compilation.modules
[webpack-model]
fix normalization of chunk.children
[webpack-model]
fix isRoot
-field for node-modules instances
isRoot
was falsy positive if the module name not starts from .
[webpack-plugin]
fix saveStatsTo
Now it works
[webpack-ui]
fix packages instances list on diff
-page
There was undefined
instead of instances links
[webpack-ui]
fix modules diff calculation
[cli]
(validate): use console.info for info
-type messages
[webpack-ui]
better sorting of package instances
Root-instances goes first
[webpack-ui]
fix loading-styles
[webpack-ui]
refactor diff-page to make it more flexible and extendable