zachleat / speedlify

Benchmark the web performance and accessibility of sites over time.
https://www.speedlify.dev/
MIT License
922 stars 168 forks source link

UnhandledPromiseRejectionWarning: TypeError: Cannot set property 'hundos' of undefined #21

Closed Mk-Etlinger closed 4 years ago

Mk-Etlinger commented 4 years ago

Hi Zach!

I'm trying to get the basic Deploy to Netlify button working but the build times out at the 15min limit. I'm running into the following error:

(node:1514) UnhandledPromiseRejectionWarning: TypeError: Cannot set property 'hundos' of undefined
12:31:58 PM:     at /opt/build/repo/node_modules/performance-leaderboard/src/ResultLogger.js:209:28
12:31:58 PM:     at Array.map (<anonymous>)
12:31:58 PM:     at ResultLogger.getFinalSortedResults (/opt/build/repo/node_modules/performance-leaderboard/src/ResultLogger.js:207:38)
12:31:58 PM:     at runLighthouse (/opt/build/repo/node_modules/performance-leaderboard/performance-leaderboard.js:87:26)
12:31:58 PM:     at async /opt/build/repo/run-tests.js:106:17

View the full deploy logs below:

12:21:48 PM: (Site 6 of 12, run 1 of 3): https://gridsome.org/
12:23:05 PM: Logged an error with https://gridsome.org/:  LighthouseError [LHError]: PROTOCOL_TIMEOUT
12:23:05 PM:     at Timeout._onTimeout (/opt/build/repo/node_modules/lighthouse/lighthouse-core/gather/driver.js:352:21)
12:23:05 PM:     at listOnTimeout (internal/timers.js:549:17)
12:23:05 PM:     at processTimers (internal/timers.js:492:7) {
12:23:05 PM:   code: 'PROTOCOL_TIMEOUT',
12:23:05 PM:   friendlyMessage: 'Waiting for DevTools protocol response has exceeded the allotted time. (Method: Emulation.setScriptExecutionDisabled)',
12:23:05 PM:   lhrRuntimeError: true,
12:23:05 PM:   protocolMethod: 'Emulation.setScriptExecutionDisabled'
12:23:05 PM: }
12:23:05 PM: (Site 7 of 12, run 1 of 3): https://vuepress.vuejs.org/
12:24:21 PM: Logged an error with https://vuepress.vuejs.org/:  LighthouseError [LHError]: PROTOCOL_TIMEOUT
12:24:21 PM:     at Timeout._onTimeout (/opt/build/repo/node_modules/lighthouse/lighthouse-core/gather/driver.js:352:21)
12:24:21 PM:     at listOnTimeout (internal/timers.js:549:17)
12:24:21 PM:     at processTimers (internal/timers.js:492:7) {
12:24:21 PM:   code: 'PROTOCOL_TIMEOUT',
12:24:21 PM:   friendlyMessage: 'Waiting for DevTools protocol response has exceeded the allotted time. (Method: Emulation.setScriptExecutionDisabled)',
12:24:21 PM:   lhrRuntimeError: true,
12:24:21 PM:   protocolMethod: 'Emulation.setScriptExecutionDisabled'
12:24:21 PM: }
12:24:21 PM: (Site 8 of 12, run 1 of 3): https://v2.docusaurus.io/
12:24:37 PM: (Site 9 of 12, run 1 of 3): https://docsify.js.org/
12:24:43 PM: (Site 10 of 12, run 1 of 3): https://jekyllrb.com/
12:24:46 PM: (Site 11 of 12, run 1 of 3): https://hexo.io/
12:24:56 PM: (Site 12 of 12, run 1 of 3): https://sapper.svelte.dev/
12:25:00 PM: (Site 1 of 12, run 2 of 3): https://www.11ty.dev/
12:25:04 PM: (Site 2 of 12, run 2 of 3): https://www.gatsbyjs.org/
12:25:14 PM: (Site 3 of 12, run 2 of 3): https://gohugo.io/
12:25:22 PM: (Site 4 of 12, run 2 of 3): https://nextjs.org/
12:25:30 PM: (Site 5 of 12, run 2 of 3): https://nuxtjs.org/
12:25:38 PM: (Site 6 of 12, run 2 of 3): https://gridsome.org/
12:26:55 PM: Logged an error with https://gridsome.org/:  LighthouseError [LHError]: PROTOCOL_TIMEOUT
12:26:55 PM:     at Timeout._onTimeout (/opt/build/repo/node_modules/lighthouse/lighthouse-core/gather/driver.js:352:21)
12:26:55 PM:     at listOnTimeout (internal/timers.js:549:17)
12:26:55 PM:     at processTimers (internal/timers.js:492:7) {
12:26:55 PM:   code: 'PROTOCOL_TIMEOUT',
12:26:55 PM:   friendlyMessage: 'Waiting for DevTools protocol response has exceeded the allotted time. (Method: Emulation.setScriptExecutionDisabled)',
12:26:55 PM:   lhrRuntimeError: true,
12:26:55 PM:   protocolMethod: 'Emulation.setScriptExecutionDisabled'
12:26:55 PM: }
12:26:55 PM: (Site 7 of 12, run 2 of 3): https://vuepress.vuejs.org/
12:27:56 PM: Logged an error with https://vuepress.vuejs.org/:  LighthouseError [LHError]: PROTOCOL_TIMEOUT
12:27:56 PM:     at Timeout._onTimeout (/opt/build/repo/node_modules/lighthouse/lighthouse-core/gather/driver.js:352:21)
12:27:56 PM:     at listOnTimeout (internal/timers.js:549:17)
12:27:56 PM:     at processTimers (internal/timers.js:492:7) {
12:27:56 PM:   code: 'PROTOCOL_TIMEOUT',
12:27:56 PM:   friendlyMessage: 'Waiting for DevTools protocol response has exceeded the allotted time. (Method: Network.emulateNetworkConditions)',
12:27:56 PM:   lhrRuntimeError: true,
12:27:56 PM:   protocolMethod: 'Network.emulateNetworkConditions'
12:27:56 PM: }
12:27:56 PM: (Site 8 of 12, run 2 of 3): https://v2.docusaurus.io/
12:28:05 PM: (Site 9 of 12, run 2 of 3): https://docsify.js.org/
12:28:11 PM: (Site 10 of 12, run 2 of 3): https://jekyllrb.com/
12:28:15 PM: (Site 11 of 12, run 2 of 3): https://hexo.io/
12:28:24 PM: (Site 12 of 12, run 2 of 3): https://sapper.svelte.dev/
12:28:28 PM: (Site 1 of 12, run 3 of 3): https://www.11ty.dev/
12:28:32 PM: (Site 2 of 12, run 3 of 3): https://www.gatsbyjs.org/
12:28:41 PM: (Site 3 of 12, run 3 of 3): https://gohugo.io/
12:28:49 PM: (Site 4 of 12, run 3 of 3): https://nextjs.org/
12:28:57 PM: (Site 5 of 12, run 3 of 3): https://nuxtjs.org/
12:29:05 PM: (Site 6 of 12, run 3 of 3): https://gridsome.org/
12:30:22 PM: Logged an error with https://gridsome.org/:  LighthouseError [LHError]: PROTOCOL_TIMEOUT
12:30:22 PM:     at Timeout._onTimeout (/opt/build/repo/node_modules/lighthouse/lighthouse-core/gather/driver.js:352:21)
12:30:22 PM:     at listOnTimeout (internal/timers.js:549:17)
12:30:22 PM:     at processTimers (internal/timers.js:492:7) {
12:30:22 PM:   code: 'PROTOCOL_TIMEOUT',
12:30:22 PM:   friendlyMessage: 'Waiting for DevTools protocol response has exceeded the allotted time. (Method: Emulation.setScriptExecutionDisabled)',
12:30:22 PM:   lhrRuntimeError: true,
12:30:22 PM:   protocolMethod: 'Emulation.setScriptExecutionDisabled'
12:30:22 PM: }
12:30:22 PM: (Site 7 of 12, run 3 of 3): https://vuepress.vuejs.org/
12:31:23 PM: Logged an error with https://vuepress.vuejs.org/:  LighthouseError [LHError]: PROTOCOL_TIMEOUT
12:31:23 PM:     at Timeout._onTimeout (/opt/build/repo/node_modules/lighthouse/lighthouse-core/gather/driver.js:352:21)
12:31:23 PM:     at listOnTimeout (internal/timers.js:549:17)
12:31:23 PM:     at processTimers (internal/timers.js:492:7) {
12:31:23 PM:   code: 'PROTOCOL_TIMEOUT',
12:31:23 PM:   friendlyMessage: 'Waiting for DevTools protocol response has exceeded the allotted time. (Method: Network.emulateNetworkConditions)',
12:31:23 PM:   lhrRuntimeError: true,
12:31:23 PM:   protocolMethod: 'Network.emulateNetworkConditions'
12:31:23 PM: }
12:31:23 PM: (Site 8 of 12, run 3 of 3): https://v2.docusaurus.io/
12:31:33 PM: (Site 9 of 12, run 3 of 3): https://docsify.js.org/
12:31:39 PM: (Site 10 of 12, run 3 of 3): https://jekyllrb.com/
12:31:43 PM: (Site 11 of 12, run 3 of 3): https://hexo.io/
12:31:54 PM: (Site 12 of 12, run 3 of 3): https://sapper.svelte.dev/
12:31:58 PM: (node:1514) UnhandledPromiseRejectionWarning: TypeError: Cannot set property 'hundos' of undefined
12:31:58 PM:     at /opt/build/repo/node_modules/performance-leaderboard/src/ResultLogger.js:209:28
12:31:58 PM:     at Array.map (<anonymous>)
12:31:58 PM:     at ResultLogger.getFinalSortedResults (/opt/build/repo/node_modules/performance-leaderboard/src/ResultLogger.js:207:38)
12:31:58 PM:     at runLighthouse (/opt/build/repo/node_modules/performance-leaderboard/performance-leaderboard.js:87:26)
12:31:58 PM:     at async /opt/build/repo/run-tests.js:106:17
12:31:58 PM: (node:1514) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 83)
12:31:58 PM: (node:1514) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
12:32:00 PM: > speedlify@1.0.0 build /opt/build/repo
12:32:00 PM: > npx @11ty/eleventy --quiet
12:32:01 PM: Copied 4 files / Wrote 37 files in 0.34 seconds (9.2ms each, v0.11.0)
12:32:01 PM: > speedlify@1.0.0 zip-results /opt/build/repo
12:32:01 PM: > node zip-results.js
zachleat commented 4 years ago

Sorry but just as a quick note that the easiest workaround here is to just delete _data/sites/ssg.js. You’re supposed to create your own file with urls in it. My sites are probably irrelevant to you 😇

Mk-Etlinger commented 4 years ago

Ok, cool. I'm learning how speedlify works =)

As I updated the sites in _data, it actually worked with all of your sites hahaha. But glad you gave me insight on how to make this useful for me. Let me know if you want me to close this and I will.

zachleat commented 4 years ago

Sorry about the default behavior! When you clone now it will ignore the default verticals and also display this quick start guide:

image
Mk-Etlinger commented 4 years ago

Thank you @zachleat, I appreciate your help.

Everywhere I look these days, you've created an awesome tool, written a super in-depth blog post, or helped me out on Twitter. 🙏 I'm on a font subsetting kick right now and Glyphanger is dope.