Skip to content

Commit

Permalink
Merge branch 'sitespeedio:main' into main
Browse files Browse the repository at this point in the history
  • Loading branch information
Amerousful authored Oct 18, 2023
2 parents ad257ae + b40007d commit 4b5c510
Show file tree
Hide file tree
Showing 79 changed files with 27,918 additions and 1,907 deletions.
4 changes: 2 additions & 2 deletions .github/ISSUE_TEMPLATE/BUG_REPORT.yml
Original file line number Diff line number Diff line change
Expand Up @@ -58,8 +58,8 @@ body:
- type: textarea
id: logs
attributes:
label: Relevant log output
description: Please copy and paste any relevant log output (please DO NOT take a screenshot of the log output). This will be automatically formatted into code, so no need for backticks.
label: Log output
description: Please copy and paste the full log output from your test (please DO NOT take a screenshot of the log output). This will be automatically formatted into code, so no need for backticks. If the log output is large please use a [gist](https://gist.github.com)!
render: shell
validations:
required: false
4 changes: 3 additions & 1 deletion .github/workflows/docker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,4 +31,6 @@ jobs:
- name: Test WebPageReplay with Chrome
run: docker run --cap-add=NET_ADMIN --rm -v "$(pwd)":/sitespeed.io -e REPLAY=true -e LATENCY=100 sitespeedio/sitespeed.io https://www.sitespeed.io -n 3 -b chrome
- name: Test WebPageReplay with Firefox
run: docker run --cap-add=NET_ADMIN --rm -v "$(pwd)":/sitespeed.io --network=host -e REPLAY=true -e LATENCY=100 sitespeedio/sitespeed.io https://www.sitespeed.io -n 3 -b firefox --browsertime.firefox.acceptInsecureCerts true
run: docker run --cap-add=NET_ADMIN --rm -v "$(pwd)":/sitespeed.io --network=host -e REPLAY=true -e LATENCY=100 sitespeedio/sitespeed.io https://www.sitespeed.io -n 3 -b firefox --browsertime.firefox.acceptInsecureCerts true
- name: Run Chrome test with config
run: docker run --rm -v "$(pwd)":/sitespeed.io --network=host sitespeedio/sitespeed.io http://127.0.0.1:3001 -b chrome --config test/exampleConfig.json
4 changes: 3 additions & 1 deletion .github/workflows/linux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -67,4 +67,6 @@ jobs:
- name: Run test with Influx 1.8
run: bin/sitespeed.js http://127.0.0.1:3001/simple/ -n 1 --influxdb.host 127.0.0.1 --xvfb --logToFile
- name: Run test with Influx 2.6.1
run: bin/sitespeed.js http://127.0.0.1:3001/simple/ -n 1 --influxdb.host 127.0.0.1 --influxdb.port 8087 --influxdb.version 2 --influxdb.organisation sitespeed --influxdb.token sitespeed --xvfb
run: bin/sitespeed.js http://127.0.0.1:3001/simple/ -n 1 --influxdb.host 127.0.0.1 --influxdb.port 8087 --influxdb.version 2 --influxdb.organisation sitespeed --influxdb.token sitespeed --xvfb
- name: Run Chrome test with config
run: node bin/sitespeed.js --config test/exampleConfig.json http://127.0.0.1:3001/simple/ --xvfb
2 changes: 2 additions & 0 deletions .github/workflows/safari.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,3 +25,5 @@ jobs:
run: (serve test/data/html/ -l 3001&)
- name: Run test
run: bin/sitespeed.js -b safari http://127.0.0.1:3001/
- name: Run Safari test with config
run: node bin/sitespeed.js -b safari --config test/exampleConfig.json http://127.0.0.1:3001/
3 changes: 3 additions & 0 deletions .github/workflows/windows.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,4 +29,7 @@ jobs:
- name: Run Edge test with scripting
run: node bin/sitespeed.js -b edge --multi test/prepostscripts/multiWindows.cjs -n 1
shell: cmd
- name: Run Edge test with config
run: node bin/sitespeed.js -b edge --config test/exampleConfig.json https://www.sitespeed.io/
shell: cmd

86 changes: 86 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,90 @@
# CHANGELOG - sitespeed.io (we use [semantic versioning](https://semver.org))

## 29.8.0 - 2023-10-16
### Added
* Updated to Chrome/Chromedriver 118 in the Docker container [#3975](https://github.com/sitespeedio/sitespeed.io/pull/3975).
* Users of the +1 container will get Lighthouse 11.2.0 from this release.

### Fixed
* Updated to Axe-core 4.8.2 [#3977](https://github.com/sitespeedio/sitespeed.io/pull/3977).
* A better error message when ypu try to measure a navigation without navigating [#3980](https://github.com/sitespeedio/sitespeed.io/pull/3980).

## 29.7.0 - 2023-09-27
### Added
* Updated Firefox to 118 in the Docker container [#3968](https://github.com/sitespeedio/sitespeed.io/pull/3968).
* Users of the +1 container will have Lighthouse version 11.1.0.

## 29.6.0 - 2023-09-22
### Added
* Updated Chrome and Edge to 117, also NodeJS 18.18.0 and a latest updated version of Ubuntu 22.04 [#3965](https://github.com/sitespeedio/sitespeed.io/pull/3965).
* Updated to Axe core 4.8.1 [#3964](https://github.com/sitespeedio/sitespeed.io/pull/3964).

## 29.5.0 - 2023-09-05
### Added
* Updated to Firefox 117 and Edge 116 in the Docker container [#3958](https://github.com/sitespeedio/sitespeed.io/pull/3958).
* Note that if you use the BiDi HAR for Firefox this version only work with Firefox 117+. If you use Firefox < 117 you need to stay on previous sitespeed.io version until you upgrade.

## 29.4.0 - 2023-08-31
### Added
* Display axe-core version on the summary page (before it was only showed on each run page) [#3950](https://github.com/sitespeedio/sitespeed.io/pull/3950).
* Display third-party-web and wappalyzer version in the HTML output (by upgrading to [Coach 8.0.0](https://github.com/sitespeedio/coach-core/blob/main/CHANGELOG.md#800---2023-08-30)) [#3953](https://github.com/sitespeedio/sitespeed.io/pull/3953).
* Display co2 version in the HTML output [#3953](https://github.com/sitespeedio/sitespeed.io/pull/3954).

## 29.3.0 - 2023-08-16
### Added
* Chrome and Chromedriver 116.

## 29.2.1 - 2023-08-16
### Fixed
* Updated Browsertime with a new minor version of Chromederiver and updated Docker container with a new minor version.
* Uppdated CO2 to 0.13.6 [#3936](https://github.com/sitespeedio/sitespeed.io/pull/3936).
* Make sure catched errors gets to the standard out and after budget/open the browser [#3939](https://github.com/sitespeedio/sitespeed.io/pull/3939).

## 29.2.0 - 2023-08-08
### Fixed
* Another fix for making sure annotations for Graphite have the correct timestamp [#3931](https://github.com/sitespeedio/sitespeed.io/pull/3931).
* Update dayjs and ora dependencies.

### Added
* Firefox 116 in the Docker container.


## 29.1.3 - 2023-08-03
### Fixed
* HTML result page was broken when you had element timings that was not images. Thank you [dooglewoogle](https://github.com/dooglewoogle) for reporting, fixed in [#3927](https://github.com/sitespeedio/sitespeed.io/pull/3927).

## 29.1.2 - 2023-07-31
### Fixed
* Updating Browsertime that makes it possible to run the AMD docker image on ARM M1 Macs. Add `--platform linux/amd64` and in Docker desktop turn on *"Use Rosetta for x86/amd64 emulation"*.

## 29.1.1 - 2023-07-30

### Fixed
* Reading configuration files on Windows failed. Thank you [Edson1337](https://github.com/Edson1337) for reporting, fixed in [#3921](https://github.com/sitespeedio/sitespeed.io/pull/3921).

## 29.1.0 - 2023-07-25

### Added
* I finally [archived the old dashboard setups for Graphite](https://github.com/sitespeedio/grafana-bootstrap-docker) and moved the dashboards to [the main repository](https://github.com/sitespeedio/sitespeed.io/tree/main/docker/grafana/provisioning/dashboards). I also updated the [docker compose file](https://github.com/sitespeedio/sitespeed.io/blob/main/docker/docker-compose.yml) to provision the dashboards and Graphite and the new JSON datasource. I've been thinking of doing that for years but never got around. With the release of a new dashboard in 29.0.0 I missed adding that we now also use a JSON datasource. The documentation is updated but need some more love, that will come the coming week.

## 29.0.0 - 2023-07-25
### Breaking change

The breaking changes in this release will not break anything, however some behaviours are changed in rare cases, please read:

* Changed timestamp for Graphite/InfluxDB metrics/annotations. The old implementation used the start time for the test all metrics sent except *browsertime.run* metrics (data for each run). This fix changes so metrics (and annotations) uses the *browsertime.pageSummary* runTime (when the actual first iteration happen for a test). This makes more sense if you test multiple pages within the same test [#3900](https://github.com/sitespeedio/sitespeed.io/pull/3900).

* When the slug concept was introduced in 17.0.0 also a bug was accidently added that add the domain as a slug if the slug was missing. As long as you added `--slug` that was not a problem and you will not be affected by this bug. However if you do not use `--slug` (you really should since 20.0.0) the slug portion would be automatically populated [#3901](https://github.com/sitespeedio/sitespeed.io/pull/3901) with the domain. If you send your metrics to Graphite and do not use `--slug` and use the dashboard that use the slug, you need to add `--slug` to your run for your dashboards to continue to work.

### Fixed
* Crux: Remove experimental from INP when getting Crux data [#3906](https://github.com/sitespeedio/sitespeed.io/pull/3906).

### Added
* New Chrome 115 and Chromedriver 115 (and a fix for the broken Chromedriver 115 on Mac).
* New Edge and Edgedriver 115
* New Browsertime 17.14.0. Most notable change is that if you collect the Chrome devtools trace using `--cpu` we will now also collect the number of elements that needs recalculate styles before FCP/LCP. There will be a blog post about this change later on.
* Updated the [main page merics dashboard](https://dashboard.sitespeed.io/d/9NDMzFfMk/page-metrics), you can download the new version [here](https://github.com/sitespeedio/grafana-bootstrap-docker/blob/main/dashboards/graphite/PageMetrics.json). The new dashboard needs to have the three plugins installed: ```grafana-piechart-panel,marcusolsson-json-datasource,marcusolsson-dynamictext-panel```. If you are unsure how to do that, more documentation will come soon.

## 28.2.0 - 2023-07-07
### Added
* Updated the Docker container to use Firefox 115.
Expand All @@ -18,6 +103,7 @@ The changes where done in [#3888](https://github.com/sitespeedio/sitespeed.io/pu
### Fixed
* Updated Coach core to 7.2.1 that catch if local or session storage isn't accessible.


## 27.9.3 - 2023-06-19
### Fixed
* Upgraded Browsertime with the following fixes:
Expand Down
2 changes: 1 addition & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM sitespeedio/webbrowsers:chrome-114.0-firefox-115.0-edge-114.0
FROM sitespeedio/webbrowsers:chrome-118.0-firefox-118.0-edge-117.0

ARG TARGETPLATFORM=linux/amd64

Expand Down
8 changes: 4 additions & 4 deletions bin/sitespeed.js
Original file line number Diff line number Diff line change
Expand Up @@ -142,10 +142,6 @@ async function start() {
}
}

if (result.errors.length > 0) {
throw new Error('Errors while running:\n' + result.errors.join('\n'));
}

if ((options.open || options.o) && platform() === 'darwin') {
execSync('open ' + result.localPath + '/index.html');
} else if ((options.open || options.o) && platform() === 'linux') {
Expand All @@ -166,6 +162,10 @@ async function start() {
) {
process.exitCode = 0;
}
if (result.errors.length > 0) {
console.log('Errors while running:\n' + result.errors.join('\n'));
throw new Error('Errors while running:\n' + result.errors.join('\n'));
}
} catch (error) {
process.exitCode = 1;
console.log(error);
Expand Down
16 changes: 7 additions & 9 deletions docker/docker-compose.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
version: '3'
services:
grafana:
image: grafana/grafana:9.4.7
image: grafana/grafana:10.0.2
hostname: grafana
depends_on:
- graphite
Expand All @@ -10,14 +10,19 @@ services:
ports:
- "3000:3000"
environment:
# See https://grafana.com/docs/grafana/latest/setup-grafana/configure-grafana/
- GF_SECURITY_ADMIN_PASSWORD=hdeAga76VG6ga7plZ1
- GF_SECURITY_ADMIN_USER=sitespeedio
- GF_AUTH_ANONYMOUS_ENABLED=true
- GF_USERS_ALLOW_SIGN_UP=false
- GF_USERS_ALLOW_ORG_CREATE=false
- GF_INSTALL_PLUGINS=grafana-piechart-panel
- GF_INSTALL_PLUGINS=grafana-piechart-panel,marcusolsson-json-datasource,marcusolsson-dynamictext-panel
- GF_DASHBOARDS_DEFAULT_HOME_DASHBOARD_PATH=/var/lib/grafana/dashboards/Welcome.json
volumes:
- grafana:/var/lib/grafana
- ./grafana/provisioning/datasources:/etc/grafana/provisioning/datasources
- ./grafana/provisioning/dashboards:/etc/grafana/provisioning/dashboards
- ./grafana/provisioning/dashboards:/var/lib/grafana/dashboards
restart: always
graphite:
image: sitespeedio/graphite:1.1.10-3
Expand All @@ -39,13 +44,6 @@ services:
# - /absolute/path/to/graphite/conf/storage-schemas.conf:/opt/graphite/conf/storage-schemas.conf
# - /absolute/path/to/graphite/conf/storage-aggregation.conf:/opt/graphite/conf/storage-aggregation.conf
# - /absolute/path/to/graphite/conf/carbon.conf:/opt/graphite/conf/carbon.conf
grafana-setup:
image: sitespeedio/grafana-bootstrap:24.5.0
links:
- grafana
environment:
- GF_PASSWORD=hdeAga76VG6ga7plZ1
- GF_USER=sitespeedio
volumes:
grafana:
whisper:
Loading

0 comments on commit 4b5c510

Please sign in to comment.