question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Fix broken Puppeteer upgrade to version 13.0.0

See original GitHub issue

The Puppeteer development dependency is now pinned to version 12.0.1 because version 13.0.0 fails for (to us) unknown reasons since nothing really stands out in the 13.0.0 changelogs. It’s strange because everything about the new release works, except for one integration test (“must change colors”) on one platform (Windows) with the following traceback:

Failures:
1) Interaction in js-colors.pdf must change colors
  Message:
    ProtocolError: Protocol error (Runtime.callFunctionOn): Debugger: expected Debugger.Object, got Proxy _returnError@chrome://remote/content/cdp/domains/content/runtime/ExecutionContext.jsm:185:22
    callFunctionOn@chrome://remote/content/cdp/domains/content/runtime/ExecutionContext.jsm:260:23

  Stack:
    error properties: Object({ originalMessage: 'Debugger: expected Debugger.Object, got Proxy' })
    ProtocolError: Protocol error (Runtime.callFunctionOn): Debugger: expected Debugger.Object, got Proxy _returnError@chrome://remote/content/cdp/domains/content/runtime/ExecutionContext.jsm:185:22
    callFunctionOn@chrome://remote/content/cdp/domains/content/runtime/ExecutionContext.jsm:260:23
        at C:\pdfjs\botio-files-pdfjs\private\6f70ec10008fe96\node_modules\puppeteer\lib\cjs\puppeteer\common\Connection.js:226:24
        at new Promise (<anonymous>)
        at CDPSession.send (C:\pdfjs\botio-files-pdfjs\private\6f70ec10008fe96\node_modules\puppeteer\lib\cjs\puppeteer\common\Connection.js:222:16)
        at ExecutionContext._evaluateInternal (C:\pdfjs\botio-files-pdfjs\private\6f70ec10008fe96\node_modules\puppeteer\lib\cjs\puppeteer\common\ExecutionContext.js:204:50)
        at ExecutionContext.evaluateHandle (C:\pdfjs\botio-files-pdfjs\private\6f70ec10008fe96\node_modules\puppeteer\lib\cjs\puppeteer\common\ExecutionContext.js:155:21)
        at WaitTask.rerun (C:\pdfjs\botio-files-pdfjs\private\6f70ec10008fe96\node_modules\puppeteer\lib\cjs\puppeteer\common\DOMWorld.js:547:41)
        at runMicrotasks (<anonymous>)
        at processTicksAndRejections (internal/process/task_queues.js:95:5)

Maybe someone with Windows can try to reproduce this and find out what is special about the “must change colors” test that triggers this. Once we know what causes it, we can either fix it, or work around it and file an upstream bug report.

Issue Analytics

  • State:closed
  • Created 2 years ago
  • Comments:6 (6 by maintainers)

github_iconTop GitHub Comments

1reaction
timvandermeijcommented, Dec 12, 2021

Lo and behold: _ref in the code fragment above actually refers to the document object now in Puppeteer 13. It looks like the arguments are shifted because the _current argument (the next one) now refers to what _ref used to refer to. At the very least we now know something changed in Puppeteer and looking at the documentation this seems like a bug.

0reactions
timvandermeijcommented, Dec 15, 2021

Follow-up: it looks like our reported regression got fixed upsteam now in https://github.com/puppeteer/puppeteer/pull/7845, so hopefully in a next Puppeteer release this won’t be a problem anymore for new code.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Puppeteer - npm
Puppeteer is a Node.js library which provides a high-level API to control Chrome/Chromium over the DevTools Protocol.
Read more >
The engine "node" is incompatible with this module
I ran into this same issue. If you used Homebrew run: brew update # This updates Homebrew to latest version brew upgrade node....
Read more >
Troubleshooting - Puppeteer
The most common cause is a bug in Node.js v14.0.0 which broke extract-zip , the module Puppeteer uses to extract browser downloads into...
Read more >
Remove explicit puppeteer dependency from package.json
It's easier for maintainability if we don't have to update versions in two ... This was added in [48177] to fix an issue...
Read more >
puppeteer-core@19.4.1 - jsDocs.io
For non-headless, this is similar to Chrome/61.0.3153.0 . The format of browser.version() might change with future releases of Chromium.
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found