browsertime 16.2.1 → 16.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,19 @@
|
|
|
1
1
|
# Browsertime changelog (we do [semantic versioning](https://semver.org))
|
|
2
2
|
|
|
3
|
+
## 16.4.0 - 2022-05-11
|
|
4
|
+
### Added
|
|
5
|
+
* 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).
|
|
6
|
+
|
|
7
|
+
### Fixed
|
|
8
|
+
* Only get LCP in Visual Metrics if the LCP API gives us a element [#1786](https://github.com/sitespeedio/browsertime/pull/1786).
|
|
9
|
+
## 16.3.0 - 2022-05-07
|
|
10
|
+
### Added
|
|
11
|
+
* If you use `--visualElements` and the browser supports the Largest Contentful API, we also record
|
|
12
|
+
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).
|
|
13
|
+
|
|
14
|
+
## 16.2.2 - 2022-05-06
|
|
15
|
+
### Fixed
|
|
16
|
+
* The Docker container uses Ubuntu 20 again (instead of 22) since there's been multiple problems (running on ARM and on some cloud services).
|
|
3
17
|
|
|
4
18
|
## 16.2.1 - 2022-05-04
|
|
5
19
|
|
|
@@ -125,6 +125,22 @@
|
|
|
125
125
|
}
|
|
126
126
|
});
|
|
127
127
|
|
|
128
|
+
// If the browser support largest contentful paint, get that element as well
|
|
129
|
+
const supported = PerformanceObserver.supportedEntryTypes;
|
|
130
|
+
if (supported && supported.indexOf('largest-contentful-paint') > -1) {
|
|
131
|
+
const observer = new PerformanceObserver(list => {});
|
|
132
|
+
observer.observe({ type: 'largest-contentful-paint', buffered: true });
|
|
133
|
+
const entries = observer.takeRecords();
|
|
134
|
+
if (entries.length > 0) {
|
|
135
|
+
const largestEntry = entries[entries.length - 1];
|
|
136
|
+
// It seems that the API do not alwayas have a elememt
|
|
137
|
+
if (largestEntry.element && isElementPartlyInViewportAndVisible(largestEntry.element)) {
|
|
138
|
+
keepLargestElementByType('LargestContentfulPaint', largestEntry.element);
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
|
|
128
144
|
// We need to follow the standard for VisualMetrics
|
|
129
145
|
return {
|
|
130
146
|
viewport: {
|
|
@@ -52,7 +52,13 @@ module.exports = function (videoMetrics, timingMetrics, options) {
|
|
|
52
52
|
value: vm.LastVisualChange
|
|
53
53
|
});
|
|
54
54
|
}
|
|
55
|
-
|
|
55
|
+
|
|
56
|
+
if (vm.LargestContentfulPaint) {
|
|
57
|
+
metricsAndValues.push({
|
|
58
|
+
name: 'LargestContentfulPaint',
|
|
59
|
+
value: vm.LargestContentfulPaint
|
|
60
|
+
});
|
|
61
|
+
} else if (timingMetrics) {
|
|
56
62
|
const pt = timingMetrics;
|
|
57
63
|
metricsAndValues.push({
|
|
58
64
|
name: 'DOMContentLoaded',
|