sitespeed.io 34.0.3 → 34.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +4 -0
- package/lib/cli/cli.js +6 -0
- package/lib/plugins/browsertime/analyzer.js +24 -13
- package/lib/plugins/html/templates/url/summary/index.pug +1 -1
- package/lib/plugins/html/templates/url/summary/tabs.pug +1 -1
- package/lib/plugins/html/templates/url/video/index.pug +8 -2
- package/npm-shrinkwrap.json +317 -7
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
# CHANGELOG - sitespeed.io (we use [semantic versioning](https://semver.org))
|
|
2
2
|
|
|
3
|
+
## 34.1.0 - 2024-06-06
|
|
4
|
+
### Added
|
|
5
|
+
* Add `--enableVideoRun`. You can use it together with `--video false --visualMetrics true` to do one extra run where the video is kept. This is useful for tests against replay proxies [#4177](https://github.com/sitespeedio/sitespeed.io/pull/4177).
|
|
6
|
+
|
|
3
7
|
## 34.0.3 - 2024-06-05
|
|
4
8
|
|
|
5
9
|
### Fixed
|
package/lib/cli/cli.js
CHANGED
|
@@ -565,6 +565,12 @@ export async function parseCommandLine() {
|
|
|
565
565
|
describe:
|
|
566
566
|
'Make one extra run that collects the profiling trace log (no other metrics is collected). For Chrome it will collect the timeline trace, for Firefox it will get the Geckoprofiler trace. This means you do not need to get the trace for all runs and can skip the overhead it produces.'
|
|
567
567
|
})
|
|
568
|
+
.option('browsertime.enableVideoRun', {
|
|
569
|
+
alias: 'enableVideoRun',
|
|
570
|
+
type: 'boolean',
|
|
571
|
+
describe:
|
|
572
|
+
'Make one extra run that collects video and visual metrics. This means you can do your runs with --visualMetrics true --video false --enableVideoRun true to collect visual metrics from all runs and save a video from the profile/video run. If you run it together with --enableProfileRun it will also collect profiling trace.'
|
|
573
|
+
})
|
|
568
574
|
.option('browsertime.videoParams.filmstripFullSize', {
|
|
569
575
|
alias: 'videoParams.filmstripFullSize',
|
|
570
576
|
type: 'boolean',
|
|
@@ -66,22 +66,33 @@ async function preWarmServer(urls, options, scriptOrMultiple) {
|
|
|
66
66
|
}
|
|
67
67
|
|
|
68
68
|
async function extraProfileRun(urls, options, scriptOrMultiple) {
|
|
69
|
-
log.info('Make one extra run to collect trace information');
|
|
69
|
+
log.info('Make one extra run to collect trace/video information');
|
|
70
70
|
options.iterations = 1;
|
|
71
|
-
if (options.
|
|
72
|
-
options.firefox
|
|
73
|
-
|
|
74
|
-
options.chrome
|
|
75
|
-
|
|
76
|
-
|
|
71
|
+
if (options.enableProfileRun) {
|
|
72
|
+
if (options.browser === 'firefox') {
|
|
73
|
+
options.firefox.geckoProfiler = true;
|
|
74
|
+
} else if (options.browser === 'chrome') {
|
|
75
|
+
options.chrome.enableTraceScreenshots = true;
|
|
76
|
+
options.chrome.traceCategory = ['disabled-by-default-v8.cpu_profiler'];
|
|
77
|
+
options.chrome.timeline = true;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
if (options.enableVideoRun) {
|
|
81
|
+
options.video = true;
|
|
82
|
+
options.visualMetrics = true;
|
|
83
|
+
} else {
|
|
84
|
+
options.video = false;
|
|
85
|
+
options.visualMetrics = false;
|
|
77
86
|
}
|
|
78
|
-
options.video = false;
|
|
79
|
-
options.visualMetrics = false;
|
|
80
87
|
const traceEngine = new BrowsertimeEngine(options);
|
|
88
|
+
const scriptCategories = await browserScripts.allScriptCategories();
|
|
89
|
+
let scriptsByCategory =
|
|
90
|
+
await browserScripts.getScriptsForCategories(scriptCategories);
|
|
91
|
+
|
|
81
92
|
await traceEngine.start();
|
|
82
93
|
await (scriptOrMultiple
|
|
83
|
-
? traceEngine.runMultiple(urls,
|
|
84
|
-
: traceEngine.run(urls,
|
|
94
|
+
? traceEngine.runMultiple(urls, scriptsByCategory)
|
|
95
|
+
: traceEngine.run(urls, scriptsByCategory));
|
|
85
96
|
await traceEngine.stop();
|
|
86
97
|
}
|
|
87
98
|
|
|
@@ -187,13 +198,13 @@ export async function analyzeUrl(
|
|
|
187
198
|
await engine.start();
|
|
188
199
|
if (scriptOrMultiple) {
|
|
189
200
|
const res = await engine.runMultiple(url, scriptsByCategory, asyncScript);
|
|
190
|
-
if (btOptions.enableProfileRun) {
|
|
201
|
+
if (btOptions.enableProfileRun || btOptions.enableVideoRun) {
|
|
191
202
|
await extraProfileRun(url, btOptions, scriptOrMultiple);
|
|
192
203
|
}
|
|
193
204
|
return res;
|
|
194
205
|
} else {
|
|
195
206
|
const res = await engine.run(url, scriptsByCategory, asyncScript);
|
|
196
|
-
if (btOptions.enableProfileRun) {
|
|
207
|
+
if (btOptions.enableProfileRun || btOptions.enableVideoRun) {
|
|
197
208
|
await extraProfileRun(url, btOptions, scriptOrMultiple);
|
|
198
209
|
}
|
|
199
210
|
return res;
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
if d.browsertime && d.browsertime.pageSummary
|
|
8
8
|
a(id='metrics', href='#metrics', onclick='return selectTab(this, true);')
|
|
9
9
|
| Metrics
|
|
10
|
-
if options.browsertime.video
|
|
10
|
+
if options.browsertime.video || options.enableVideoRun
|
|
11
11
|
a(id='video', href='#video', onclick='return selectTab(this, true);')
|
|
12
12
|
| Video
|
|
13
13
|
if (options.browsertime.visualMetrics && options.videoParams.createFilmstrip) || options.browsertime.chrome && options.browsertime.chrome.enableTraceScreenshots
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
-
|
|
1
|
+
- let videoIndex = medianRun ? medianRun.runIndex : iteration;
|
|
2
2
|
- const width = options.mobile || options.android || (options.safari && options.safari.useSimulator) ? '400' : '800'
|
|
3
|
+
- videoIndex = options.browsertime.enableVideoRun ? '1' : videoIndex;
|
|
3
4
|
|
|
4
5
|
small
|
|
5
6
|
||
|
|
@@ -13,6 +14,11 @@ h3 Video
|
|
|
13
14
|
video(controls, preload='none', width=width)
|
|
14
15
|
source(src='data/video/' + videoIndex +'.mp4', type='video/mp4')
|
|
15
16
|
|
|
17
|
+
if options.browsertime.enableVideoRun
|
|
18
|
+
p Video from --enableVideoRun
|
|
19
|
+
|
|
16
20
|
a#download-video
|
|
17
|
-
-
|
|
21
|
+
- let downloadable = iteration ? iteration : medianRun.runIndex;
|
|
22
|
+
- downloadable = options.browsertime.enableVideoRun ? '1' : downloadable;
|
|
23
|
+
- const videoPath = 'data/video/' + downloadable +'.mp4'
|
|
18
24
|
a.button.button-download(href=videoPath, download=downloadName + '-video.mp4') Download video
|
package/npm-shrinkwrap.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "sitespeed.io",
|
|
3
|
-
"version": "34.0
|
|
3
|
+
"version": "34.1.0",
|
|
4
4
|
"lockfileVersion": 3,
|
|
5
5
|
"requires": true,
|
|
6
6
|
"packages": {
|
|
7
7
|
"": {
|
|
8
8
|
"name": "sitespeed.io",
|
|
9
|
-
"version": "34.0
|
|
9
|
+
"version": "34.1.0",
|
|
10
10
|
"license": "MIT",
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"@aws-sdk/client-s3": "3.564.0",
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
"@sitespeed.io/plugin": "0.0.6",
|
|
16
16
|
"@tgwf/co2": "0.14.4",
|
|
17
17
|
"axe-core": "4.9.1",
|
|
18
|
-
"browsertime": "22.
|
|
18
|
+
"browsertime": "22.4.0",
|
|
19
19
|
"cli-color": "2.0.4",
|
|
20
20
|
"coach-core": "8.0.2",
|
|
21
21
|
"concurrent-queue": "7.0.2",
|
|
@@ -1846,6 +1846,210 @@
|
|
|
1846
1846
|
"node": ">= 8.0.0"
|
|
1847
1847
|
}
|
|
1848
1848
|
},
|
|
1849
|
+
"node_modules/@serialport/binding-mock": {
|
|
1850
|
+
"version": "10.2.2",
|
|
1851
|
+
"resolved": "https://registry.npmjs.org/@serialport/binding-mock/-/binding-mock-10.2.2.tgz",
|
|
1852
|
+
"integrity": "sha512-HAFzGhk9OuFMpuor7aT5G1ChPgn5qSsklTFOTUX72Rl6p0xwcSVsRtG/xaGp6bxpN7fI9D/S8THLBWbBgS6ldw==",
|
|
1853
|
+
"dependencies": {
|
|
1854
|
+
"@serialport/bindings-interface": "^1.2.1",
|
|
1855
|
+
"debug": "^4.3.3"
|
|
1856
|
+
},
|
|
1857
|
+
"engines": {
|
|
1858
|
+
"node": ">=12.0.0"
|
|
1859
|
+
}
|
|
1860
|
+
},
|
|
1861
|
+
"node_modules/@serialport/bindings-cpp": {
|
|
1862
|
+
"version": "12.0.1",
|
|
1863
|
+
"resolved": "https://registry.npmjs.org/@serialport/bindings-cpp/-/bindings-cpp-12.0.1.tgz",
|
|
1864
|
+
"integrity": "sha512-r2XOwY2dDvbW7dKqSPIk2gzsr6M6Qpe9+/Ngs94fNaNlcTRCV02PfaoDmRgcubpNVVcLATlxSxPTIDw12dbKOg==",
|
|
1865
|
+
"hasInstallScript": true,
|
|
1866
|
+
"dependencies": {
|
|
1867
|
+
"@serialport/bindings-interface": "1.2.2",
|
|
1868
|
+
"@serialport/parser-readline": "11.0.0",
|
|
1869
|
+
"debug": "4.3.4",
|
|
1870
|
+
"node-addon-api": "7.0.0",
|
|
1871
|
+
"node-gyp-build": "4.6.0"
|
|
1872
|
+
},
|
|
1873
|
+
"engines": {
|
|
1874
|
+
"node": ">=16.0.0"
|
|
1875
|
+
},
|
|
1876
|
+
"funding": {
|
|
1877
|
+
"url": "https://opencollective.com/serialport/donate"
|
|
1878
|
+
}
|
|
1879
|
+
},
|
|
1880
|
+
"node_modules/@serialport/bindings-cpp/node_modules/@serialport/parser-delimiter": {
|
|
1881
|
+
"version": "11.0.0",
|
|
1882
|
+
"resolved": "https://registry.npmjs.org/@serialport/parser-delimiter/-/parser-delimiter-11.0.0.tgz",
|
|
1883
|
+
"integrity": "sha512-aZLJhlRTjSmEwllLG7S4J8s8ctRAS0cbvCpO87smLvl3e4BgzbVgF6Z6zaJd3Aji2uSiYgfedCdNc4L6W+1E2g==",
|
|
1884
|
+
"engines": {
|
|
1885
|
+
"node": ">=12.0.0"
|
|
1886
|
+
},
|
|
1887
|
+
"funding": {
|
|
1888
|
+
"url": "https://opencollective.com/serialport/donate"
|
|
1889
|
+
}
|
|
1890
|
+
},
|
|
1891
|
+
"node_modules/@serialport/bindings-cpp/node_modules/@serialport/parser-readline": {
|
|
1892
|
+
"version": "11.0.0",
|
|
1893
|
+
"resolved": "https://registry.npmjs.org/@serialport/parser-readline/-/parser-readline-11.0.0.tgz",
|
|
1894
|
+
"integrity": "sha512-rRAivhRkT3YO28WjmmG4FQX6L+KMb5/ikhyylRfzWPw0nSXy97+u07peS9CbHqaNvJkMhH1locp2H36aGMOEIA==",
|
|
1895
|
+
"dependencies": {
|
|
1896
|
+
"@serialport/parser-delimiter": "11.0.0"
|
|
1897
|
+
},
|
|
1898
|
+
"engines": {
|
|
1899
|
+
"node": ">=12.0.0"
|
|
1900
|
+
},
|
|
1901
|
+
"funding": {
|
|
1902
|
+
"url": "https://opencollective.com/serialport/donate"
|
|
1903
|
+
}
|
|
1904
|
+
},
|
|
1905
|
+
"node_modules/@serialport/bindings-cpp/node_modules/node-addon-api": {
|
|
1906
|
+
"version": "7.0.0",
|
|
1907
|
+
"resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.0.0.tgz",
|
|
1908
|
+
"integrity": "sha512-vgbBJTS4m5/KkE16t5Ly0WW9hz46swAstv0hYYwMtbG7AznRhNyfLRe8HZAiWIpcHzoO7HxhLuBQj9rJ/Ho0ZA=="
|
|
1909
|
+
},
|
|
1910
|
+
"node_modules/@serialport/bindings-cpp/node_modules/node-gyp-build": {
|
|
1911
|
+
"version": "4.6.0",
|
|
1912
|
+
"resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.6.0.tgz",
|
|
1913
|
+
"integrity": "sha512-NTZVKn9IylLwUzaKjkas1e4u2DLNcV4rdYagA4PWdPwW87Bi7z+BznyKSRwS/761tV/lzCGXplWsiaMjLqP2zQ==",
|
|
1914
|
+
"bin": {
|
|
1915
|
+
"node-gyp-build": "bin.js",
|
|
1916
|
+
"node-gyp-build-optional": "optional.js",
|
|
1917
|
+
"node-gyp-build-test": "build-test.js"
|
|
1918
|
+
}
|
|
1919
|
+
},
|
|
1920
|
+
"node_modules/@serialport/bindings-interface": {
|
|
1921
|
+
"version": "1.2.2",
|
|
1922
|
+
"resolved": "https://registry.npmjs.org/@serialport/bindings-interface/-/bindings-interface-1.2.2.tgz",
|
|
1923
|
+
"integrity": "sha512-CJaUd5bLvtM9c5dmO9rPBHPXTa9R2UwpkJ0wdh9JCYcbrPWsKz+ErvR0hBLeo7NPeiFdjFO4sonRljiw4d2XiA==",
|
|
1924
|
+
"engines": {
|
|
1925
|
+
"node": "^12.22 || ^14.13 || >=16"
|
|
1926
|
+
}
|
|
1927
|
+
},
|
|
1928
|
+
"node_modules/@serialport/parser-byte-length": {
|
|
1929
|
+
"version": "12.0.0",
|
|
1930
|
+
"resolved": "https://registry.npmjs.org/@serialport/parser-byte-length/-/parser-byte-length-12.0.0.tgz",
|
|
1931
|
+
"integrity": "sha512-0ei0txFAj+s6FTiCJFBJ1T2hpKkX8Md0Pu6dqMrYoirjPskDLJRgZGLqoy3/lnU1bkvHpnJO+9oJ3PB9v8rNlg==",
|
|
1932
|
+
"engines": {
|
|
1933
|
+
"node": ">=12.0.0"
|
|
1934
|
+
},
|
|
1935
|
+
"funding": {
|
|
1936
|
+
"url": "https://opencollective.com/serialport/donate"
|
|
1937
|
+
}
|
|
1938
|
+
},
|
|
1939
|
+
"node_modules/@serialport/parser-cctalk": {
|
|
1940
|
+
"version": "12.0.0",
|
|
1941
|
+
"resolved": "https://registry.npmjs.org/@serialport/parser-cctalk/-/parser-cctalk-12.0.0.tgz",
|
|
1942
|
+
"integrity": "sha512-0PfLzO9t2X5ufKuBO34DQKLXrCCqS9xz2D0pfuaLNeTkyGUBv426zxoMf3rsMRodDOZNbFblu3Ae84MOQXjnZw==",
|
|
1943
|
+
"engines": {
|
|
1944
|
+
"node": ">=12.0.0"
|
|
1945
|
+
},
|
|
1946
|
+
"funding": {
|
|
1947
|
+
"url": "https://opencollective.com/serialport/donate"
|
|
1948
|
+
}
|
|
1949
|
+
},
|
|
1950
|
+
"node_modules/@serialport/parser-delimiter": {
|
|
1951
|
+
"version": "12.0.0",
|
|
1952
|
+
"resolved": "https://registry.npmjs.org/@serialport/parser-delimiter/-/parser-delimiter-12.0.0.tgz",
|
|
1953
|
+
"integrity": "sha512-gu26tVt5lQoybhorLTPsH2j2LnX3AOP2x/34+DUSTNaUTzu2fBXw+isVjQJpUBFWu6aeQRZw5bJol5X9Gxjblw==",
|
|
1954
|
+
"engines": {
|
|
1955
|
+
"node": ">=12.0.0"
|
|
1956
|
+
},
|
|
1957
|
+
"funding": {
|
|
1958
|
+
"url": "https://opencollective.com/serialport/donate"
|
|
1959
|
+
}
|
|
1960
|
+
},
|
|
1961
|
+
"node_modules/@serialport/parser-inter-byte-timeout": {
|
|
1962
|
+
"version": "12.0.0",
|
|
1963
|
+
"resolved": "https://registry.npmjs.org/@serialport/parser-inter-byte-timeout/-/parser-inter-byte-timeout-12.0.0.tgz",
|
|
1964
|
+
"integrity": "sha512-GnCh8K0NAESfhCuXAt+FfBRz1Cf9CzIgXfp7SdMgXwrtuUnCC/yuRTUFWRvuzhYKoAo1TL0hhUo77SFHUH1T/w==",
|
|
1965
|
+
"engines": {
|
|
1966
|
+
"node": ">=12.0.0"
|
|
1967
|
+
},
|
|
1968
|
+
"funding": {
|
|
1969
|
+
"url": "https://opencollective.com/serialport/donate"
|
|
1970
|
+
}
|
|
1971
|
+
},
|
|
1972
|
+
"node_modules/@serialport/parser-packet-length": {
|
|
1973
|
+
"version": "12.0.0",
|
|
1974
|
+
"resolved": "https://registry.npmjs.org/@serialport/parser-packet-length/-/parser-packet-length-12.0.0.tgz",
|
|
1975
|
+
"integrity": "sha512-p1hiCRqvGHHLCN/8ZiPUY/G0zrxd7gtZs251n+cfNTn+87rwcdUeu9Dps3Aadx30/sOGGFL6brIRGK4l/t7MuQ==",
|
|
1976
|
+
"engines": {
|
|
1977
|
+
"node": ">=8.6.0"
|
|
1978
|
+
}
|
|
1979
|
+
},
|
|
1980
|
+
"node_modules/@serialport/parser-readline": {
|
|
1981
|
+
"version": "12.0.0",
|
|
1982
|
+
"resolved": "https://registry.npmjs.org/@serialport/parser-readline/-/parser-readline-12.0.0.tgz",
|
|
1983
|
+
"integrity": "sha512-O7cywCWC8PiOMvo/gglEBfAkLjp/SENEML46BXDykfKP5mTPM46XMaX1L0waWU6DXJpBgjaL7+yX6VriVPbN4w==",
|
|
1984
|
+
"dependencies": {
|
|
1985
|
+
"@serialport/parser-delimiter": "12.0.0"
|
|
1986
|
+
},
|
|
1987
|
+
"engines": {
|
|
1988
|
+
"node": ">=12.0.0"
|
|
1989
|
+
},
|
|
1990
|
+
"funding": {
|
|
1991
|
+
"url": "https://opencollective.com/serialport/donate"
|
|
1992
|
+
}
|
|
1993
|
+
},
|
|
1994
|
+
"node_modules/@serialport/parser-ready": {
|
|
1995
|
+
"version": "12.0.0",
|
|
1996
|
+
"resolved": "https://registry.npmjs.org/@serialport/parser-ready/-/parser-ready-12.0.0.tgz",
|
|
1997
|
+
"integrity": "sha512-ygDwj3O4SDpZlbrRUraoXIoIqb8sM7aMKryGjYTIF0JRnKeB1ys8+wIp0RFMdFbO62YriUDextHB5Um5cKFSWg==",
|
|
1998
|
+
"engines": {
|
|
1999
|
+
"node": ">=12.0.0"
|
|
2000
|
+
},
|
|
2001
|
+
"funding": {
|
|
2002
|
+
"url": "https://opencollective.com/serialport/donate"
|
|
2003
|
+
}
|
|
2004
|
+
},
|
|
2005
|
+
"node_modules/@serialport/parser-regex": {
|
|
2006
|
+
"version": "12.0.0",
|
|
2007
|
+
"resolved": "https://registry.npmjs.org/@serialport/parser-regex/-/parser-regex-12.0.0.tgz",
|
|
2008
|
+
"integrity": "sha512-dCAVh4P/pZrLcPv9NJ2mvPRBg64L5jXuiRxIlyxxdZGH4WubwXVXY/kBTihQmiAMPxbT3yshSX8f2+feqWsxqA==",
|
|
2009
|
+
"engines": {
|
|
2010
|
+
"node": ">=12.0.0"
|
|
2011
|
+
},
|
|
2012
|
+
"funding": {
|
|
2013
|
+
"url": "https://opencollective.com/serialport/donate"
|
|
2014
|
+
}
|
|
2015
|
+
},
|
|
2016
|
+
"node_modules/@serialport/parser-slip-encoder": {
|
|
2017
|
+
"version": "12.0.0",
|
|
2018
|
+
"resolved": "https://registry.npmjs.org/@serialport/parser-slip-encoder/-/parser-slip-encoder-12.0.0.tgz",
|
|
2019
|
+
"integrity": "sha512-0APxDGR9YvJXTRfY+uRGhzOhTpU5akSH183RUcwzN7QXh8/1jwFsFLCu0grmAUfi+fItCkR+Xr1TcNJLR13VNA==",
|
|
2020
|
+
"engines": {
|
|
2021
|
+
"node": ">=12.0.0"
|
|
2022
|
+
},
|
|
2023
|
+
"funding": {
|
|
2024
|
+
"url": "https://opencollective.com/serialport/donate"
|
|
2025
|
+
}
|
|
2026
|
+
},
|
|
2027
|
+
"node_modules/@serialport/parser-spacepacket": {
|
|
2028
|
+
"version": "12.0.0",
|
|
2029
|
+
"resolved": "https://registry.npmjs.org/@serialport/parser-spacepacket/-/parser-spacepacket-12.0.0.tgz",
|
|
2030
|
+
"integrity": "sha512-dozONxhPC/78pntuxpz/NOtVps8qIc/UZzdc/LuPvVsqCoJXiRxOg6ZtCP/W58iibJDKPZPAWPGYeZt9DJxI+Q==",
|
|
2031
|
+
"engines": {
|
|
2032
|
+
"node": ">=12.0.0"
|
|
2033
|
+
},
|
|
2034
|
+
"funding": {
|
|
2035
|
+
"url": "https://opencollective.com/serialport/donate"
|
|
2036
|
+
}
|
|
2037
|
+
},
|
|
2038
|
+
"node_modules/@serialport/stream": {
|
|
2039
|
+
"version": "12.0.0",
|
|
2040
|
+
"resolved": "https://registry.npmjs.org/@serialport/stream/-/stream-12.0.0.tgz",
|
|
2041
|
+
"integrity": "sha512-9On64rhzuqKdOQyiYLYv2lQOh3TZU/D3+IWCR5gk0alPel2nwpp4YwDEGiUBfrQZEdQ6xww0PWkzqth4wqwX3Q==",
|
|
2042
|
+
"dependencies": {
|
|
2043
|
+
"@serialport/bindings-interface": "1.2.2",
|
|
2044
|
+
"debug": "4.3.4"
|
|
2045
|
+
},
|
|
2046
|
+
"engines": {
|
|
2047
|
+
"node": ">=12.0.0"
|
|
2048
|
+
},
|
|
2049
|
+
"funding": {
|
|
2050
|
+
"url": "https://opencollective.com/serialport/donate"
|
|
2051
|
+
}
|
|
2052
|
+
},
|
|
1849
2053
|
"node_modules/@sindresorhus/merge-streams": {
|
|
1850
2054
|
"version": "2.3.0",
|
|
1851
2055
|
"resolved": "https://registry.npmjs.org/@sindresorhus/merge-streams/-/merge-streams-2.3.0.tgz",
|
|
@@ -2649,6 +2853,11 @@
|
|
|
2649
2853
|
"integrity": "sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==",
|
|
2650
2854
|
"dev": true
|
|
2651
2855
|
},
|
|
2856
|
+
"node_modules/@types/w3c-web-usb": {
|
|
2857
|
+
"version": "1.0.10",
|
|
2858
|
+
"resolved": "https://registry.npmjs.org/@types/w3c-web-usb/-/w3c-web-usb-1.0.10.tgz",
|
|
2859
|
+
"integrity": "sha512-CHgUI5kTc/QLMP8hODUHhge0D4vx+9UiAwIGiT0sTy/B2XpdX1U5rJt6JSISgr6ikRT7vxV9EVAFeYZqUnl1gQ=="
|
|
2860
|
+
},
|
|
2652
2861
|
"node_modules/@ungap/structured-clone": {
|
|
2653
2862
|
"version": "1.2.0",
|
|
2654
2863
|
"resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz",
|
|
@@ -3327,9 +3536,9 @@
|
|
|
3327
3536
|
}
|
|
3328
3537
|
},
|
|
3329
3538
|
"node_modules/browsertime": {
|
|
3330
|
-
"version": "22.
|
|
3331
|
-
"resolved": "https://registry.npmjs.org/browsertime/-/browsertime-22.
|
|
3332
|
-
"integrity": "sha512-
|
|
3539
|
+
"version": "22.4.0",
|
|
3540
|
+
"resolved": "https://registry.npmjs.org/browsertime/-/browsertime-22.4.0.tgz",
|
|
3541
|
+
"integrity": "sha512-UdJh7OTXWHiCeP56lGDd76vGUOT5VadQ5YUJmlhA1mwpsocAqhtM4qoMWwbh0FZq4IjF9Jct8qEQx6sWC5XMww==",
|
|
3333
3542
|
"dependencies": {
|
|
3334
3543
|
"@cypress/xvfb": "1.2.4",
|
|
3335
3544
|
"@devicefarmer/adbkit": "3.2.6",
|
|
@@ -3356,6 +3565,7 @@
|
|
|
3356
3565
|
"lodash.pick": "4.4.0",
|
|
3357
3566
|
"lodash.set": "4.3.2",
|
|
3358
3567
|
"selenium-webdriver": "4.21.0",
|
|
3568
|
+
"usb-power-profiling": "^1.2.0",
|
|
3359
3569
|
"yargs": "17.7.2"
|
|
3360
3570
|
},
|
|
3361
3571
|
"bin": {
|
|
@@ -4076,6 +4286,11 @@
|
|
|
4076
4286
|
"node": ">=10.0.0"
|
|
4077
4287
|
}
|
|
4078
4288
|
},
|
|
4289
|
+
"node_modules/crc-full": {
|
|
4290
|
+
"version": "1.1.0",
|
|
4291
|
+
"resolved": "https://registry.npmjs.org/crc-full/-/crc-full-1.1.0.tgz",
|
|
4292
|
+
"integrity": "sha512-7YK4t8C9PiekOSnBotYjU2roaaorUXHyT+Xzb12Zgg4DsfG58AxmPk2/wx7XnC9UXyriqRvl3c+U0zFsZkdVYg=="
|
|
4293
|
+
},
|
|
4079
4294
|
"node_modules/cross-spawn": {
|
|
4080
4295
|
"version": "7.0.3",
|
|
4081
4296
|
"resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
|
|
@@ -7986,13 +8201,33 @@
|
|
|
7986
8201
|
"version": "4.8.0",
|
|
7987
8202
|
"resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.8.0.tgz",
|
|
7988
8203
|
"integrity": "sha512-u6fs2AEUljNho3EYTJNBfImO5QTo/J/1Etd+NVdCj7qWKUSN/bSLkZwhDv7I+w/MSC6qJ4cknepkAYykDdK8og==",
|
|
7989
|
-
"dev": true,
|
|
7990
8204
|
"bin": {
|
|
7991
8205
|
"node-gyp-build": "bin.js",
|
|
7992
8206
|
"node-gyp-build-optional": "optional.js",
|
|
7993
8207
|
"node-gyp-build-test": "build-test.js"
|
|
7994
8208
|
}
|
|
7995
8209
|
},
|
|
8210
|
+
"node_modules/node-hid": {
|
|
8211
|
+
"version": "3.1.0",
|
|
8212
|
+
"resolved": "https://registry.npmjs.org/node-hid/-/node-hid-3.1.0.tgz",
|
|
8213
|
+
"integrity": "sha512-YCTD1Ad3PHavx2+hY0QA468pn/gKa44U+fWB1KkRswisWtTROtBzdbmY+Xrm+QZSBCGTkdkgke7Ce606WcGxiQ==",
|
|
8214
|
+
"hasInstallScript": true,
|
|
8215
|
+
"dependencies": {
|
|
8216
|
+
"node-addon-api": "^3.2.1",
|
|
8217
|
+
"pkg-prebuilds": "^1.0.0"
|
|
8218
|
+
},
|
|
8219
|
+
"bin": {
|
|
8220
|
+
"hid-showdevices": "src/show-devices.js"
|
|
8221
|
+
},
|
|
8222
|
+
"engines": {
|
|
8223
|
+
"node": ">=10.16"
|
|
8224
|
+
}
|
|
8225
|
+
},
|
|
8226
|
+
"node_modules/node-hid/node_modules/node-addon-api": {
|
|
8227
|
+
"version": "3.2.1",
|
|
8228
|
+
"resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-3.2.1.tgz",
|
|
8229
|
+
"integrity": "sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A=="
|
|
8230
|
+
},
|
|
7996
8231
|
"node_modules/node-releases": {
|
|
7997
8232
|
"version": "2.0.14",
|
|
7998
8233
|
"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz",
|
|
@@ -8645,6 +8880,21 @@
|
|
|
8645
8880
|
"node": ">=4.0.0"
|
|
8646
8881
|
}
|
|
8647
8882
|
},
|
|
8883
|
+
"node_modules/pkg-prebuilds": {
|
|
8884
|
+
"version": "1.0.0",
|
|
8885
|
+
"resolved": "https://registry.npmjs.org/pkg-prebuilds/-/pkg-prebuilds-1.0.0.tgz",
|
|
8886
|
+
"integrity": "sha512-D9wlkXZCmjxj2kBHTw3fGSyjoahr33breGBoJcoezpi7ouYS59DJVOHMZ+dgqacSrZiJo4qtkXxLQTE+BqXJmQ==",
|
|
8887
|
+
"dependencies": {
|
|
8888
|
+
"yargs": "^17.7.2"
|
|
8889
|
+
},
|
|
8890
|
+
"bin": {
|
|
8891
|
+
"pkg-prebuilds-copy": "bin/copy.mjs",
|
|
8892
|
+
"pkg-prebuilds-verify": "bin/verify.mjs"
|
|
8893
|
+
},
|
|
8894
|
+
"engines": {
|
|
8895
|
+
"node": ">= 14.15.0"
|
|
8896
|
+
}
|
|
8897
|
+
},
|
|
8648
8898
|
"node_modules/plur": {
|
|
8649
8899
|
"version": "5.1.0",
|
|
8650
8900
|
"resolved": "https://registry.npmjs.org/plur/-/plur-5.1.0.tgz",
|
|
@@ -9667,6 +9917,33 @@
|
|
|
9667
9917
|
"url": "https://github.com/sponsors/sindresorhus"
|
|
9668
9918
|
}
|
|
9669
9919
|
},
|
|
9920
|
+
"node_modules/serialport": {
|
|
9921
|
+
"version": "12.0.0",
|
|
9922
|
+
"resolved": "https://registry.npmjs.org/serialport/-/serialport-12.0.0.tgz",
|
|
9923
|
+
"integrity": "sha512-AmH3D9hHPFmnF/oq/rvigfiAouAKyK/TjnrkwZRYSFZxNggJxwvbAbfYrLeuvq7ktUdhuHdVdSjj852Z55R+uA==",
|
|
9924
|
+
"dependencies": {
|
|
9925
|
+
"@serialport/binding-mock": "10.2.2",
|
|
9926
|
+
"@serialport/bindings-cpp": "12.0.1",
|
|
9927
|
+
"@serialport/parser-byte-length": "12.0.0",
|
|
9928
|
+
"@serialport/parser-cctalk": "12.0.0",
|
|
9929
|
+
"@serialport/parser-delimiter": "12.0.0",
|
|
9930
|
+
"@serialport/parser-inter-byte-timeout": "12.0.0",
|
|
9931
|
+
"@serialport/parser-packet-length": "12.0.0",
|
|
9932
|
+
"@serialport/parser-readline": "12.0.0",
|
|
9933
|
+
"@serialport/parser-ready": "12.0.0",
|
|
9934
|
+
"@serialport/parser-regex": "12.0.0",
|
|
9935
|
+
"@serialport/parser-slip-encoder": "12.0.0",
|
|
9936
|
+
"@serialport/parser-spacepacket": "12.0.0",
|
|
9937
|
+
"@serialport/stream": "12.0.0",
|
|
9938
|
+
"debug": "4.3.4"
|
|
9939
|
+
},
|
|
9940
|
+
"engines": {
|
|
9941
|
+
"node": ">=16.0.0"
|
|
9942
|
+
},
|
|
9943
|
+
"funding": {
|
|
9944
|
+
"url": "https://opencollective.com/serialport/donate"
|
|
9945
|
+
}
|
|
9946
|
+
},
|
|
9670
9947
|
"node_modules/set-blocking": {
|
|
9671
9948
|
"version": "2.0.0",
|
|
9672
9949
|
"resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz",
|
|
@@ -10793,6 +11070,39 @@
|
|
|
10793
11070
|
"requires-port": "^1.0.0"
|
|
10794
11071
|
}
|
|
10795
11072
|
},
|
|
11073
|
+
"node_modules/usb": {
|
|
11074
|
+
"version": "2.13.0",
|
|
11075
|
+
"resolved": "https://registry.npmjs.org/usb/-/usb-2.13.0.tgz",
|
|
11076
|
+
"integrity": "sha512-pTNKyxD1DfC1DYu8kFcIdpE8f33e0c2Sbmmi0HEs28HTVC555uocvYR1g5DDv4CBibacCh4BqRyYZJylN4mBbw==",
|
|
11077
|
+
"hasInstallScript": true,
|
|
11078
|
+
"dependencies": {
|
|
11079
|
+
"@types/w3c-web-usb": "^1.0.6",
|
|
11080
|
+
"node-addon-api": "^8.0.0",
|
|
11081
|
+
"node-gyp-build": "^4.5.0"
|
|
11082
|
+
},
|
|
11083
|
+
"engines": {
|
|
11084
|
+
"node": ">=12.22.0 <13.0 || >=14.17.0"
|
|
11085
|
+
}
|
|
11086
|
+
},
|
|
11087
|
+
"node_modules/usb-power-profiling": {
|
|
11088
|
+
"version": "1.2.0",
|
|
11089
|
+
"resolved": "https://registry.npmjs.org/usb-power-profiling/-/usb-power-profiling-1.2.0.tgz",
|
|
11090
|
+
"integrity": "sha512-FE0fed7biDZLv0/dvYugnSS8JUyshJx2AA9X3OW0pKw5grQwDP6hpjo5iSjR93dD9ngSvTjsaJmFZeoBHRHtwA==",
|
|
11091
|
+
"dependencies": {
|
|
11092
|
+
"crc-full": "^1.1.0",
|
|
11093
|
+
"node-hid": "^3.0.0",
|
|
11094
|
+
"serialport": "^12.0.0",
|
|
11095
|
+
"usb": "^2.9.0"
|
|
11096
|
+
}
|
|
11097
|
+
},
|
|
11098
|
+
"node_modules/usb/node_modules/node-addon-api": {
|
|
11099
|
+
"version": "8.0.0",
|
|
11100
|
+
"resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-8.0.0.tgz",
|
|
11101
|
+
"integrity": "sha512-ipO7rsHEBqa9STO5C5T10fj732ml+5kLN1cAG8/jdHd56ldQeGj3Q7+scUS+VHK/qy1zLEwC4wMK5+yM0btPvw==",
|
|
11102
|
+
"engines": {
|
|
11103
|
+
"node": "^18 || ^20 || >= 21"
|
|
11104
|
+
}
|
|
11105
|
+
},
|
|
10796
11106
|
"node_modules/utcstring": {
|
|
10797
11107
|
"version": "0.1.0",
|
|
10798
11108
|
"resolved": "https://registry.npmjs.org/utcstring/-/utcstring-0.1.0.tgz",
|
package/package.json
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
"sitespeed.io": "./bin/sitespeed.js",
|
|
6
6
|
"sitespeed.io-wpr": "./bin/browsertimeWebPageReplay.js"
|
|
7
7
|
},
|
|
8
|
-
"version": "34.0
|
|
8
|
+
"version": "34.1.0",
|
|
9
9
|
"description": "sitespeed.io is an open-source tool for comprehensive web performance analysis, enabling you to test, monitor, and optimize your website’s speed using real browsers in various environments.",
|
|
10
10
|
"keywords": [
|
|
11
11
|
"performance",
|
|
@@ -85,7 +85,7 @@
|
|
|
85
85
|
"@tgwf/co2": "0.14.4",
|
|
86
86
|
"@aws-sdk/client-s3": "3.564.0",
|
|
87
87
|
"axe-core": "4.9.1",
|
|
88
|
-
"browsertime": "22.
|
|
88
|
+
"browsertime": "22.4.0",
|
|
89
89
|
"coach-core": "8.0.2",
|
|
90
90
|
"cli-color": "2.0.4",
|
|
91
91
|
"concurrent-queue": "7.0.2",
|