sitespeed.io 36.0.0-alpha.1 → 36.0.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 CHANGED
@@ -1,20 +1,23 @@
1
1
  # CHANGELOG - sitespeed.io (we use [semantic versioning](https://semver.org))
2
2
 
3
- ## 36.0.0 - UNRELEASED
3
+ ## 36.0.0 - 2025-01-21
4
4
 
5
- 36.0.0 will be released late January 2025.
5
+ The 36.0.0 release remove a lot of dependencies. Since we implemented sitespeed.io the first time, there are many things that are easy to do in modern NodeJS. Those things have now been implemented directly in sitespeed.io.
6
+
7
+ This release contains a couple of breaking changes. Please read the breaking section before you upgrade!
6
8
 
7
9
  ### Breaking
8
- * Only download green2url data when you specifically ask for it [#4354](https://github.com/sitespeedio/sitespeed.io/pull/4354). To install you need to run `DOWNLOAD_URL2GREEN=true npm install sitespeed.io`. The green2url is also updated to use the latest availible data by late 2024. This saves 80 mb in default downloading.
9
- * Make sure you can't run with both `--cpu` and `--collectProfileRun` since that do not make any sense [#4298](https://github.com/sitespeedio/sitespeed.io/pull/4298)
10
- * Use correct name in Browsertime: userTimingAllowList instead of whitelist [#4346](https://github.com/sitespeedio/sitespeed.io/pull/4346).
11
- * Plugins need to update the plugin dependency to @sitespeed.io/plugin 1.0.0 or higher.
12
- * Replace intel (log) with sitespeed.io/log [#4381](https://github.com/sitespeedio/sitespeed.io/pull/4381). This remove the logToFile option in the cli. Instead of use that option, pipe the output to the file you want.
10
+ * **Sustainability plugin**: Before when you installed sitespeed.io we automatically installed the green2URL data (mapping servername to green data). With this change you inly download green2url data when you specifically ask for it [#4354](https://github.com/sitespeedio/sitespeed.io/pull/4354). To install you need to run `DOWNLOAD_URL2GREEN=true npm install sitespeed.io`. The green2url is also updated to use the latest availible data by late 2024. This saves 80 mb in default downloading. You can also get the data directly from the green hosting API using `--sustainable.useGreenWebHostingAPI true`, that's the easiest way to make sure you use the current availble data.
11
+ * **CPU**: Make sure you can't run with both `--cpu` and `--collectProfileRun` since that do not make any sense [#4298](https://github.com/sitespeedio/sitespeed.io/pull/4298). If you used to have that configuration, sitespeed.io will not exit with an error.
12
+ * **Block User Timings**: Use correct name in Browsertime: `userTimingAllowList` instead of whitelist [#4346](https://github.com/sitespeedio/sitespeed.io/pull/4346). There was a missmtach bug on how to disable UserTimings, please make sure you use `userTimingAllowList`.
13
+ * **Plugins**: If you created your own plugin for sitespeed.io you need to update the plugin dependency to @sitespeed.io/plugin 1.0.0 or higher.
14
+ * **Log to file**: Replace intel (log) with sitespeed.io/log [#4381](https://github.com/sitespeedio/sitespeed.io/pull/4381). This remove the logToFile option in the cli. Instead of use that option, pipe the output to the file you want.
13
15
 
14
16
  ### Added
15
17
  * Update to Coach-core 8.1.1 [#4363](https://github.com/sitespeedio/sitespeed.io/pull/4363)
16
18
  * Use the offical Slack plugin instead of node-slack [#4360](https://github.com/sitespeedio/sitespeed.io/pull/4360).
17
- * Firefox 134 and NodeJS 22 in the Docker container [#4395](https://github.com/sitespeedio/sitespeed.io/pull/4395) and [#4396](https://github.com/sitespeedio/sitespeed.io/pull/4396).
19
+ * Firefox 134, Chrome 132 and NodeJS 22 in the Docker container [#4395](https://github.com/sitespeedio/sitespeed.io/pull/4395), [#4396](https://github.com/sitespeedio/sitespeed.io/pull/4396) and [#4405](https://github.com/sitespeedio/sitespeed.io/pull/4405)
20
+ * Let the Docker container output the CPU architecture for easier error reporting [#4404](https://github.com/sitespeedio/sitespeed.io/pull/4404).
18
21
 
19
22
  ### Fixed
20
23
  * Replace dependencies with local code:
@@ -44,6 +47,7 @@
44
47
  * Ugrade to google-cloud/storage-7.14.0 [#4361](https://github.com/sitespeedio/sitespeed.io/pull/4361).
45
48
  * Upgrade to AWS client 3.717.0 [#4368](https://github.com/sitespeedio/sitespeed.io/pull/4368)
46
49
  * Removed the webdriver manager in the Docker container [4390](https://github.com/sitespeedio/sitespeed.io/pull/4390). We don't use it but on MacOS Selenium still uses it to find the driver for Safari so we can only remove it in Docker.
50
+ * Fix Wilcoxon NaN values when running the compare plugin [#4402](https://github.com/sitespeedio/sitespeed.io/pull/4402).
47
51
 
48
52
  ### Tech
49
53
  * New GitHub actions that test uploading to S3, GCS and SCP.
package/Dockerfile CHANGED
@@ -1,4 +1,4 @@
1
- FROM sitespeedio/webbrowsers:chrome-131.0-firefox-134.0-edge-131.0-b
1
+ FROM sitespeedio/webbrowsers:chrome-132.0-firefox-134.0-edge-132.0
2
2
 
3
3
  ARG TARGETPLATFORM=linux/amd64
4
4
 
@@ -12,7 +12,7 @@ COPY docker/webpagereplay/wpr_key.pem /webpagereplay/certs/
12
12
  COPY docker/webpagereplay/deterministic.js /webpagereplay/scripts/deterministic.js
13
13
  COPY docker/webpagereplay/LICENSE /webpagereplay/
14
14
 
15
- RUN sudo apt-get update && sudo apt-get install libnss3-tools python2 \
15
+ RUN sudo apt-get update && sudo apt-get install libnss3-tools \
16
16
  net-tools \
17
17
  build-essential \
18
18
  iproute2 -y && \
package/README.md CHANGED
@@ -1,10 +1,12 @@
1
1
  # sitespeed.io
2
2
 
3
- ![Unit tests](https://github.com/sitespeedio/sitespeed.io/workflows/Unit%20tests/badge.svg?branch=main)
4
- ![Linux browsers](https://github.com/sitespeedio/sitespeed.io/workflows/Linux%20browsers/badge.svg?branch=main)
5
- ![Docker](https://github.com/sitespeedio/sitespeed.io/workflows/Docker/badge.svg?branch=main)
6
- ![Windows Edge](https://github.com/sitespeedio/sitespeed.io/workflows/Windows%20Edge/badge.svg?branch=main)
7
- ![OSX Safari](https://github.com/sitespeedio/sitespeed.io/workflows/OSX%20Safari/badge.svg?branch=main)
3
+ [![Unit tests](https://github.com/sitespeedio/sitespeed.io/actions/workflows/unittests.yml/badge.svg)](https://github.com/sitespeedio/sitespeed.io/actions/workflows/unittests.yml)
4
+ [![Linux browsers](https://github.com/sitespeedio/sitespeed.io/actions/workflows/linux.yml/badge.svg)](https://github.com/sitespeedio/sitespeed.io/actions/workflows/linux.yml)
5
+ [![Docker](https://github.com/sitespeedio/sitespeed.io/actions/workflows/docker.yml/badge.svg)](https://github.com/sitespeedio/sitespeed.io/actions/workflows/docker.yml)
6
+ [![Docker security scan](https://github.com/sitespeedio/sitespeed.io/actions/workflows/docker-scan.yml/badge.svg)](https://github.com/sitespeedio/sitespeed.io/actions/workflows/docker-scan.yml)
7
+ [![Windows Edge](https://github.com/sitespeedio/sitespeed.io/actions/workflows/windows.yml/badge.svg)](https://github.com/sitespeedio/sitespeed.io/actions/workflows/windows.yml)
8
+ [![OSX Safari](https://github.com/sitespeedio/sitespeed.io/actions/workflows/safari.yml/badge.svg)](https://github.com/sitespeedio/sitespeed.io/actions/workflows/safari.yml)
9
+ [![Test upload functionality](https://github.com/sitespeedio/sitespeed.io/actions/workflows/upload.yml/badge.svg)](https://github.com/sitespeedio/sitespeed.io/actions/workflows/upload.yml)
8
10
  [![Downloads][downloads-image]][downloads-url]
9
11
  [![Docker][docker-image]][docker-url]
10
12
  [![Stars][stars-image]][stars-url]
package/docs/README.md ADDED
@@ -0,0 +1,10 @@
1
+ Documentation for sitespeed.io
2
+ ================
3
+
4
+ First make sure you have Bundler: <code>gem install bundler</code>
5
+
6
+ If you run on a Mac OS make sure you have xcode-select installed: <code>xcode-select --install</code>
7
+
8
+ To run it locally: <code>bundle install && bundle exec jekyll serve --baseurl ''</code>
9
+
10
+ Checkout http://localhost:4000/
@@ -144,7 +144,7 @@ table
144
144
  td
145
145
  a(href=createGraphLink(groupName, metricName))
146
146
  b #{groupName + '.' + metricName}
147
- if values.statisticalTestU === "N/A" || values.statisticalTestU === "Datasets are identical" || values.statisticalTestU === "No variability"
147
+ if values.statisticalTestU === "N/A" || values.statisticalTestU === "Datasets are identical" || values.statisticalTestU === "No variability" || values.statisticalTestU === "Datasets have different lengths"
148
148
  td #{values.statisticalTestU}
149
149
  else
150
150
  td #{h.decimals(values.statisticalTestU)}
@@ -13,7 +13,7 @@ def perform_test(test_type, baseline, current, **kwargs):
13
13
  return None, "Datasets are identical"
14
14
  else:
15
15
  return None, "No variability"
16
- if (len(set(baseline)) != len(set(current))) and test_type == 'wilcoxon':
16
+ if (len(baseline) != len(current)) and test_type == 'wilcoxon':
17
17
  return None, "Datasets have different lengths"
18
18
 
19
19
  if test_type == 'wilcoxon':
@@ -1,24 +1,24 @@
1
1
  {
2
2
  "name": "sitespeed.io",
3
- "version": "36.0.0-alpha.1",
3
+ "version": "36.0.0",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "sitespeed.io",
9
- "version": "36.0.0-alpha.1",
9
+ "version": "36.0.0",
10
10
  "hasInstallScript": true,
11
11
  "license": "MIT",
12
12
  "dependencies": {
13
13
  "@aws-sdk/client-s3": "3.717.0",
14
14
  "@google-cloud/storage": "7.14.0",
15
15
  "@influxdata/influxdb-client": "1.33.2",
16
- "@sitespeed.io/log": "0.2.3",
16
+ "@sitespeed.io/log": "0.2.4",
17
17
  "@sitespeed.io/plugin": "1.0.0",
18
18
  "@slack/webhook": "7.0.4",
19
19
  "@tgwf/co2": "0.16.4",
20
20
  "axe-core": "4.10.2",
21
- "browsertime": "24.0.0-alpha.3",
21
+ "browsertime": "24.0.0",
22
22
  "coach-core": "8.1.1",
23
23
  "dayjs": "1.11.11",
24
24
  "fast-crc32c": "2.0.0",
@@ -1821,9 +1821,9 @@
1821
1821
  }
1822
1822
  },
1823
1823
  "node_modules/@sitespeed.io/chromedriver": {
1824
- "version": "131.0.6778-69",
1825
- "resolved": "https://registry.npmjs.org/@sitespeed.io/chromedriver/-/chromedriver-131.0.6778-69.tgz",
1826
- "integrity": "sha512-1XAGXWC8cvxG8yQ8iWCpY+CRkoUm36jbRWB0ia6YYXpm34KHTIXBbLYZtGEf2luQ6BJIFAOh4If5pH2q1KijEw==",
1824
+ "version": "132.0.6834-83",
1825
+ "resolved": "https://registry.npmjs.org/@sitespeed.io/chromedriver/-/chromedriver-132.0.6834-83.tgz",
1826
+ "integrity": "sha512-JHyO6MHW8t6fZwkpTpSqSk1w18YRJxg0Joym00GHlnB6uH15+//PBYeKuvnjdZTROlp/6FK3Pqo4hTE2Kql45g==",
1827
1827
  "hasInstallScript": true,
1828
1828
  "dependencies": {
1829
1829
  "node-downloader-helper": "2.1.9",
@@ -1831,11 +1831,10 @@
1831
1831
  }
1832
1832
  },
1833
1833
  "node_modules/@sitespeed.io/edgedriver": {
1834
- "version": "131.0.2903-112",
1835
- "resolved": "https://registry.npmjs.org/@sitespeed.io/edgedriver/-/edgedriver-131.0.2903-112.tgz",
1836
- "integrity": "sha512-OgwH9qSb3Kh3NfZBGR2+ZoeHzuxx4aRAvbLVVp/jRvrm+lExIQ+qYyOZzaJhi3lvGMDaFaRnMwbLDl9wVZu15A==",
1834
+ "version": "132.0.2957-115",
1835
+ "resolved": "https://registry.npmjs.org/@sitespeed.io/edgedriver/-/edgedriver-132.0.2957-115.tgz",
1836
+ "integrity": "sha512-Fdgo2fD39r1PibE1PiCL8qM6vIVuCIvS/vvpbaKTV5sEveOegCYO6mH0gIocY0OOWyQtqphXWp04USR59xctvA==",
1837
1837
  "hasInstallScript": true,
1838
- "license": "MIT",
1839
1838
  "dependencies": {
1840
1839
  "node-downloader-helper": "2.1.9",
1841
1840
  "node-stream-zip": "1.15.0"
@@ -1864,9 +1863,9 @@
1864
1863
  }
1865
1864
  },
1866
1865
  "node_modules/@sitespeed.io/log": {
1867
- "version": "0.2.3",
1868
- "resolved": "https://registry.npmjs.org/@sitespeed.io/log/-/log-0.2.3.tgz",
1869
- "integrity": "sha512-m8uFubqYAbwM/cu0WmXt2w/mMZIr/WL0wGASLZgDZSJm/BvspumNfbqwYvHZvmKr8+EPt9N3ArFVG9vmB49DRg==",
1866
+ "version": "0.2.4",
1867
+ "resolved": "https://registry.npmjs.org/@sitespeed.io/log/-/log-0.2.4.tgz",
1868
+ "integrity": "sha512-rXQhH+RJiMxSZB3+JYhHEzfm8KruFkDOAxAuh4yDo03zeOyD4BvLOtvkpKXFP2V6egJKev0w+SSXa4RkNTuunw==",
1870
1869
  "license": "Apache-2.0",
1871
1870
  "engines": {
1872
1871
  "node": ">=20.0.0"
@@ -3331,16 +3330,15 @@
3331
3330
  }
3332
3331
  },
3333
3332
  "node_modules/browsertime": {
3334
- "version": "24.0.0-alpha.3",
3335
- "resolved": "https://registry.npmjs.org/browsertime/-/browsertime-24.0.0-alpha.3.tgz",
3336
- "integrity": "sha512-F3sSiSe/99iJN0SJk/IGzzlQELTsKDzc73vy7ScriXB59AvRDxRW8/aiMZQ9YAG1DYSJFYbIy3xqe+JC5XkVSg==",
3337
- "license": "MIT",
3333
+ "version": "24.0.0",
3334
+ "resolved": "https://registry.npmjs.org/browsertime/-/browsertime-24.0.0.tgz",
3335
+ "integrity": "sha512-Bc8eV3Uu/U+TnW+nWy1BwZXyvNlPCmRwH7Y5yj98WF91iQ9tpGxHy9PUAc1s9Y4B7h0A2Qzer4UPgC3Iw508aQ==",
3338
3336
  "dependencies": {
3339
3337
  "@devicefarmer/adbkit": "3.3.8",
3340
- "@sitespeed.io/chromedriver": "131.0.6778-69",
3341
- "@sitespeed.io/edgedriver": "131.0.2903-112",
3338
+ "@sitespeed.io/chromedriver": "132.0.6834-83",
3339
+ "@sitespeed.io/edgedriver": "132.0.2957-115",
3342
3340
  "@sitespeed.io/geckodriver": "0.35.0-1",
3343
- "@sitespeed.io/log": "0.2.3",
3341
+ "@sitespeed.io/log": "0.2.4",
3344
3342
  "@sitespeed.io/throttle": "5.0.1",
3345
3343
  "@sitespeed.io/tracium": "0.3.3",
3346
3344
  "chrome-har": "1.0.1",
@@ -3348,9 +3346,7 @@
3348
3346
  "execa": "9.5.2",
3349
3347
  "fast-stats": "0.0.7",
3350
3348
  "ff-test-bidi-har-export": "0.0.17",
3351
- "lodash.get": "4.4.2",
3352
3349
  "lodash.merge": "4.6.2",
3353
- "lodash.set": "4.3.2",
3354
3350
  "selenium-webdriver": "4.27.0",
3355
3351
  "yargs": "17.7.2"
3356
3352
  },
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": "36.0.0-alpha.1",
8
+ "version": "36.0.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",
@@ -84,12 +84,12 @@
84
84
  "@aws-sdk/client-s3": "3.717.0",
85
85
  "@google-cloud/storage": "7.14.0",
86
86
  "@influxdata/influxdb-client": "1.33.2",
87
- "@sitespeed.io/log": "0.2.3",
87
+ "@sitespeed.io/log": "0.2.4",
88
88
  "@sitespeed.io/plugin": "1.0.0",
89
89
  "@tgwf/co2": "0.16.4",
90
90
  "@slack/webhook": "7.0.4",
91
91
  "axe-core": "4.10.2",
92
- "browsertime": "24.0.0-alpha.3",
92
+ "browsertime": "24.0.0",
93
93
  "coach-core": "8.1.1",
94
94
  "dayjs": "1.11.11",
95
95
  "fast-crc32c": "2.0.0",