UNPKG

browsertime

Version:

Get performance metrics from your web page using Browsertime.

824 lines (629 loc) 227 kB
# Browsertime changelog (we do [semantic versioning](https://semver.org)) ## 22.9.0 - 2024-08-26 ### Added * Geckodriver 0.35.0 [#2170](https://github.com/sitespeedio/browsertime/pull/2170) ### Fixed * Stopping gnirehtet throwed errors [#2172](https://github.com/sitespeedio/browsertime/pull/2171). * Updated to Throttle 5.0.1 that have nicer ifb0 handling [#2172](https://github.com/sitespeedio/browsertime/pull/2172) ## 22.8.0 - 2024-07-30 ### Added * Edgedriver 126 [#2166](https://github.com/sitespeedio/browsertime/pull/2166) ### Fixed * Disable search engine choice screen on startup for Chrome 127+ [#2168](https://github.com/sitespeedio/browsertime/pull/2168) * Update dev dependencies [#2167](https://github.com/sitespeedio/browsertime/pull/2167) ## 22.7.0 - 2024-07-25 ### Added * Updated to Chrome and Chromedriover 127 [#2164](https://github.com/sitespeedio/browsertime/pull/2164). ### Fixed * Updated to Selenium 4.23.0 [#2161](https://github.com/sitespeedio/browsertime/pull/2161). * Add extra check if the HAR file page misses an URL [#2160](https://github.com/sitespeedio/browsertime/pull/2160). ## 22.6.0 - 2024-07-15 ### Added * Updated to Firefox 128 and Edge 126 in the Docker container [#2158](https://github.com/sitespeedio/browsertime/pull/2158). * Add request header using Bidi for Firefox (needs Firefox 128 or later) [#2108](https://github.com/sitespeedio/browsertime/pull/2108). ### Fixed * Updated to Chrome HAR 0.13.5 [#2157](https://github.com/sitespeedio/browsertime/pull/2157) ## 22.5.5 - 2024-07-07 ### Fixed * Fix stopping --tcpdump [#2155](https://github.com/sitespeedio/browsertime/pull/2155). ## 22.5.4 - 2024-07-06 ### Fixed * Update to Chrome-HAR 0.13.3 [#2148](https://github.com/sitespeedio/browsertime/pull/2148). * Update Chrome remore interface [#2149](https://github.com/sitespeedio/browsertime/pull/2149). * Update execa, dayjs and get-port [#2153](https://github.com/sitespeedio/browsertime/pull/2153). * Update developer dependencies [#2154](https://github.com/sitespeedio/browsertime/pull/2154), [#2152](https://github.com/sitespeedio/browsertime/pull/2152), [#2151](https://github.com/sitespeedio/browsertime/pull/2151) and [#2150](https://github.com/sitespeedio/browsertime/pull/2150). ## 22.5.3 - 2024-06-25 ### Fixed * Another fix to make IntelliSense/Code completion work again [#2147](https://github.com/sitespeedio/browsertime/pull/2147). ## 22.5.2 - 2024-06-24 ### Fixed * Updated Selenium dependencies [#2146](https://github.com/sitespeedio/browsertime/pull/2146). ## 22.5.1 - 2024-06-24 ### Fixed * Fixed exporting to make IntelliSense/Code completion work again [#2145](https://github.com/sitespeedio/browsertime/pull/2145). ## 22.5.0 - 2024-06-14 ### Added * Updated the Docker container to include Chrome 126 and Firefox 127. Chromedriver has been updated to 126 [#2141](https://github.com/sitespeedio/browsertime/pull/2141). ## 22.4.1 - 2024-06-07 ### Fixed * Make sure the engine is stopped before the extra video/profile run [#2140](https://github.com/sitespeedio/browsertime/pull/2140). ## 22.4.0 - 2024-06-06 ### Added * Use `--enableVideoRun` to get one extra run with a video and visual metrics [#2139](https://github.com/sitespeedio/browsertime/pull/2139) ## 22.3.0 - 2024-06-04 ### Added * Add the ability to gather power usage measurements on Android from USB power meters, thank you [Gregory Mierzwinski](https://github.com/gmierz) for PR [#2134](https://github.com/sitespeedio/browsertime/pull/2134). * Add support to visualmetrics to identify key frames matching the given colors, thank you [aosmond](https://github.com/aosmond) for PR [#2119](https://github.com/sitespeedio/browsertime/pull/2119). ### Fixed * Removed DOMContentFlushed for Firefox thank you [florinbilt](https://github.com/florinbilt) for PR [#2138](https://github.com/sitespeedio/browsertime/pull/2138). ## 22.2.0 - 2024-05-24 ### Added * New command: Mouse single click on a element with a specific id `commands.mouse.singleClick.byId(id)` and `commands.mouse.singleClick.byIdAndWait(id)` [#2135](https://github.com/sitespeedio/browsertime/pull/2135). * New command: `commands.wait.byIdAndVisible(id, maxTime)` - wait for an element with id to become visible [#2137](https://github.com/sitespeedio/browsertime/pull/2137). ### Fixed * Make sure errors are correctly logged if you cannot add text to element [#2136](https://github.com/sitespeedio/browsertime/pull/2136). ## 22.1.0 - 2024-05-20 ### Added * Updated to Edge and Edgedriver 125 [#2132](https://github.com/sitespeedio/browsertime/pull/2132). ### Fixed * Updated to Selenium Webdriver 4.21.0 [#2131](https://github.com/sitespeedio/browsertime/pull/2131). * Trying to remove new Chrome popup [#2130](https://github.com/sitespeedio/browsertime/pull/2130). ## 22.0.0 - 2024-05-16 ### Breaking There's a breaking change for Firefox if you add your own request header or if you use scripting and want to clear the browser in your script: * Removed the [Browsertime extension](https://github.com/sitespeedio/browsertime-extension). In the old days the extension helped Chrome and Firefox to add cookies, requestheaders, clear caches and more. However all that functionality has been implemented in CDP for Chrome and most functionality using Bidi webdriver for Firefox. At the moment we drop two things for Firefox: Add request header and clear the cache inside of scripting. We hope both soon is supported in Bidi [#2124](https://github.com/sitespeedio/browsertime/pull/2124). * The ff-test-bidi-har-export is now the default (and only) way to get a HAR file from Firefox. It's faster than the old HAR exporter and works on both desktop and mobile. It's also is implemented using Bidi so when other browsers also support bidi they can also export a HAR [#2123](https://github.com/sitespeedio/browsertime/pull/2123). ### Added * Updated the Docker container to use Chrome 125 and Firefox 126 and Edge 124 [#2125](https://github.com/sitespeedio/browsertime/pull/2125) and [#2128](https://github.com/sitespeedio/browsertime/pull/2128). ## 21.7.1 - 2024-04-03 ### Fixed * Bug fix: If you test a URL that failed, we got an error that didn't produce the browsertime.json [#2120](https://github.com/sitespeedio/browsertime/pull/2120). * Updated to Selenium webdriver 4.20.0 [#2121](https://github.com/sitespeedio/browsertime/pull/2121). ## 21.7.0 - 2024-04-03 ### Added * Edge and Edgedriver 123 [#2116](https://github.com/sitespeedio/browsertime/pull/2116). ### Fixed * Updated to Selenium 4.19.0 [#2117](https://github.com/sitespeedio/browsertime/pull/2117). * Block domains using Bidi instead of the extension server for Firefox [#2118](https://github.com/sitespeedio/browsertime/pull/2118). ## 21.6.1 - 2024-03-22 ### Fixed * Fix running Safari TP. Thank you [KS](https://github.com/92kns) for PR [#2115](https://github.com/sitespeedio/browsertime/pull/2115). ## 21.6.0 - 2024-03-20 ### Added * Chrome 123, Firefox 124 and Edge 122 in the Docker container [#2110](https://github.com/sitespeedio/browsertime/pull/2110). * Chromedriver 123 and Edgedriver 122 [#2111](https://github.com/sitespeedio/browsertime/pull/2111). ### Fixed * Fix a bug in stopAsError so that you can continue to measure other pages after the stop. Also follow the documentation and mark the run as a failure [#2107](https://github.com/sitespeedio/browsertime/pull/2107). * Use bidi for Firefox when using `--basicAuth` [#2093](https://github.com/sitespeedio/browsertime/pull/2093) (needs Firefox 124). * Use bidi for Firefox when using `--cookie` [#2090](https://github.com/sitespeedio/browsertime/pull/2090) (needs Firefox 124). ## 21.5.4 - 2024-03-13 ### Fixed * Fix for `--injectJs` for Firefox [#2103](https://github.com/sitespeedio/browsertime/pull/2103). ## 21.5.3 - 2024-03-12 ### Fixed * Fixed `commands.bidi.*` that stopped working [#2101](https://github.com/sitespeedio/browsertime/pull/2101). * Fixed missing Loaf data [#2100](https://github.com/sitespeedio/browsertime/pull/2100). ## 21.5.2 - 2024-03-12 ### Fixed * Another bug fix: Getting Long Animation Frame (loaf) was broken [#2099](https://github.com/sitespeedio/browsertime/pull/2099). ## 21.5.1 - 2024-03-12 ### Fixed * There was a bug in how we collect CPU power from Firefox and add it to the statistics. Fixed in [#2098](https://github.com/sitespeedio/browsertime/pull/2098). ## 21.5.0 - 2024-03-12 ### Added * Firefox: * Move injectJS functionality to Bidi [#2088](https://github.com/sitespeedio/browsertime/pull/2088). This makes it possible to inject JS in Firefox on mobile. * Expose Bidi in commands [#2091](https://github.com/sitespeedio/browsertime/pull/2091). You can now use webdriver bidi direct in your commands. ### Fixed * Fixed command action.clear() that actually didn't clear the command [#2095](https://github.com/sitespeedio/browsertime/pull/2095). ## 21.4.0 - 2024-03-08 ### Added * Added the following trace categories for Chrome that now is used by default when you turn on the timeline: 'disabled-by-default-devtools.timeline.frame', 'disabled-by-default-devtools.timeline.invalidationTracking','loading', 'latencyInfo' - done in [#2086](https://github.com/sitespeedio/browsertime/pull/2086). * Added a simple Loaf-script to get the 10 largest loaf. Lets iterate over the script and see how we can get the most useful information from it [#2087](https://github.com/sitespeedio/browsertime/pull/2087). ## 21.3.1 - 2024-02-26 ### Fixed * Updated Chromedriver install with new version that fixes the Windows install [#2084](https://github.com/sitespeedio/browsertime/pull/2084). * Updated to Selenium 4.18.1 [#2082](https://github.com/sitespeedio/browsertime/pull/2082). ## 21.3.0 - 2024-02-21 ### Added * Edgedriver 121 [#2078](https://github.com/sitespeedio/browsertime/pull/2078). * Chromdriver 122 [#2080](https://github.com/sitespeedio/browsertime/pull/2080). * Chrome 122 and Firefox 123 in the Docker container [#2081](https://github.com/sitespeedio/browsertime/pull/2081). ### Fixed * Log that Throttle is used inside Docker [#2077](https://github.com/sitespeedio/browsertime/pull/2077). ## 21.2.1 - 2024-02-11 ### Fixed * Fix correct JavaScript signature for stopAsError in types. ## 21.2.0 - 2024-02-11 ### Added * Edge 121 in the Docker container [#2071](https://github.com/sitespeedio/browsertime/pull/2071). * You can stop a measurement as a failure and make sure no metrics is collected. This is useful if you catch an error in try/catch when trying to measure a page. `measure.stopAsError(failureMessage, optionalURL)`. Add your message and if you know the URL, add it. [2076](https://github.com/sitespeedio/browsertime/pull/2076). ### Fixed * Set correct viewports for the following emulated mobiles for Chrome: iPhone 14 Pro Max [#2070](https://github.com/sitespeedio/browsertime/pull/2070). * Update adbkit to 3.2.6 [#2069](https://github.com/sitespeedio/browsertime/pull/2069). * Selenium 4.17.0 [#2068](https://github.com/sitespeedio/browsertime/pull/2068). * There was a missing await when getting the tcpdump [#2075](https://github.com/sitespeedio/browsertime/pull/2075) * Remove all trace level logs (and do debug instead) since trace added unnecessary stacktraces to the log [#2074](https://github.com/sitespeedio/browsertime/pull/2074). ## 21.1.0 - 2024-01-24 ### Added * Firefox 122, Chrome 121 and Chromedriver 121 [#2067](https://github.com/sitespeedio/browsertime/pull/2067). ### Fixed * Set correct viewports for the following emulated mobiles for Chrome: iPad Mini iPad Air, iPhone 14 Pro, Pixel 7 and Samsung Galaxy A51/71 [#2065](https://github.com/sitespeedio/browsertime/pull/2065). ## 21.0.0 - 2024-01-07 The new version uses JSDoc to generate documentation for scripting and make it possible to use code completion/Intellisense! You can read the [new documentation here](https://www.sitespeed.io/documentation/sitespeed.io/scripting/tutorial-08-Setting-Up-IntelliSense.html). ### Added * Upgraded to [Geckodriver 0.34.0](https://github.com/mozilla/geckodriver/releases/tag/v0.34.0) [#2049](https://github.com/sitespeedio/browsertime/pull/2049). * Collect CPU consumption for Firefox. Turn that on with `--firefox.powerConsumption true` and including `power` as a geckoProfilerParams.features [#2046](https://github.com/sitespeedio/browsertime/pull/2046). * Added more commands for mouse click on text [#2054](https://github.com/sitespeedio/browsertime/pull/2054). * Updated AndroidCommand so you can run shell on your Android device as root [#2055](https://github.com/sitespeedio/browsertime/pull/2055). * If you mark a test as failure, the exit code from Browsertime will be 1. If the exitCode is set in scripting, we use that and will not change that [#2057](https://github.com/sitespeedio/browsertime/pull/2057). * Generate documentation for scripting using JSDoc [#2059](https://github.com/sitespeedio/browsertime/pull/2059). * Make it easy to use Seleniums action API. Get access to the new command using commands.action.getActions() and chain the action. [#2061](https://github.com/sitespeedio/browsertime/pull/2061) ### Fixed * Make sure the visual metrics files are inlcuded in the Docker file [#2053](https://github.com/sitespeedio/browsertime/pull/2053). * Removing QVH from the npm package (used for iPhone video recording but not working) [#2051](https://github.com/sitespeedio/browsertime/pull/2051) * Removing visual metrics test images from the npm package [#2050](https://github.com/sitespeedio/browsertime/pull/2050). * Removed the Chromedriver fix that was needed when Chrome for testing broke testing on Chrome :D [#2045](https://github.com/sitespeedio/browsertime/pull/2045). * Refactor of commands/context object to prepare for supporting JSDoc and a little TypeScript to add code completion/IntelliSense in editors [#2047](https://github.com/sitespeedio/browsertime/pull/2047). * Updated documentation for scripting with better JSDoc [#204](https://github.com/sitespeedio/browsertime/pull/2048). * The code for getting Interaction to next paint was broken. This PR fixes it, make the code cleaner and gives more attribution [#2060](https://github.com/sitespeedio/browsertime/pull/2060). ## 20.0.0 - 2023-12-22 ### Breaking * Changed `--userTimingWhitelist` to `--userTimingAllowList` in [#2023](https://github.com/sitespeedio/browsertime/pull/2023). * Reading pageCompleteCheck JavaScript from file now works as intended. It should be a plain JavaScript file named .js [#2034](https://github.com/sitespeedio/browsertime/pull/2034) see [#912](https://github.com/sitespeedio/browsertime/issues/912) ### Fixed * Group page load parameters as PageLoad to make them easier to find using `--help` [#2035](https://github.com/sitespeedio/browsertime/pull/2035). * Fix starting Firefox 121 on Mac [#2043](https://github.com/sitespeedio/browsertime/pull/2043). ### Added * Firefox 121 in the Docker container.g ## 19.3.1 - 2023-12-18 ### Fixed * Ensure that visual metrics python script is included in the release. ## 19.3.0 - 2023-12-18 ### Added * Updated Chromedriver and Edgedriver to 120 [#2033](https://github.com/sitespeedio/browsertime/pull/2033). ### Tech * Moved the visual metrics python scripts to a new home [#2032](https://github.com/sitespeedio/browsertime/pull/2032). ## 19.2.0 - 2023-12-11 ### Added * Updated to Chrome and Edge 120 in the Docker container [#2031](https://github.com/sitespeedio/browsertime/pull/2031). ### Fixed * Updated to Selenium 4.16.0 [#2026](https://github.com/sitespeedio/browsertime/pull/2026). * Updated dev dependencies and find-up [#2029](https://github.com/sitespeedio/browsertime/pull/2029). * Recommend NodeJS 18 or later in the package.json [#2030](https://github.com/sitespeedio/browsertime/pull/2030). Browsertime 16.0.0 removed support for NodeJS 16. ## 19.1.0 - 2023-11-27 ### Added * Firefox 120 in the Docker container. ### Fixed * New Geckodriver installer that on Mac ARM uses ARM version of Geckodriver. ## 19.0.0 - 2023-11-15 ### Breaking * This only affects you if you run your tests on a rooted Moto G5: With PR[#2021](https://github.com/sitespeedio/browsertime/pull/2021) we add the ability to set the CPU speed for the phone at min/middle/max (the same way as possible on Samsung A51). Before the speed always was set to max. Default now is that the CPU speed will be set to min (the same way as the A51). ### Fixed * Largest contentful paint and First contentful paint in Firefox now also fills the "googleWebitals" fields in the results. Thank you [Gregory Mierzwinski](https://github.com/gmierz) for PR [#2018](https://github.com/sitespeedio/browsertime/pull/2018) and my PR [#2020](https://github.com/sitespeedio/browsertime/pull/2020). * Make sure `--android.pinCPUSpeed` works [#2019](https://github.com/sitespeedio/browsertime/pull/2019) ## 18.0.0 - 2023-11-07 ### Breaking * Dropping support for NodeJS 16. ### Fixed * Updated all dev-dependencies to latest versions [#2013](https://github.com/sitespeedio/browsertime/pull/2013). * Updated GitHub Actions to use latest versions of actions and Ubuntu 22.04 [#2012](https://github.com/sitespeedio/browsertime/pull/2012), [#2014](https://github.com/sitespeedio/browsertime/pull/2014) and [#2016](https://github.com/sitespeedio/browsertime/pull/2016) * Updated all dependencies to latest versions: ADB kit 3.2.5 [#2017](https://github.com/sitespeedio/browsertime/pull/2017), execa, dayjs, get-port and Chromedriver [#2015](https://github.com/sitespeedio/browsertime/pull/2015). ## 17.19.0 - 2023-11-03 ### Added * Updated to Chrome, Firefox and Edge 119 in the Docker container [#2010](https://github.com/sitespeedio/browsertime/pull/2010). * Updated to Edgedriver 119. ### Fixed * Updated to Selenium 4.15.0 [#2011](https://github.com/sitespeedio/browsertime/pull/2011). ## 17.18.1 - 2023-10-31 ### Fixed * WebDriver 4.14.0 * Chromedriver 119.0.6045-59 ## 17.18.0 - 2023-10-23 ### Added * Updated to Chromedriver 119 [#2003](https://github.com/sitespeedio/browsertime/pull/2003). 119 works with both Chrome 118 and 119 so it fixes [#1197](https://github.com/sitespeedio/browsertime/issues/1997). * Add support for network idle method to know when to end a test that uses network logs. Uses Bidi for Firefox and CDP for Chrome to listen on network events to know when to end a test. By default 5 seconds idle network time ends a tests (you could have network responses that hasn't arrived yet) [#1960](https://github.com/sitespeedio/browsertime/pull/1960). Potentially this can help SPA users or users where the page uses iframes. You can try it out by adding `--pageCompleteCheckNetworkIdle` yo your command line. This is still some work in progress but feel free to try ut out. * The resources script now collects number of resources served from the browser cashe for browser that supports that through the resource timing API [#1998](https://github.com/sitespeedio/browsertime/pull/1998) ### Fixed * Make sure timer always is cleared. There was case of where we do a rase beteween a promise and a timeout where the timeout timer wasn't cleared/removed [#2005](https://github.com/sitespeedio/browsertime/pull/2005). * Better way to get the url when you use GeckoProfiler.stop for Firefox, thank you [Nazım Can Altınova](https://github.com/canova) for PR [#1999](https://github.com/sitespeedio/browsertime/pull/1999) ## 17.17.0 - 2023-10-11 ### Added * Firefox 118, Edge 117 and Chrome/Chromedriver 118 in the Docker container [#1996](https://github.com/sitespeedio/browsertime/pull/1996). * Expose trace start/stop for Chrome in scripting (the same way as for Firefox). Thank you [KS](https://github.com/92kns) for [#1988](https://github.com/sitespeedio/browsertime/pull/1988). Documentation is coming when the functionality is rolled out in sitespeed.io. ### Updated * Updated to Selenium 4.12 ## 17.16.0 - 2023-09-04 ### Added * Firefox 117 and Edge 116 in the Docker container. ### Fixed * Updated the BiDi HAR exporter for Firefox to version 0.0.12. This version will not work with Firefox 116 so if you use the BiDi HAR exporter you need to upgrade to Firefox 117. ## 17.15.0 - 2023-08-16 ### Added * Updated Chrome and Chromedriver to 116. ## 17.14.3 - 2023-08-16 ### Fixed * Updated to Selenium 4.11.1 [#1978](https://github.com/sitespeedio/browsertime/pull/1978). * Updated Chrome and Chromedriver to minor versions. ## 17.14.2 - 2023-07-31 ### Fixed * The auto build of release Docker container was broken so no tagged containers was pushed. ## 17.14.1 - 2023-07-31 ### Fixed * Default jimp resize didn't handle large values (2000) when running in Docker AMD on a ARM machine so changing to another algorithm (HERMITE) [#1977](https://github.com/sitespeedio/browsertime/pull/1977). * Update: chrome-har, dayjs, execa, chrome-remote-interface and jimp [#1976](https://github.com/sitespeedio/browsertime/pull/1976). ## 17.14.0 - 2023-07-24 ### Added * Edge and Edgedriver 115 [#1973](https://github.com/sitespeedio/browsertime/pull/1973). ## 17.13.1 - 2023-07-22 ### Tech * Internal fix how the render blocking result is added [#1972](https://github.com/sitespeedio/browsertime/pull/1972). ## 17.13.0 - 2023-07-21 ### Fixed * Fix for Chromedriver 115 so that it works on Mac again [#1971](https://github.com/sitespeedio/browsertime/pull/1971). ### Added * Edgedriver 114 [#1969](https://github.com/sitespeedio/browsertime/pull/1969) ### Tech * Run tests on Chrome/Firefox/Edge on Mac OS on our GitHub Actions to catch the next time Chromedriver is broken on Mac [#1970](https://github.com/sitespeedio/browsertime/pull/1970) ## 17.12.1 - 2023-07-19 ### Fixed * Hmm, Chromedriver 115 doesn't seems to work on Mac so reverted to 114. ## 17.12.0 - 2022-07-19 ### Added * Chrome and Chromedriver 115. The Chrome team has changed the hosting of Chromedriver, so the logic for downloading Chromedriver has changed [#1967](https://github.com/sitespeedio/browsertime/pull/1967). * 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.[#1964](https://github.com/sitespeedio/browsertime/pull/1964). ## 17.11.2 - 2023-06-19 ### Fixed * Fix --debug mode. Thank you [Gregory Mierzwinski](https://github.com/gmierz) for PR [#1959](https://github.com/sitespeedio/browsertime/pull/1959). * Update ff-test-bidi-har-export to 0.0.11 that fixes some error logs [#1961](https://github.com/sitespeedio/browsertime/pull/1961). ## 17.11.1 - 2023-06-12 ### Fixed * If Chrome do not collect largest contentful paint, log that instead of just log null [#1957](https://github.com/sitespeedio/browsertime/pull/1957). ## 17.11.0 - 2023-06-01 ### Fixed * Fixed broken Docker auto build that skipped adding Docker manifest file. ### Added * Use Chrome ane Chromedriver 114. ## 17.10.2 - 2023-05-26 ### Fixed * Fix for --host-resolver-rules, thank you [Mikhail](https://github.com/atuchin-m) for PR [#1953](https://github.com/sitespeedio/browsertime/pull/1953). ## 17.10.1 - 2023-05-19 ### Fixed * Updated code to collect Interaction To Next Paint [#1952](https://github.com/sitespeedio/browsertime/pull/1952). This new version follow updated version(s) of Google Web Vitals. ## 17.10.0 - 2023-05-19 ### Added * Chrome, Edge and Firefox 113 [#1946](https://github.com/sitespeedio/browsertime/pull/1946), Chromedriver 113 [#1947](https://github.com/sitespeedio/browsertime/pull/1947) and Edgedriver 113 [#1949](https://github.com/sitespeedio/browsertime/pull/1949). ### Fixed * Bugfix for running iPhone Siumlator (and run tests on latest Mac OS) [#1945](https://github.com/sitespeedio/browsertime/pull/1945). * Bumped dependencies for Selenium, yargs and jimp [#1950](https://github.com/sitespeedio/browsertime/pull/1950). ## 17.9.0 - 2023-04-19 ### Added * New command to start geckoprofiling when scripting using Firefox. Thank you [KS](https://github.com/92kns) for PR [#1934](https://github.com/sitespeedio/browsertime/pull/1934). This is probably only something you need if you work at Mozilla. There's also a follow PR [#1940](https://github.com/sitespeedio/browsertime/pull/1940) that fixes some of the issues I've been wanted to fix with the Geckoprofiler code. * Use `--enableProfileRun` to make one extra run where metrics aren't collected but Geckoprofiler or Chromes timeline log is turned on. This useful if you are worrying about the trace causing overhead, but you still wan trace from the test/journey. It's a little rough at the moment so it will a follow up in the future [#1943](https://github.com/sitespeedio/browsertime/pull/1943). ### Fixed * Bump Chrome remote interface and execa [#1941](https://github.com/sitespeedio/browsertime/pull/1941). ## 17.8.1 - 2023-04-12 ### Fixed * Upgraded to Firefox HAR 0.0.10 [#1939](https://github.com/sitespeedio/browsertime/pull/1939). ## 17.8.0 - 2023-04-11 ### Fixed * Upgraded to Firefox HAR 0.0.8 [#1937](https://github.com/sitespeedio/browsertime/pull/1937). ### Added * Upgraded to Firefox 112 in the Docker container. ## 17.7.0 - 2023-04-07 ### Added * Added Edge/Edgedriver 112. ## 17.6.0 - 2023-04-05 ### Fixed * Increased the default wait time from 2 to 5 seconds when a element a clicked and the page complete check runs [#1931](https://github.com/sitespeedio/browsertime/pull/1931) ### Added * Upgraded to Chrome/Chromedriver 112 in the Docker container [#1932](https://github.com/sitespeedio/browsertime/pull/1932). * If you use `--headless` Chrome will use the new headless switch [#1933](https://github.com/sitespeedio/browsertime/pull/1933). ## 17.5.0 - 2023-04-04 ### Added * There's a new better way to get the HAR from [Firefox using WebDriver BiDi network events](https://github.com/firefox-devtools/bidi-har-export). Thank you [Julian Descottes](https://github.com/juliandescottes) and others at Mozilla that made this happen! With the new version we hope to see less overhead getting the HAR + it works on Firefox on Android [#1918](https://github.com/sitespeedio/browsertime/pull/1918). You can turn it on with `--firefox.bidihar`. * Updated to Geckodriver 0.33 [#1928](https://github.com/sitespeedio/browsertime/pull/1928). ### Fixed * Fixed the interaction to next paint error message that started to appear in latest Chrome [#1924](https://github.com/sitespeedio/browsertime/pull/1924). * Safer check for getting last meaningful paint [#1927](https://github.com/sitespeedio/browsertime/pull/1927) ## 17.4.0 - 2023-03-29 ### Added * Log the CPU benchmark metric to the console. This is useful (at least for me) when debugging instances with a lot of instability. [#1920](https://github.com/sitespeedio/browsertime/pull/1920). * In Chrome 111 some metrics become more instable when running on host with limited CPU. This change also exists in 112 beta. However we where missing out on a couple of command line magic to disable features in Chrome, this fixes that [#1921](https://github.com/sitespeedio/browsertime/pull/1921). ## 17.3.0 - 2023-03-26 ### Fixed * Bumped Selenium-webdriver to 4.8.2 [#1916](https://github.com/sitespeedio/browsertime/pull/1916). ### Added * On Linux you can use taskset to assing FFMPEG to specific CPUs using `--videoParams.taskset "0,5,7,9-11" `. It will start FFMPEG with `taskset -c <CPUS>` to pin FFMPG to specific CPU(s). Specify a numerical list of processors. The list may contain multiple items, separated by comma, and ranges. For example, "0,5,7,9-11". Use it together with isolcpus. Added in [#1917](https://github.com/sitespeedio/browsertime/pull/1917). * If you use a rooted Samsung A51 you can now choose the CPU speed (min/middle/max) using `--android.pinCPUSpeed min|middle|max` [#1915](https://github.com/sitespeedio/browsertime/pull/1915). ## 17.2.1 - 2023-03-16 ### Fixed * Bumped Geckodriver to 0.32.2 and Edgedriver to 111. ## 17.2.0 - 2023-03-14 ### Added * Updated Chrome, Chromedriver, Edge and Firefox to 111. ## 17.1.1 - 2023-03-04 ### Fixed * Updated jimp, yargs, webdriver, execa and chrome-remote-interface dependencies [#1909](https://github.com/sitespeedio/browsertime/pull/1909). * Added extra log message when using the package.json hack. ## 17.1.0 - 2023-02-24 ### Added * Expose chrome-remote-interface client to scripting. This makes it so much easier to run whatever CDP command. Get the raw version `commands.cdp.getRawClient();`. See PR [#1905](https://github.com/sitespeedio/browsertime/pull/1905) for a concrete example until we update the documentation. ### Fixed * Fix visual-complete progress calculations to not use fuzz/slop, thank you [Gregory Mierzwinski](https://github.com/gmierz) for PR [#1902](https://github.com/sitespeedio/browsertime/pull/1902). * Update to new Chrome HAR [#1906](https://github.com/sitespeedio/browsertime/pull/1906). * Fix flushing DNS on Ubuntu 22.04 [#1907](https://github.com/sitespeedio/browsertime/pull/1907). ## 17.0.0 - 2023-02-10 ### Breaking changes The project was transitioned to a [pure ESM package](https://gist.github.com/sindresorhus/a39789f98801d908bbc7ff3ecc99d99c) [#1859](https://github.com/sitespeedio/browsertime/pull/1859), allowing us to stay current with dependencies that have made the same transition and ensuring the ability to always utilize the latest versions of our dependencies. This is important for us and will make the project easier to maintain. #### CLI users If you are a command line user and use scripting, you will need to do a change to your scripts or add a extra configuration. The new browsertime version treat all JavaScript files that ends with *.js* as ESM modules, that means your old script files will not work out of the box. There's a couple of fixes for that: **The best fix**: Change your code so your scripts also follows ESM package. If you have simple scripts you probably just need to change your exports. The old way looked like this: ``` module.exports = async function(context, commands) { ... } ``` change that to: ``` export default async function (context, commands) { ... } ``` If you have more complicated scripts, follow the [ESM package guide](https://gist.github.com/sindresorhus/a39789f98801d908bbc7ff3ecc99d99c). This is the best fix and will woirk 100% of the time. **The quick fix**: Rename your *.js* to *.cjs* that way NodeJS will treat your file as a common JS file and everything will just work. For example if you have a file names `login.js` you can rename that to `login.cjs` and make sure you load that new file. **Another quick fix alternative**: As a last alternative add `--cjs` as a parameter to your test. That way the scripting file will be treated as a commonjs file. This is a hack, so to make sure it works, the user that runs Browsertime need to have write privileges to the folder where you have your scripting files. Browsertime will create a package.json file on the same levels as yoru script file. If you already have a package.json there, it will be overwritten. #### Non cli users If you import Browsertime in NodeJS we changed how you do your import. If you use ES modules you can import Browsertime like this: ```JavaScript import { BrowsertimeEngine } from 'browsertime'; const engine = new BrowsertimEngine(options); ``` If you are still on CommonJS: ```JavaScript const { BrowsertimeEngine } = await import ('browsertime'); const engine = new BrowsertimEngine(options); ``` Read [Sindre Sorhus Pure ESM package guide](https://gist.github.com/sindresorhus/a39789f98801d908bbc7ff3ecc99d99c) on how you can move your project. * We moved to use a new [Visual Metrics script](https://github.com/sitespeedio/browsertime/blob/main/browsertime/visualmetrics-portable.py) as default contributed by [Gregory Mierzwinski](https://github.com/gmierz) that do _not_ use ImageMagick. Mozilla has used this script for many months and we have internally used it in our test infrastructure since it was first released. If you run Browsertime direct using NodeJs (and not using Docker) you need to install two new Python dependencies `OpenCV-Python Numpy`. ``` python -m pip install --user OpenCV-Python Numpy ``` This is pretty cool because it makes dependencies easier to install on all platforms + the script has also been cleaned up so its easier for us to maintain. ### Added * Selenium 4.8. * Updated dependencies: execa, days, find-up, get-ports, jimp, yargs [#1860](https://github.com/sitespeedio/browsertime/pull/1860) * Updated to Chrome, Firefox and Edge 109 in the Docker container. Also updated all drivers. * Updated to NodeJS 18 and Ubuntu 22.04 in the Docker container. * Get CPU metrics using Glean on Firefox, thank you [afinder-mozilla](https://github.com/afinder-mozilla) for PR [#1875](https://github.com/sitespeedio/browsertime/pull/1875) * Provide active tab id to gecko profiler StartProfiler API in Firefox, thank you [Nazım Can Altınova](https://github.com/canova) for PR [#1874](https://github.com/sitespeedio/browsertime/pull/1874). * There's two new methods to switch to frame: `switch.toFrameByXpath(xpath)` and `switch.toFrameBySelector(selector)` [#1880](https://github.com/sitespeedio/browsertime/pull/1880). * Add a timeout to gecko profiler gzipping phase, thank you [Nazım Can Altınova](https://github.com/canova) for PR [#1896](https://github.com/sitespeedio/browsertime/pull/1896) * Pin CPU freq to fastest for Samsung A51 (if you have a rooted device) [#1895](https://github.com/sitespeedio/browsertime/pull/1895). ### Fixed * Pause the gecko profiler before starting to collect the profile data, thank you [Nazım Can Altınova](https://github.com/canova) for PR [#1856](https://github.com/sitespeedio/browsertime/pull/1856). * All Android configurations has been moved to an Android group. That makes it easier when you run --help and can see all Android configuration grouped together. For example `--androidBatteryTemperature` is now `--android.batteryTemperatureLimit`. Old names will still work but are deprecated [#1865](https://github.com/sitespeedio/browsertime/pull/1865). * Updated to Chromedriver 110 to work with Android 13 [#1894](https://github.com/sitespeedio/browsertime/pull/1894). ## 16.17.0 - 2022-09-27 ### Added * Add ability to ignore shutdown failures on android, thank you [Gregory Mierzwinski](https://github.com/gmierz) for PR [#1850](https://github.com/sitespeedio/browsertime/pull/1850). * Updated to Firefox 105 and Edge 105 in the Docker container. ### Fixed * Fix so we collect battery temperature statistics on Android (again) [#1851](https://github.com/sitespeedio/browsertime/pull/1851). ## 16.16.0 - 2022-09-20 ### Added * Chrome 105, Firefox 104 and Chromedriver 105 [#1843](https://github.com/sitespeedio/browsertime/pull/1843). * Before you start a test on Android you can push the home button using `--androidPretestPressHomeButton` [#1844](https://github.com/sitespeedio/browsertime/pull/1844). ## 16.15.1 - 2022-08-30 ### Fixed * Make sure long tasks are collected direct after a test ends. On a slow device it sometimes happened that long tasks was browsertime running scripts to collect metrics [#1841](https://github.com/sitespeedio/browsertime/pull/1841). ## 16.15.0 - 2022-08-30 ### Added * Always get the wifi name that your Android phone is using and add it to the result [#1839](https://github.com/sitespeedio/browsertime/pull/1839). ## 16.14.2 - 2022-08-26 ### Fixed * Using `--preWarmServer` didn't work on Android/iOS [#1837](https://github.com/sitespeedio/browsertime/pull/1837). ## 16.14.1 - 2022-08-26 ### Fixed * Guard relative standard deviation agains 0 standard deviation [#1835](https://github.com/sitespeedio/browsertime/pull/1835). ## 16.14.0 - 2022-08-26 ### Added * Collect relative standard deviation and output that in the cli output [#1834](https://github.com/sitespeedio/browsertime/pull/1834). Before we only showed the actual standard deviation, with this fix we also show it in percentage, that makes it easier if you run tests on different hardware/networks and want to compare them. * Collect number of processes that runs on the server that do the testing, before a test starts [#1833](https://github.com/sitespeedio/browsertime/pull/1833). ### Fixed * Updated to Selenium 4.4.0 and Throttle 5.0.0. ## 16.13.3 - 2022-08-17 ### Fixed * Make sure set cookies work when navigating in script for Chrome/Edge [#1830](https://github.com/sitespeedio/browsertime/pull/1830). ## 16.13.2 - 2022-08-14 ### Fixed * Disable adding lastCPULongTask to the HAR data since it breaks waterfall view on slow mobile phones with late CPU long tasks [#1828](https://github.com/sitespeedio/browsertime/pull/1828). ## 16.13.1 - 2022-08-10 ### Fixed * Make sure that Android id is always picked up from the phone if tests run on Android [#1826](https://github.com/sitespeedio/browsertime/pull/1826). ## 16.13.0 - 2022-08-08 ### Added * Upgraded to Edgedriver 104. ### Fixed * Upgraded to Selenium 4.3.1 [#1824](https://github.com/sitespeedio/browsertime/pull/1824). * Upgraded Chrome reomte interface to 0.31.3 [#1825](https://github.com/sitespeedio/browsertime/pull/1825) ## 16.12.0 - 2022-08-06 ### Added * Upgraded to Chrome 104, Edge 104, Firefox 103 in the Docker container. * Upgraded to Chromedriver 104. ### Fixed * Remove old Firefox on Android workaround for orange frame [#1821](https://github.com/sitespeedio/browsertime/pull/1821), thank you [Sean Feng](https://github.com/sefeng211) for the PR. ## 16.11.4 - 2022-07-17 ### Fixed * Automatically add white background between --preURL and the URL that you wanna test. This makes visual metrics usable when using preURL. [#1819](https://github.com/sitespeedio/browsertime/pull/1819) ## 16.11.3 - 2022-07-14 ### Fixed * If one of the visual elements failed, all failed. Fixed in [#1818](https://github.com/sitespeedio/browsertime/pull/1818). * Use buffered long tasks instead of injecting the measuremnt in the page [#1817](https://github.com/sitespeedio/browsertime/pull/1817). * Fixed broken CHromedriver and Geckodriver install on Windows. ## 16.11.2 - 2022-07-05 ### Fixed * Updated Geckodriver install, it will autoamtically pickup Geckodriver in the path for Raspberry Pis. ## 16.11.1 - 2022-06-29 ### Fixed * Fixed `--preWarmServer` so it works with `--headless`, Docker and specific Android or iOS device [#1815](https://github.com/sitespeedio/browsertime/pull/1815). ## 16.11.0 - 2022-06-28 ### Added * Firefox 102 and Edge 103 in the Docker container. * Use Edgedriver 103 [#1812](https://github.com/sitespeedio/browsertime/pull/1812) ### Fixed * Upgraded to Selenium 4.3.0 [#1813](https://github.com/sitespeedio/browsertime/pull/1813). ## 16.10.1 - 2022-06-26 ### Fixed * Verify that the CDP port is free before using it [1811](https://github.com/sitespeedio/browsertime/pull/1811). ## 16.10.0 - 2022-06-23 ### Added * Upgraded the Docker container to use Chrome 103. * Upgraded to Chromedriver 103. ## 16.9.1 - 2022-06-19 ### Fixed * Upgraded to Throttle 4 that internally uses `ip route` instead of `route` (one less dependency) [#1767](https://github.com/sitespeedio/browsertime/pull/1767). ## 16.9.0 - 2022-06-15 ### Added * New `wait.byCondition` command. Thank you [Icecold777](https://github.com/Icecold777) for PR [#1803](https://github.com/sitespeedio/browsertime/pull/1803). * Collect number of CPU longtasks before largest contentful paint [#1806](https://github.com/sitespeedio/browsertime/pull/1806). ### Fixed * Instead of throwing errors and exit the tests if the page hasn't finished loading after 5 minutes, we now gracefully ends the test after 2 minutes (you can change that time with `--maxLoadTime`). That makes more sense than just throwing errors [#1810](https://github.com/sitespeedio/browsertime/pull/1810). ## 16.8.1 - 2022-06-09 ### Fixed * Fix for getting the MOZ log, thank you [Gregory Mierzwinski](https://github.com/gmierz) for PR [#1802](https://github.com/sitespeedio/browsertime/pull/1802). * [Removed unused functionality of the Visual metrics portable script](https://github.com/sitespeedio/browsertime/pull/1751). ## 16.8.0 - 2022-06-06 ### Added * Add `--debug` mode. Debug mode will run your tests and open devtools in Chrome/Edge/Firefox on desktop and will stop after each iteration so you can inspect the page. You can add your own breakpoint in your script with the `breakpoint(name)` command. To continue after your breakpoint, add the following code in the developer console in your browser: `window.browsertime.pause=false;` [#1798](https://github.com/sitespeedio/browsertime/pull/1798). * Use Selenium WebDriver 4.2.0 [#1801](https://github.com/sitespeedio/browsertime/pull/1801). * Updated to Firefox 101, Edge 102, Chrome 102 in the Docker container. ### Tech * Added tests using NodeJS 18 [#1772](https://github.com/sitespeedio/browsertime/pull/1772). ## 16.7.0 - 2022-05-20 ### Added * Include last CPU long task in the HAR file so we can show when it happens [#1793](https://github.com/sitespeedio/browsertime/pull/1793). * Inlclude TTFB and INP in the Google Web Vital namespace [#1792](https://github.com/sitespeedio/browsertime/pull/1792). ## 16.6.0 - 2022-05-20 ### Added * Implemented experimental Interaction to next paint that's useful if you test user journeys [#1791](https://github.com/sitespeedio/browsertime/pull/1791). * Track when the last CPU long task happen as explained by Andy Davies of the webperf Slack channel [#1789](https://github.com/sitespeedio/browsertime/pull/1789). ## 16.5.0 - 2022-05-11 ### Added * Make it possible to configure the max size in pixels for the filmstrip screenshots using `--videoParams.thumbsize` [#1787](https://github.com/sitespeedio/browsertime/pull/1787). ### Fixed * Handle all boundaries when cropping image in portable script, thank you [Gregory Mierzwinski](https://github.com/gmierz) for PR [#1788](https://github.com/sitespeedio/browsertime/pull/1788). ## 16.4.0 - 2022-05-11 ### Added * If we have the Largest Contentful Paint for the video, add that to the video text instead of DOMContentLoaded [#1783](https://github.com/sitespeedio/browsertime/pull/1783). ### Fixed * Only get LCP in Visual Metrics if the LCP API gives us a element [#1786](https://github.com/sitespeedio/browsertime/pull/1786). ## 16.3.0 - 2022-05-07 ### Added * If you use `--visualElements` and the browser supports the Largest Contentful API, we also record the LCP from the video. This will help the Chrome team and other browser teams to get it right (see [https://bugs.chromium.org/p/chromium/issues/detail?id=1291502](https://bugs.chromium.org/p/chromium/issues/detail?id=1291502)) [#1782](https://github.com/sitespeedio/browsertime/pull/1782). ## 16.2.2 - 2022-05-06 ### Fixed * The Docker container uses Ubuntu 20 again (instead of 22) since there's been multiple problems (running on ARM and on some cloud services). ## 16.2.1 - 2022-05-04 ### Fixed * Add an acceptable error of 5 pixels to last frame matches for the visual metric portable script, thank you [Gregory Mierzwinski](https://github.com/gmierz) for PR [#1780](https://github.com/sitespeedio/browsertime/pull/1780). ## 16.2.0 - 2022-05-01 ### Added * Updated to Chrome and Chromedriver 101 [#1773](https://github.com/sitespeedio/browsertime/pull/1773). * Updated to Edge and Edgedriver 101 [#1778](https://github.com/sitespeedio/browsertime/pull/1778). * Use Geckodriver 0.31.0 [#1775](https://github.com/sitespeedio/browsertime/pull/1775). * Added new alias for warm cache load. You can now use either `--preURL` or `--warmLoad` [#1774](https://github.com/sitespeedio/browsertime/pull/1774). ### Fixed * Updated to Selenium 4.1.2 [#1779](https://github.com/sitespeedio/browsertime/pull/1779). ### Tech * Updated dev dependencies [#1776](https://github.com/sitespeedio/browsertime/pull/1776). ## 16.1.0 - 2022-04-20 ### Fixed * Handle negative x/y offsets when cropping images in the new portable visual metrocs script, thank you [Gregory Mierzwinski](https://github.com/gmierz) for PR [#1770](https://github.com/sitespeedio/browsertime/pull/1770). * Bumped Throttle dependency [#1769](https://github.com/sitespeedio/browsertime/pull/1769). * Bumped chrome-har, chrome-remote-interface, dayjs and yargs dependencies [#1771](https://github.com/sitespeedio/browsertime/pull/1771). ### Added * Added blocking of Chrome and Edge phone home domains [#1763](https://github.com/sitespeedio/browsertime/pull/1763). ## 16.0.1 - 2022-04-06 ### Fixed * If visual metrics fails and you also use --visualElements, make sure that file is also stored so we can reporduce the issue [#1757](https://github.com/sitespeedio/browsertime/pull/1757). ## 16.0.0 - 2022-04-05 ### Changed * When I introduced flushing of the DNS per run I missed that it makes you need to run sudo to do it (Mac/Linux). That sucks so instead of being able to disable the flushing `--disableDNSFlush` you now enables it with `--flushDNS` [#1752](https://github.com/sitespeedio/browsertime/pull/1752). ### Added * Firefox 99 in the Docker container * Edge and Edgedriver 100 ### Fixed * Automatically save the original video if visual metrics fails [#1755](https://github.com/sitespeedio/browsertime/pull/1755). ## 15.4.0 - 2022-03-30 ### Added * Updated to Chrome and Chromedriver 100 [#1743](https://github.com/sitespeedio/browsertime/pull/1743). * There's a new version of the visual metrics script contributed by [Gregory Mierzwinski](https://github.com/gmierz) that removed the dependency of ImageMagick and instead needs the Python dependencies *OpenCV-Python* and *Numpy*. The long term goal is to use this as default but for now you can test it with `--visualMetricsPortable`. ## 15.3.0 - 2022-03-07 ### Added * Chrome: If you set --user-data-dir you can clean the directory between each iteration using `--chrome.cleanUserDataDir` [#1739](https://github.com/sitespeedio/browsertime/pull/1739) ## 15.2.0 - 2022-03-04 ### Added * Updated to Chromedriver and Edgedriver 99. * Updated Docker container to use Chrome and Edge 99 [#1738](https://github.com/sitespeedio/browsertime/pull/1738). ### Fixed * Added more view ports for emulated mobile in Chrome [#1736](https://github.com/sitespeedio/browsertime/pull/1736). ## 15.1.1 - 2022-02-24 ### Fixed * Updated Chromedriver dependency that fixes installation on M1 and [some send keys issues](https://chromedriver.storage.googleapis.com/98.0.4758.102/notes.txt). ## 15.1.0 - 2022-02-24 ### Added * Collect timings from main document. The result includes a field named mainDocumentTimings and contains blocked, dns, connect, send, wait, receive, ssl as long as you get a HAR file from the browser [#1735](https://github.com/sitespeedio/browsertime/pull/1735). ### Tech * Cleaned the DNS flush code [#1734](https://github.com/sitespeedio/browsertime/pull/1734). ## 15.0.1 - 2022-02-21 ### Fixed * Make sure connectivity is only set before the test begins [#1733](https://github.com/sitespeedio/browsertime/pull/1733). ## 15.0.0 - 2022-02-20 ### Changed * Removed the built in support for TSProxy [#1718](https://github.com/sitespeedio/browsertime/pull/1718). TSProxy only worked with Python 2.7 and we want to remove that dependency. * Removed support for using speedline and the CLI arg `--chrome.visualMetricsUsingTrace` [#1727](https://github.com/sitespeedio/browsertime/pull/1727). ### Fixed * Code cleanup: [#1720](https://github.com/sitespeedio/browsertime/pull/1720) * Moved test to [Ava](https://avajs.dev) instead of mocha and moved most testing against a local HTTP server instead of internet [#1725](https://github.com/sitespeedio/browsertime/pull/1725). ### Added * New alias for getting the Chrome trace log: `--chrome.trace` [#1728](https://github.com/sitespeedio/browsertime/pull/1728). * On OS X and Linux the DNS will be flushed between runs. You can disable that with `--disableDNSFlush true` [#1732](https://github.com/sitespeedio/browsertime/pull/1732). ## 14.21.1 - 2022-02-09 ### Fixed * Always disable the new ChromeWhaxyNewUI splash screen in Chrome [#1717](https://github.com/sitespeedio/browsertime/pull/1717). * Remove the Firefox persist log configuration that was needed for FF 94+ [#1716](https://github.com/sitespeedio/browsertime/pull/1716). ## 14.21.0 - 2022-02-08 ### Added * Upgraded to Egdedriver 98 * Upgraded to Edge 98 and Firefox 97 in the Docker container ## 14.20.3 - 2022-02-07 ### Fixed * There's a new setup how we build Docker releases and this release uses the new pipeline. ## 14.20.0 - 2022-02-07 ### Added * Docker container for both amd64 and arm64. ## 14.19.2 - 2022-02-05 ### Fixed * Upgraded to Geckodriver 0.30.0 [#1710](https://github.com/sitespeedio/browsertime/pull/1710). * Upgraded to Chromedriver that always looks for Chromedriver in PATH for arm64. * Fixed getting Geckoprofile on Android when you do not specify Android package [#1712](https://github.com/sitespeedio/browsertime/pull/1712). ## 14.19.1 - 2022-02-03 ### Fixed * Remove the old fix for setting CPUThrottling, that works now in Chrome without that fix [#1708](https://github.com/sitespeedio/browsertime/pull/1708). * Do not set binary for Firefox when run on Android [#1706](https://github.com/sitespeedio/browsertime/pull/1706). ## 14.19.0 - 2022-02-02 ### Added * Chrome and Chromedriver 98 [#1704](https://github.com/sitespeedio/browsertime/pull/1704). ### Fixed * Fix so we get the Firefox version on Android [#1704](https://github.com/sitespeedio/browsertime/pull/1704). ## 14.18.1 - 2022-01-24 ### Fixed * If loading a URL failed and we retry and we logged that as an info message, but you as a user only need to know if it fails after X retries. The log message now logs at debug level [#1701](https://github.com/sitespeedio/browsertime/pull/1701). * The summary log message `[2022-01-24 16:12:38] INFO: https://www.sitespeed.io 27 requests, TTFB: 962ms (σ917.00ms), firstPaint: 2.92s (σ3.07s), firstVisualChange: 2.94s (σ3.07s), FCP: 2.92s (σ3.07s), DOMContentLoaded: 3.22s (σ2.98s), LCP: 2.92s (σ3.07s), CLS: 0.0389 (σ0.03), TBT: 769ms (σ53.00ms), Load: 3.77s (σ3.12s), speedIndex: 2.96s (σ3.07s), visualComplete85: 2.95s (σ3.06s), lastVisu