What sitespeedio/sitespeed.io shipped
Written by FoxPlug from the repository's own releases; not affiliated with Sitespeed. Paste your own repository in the box below and FoxPlug writes the same weekly update for your product. This page is an automatic summary of the releases, pull requests and commits in github.com/sitespeedio/sitespeed.io; Sitespeed did not write it and does not use or endorse FoxPlug. Every line links to the change it describes.
Get a weekly update like this for your product, free
Week of November 2, 2026
What shipped
- Fixed --debug on desktop, which previously stopped on every run with a message about Android and never applied the debug page load timeout because of a misspelled key. Pull request #4939
- Upgraded to Browsertime 29, which downloads a driver the first time a test needs it, and the Docker images now install the drivers at build time so container tests do not depend on a run time download. Pull request #4936
- Updated the video docs to explain that turning off video conversion leaves a video that the Windows player and web browsers cannot play, and what still works. Pull request #4940
- Removed the deprecated core-js warning that every npm install in a checkout printed, by giving pug-lint the same pug-attrs that pug already uses. Pull request #4937
- Restricted the throttle sudo rule to only the tc and ip subcommands that throttle runs, so it no longer gives root in Docker while throttling works as before. Pull request #4934
Why it matters
This week fixes a debug mode that never worked on desktop and removes a warning that showed up on every install in a checkout. It also moves to Browsertime 29 with drivers installed at build time in the Docker images, and narrows a sudo rule that could hand out root in containers. The video docs now explain what you lose when you skip conversion.
Changelog entry
- Make --debug work again on desktop; the Android check no longer blocks every run and the debug page load timeout is applied. Pull request #4939
- Upgrade to Browsertime 29; drivers download on first use and Docker images install them at build time. Pull request #4936
- Document what happens when you skip video conversion, including that Visual Metrics still work with the timer step. Pull request #4940
- Remove the deprecated core-js warning from npm install by aligning pug-attrs used by pug-lint with pug. Pull request #4937
- Limit the throttle sudo rule to the tc and ip subcommands it runs, so it no longer grants root in Docker. Pull request #4934
This week in Sitespeed: --debug works again on desktop, npm install no longer warns about core-js, Browsertime 29 installs drivers at container build time, the throttle sudo rule no longer gives root in Docker, and the video docs explain what you get when you skip conversion.
This week in Sitespeed: --debug works again on desktop after being blocked by an Android check that always matched and a misspelled timeout key. npm install in a checkout no longer prints the core-js warning from pug-lint. We upgraded to Browsertime 29, which downloads a driver the first time a test needs it, and our Docker images now install drivers when built so container tests do not depend on a run time download. The throttle sudo rule now allows only the tc and ip subcommands, so it no longer gives root in Docker. The video docs explain what you get when you skip conversion.
Week of October 26, 2026
What shipped
- Keeping the report when a script fails during a measurement instead of dropping the whole Browsertime result with an invalid URL error. Pull request #4925
- Pointing result links in Grafana/Graphite annotations, Slack and Matrix at the custom S3 or GCS upload path so the links resolve. Pull request #4917
- Finding Python on systems that only ship python3 so the compare plugin runs instead of finishing with an empty Compare tab and exit code 0. Pull request #4915
- Rejecting unknown --browsertime.connectivity.engine values. Pull request #4924
- Using the correct WebPageReplay binary on ARM64 so the wpr installroot step no longer fails with an exec format error. Pull request #4933
- Building the release Docker images on native arm64 runners and joining the per-platform results in a final job. Pull request #4929
- Publishing the autobuild image for arm64 too, with each platform building on its own native runner and the main tag pointing to both. Pull request #4932
- Dropping build-essential from the Docker image now that native dependencies ship prebuilt binaries. Pull request #4930
- Making the images smaller again. Pull request #4931
- Trying the new build setup. Pull request #4928
Why it matters
Several fixes this week target failures that were easy to miss: a failed script no longer wipes out the whole report, broken result links now match where uploads actually go, and the compare plugin no longer quietly produces an empty tab. The Docker work moves ARM64 builds onto native runners, so ARM64 images are built the same way the ARM64 tests run rather than through emulation.
Changelog entry
- Keep the report when a script fails during a measurement Pull request #4925
- Point result links at the custom S3/GCS upload path Pull request #4917
- Find Python on systems that only ship python3 Pull request #4915
- Reject unknown --browsertime.connectivity.engine values Pull request #4924
- Use the correct WebPageReplay binary on ARM64 Pull request #4933
- Build the release Docker images on native arm64 runners Pull request #4929
- Publish the autobuild image for arm64 too Pull request #4932
- Drop build-essential from the Docker image Pull request #4930
- Another go making the images smaller Pull request #4931
- Try the new build setup Pull request #4928
This week: failed scripts no longer drop the whole report, result links follow the S3/GCS upload path, and compare finds python3. Plus ARM64 Docker images now build on native runners.
This week in the project: a script that fails mid-measurement no longer drops the entire Browsertime result, so the report keeps the steps that measured fine and shows the real error. Result links in Grafana/Graphite annotations, Slack and Matrix now follow the custom S3 or GCS upload path instead of pointing at a page that does not exist. The compare plugin finds python3 on systems that only ship it, instead of finishing with an empty tab. Unknown connectivity engine values are rejected. On the Docker side, release and autobuild images for amd64 and arm64 now build on native runners, the correct WebPageReplay binary is used on ARM64, and build-essential is gone from the image.
Week of October 19, 2026
What shipped
- Kept the run going when the CrUX request fails, reporting a CrUX plugin error instead of stopping sitespeed.io. Pull request #4920
- Loaded CLI options and defaults for comma-separated plugins, so plugins like InfluxDB work with --plugins.add. Pull request #4916
- Kept every repeated --scriptInput.visualElements so measuring several elements works. Pull request #4919
- Accepted browser names in any case with a clear error listing valid choices for typos. Pull request #4921
- Sent annotations without a result URL when an annotation title or message is set. Pull request #4922
- Read bracket paths in metric lookups again, restoring First Contentful Paint in the Pages table, summary box and run page. Pull request #4910
- Fixed compare crash when plugins add extra metrics by grouping extras correctly. Pull request #4914
- Rendered the Third party tab when coach is disabled, leaving out the version when unknown. Pull request #4918
- Opened the HTML report without a shell so paths with spaces work with --open. Pull request #4912
- Updated to Browsertime 28.5 with new Chrome and Edge drivers and browsers in Docker. Pull request #4913
Why it matters
This week fixed several bugs that could stop or confuse a run: a CrUX network error no longer halts sitespeed.io, comma-separated plugins now get their options, and repeated visualElements are kept. Metric lookups with bracket paths work again, so First Contentful Paint appears in reports, and compare no longer crashes with plugin-added metrics. Browser names are case-insensitive and the report opens without a shell.
Changelog entry
- Keep the run going when the CrUX request fails and report a CrUX plugin error. Pull request #4920
- Load CLI options for comma-separated plugins. Pull request #4916
- Keep every repeated --scriptInput.visualElements. Pull request #4919
- Accept browser names in any case with a clear error for unsupported names. Pull request #4921
- Send annotations without a result URL when a title or message is set. Pull request #4922
- Read bracket paths in metric lookups again. Pull request #4910
- Fix compare crash when plugins add extra metrics. Pull request #4914
- Render the Third party tab when coach is disabled. Pull request #4918
- Open the HTML report without a shell. Pull request #4912
- Update to Browsertime 28.5 with new Chrome and Edge drivers and browsers in Docker. Pull request #4913
- Release 42.10.0. Release
Fixed this week: CrUX errors no longer stop the run, comma-separated plugins get their options, repeated --scriptInput.visualElements are kept, bracket metric paths work again, compare no longer crashes, browser names are case-insensitive, and the report opens without a shell. Re
This week brings several fixes for sitespeed.io users. A CrUX network error or non-JSON response no longer stops the whole run; it is reported as a plugin error and results are kept. Plugins added comma-separated now register their CLI options, so InfluxDB and similar work with --plugins.add. Repeated --scriptInput.visualElements are all kept. Bracket paths in metric lookups work again, restoring First Contentful Paint in the Pages table, summary box and run page. Compare no longer crashes when plugins add extra metrics. Browser names are accepted in any case. The Third party tab renders when coach is disabled. The HTML report opens without a shell. Release 42.10.0 includes Browsertime 28.5 with new Chrome and Edge drivers and browsers in Docker.
Week of October 12, 2026
What shipped
- Plugin scripts passed through browsertime.scripts are now kept when the coach is enabled, so third-party plugins get their data again. Pull request #4908
- Pre-warming now uses the device set with --safari.deviceUDID, so it runs on the same iOS device or simulator as the real test. Pull request #4909
- WebPageReplay and its inject script are updated; the injected HTML is prepared once when the archive loads instead of on every request, removing CPU work from each replayed response. Pull request #4907
- Version 42.9.0 was released, including Browsertime 28.4.0 and the WebPageReplay update. Release
- Result URLs no longer use the deprecated url.parse. Pull request #4904
- Browsertime was updated to 28.4.0. Pull request #4906
- Version 42.8.0 was released. Release
- Browsertime was updated to 28.3.1. Pull request #4905
Why it matters
This week fixes two silent problems: plugin data that vanished when the coach was on, and iOS pre-warming that could pick a different device than the real test. It also brings an updated WebPageReplay whose inject script does less work per replayed response, and both 42.8.0 and 42.9.0 are out.
Changelog entry
- Keep plugin scripts when the coach is enabled, so third-party plugin data is no longer lost. Pull request #4908
- Use the configured iOS device with --safari.deviceUDID when pre-warming. Pull request #4909
- Update WebPageReplay and its inject script; injected HTML is prepared once per archive load. Pull request #4907
- Stop using the deprecated url.parse for result URLs. Pull request #4904
- Update Browsertime to 28.4.0. Pull request #4906
- Release 42.9.0. Release
- Update Browsertime to 28.3.1. Pull request #4905
- Release 42.8.0. Release
Sitespeed.io 42.9.0 is out with Browsertime 28.4.0. Plugin scripts are kept when the coach is on, iOS pre-warming now uses your configured device, and WebPageReplay prepares injected HTML once per archive load instead of per request.
Sitespeed.io 42.9.0 is out, with Browsertime 28.4.0 and an updated WebPageReplay. When the coach was enabled, scripts sent by other plugins through browsertime.scripts could be lost, so those plugins never got their data and no error was reported; that is now fixed. Pre-warming for iOS had a typo in the option name, so it ignored --safari.deviceUDID and could run on a different device than the real test when several were available; it now uses the configured device. The new WebPageReplay prepares the injected HTML once when the archive loads rather than on every request, removing CPU work from each replayed response. Result URLs also no longer use the deprecated url.parse.
More from sitespeedio/sitespeed.io on GitHub
Merged pull requests
- Chrome 153, Firefox 155, Edge 152 (#4893, merged September 11, 2026 by soulgalore) (source)
- Chrome 152, Firefox 154, Edge 151 (#4891, merged August 27, 2026 by soulgalore) (source)
- Chrome 151 and Chrome in ARM (#4888, merged August 6, 2026 by soulgalore) (source)
Releases
- v42.7.0 (42.7.0), published September 11, 2026. First change listed: Chrome 152, Firefox 154, Edge 151 (source)
- v42.6.0 (42.6.0), published August 6, 2026. First change listed: Deep-linked compare rows rendered with a collapsed layout (source)
- v42.5.1 (42.5.1), published July 29, 2026. First change listed: Give every compare metric its own row and stop calling counts slower (source)
- v42.5.0 (42.5.0), published July 28, 2026. First change listed: Make the Compare tab honest about tiny, duplicate and hidden changes (source)
- v42.4.0 (42.4.0), published July 26, 2026. First change listed: Balance the Coach Page info card across two columns (source)
- v42.3.0 (42.3.0), published July 22, 2026. First change listed: Lead the per-URL page summary with a verdict and what the user saw (source)