sitespeed.io 33.2.0 → 33.3.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 +8 -0
- package/README.md +1 -1
- package/lib/plugins/browsertime/index.js +5 -0
- package/lib/plugins/html/templates/url/iteration/index.pug +5 -0
- package/lib/plugins/html/templates/url/metrics/index.pug +5 -0
- package/lib/plugins/html/templates/url/metrics/loaf.pug +53 -0
- package/lib/plugins/html/templates/url/summary/index.pug +5 -1
- package/npm-shrinkwrap.json +9 -9
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
# CHANGELOG - sitespeed.io (we use [semantic versioning](https://semver.org))
|
|
2
2
|
|
|
3
|
+
## 33.3.0 - 2024-03-16
|
|
4
|
+
### Added
|
|
5
|
+
* Show Long Animation frames (enabled in Chrome 123) [#4180](https://github.com/sitespeedio/sitespeed.io/pull/4108). Using the timeline/profiling is still best doing your tests but long animation frames can help you if you do not have it turned on or familiar with thart data in RUM. Please create an issue if you have any ideas on how we shoudl display the metrics/information!
|
|
6
|
+
* Show CPU power consumption (when using Firefox) [#4104](https://github.com/sitespeedio/sitespeed.io/pull/4104). You can try it with: `sitespeed.io -b firefox -n 1 --firefox.geckoProfiler --firefox.geckoProfilerParams.features "power" --firefox.powerConsumption https://www.sitespeed.io/`
|
|
7
|
+
|
|
8
|
+
### Fixed
|
|
9
|
+
* Updated to [Browsertime 21.5.3](https://github.com/sitespeedio/browsertime/blob/main/CHANGELOG.md#2153---2024-03-12) containing various bug fixes.
|
|
10
|
+
|
|
3
11
|
## 33.2.0 - 2024-03-12
|
|
4
12
|
### Added
|
|
5
13
|
* Updated to Browsertime 21.5.0 in [#4103](https://github.com/sitespeedio/sitespeed.io/pull/4103) also included changes released in 21.4.0.
|
package/README.md
CHANGED
|
@@ -209,7 +209,7 @@ We welcome contributions from the community! Whether you're fixing a bug, adding
|
|
|
209
209
|
5. **Test**: Run tests to ensure everything works as expected.
|
|
210
210
|
6. **Submit a Pull Request**: Push your changes to your fork and submit a pull request to the main repository.
|
|
211
211
|
|
|
212
|
-
Before contributing, please read our [CONTRIBUTING.md](.
|
|
212
|
+
Before contributing, please read our [CONTRIBUTING.md](.github/CONTRIBUTING.md) for more detailed information on how to contribute.
|
|
213
213
|
|
|
214
214
|
# Reporting Issues
|
|
215
215
|
Found a bug or have a feature request? Please use the [GitHub Issues](https://github.com/sitespeedio/sitespeed.io/issues) to report them. Be sure to check existing issues to avoid duplicates.
|
|
@@ -356,6 +356,11 @@ export default class BrowsertimePlugin extends SitespeedioPlugin {
|
|
|
356
356
|
run.cpu = result[resultIndex].cpu[runIndex];
|
|
357
357
|
}
|
|
358
358
|
|
|
359
|
+
if (result[resultIndex].powerConsumption) {
|
|
360
|
+
run.powerConsumption =
|
|
361
|
+
result[resultIndex].powerConsumption[runIndex];
|
|
362
|
+
}
|
|
363
|
+
|
|
359
364
|
if (result[resultIndex].memory) {
|
|
360
365
|
run.memory = result[resultIndex].memory[runIndex];
|
|
361
366
|
}
|
|
@@ -66,6 +66,11 @@ block content
|
|
|
66
66
|
tr
|
|
67
67
|
td Memory
|
|
68
68
|
td #{h.size.format(memory)}
|
|
69
|
+
- cpuPower = get(d, 'browsertime.run.cpuConsumption')
|
|
70
|
+
if cpuConsumption
|
|
71
|
+
tr
|
|
72
|
+
td Firefox CPU power consumption
|
|
73
|
+
td #{cpuConsumption} µWh
|
|
69
74
|
- requests = get(d, 'pagexray.run.requests')
|
|
70
75
|
if (requests)
|
|
71
76
|
tr
|
|
@@ -10,6 +10,7 @@ if browsertime
|
|
|
10
10
|
- const custom = medianRun ? pageInfo.data.browsertime.pageSummary.browserScripts[medianRun.runIndex - 1].custom : pageInfo.data.browsertime.run.custom
|
|
11
11
|
- const cdp = medianRun ? pageInfo.data.browsertime.pageSummary.cdp[medianRun.runIndex - 1] : pageInfo.data.browsertime.run.cdp
|
|
12
12
|
- const renderBlocking = medianRun ? pageInfo.data.browsertime.pageSummary.renderBlocking[medianRun.runIndex - 1] : pageInfo.data.browsertime.run.renderBlocking
|
|
13
|
+
- const loaf = medianRun ? pageInfo.data.browsertime.pageSummary.browserScripts[medianRun.runIndex - 1].pageinfo.loaf : pageInfo.data.browsertime.run.pageinfo.loaf
|
|
13
14
|
|
|
14
15
|
small
|
|
15
16
|
| |
|
|
@@ -27,6 +28,9 @@ if browsertime
|
|
|
27
28
|
if timings.interactionToNextPaint
|
|
28
29
|
a(href='#interactionToNextPaint') Interaction To Next Paint
|
|
29
30
|
| |
|
|
31
|
+
if loaf
|
|
32
|
+
a(href='#longAnimationFrames') Long Aninimation Frames
|
|
33
|
+
| |
|
|
30
34
|
if timings.elementTimings && Object.keys(timings.elementTimings).length > 0
|
|
31
35
|
a(href='#elementTimings') Element Timings
|
|
32
36
|
| |
|
|
@@ -271,6 +275,7 @@ if browsertime
|
|
|
271
275
|
include ./firstInput.pug
|
|
272
276
|
include ./layoutShift.pug
|
|
273
277
|
include ./inp.pug
|
|
278
|
+
include ./loaf.pug
|
|
274
279
|
include ./elementTimings.pug
|
|
275
280
|
include ./serverTimings.pug
|
|
276
281
|
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
if loaf
|
|
2
|
+
a#longAnimationFrames
|
|
3
|
+
h3 Long Animation Frames
|
|
4
|
+
p Read more about the Long Animation Frames API here
|
|
5
|
+
a(href='https://developer.chrome.com/docs/web-platform/long-animation-frames') here.
|
|
6
|
+
p The top 10 longest animation frames entries
|
|
7
|
+
|
|
8
|
+
each oneLoaf in loaf
|
|
9
|
+
table
|
|
10
|
+
tr
|
|
11
|
+
th Blocking duration
|
|
12
|
+
th Work duration
|
|
13
|
+
th Render duration
|
|
14
|
+
th PreLayout Duration
|
|
15
|
+
th Style And Layout Duration
|
|
16
|
+
tr
|
|
17
|
+
td #{h.time.ms(h.decimals(oneLoaf.blockingDuration))}
|
|
18
|
+
td #{h.time.ms(h.decimals(oneLoaf.workDuration))}
|
|
19
|
+
td #{h.time.ms(h.decimals(oneLoaf.renderDuration))}
|
|
20
|
+
td #{h.time.ms(h.decimals(oneLoaf.preLayoutDuration))}
|
|
21
|
+
td #{h.time.ms(h.decimals(oneLoaf.styleAndLayoutDuration))}
|
|
22
|
+
|
|
23
|
+
if oneLoaf.scripts.length > 0
|
|
24
|
+
each theScript in oneLoaf.scripts
|
|
25
|
+
if theScript.sourceURL !== ''
|
|
26
|
+
tr
|
|
27
|
+
td.url.assetsurl(colspan=5)
|
|
28
|
+
a(href=theScript.sourceURL)= theScript.sourceURL
|
|
29
|
+
tr
|
|
30
|
+
td(colspan=5)
|
|
31
|
+
if theScript.forcedStyleAndLayoutDuration !== 0
|
|
32
|
+
p Forced Style And Layout Duration: #{h.time.ms(h.decimals(theScript.forcedStyleAndLayoutDuration))}
|
|
33
|
+
p
|
|
34
|
+
b Invoker:
|
|
35
|
+
| #{theScript.invoker}
|
|
36
|
+
br
|
|
37
|
+
b Invoker Type:
|
|
38
|
+
| #{theScript.invokerType}
|
|
39
|
+
br
|
|
40
|
+
if theScript.sourceFunctionName
|
|
41
|
+
b Source Function Name:
|
|
42
|
+
| #{theScript.sourceFunctionName}
|
|
43
|
+
br
|
|
44
|
+
if theScript.windowAttribution
|
|
45
|
+
b Window attribution:
|
|
46
|
+
| #{theScript.windowAttribution}
|
|
47
|
+
br
|
|
48
|
+
if theScript.sourceCharPosition
|
|
49
|
+
b Source char position:
|
|
50
|
+
| #{theScript.sourceCharPosition}
|
|
51
|
+
else
|
|
52
|
+
tr
|
|
53
|
+
td(colspan=5) No availible script information.
|
|
@@ -96,6 +96,11 @@ block content
|
|
|
96
96
|
tr
|
|
97
97
|
td Memory
|
|
98
98
|
td #{h.size.format(memory)}
|
|
99
|
+
- powerConsumption = get(d, 'browsertime.pageSummary.statistics.powerConsumption.median')
|
|
100
|
+
if powerConsumption
|
|
101
|
+
tr
|
|
102
|
+
td Firefox CPU Power Consumption
|
|
103
|
+
td #{powerConsumption} µWh
|
|
99
104
|
- requests = get(d, 'pagexray.pageSummary.requests')
|
|
100
105
|
if requests
|
|
101
106
|
tr
|
|
@@ -142,7 +147,6 @@ block content
|
|
|
142
147
|
tr
|
|
143
148
|
td Cumulative Layout Shift (CLS) [median]
|
|
144
149
|
td #{cls.toFixed(2)}
|
|
145
|
-
- tbt = get(d, 'browsertime.pageSummary.statistics.cpu.longTasks.totalBlockingTime.median')
|
|
146
150
|
if inp
|
|
147
151
|
tr
|
|
148
152
|
td Interaction To Next Paint (INP) [median]
|
package/npm-shrinkwrap.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "sitespeed.io",
|
|
3
|
-
"version": "33.
|
|
3
|
+
"version": "33.3.0",
|
|
4
4
|
"lockfileVersion": 2,
|
|
5
5
|
"requires": true,
|
|
6
6
|
"packages": {
|
|
7
7
|
"": {
|
|
8
8
|
"name": "sitespeed.io",
|
|
9
|
-
"version": "33.
|
|
9
|
+
"version": "33.3.0",
|
|
10
10
|
"license": "MIT",
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"@google-cloud/storage": "6.9.5",
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
"@tgwf/co2": "0.14.2",
|
|
16
16
|
"aws-sdk": "2.1327.0",
|
|
17
17
|
"axe-core": "4.8.2",
|
|
18
|
-
"browsertime": "21.5.
|
|
18
|
+
"browsertime": "21.5.4",
|
|
19
19
|
"cli-color": "2.0.3",
|
|
20
20
|
"coach-core": "8.0.2",
|
|
21
21
|
"concurrent-queue": "7.0.2",
|
|
@@ -1759,9 +1759,9 @@
|
|
|
1759
1759
|
}
|
|
1760
1760
|
},
|
|
1761
1761
|
"node_modules/browsertime": {
|
|
1762
|
-
"version": "21.5.
|
|
1763
|
-
"resolved": "https://registry.npmjs.org/browsertime/-/browsertime-21.5.
|
|
1764
|
-
"integrity": "sha512-
|
|
1762
|
+
"version": "21.5.4",
|
|
1763
|
+
"resolved": "https://registry.npmjs.org/browsertime/-/browsertime-21.5.4.tgz",
|
|
1764
|
+
"integrity": "sha512-lHM5qGWdGS9DiM4iofkih03dVLLARZwduaxYkFW8XTEk/j4GkijvzW5OO9oqFSiA6Xyxn4fDiQcYaboNLvWNzA==",
|
|
1765
1765
|
"dependencies": {
|
|
1766
1766
|
"@cypress/xvfb": "1.2.4",
|
|
1767
1767
|
"@devicefarmer/adbkit": "3.2.6",
|
|
@@ -10601,9 +10601,9 @@
|
|
|
10601
10601
|
}
|
|
10602
10602
|
},
|
|
10603
10603
|
"browsertime": {
|
|
10604
|
-
"version": "21.5.
|
|
10605
|
-
"resolved": "https://registry.npmjs.org/browsertime/-/browsertime-21.5.
|
|
10606
|
-
"integrity": "sha512-
|
|
10604
|
+
"version": "21.5.4",
|
|
10605
|
+
"resolved": "https://registry.npmjs.org/browsertime/-/browsertime-21.5.4.tgz",
|
|
10606
|
+
"integrity": "sha512-lHM5qGWdGS9DiM4iofkih03dVLLARZwduaxYkFW8XTEk/j4GkijvzW5OO9oqFSiA6Xyxn4fDiQcYaboNLvWNzA==",
|
|
10607
10607
|
"requires": {
|
|
10608
10608
|
"@cypress/xvfb": "1.2.4",
|
|
10609
10609
|
"@devicefarmer/adbkit": "3.2.6",
|
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": "33.
|
|
8
|
+
"version": "33.3.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",
|
|
@@ -85,7 +85,7 @@
|
|
|
85
85
|
"@tgwf/co2": "0.14.2",
|
|
86
86
|
"aws-sdk": "2.1327.0",
|
|
87
87
|
"axe-core": "4.8.2",
|
|
88
|
-
"browsertime": "21.5.
|
|
88
|
+
"browsertime": "21.5.4",
|
|
89
89
|
"coach-core": "8.0.2",
|
|
90
90
|
"cli-color": "2.0.3",
|
|
91
91
|
"concurrent-queue": "7.0.2",
|