sitespeed.io 21.2.0 → 21.4.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 +25 -1
- package/Dockerfile +1 -1
- package/Dockerfile-slim +1 -1
- package/lib/cli/cli.js +27 -2
- package/lib/plugins/browsertime/analyzer.js +3 -2
- package/lib/sitespeed.js +1 -1
- package/npm-shrinkwrap.json +17 -17
- package/package.json +2 -2
- package/release/feed.js +2 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,8 +1,32 @@
|
|
|
1
1
|
# CHANGELOG - sitespeed.io (we use [semantic versioning](https://semver.org))
|
|
2
2
|
|
|
3
|
+
## 21.4.0 - 2022-01-12
|
|
4
|
+
### Added
|
|
5
|
+
* Updated to a new build of WebPageReplay in the Docker container
|
|
6
|
+
* Updated the Ubuntu base image to latest version and latest NodeJS in the Docketr container.
|
|
7
|
+
* Upgraded Browdsertime [#3528](https://github.com/sitespeedio/sitespeed.io/pull/3528):
|
|
8
|
+
* Add support for Humble as connectivity engine for mobile phone testing. Make sure to setup Humble on a Raspberry Pi 4 and the choose engine with --connectivity.engine humble and set the URL to your instance --connectivity.humble.url http://raspberrypi.local:3000. Added in #1691.
|
|
9
|
+
* Upgraded to Chrome 97 and Edge 97 in the Docker container.
|
|
10
|
+
* Upgraded to Chromedriver 97.
|
|
11
|
+
### Fixed
|
|
12
|
+
* Updated Chromedriver library that automatically picks up the Chromedriver if it's installed on Raspberry Pi.
|
|
13
|
+
## 21.3.0 - 2022-01-01
|
|
14
|
+
### Added
|
|
15
|
+
* Updated to [Browsertime 14.13.0](https://github.com/sitespeedio/browsertime/blob/main/CHANGELOG.md#14130---2021-12-30) with the following fixes for the user agent:
|
|
16
|
+
* Append text to Chrome/Edge user agent using `--chrome.appendToUserAgent`
|
|
17
|
+
* When you use Chrome/Edge and use a "emulated device" that will use the user agent that you provide using `--userAgent`. Else it will use the user agent from your emulated device setting.
|
|
18
|
+
* You can also use Edge to run emulated mobile with the same settings as Chrome.
|
|
19
|
+
## 21.2.2 - 2021-12-23
|
|
20
|
+
### Fixed
|
|
21
|
+
* Fix the error introduced in 21.2.0 for "Include page summary URL in the result JSON"
|
|
22
|
+
[#3525](https://github.com/sitespeedio/sitespeed.io/pull/3525).
|
|
23
|
+
|
|
24
|
+
## 21.2.1 - 2021-12-22
|
|
25
|
+
### Fixed
|
|
26
|
+
* It turns out that Firefox 95 doesn't work with the HAR export trigger and the workaround that worked in Firefox 94 seems to not work in 95 see https://github.com/sitespeedio/browsertime/issues/1671#issuecomment-999412035. That's why we are reverting to Firefox 94 in the Docker containers.
|
|
3
27
|
## 21.2.0 - 2021-12-22
|
|
4
28
|
### Fixed
|
|
5
|
-
* The catching of errors in the queue was broken and reported the error x times (x=
|
|
29
|
+
* The catching of errors in the queue was broken and reported the error x times (x=number of plugins). Also when we had an error the result JSON was not stored. [#3522](https://github.com/sitespeedio/sitespeed.io/pull/3522).
|
|
6
30
|
|
|
7
31
|
### Added
|
|
8
32
|
* Updated to Firefox 95 and Edge 96 in the Docker container.
|
package/Dockerfile
CHANGED
package/Dockerfile-slim
CHANGED
package/lib/cli/cli.js
CHANGED
|
@@ -113,6 +113,18 @@ function validateInput(argv) {
|
|
|
113
113
|
return 'Error: You have a miss match between number of alias for groups and URLs.';
|
|
114
114
|
}
|
|
115
115
|
|
|
116
|
+
if (
|
|
117
|
+
argv.browsertime.connectivity &&
|
|
118
|
+
argv.browsertime.connectivity.engine === 'humble'
|
|
119
|
+
) {
|
|
120
|
+
if (
|
|
121
|
+
!argv.browsertime.connectivity.humble ||
|
|
122
|
+
!argv.browsertime.connectivity.humble.url
|
|
123
|
+
) {
|
|
124
|
+
return 'You need to specify the URL to Humble by using the --browsertime.connectivity.humble.url option.';
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
|
|
116
128
|
if (
|
|
117
129
|
argv.browsertime.safari &&
|
|
118
130
|
argv.browsertime.safari.useSimulator &&
|
|
@@ -291,12 +303,19 @@ module.exports.parseCommandLine = function parseCommandLine() {
|
|
|
291
303
|
.option('browsertime.connectivity.engine', {
|
|
292
304
|
alias: 'connectivity.engine',
|
|
293
305
|
default: 'external',
|
|
294
|
-
choices: ['external', 'throttle', 'tsproxy'],
|
|
306
|
+
choices: ['external', 'throttle', 'tsproxy', 'humble'],
|
|
295
307
|
describe:
|
|
296
|
-
'The engine for connectivity. Throttle works on Mac and tc based Linux. Use external if you set the connectivity outside of Browsertime. Use tsproxy if you are using Kubernetes. More documentation at https://www.sitespeed.io/documentation/sitespeed.io/connectivity/.',
|
|
308
|
+
'The engine for connectivity. Throttle works on Mac and tc based Linux. For mobile you can use Humble if you have a Humble setup. Use external if you set the connectivity outside of Browsertime. Use tsproxy if you are using Kubernetes. More documentation at https://www.sitespeed.io/documentation/sitespeed.io/connectivity/.',
|
|
297
309
|
type: 'string',
|
|
298
310
|
group: 'Browser'
|
|
299
311
|
})
|
|
312
|
+
.option('browsertime.connectivity.humble.url', {
|
|
313
|
+
alias: 'connectivity.humble.url',
|
|
314
|
+
type: 'string',
|
|
315
|
+
describe:
|
|
316
|
+
'The path to your Humble instance. For example http://raspberrypi:3000',
|
|
317
|
+
group: 'Browser'
|
|
318
|
+
})
|
|
300
319
|
.option('browsertime.pageCompleteCheck', {
|
|
301
320
|
alias: 'pageCompleteCheck',
|
|
302
321
|
describe:
|
|
@@ -715,6 +734,12 @@ module.exports.parseCommandLine = function parseCommandLine() {
|
|
|
715
734
|
default: true,
|
|
716
735
|
group: 'Chrome'
|
|
717
736
|
})
|
|
737
|
+
.option('browsertime.chrome.appendToUserAgent', {
|
|
738
|
+
alias: 'chrome.appendToUserAgent',
|
|
739
|
+
type: 'string',
|
|
740
|
+
describe: 'Append to the user agent.',
|
|
741
|
+
group: 'Chrome'
|
|
742
|
+
})
|
|
718
743
|
.option('browsertime.chrome.android.package', {
|
|
719
744
|
alias: 'chrome.android.package',
|
|
720
745
|
describe:
|
|
@@ -100,7 +100,7 @@ module.exports = {
|
|
|
100
100
|
// set mobile options
|
|
101
101
|
if (options.mobile) {
|
|
102
102
|
btOptions.viewPort = '360x640';
|
|
103
|
-
if (btOptions.browser === 'chrome') {
|
|
103
|
+
if (btOptions.browser === 'chrome' || btOptions.browser === 'edge') {
|
|
104
104
|
const emulation = get(
|
|
105
105
|
btOptions,
|
|
106
106
|
'chrome.mobileEmulation.deviceName',
|
|
@@ -109,8 +109,9 @@ module.exports = {
|
|
|
109
109
|
btOptions.chrome.mobileEmulation = {
|
|
110
110
|
deviceName: emulation
|
|
111
111
|
};
|
|
112
|
+
} else {
|
|
113
|
+
btOptions.userAgent = iphone6UserAgent;
|
|
112
114
|
}
|
|
113
|
-
btOptions.userAgent = iphone6UserAgent;
|
|
114
115
|
}
|
|
115
116
|
const scriptCategories = await browserScripts.allScriptCategories;
|
|
116
117
|
let scriptsByCategory = await browserScripts.getScriptsForCategories(
|
package/lib/sitespeed.js
CHANGED
|
@@ -164,7 +164,7 @@ module.exports = {
|
|
|
164
164
|
? resultUrls.reportSummaryUrl() + '/index.html'
|
|
165
165
|
: '',
|
|
166
166
|
pageSummaryUrl:
|
|
167
|
-
url && resultUrls.hasBaseUrl()
|
|
167
|
+
url && resultUrls.hasBaseUrl() && !options.multi
|
|
168
168
|
? resultUrls.absoluteSummaryPageUrl(url) + 'index.html'
|
|
169
169
|
: '',
|
|
170
170
|
localPath: storageManager.getBaseDir()
|
package/npm-shrinkwrap.json
CHANGED
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "sitespeed.io",
|
|
3
|
-
"version": "21.
|
|
3
|
+
"version": "21.4.0",
|
|
4
4
|
"lockfileVersion": 2,
|
|
5
5
|
"requires": true,
|
|
6
6
|
"packages": {
|
|
7
7
|
"": {
|
|
8
8
|
"name": "sitespeed.io",
|
|
9
|
-
"version": "21.
|
|
9
|
+
"version": "21.4.0",
|
|
10
10
|
"license": "MIT",
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"@google-cloud/storage": "5.8.3",
|
|
13
13
|
"@tgwf/co2": "0.8.0",
|
|
14
14
|
"aws-sdk": "2.882.0",
|
|
15
15
|
"axe-core": "4.3.5",
|
|
16
|
-
"browsertime": "14.
|
|
16
|
+
"browsertime": "14.14.1",
|
|
17
17
|
"cli-color": "2.0.0",
|
|
18
18
|
"coach-core": "7.0.0",
|
|
19
19
|
"concurrent-queue": "7.0.2",
|
|
@@ -910,9 +910,9 @@
|
|
|
910
910
|
"optional": true
|
|
911
911
|
},
|
|
912
912
|
"node_modules/@sitespeed.io/chromedriver": {
|
|
913
|
-
"version": "
|
|
914
|
-
"resolved": "https://registry.npmjs.org/@sitespeed.io/chromedriver/-/chromedriver-
|
|
915
|
-
"integrity": "sha512-
|
|
913
|
+
"version": "97.0.4692-7b",
|
|
914
|
+
"resolved": "https://registry.npmjs.org/@sitespeed.io/chromedriver/-/chromedriver-97.0.4692-7b.tgz",
|
|
915
|
+
"integrity": "sha512-h2P8Ln/qOu90LA8E89NRmrxWgbIYbm/ri4aRu0m/ItGVWVSwsFlxSRLe+6spBfmxBRtmxgAz2ws6wS6C/Jugkg==",
|
|
916
916
|
"hasInstallScript": true,
|
|
917
917
|
"dependencies": {
|
|
918
918
|
"node-downloader-helper": "1.0.19",
|
|
@@ -1465,13 +1465,13 @@
|
|
|
1465
1465
|
}
|
|
1466
1466
|
},
|
|
1467
1467
|
"node_modules/browsertime": {
|
|
1468
|
-
"version": "14.
|
|
1469
|
-
"resolved": "https://registry.npmjs.org/browsertime/-/browsertime-14.
|
|
1470
|
-
"integrity": "sha512-
|
|
1468
|
+
"version": "14.14.1",
|
|
1469
|
+
"resolved": "https://registry.npmjs.org/browsertime/-/browsertime-14.14.1.tgz",
|
|
1470
|
+
"integrity": "sha512-nwhFYrWsoAjyd8VVLAgiWLi3wdM2qFOrM6hS/qvD1QNrOj/x22w5wF5jmgk0ni0gAFvl7gL1vWnwLRlGzuk1HQ==",
|
|
1471
1471
|
"dependencies": {
|
|
1472
1472
|
"@cypress/xvfb": "1.2.4",
|
|
1473
1473
|
"@devicefarmer/adbkit": "2.11.3",
|
|
1474
|
-
"@sitespeed.io/chromedriver": "
|
|
1474
|
+
"@sitespeed.io/chromedriver": "97.0.4692-7b",
|
|
1475
1475
|
"@sitespeed.io/edgedriver": "95.0.1020-30",
|
|
1476
1476
|
"@sitespeed.io/geckodriver": "0.29.1-2",
|
|
1477
1477
|
"@sitespeed.io/throttle": "3.0.0",
|
|
@@ -8180,9 +8180,9 @@
|
|
|
8180
8180
|
}
|
|
8181
8181
|
},
|
|
8182
8182
|
"@sitespeed.io/chromedriver": {
|
|
8183
|
-
"version": "
|
|
8184
|
-
"resolved": "https://registry.npmjs.org/@sitespeed.io/chromedriver/-/chromedriver-
|
|
8185
|
-
"integrity": "sha512-
|
|
8183
|
+
"version": "97.0.4692-7b",
|
|
8184
|
+
"resolved": "https://registry.npmjs.org/@sitespeed.io/chromedriver/-/chromedriver-97.0.4692-7b.tgz",
|
|
8185
|
+
"integrity": "sha512-h2P8Ln/qOu90LA8E89NRmrxWgbIYbm/ri4aRu0m/ItGVWVSwsFlxSRLe+6spBfmxBRtmxgAz2ws6wS6C/Jugkg==",
|
|
8186
8186
|
"requires": {
|
|
8187
8187
|
"node-downloader-helper": "1.0.19",
|
|
8188
8188
|
"node-stream-zip": "1.15.0"
|
|
@@ -8631,13 +8631,13 @@
|
|
|
8631
8631
|
}
|
|
8632
8632
|
},
|
|
8633
8633
|
"browsertime": {
|
|
8634
|
-
"version": "14.
|
|
8635
|
-
"resolved": "https://registry.npmjs.org/browsertime/-/browsertime-14.
|
|
8636
|
-
"integrity": "sha512-
|
|
8634
|
+
"version": "14.14.1",
|
|
8635
|
+
"resolved": "https://registry.npmjs.org/browsertime/-/browsertime-14.14.1.tgz",
|
|
8636
|
+
"integrity": "sha512-nwhFYrWsoAjyd8VVLAgiWLi3wdM2qFOrM6hS/qvD1QNrOj/x22w5wF5jmgk0ni0gAFvl7gL1vWnwLRlGzuk1HQ==",
|
|
8637
8637
|
"requires": {
|
|
8638
8638
|
"@cypress/xvfb": "1.2.4",
|
|
8639
8639
|
"@devicefarmer/adbkit": "2.11.3",
|
|
8640
|
-
"@sitespeed.io/chromedriver": "
|
|
8640
|
+
"@sitespeed.io/chromedriver": "97.0.4692-7b",
|
|
8641
8641
|
"@sitespeed.io/edgedriver": "95.0.1020-30",
|
|
8642
8642
|
"@sitespeed.io/geckodriver": "0.29.1-2",
|
|
8643
8643
|
"@sitespeed.io/throttle": "3.0.0",
|
package/package.json
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"sitespeed.io": "./bin/sitespeed.js",
|
|
5
5
|
"sitespeed.io-wpr": "./bin/browsertimeWebPageReplay.js"
|
|
6
6
|
},
|
|
7
|
-
"version": "21.
|
|
7
|
+
"version": "21.4.0",
|
|
8
8
|
"description": "Analyze the web performance of your site",
|
|
9
9
|
"keywords": [
|
|
10
10
|
"performance",
|
|
@@ -74,7 +74,7 @@
|
|
|
74
74
|
"@tgwf/co2": "0.8.0",
|
|
75
75
|
"aws-sdk": "2.882.0",
|
|
76
76
|
"axe-core": "4.3.5",
|
|
77
|
-
"browsertime": "14.
|
|
77
|
+
"browsertime": "14.14.1",
|
|
78
78
|
"coach-core": "7.0.0",
|
|
79
79
|
"cli-color": "2.0.0",
|
|
80
80
|
"concurrent-queue": "7.0.2",
|
package/release/feed.js
CHANGED
|
@@ -100,7 +100,8 @@ async function generateFeed() {
|
|
|
100
100
|
coach: 'https://www.sitespeed.io/img/logos/coach.png',
|
|
101
101
|
'chrome-har': '',
|
|
102
102
|
'chrome-trace': '',
|
|
103
|
-
compare: 'https://www.sitespeed.io/img/logos/compare.png'
|
|
103
|
+
compare: 'https://www.sitespeed.io/img/logos/compare.png',
|
|
104
|
+
humble: ''
|
|
104
105
|
};
|
|
105
106
|
|
|
106
107
|
sortedVersionFiles.forEach(file => {
|