Skip to content

Releases: puppeteer/puppeteer

v0.12.0

14 Oct 16:58
Compare
Choose a tag to compare

Big Changes

API changes

Changed:

Added:

Removed:

  • page.injectFile - page.addScriptTag now should be used. (c310f13)
  • page.plaintText - innerText/textContent could be obtained with page.evaluate. (1fbf2a8)

Bug Fixes

  • #63 - Emulate offline
  • #241 - Add keyboard.type
  • #304 - Add memory heap snapshot API
  • #309 - Is there a way to measure page performance?
  • #324 - evaluate - strange execute sequence
  • #382 - Implement object handles
  • #613 - Hwo can I set HTML select element value?
  • #625 - Introduce page.$eval and page.$$eval
  • #684 - Clicking element inside iFrame does not give any response
  • #734 - Request.resourceType doesnt match DevTools
  • #744 - Feature request: console level
  • #750 - Throw error with stack trace when launching with an invalid executablePath option
  • #782 - Constantly getting Navigation Timeout Error
  • #839 - Chromium is not closed completely gracefully
  • #864 - Is there a way to open DevTools progammaticaly?
  • #869 - URI malformed exception that is not handled
  • #884 - What is the reason of using a sync version of writeFile for pdf save?
  • #892 - Add addStyleTag(url) API
  • #949 - Replace injectFile to injectScript and add injectCSS
  • #1010 - ElementHandle screenshot does not count padding (or add options to count the padding/margin)

Raw notes

b555151 - chore: mark version 0.12.0
6a8865c - feat(keyboard): make keyboard.down generate input event by default (#1016)
a02347e - feat(Page): implement page.setOfflineMode (#1032)
fd88eb5 - feat(chromium): roll chromium to r508693 (#1031)
8511db9 - feat(page): waitForSelector hidden option (#967)
8f430fb - fix(ElementHandle.boundingBox): account for margin, padding, and border in element.boxModel (#1017)
1c52830 - feat: roll to 508367 (#1027)
053534b - chore: update yarn lock #1025
c310f13 - feat(Frame): Support options in addScriptTag and addStyleTag (#996)
0426e3c - Roll chromium to 508268 (#1019)
c893bf3 - fix(input) Send .code with keyboard events (#1015)
23c0ba0 - feat(Page): introduce Page.queryObjects (#1005)
3f9f0f4 - feat(Page.pdf): add 'A6' page format
9ecf20f - chore: Allow development under Windows platform (#992)
ff08e45 - fix: Remove synchronous operation with file system. (#879)
7a8aa73 - feat(Page): introduce Page.$$eval method (#1006)
464b6a9 - fix(Page.getMetrics): do not report a few metrics (#1001)
b82d319 - feat(Page): Support Page.getMetrics and metrics event. (#939)
77d3c29 - test(launcher): add a test for invalid executablePath option
13f100b - docs(api): fix typo
1fbf2a8 - feat(Page): kill the page.plainText method (#994)
079db90 - fix(JSHandle.toString): clearer description for primitives (#993)
c3fb367 - fix(Request): convert resourceType to all small-caps (#990)
7e28dba - feat(ElementHandle): add EH.boundingBox and EH.screenshot
515f2cd - feat: Roll to r507565 (#987)
e59172d - chore: Use Typescript to lint JSDoc annotations (#986)
7b5d7dd - docs(readme): fix typo (#988)
f1aa18a - feat(Launcher): add devtools option (#953)
e6af6e1 - feat(console): dispatch JSHandles as console arguments (#975)
8d1d9fe - chore(doc): replace 'could' with 'can'
52f92c9 - fix(input): clicking an element should take into account frame position (#971)
a7672ac - fix: return undefined when Page.evaluate encounters circular JSON (#983)
3ecd98d - fix(Page.select): synthesized events should bubble
44cdf85 - chore(doc): fix a link (#977)
4e55867 - chore(doc): fix nits after JSHandles PR (#976)
3214bb7 - chore(doc): fix implicit link to JSHandle
0af0d7d - feat(Input): Add keyboard methods to elementHandle (#801)
0d0f9b7 - feat(JSHandles): introduce JSHandles (#943)
59bcc2e - chore(docs): fix console example in docs/api.md
d3976cb - test: add failing test for storing data in custom userDataDir
c225b93 - feat(Launcher): Allow environment variables definition when launching chromium (#912)
97e40e6 - feat(Frame): Add addStyleTag API to frame - fixes #892 (#947)
d87480b - Node6: Remove parentheses around the body of async arrow functions (#942)
dc4c878 - chore(doclint): fix doclint tests (#941)
017429e - chore(doclint): exclude constructors by default (#938)
6c9a994 - chore(doclint): support classes inheritance (#935)
8bcf550 - chore(doclint): add basic tests for documentation parsers (#934)
41fd4b5 - chore(doclint): move doclint tests expectations into test folders (#932)
f9640a5 - chore(doc): add a note about using ElementHandle instances (#925)
215b349 - fix(Page): remove event listeners to avoid MaxListenersExceededWarning
53531c9 - feat(page): Allow Page.goto's timeout to be 0 to disable timeout (#887)
bafd937 - chore(tests): fix a few typos in tests (#911)
a6cf823 - feat(Launcher): introduce appMode option
1c292e9 - chore(doc): fix browser.wsEndpoint() return value format (#898)
c46c41d - fix(Launcher): Launcher should handle chrome process errors (#863)
cb280c5 - fix(Launcher): Terminate chrome gracefully on Windows (#876)
f625502 - feat(Console): Introduce ConsoleMessage type (#909)
cfece34 - fix(Network): Do not attempt to normalize malformed URLs. (#875)
ec760ab - chore: update yarn lock (#889)
72161c4 - [roll] Roll chromium to r503964 (#878)
0164b7c - Added info on how to find the browserWSEndpoint (#780)
9b0a062 - [docs] clarify env variables usage with npmrc
2babcb0 - [feat] Support PUPPETEER_SKIP_CHROMIUM_DOWNLOAD in npmrc
45f2640 - [api] Introduce Page.select method (#779)
acdb588 - doc: fix a link (#856)
ccf8fb1 - readme: add try-puppeteer link (#849)
c2b3fe9 - Remove --...

Read more

v0.11.0

21 Sep 05:46
Compare
Choose a tag to compare

Big Changes

  • Chromium 63.0.3205.0 (r499413)

API changes

Changed:

Added:

Removed:

  • elementHandle.evaluate was removed: element handles could be passed as arguments into page.evaluate (9292a56)

Bug Fixes

  • #426 - Implement HTTP Authentication API
  • #527 - using --user-data-dir=profilepath corrupts settings and remove all extensions
  • #572 - Script evaluation throws sometimes with SyntaxError
  • #627 - Protocol error Invalid InterceptionId on cancelled requests
  • #648 - Proxy settings should be taken from npm config before environment variables
  • #713 - page.setExtraHTTPHeaders not working
  • #738 - Cant catch errors with .goto
  • #745 - Feature request: Run browser process as different user
  • #756 - [CI] travis doesn't run tests for node6
  • #770 - No argument is passed to waitForFunction/waitFor

Raw notes

611f51b - [doc] Fix thal link (#806)
aa58f25 - doc: add await to browser.close in usage examples (#797)
e2cad56 - page.waitFor should send ...args to page.waitForFunction (#775)
d562db3 - Assert that all extra HTTP header values are strings (#781)
86b05da - disable extensions and google translate by default (#774)
a20df0d - [Doc] add link to environment variable wiki page (#792)
166c909 - [tests] fix a few tests to avoid unhandled promise rejection (#778)
f398e69 - [api] Launcher: Close gracefully when a userDataDir is specified (#700)
d7e6736 - [api] add Puppeteer.executablePath() method (#771)
89e923d - Fix cookies test on windows (#772)
0108720 - Cleanup tests (#769)
9779085 - Add info about deploying puppeteer to Heroku (#762)
9292a56 - [api] Teach page.evaluate to accept element handles as parameters (#725)
69e707a - Build node6 before running tests for it (#757)
a71f287 - Fix evaluation in case of first "undefind" argument (#732)
e5c17ee - Carefully manage unhandled rejections for navigation (#741)
0db6165 - [api] Implement page.authenticate method (#729)
0bea42b - Do not leave dangling promises when sending messages over protocol (#742)
f11e09d - resources.md -> readme.md so it renders on /examples (#753)
568b7bd - Proposal: adding RESOURCES.md for examples (#743)
30541cc - block-images example: use reuters.com (#747)
c4a3d44 - Roll chromium to r499413 (#731)
d791583 - [tests] Skip flaky test (#730)
b8bb80a - support npm proxy configuration for the installation script (#692)
8d2a427 - Docker example (#721)
272fb4d - block-images example: switch from bbc to news.google.com (#708)
d2d951d - Better issue template (#712)
eb86253 - Issue template (#710)
e12ce80 - Output path as chromium gets successfully downloaded (#689)
51a507b - readme: add PUPPETEER_SKIP_CHROMIUM_DOWNLOAD note (#671)

v0.10.2

02 Sep 04:06
Compare
Choose a tag to compare

Big Changes

  • Chromium 62.0.3198.0 (r497674)

API changes

Changed:

Added:

Bug Fixes

  • #558 - apple.com page hanged when intercepting requests
  • #547 - Headers in Response/Request object are case sensitive
  • #509 - setExtraHTTPHeaders: support both object and Map as headers argument
  • #411 - Introduce --user-data-dir as part of launcher options
  • #423 - dragging
  • #594 - EventEmitter memory leak detected. 11 exit listeners added
  • #615 - instance.close() let zombie process
  • #647 - Errors suppressed when downloading chromium through the install script
  • #568 - Can't click mobile version UI (touch event only)
  • #569 - how to fire touch event in page.emulate(iPhone)

Raw notes

9d0ad79 - fail installation when puppeteer errors downloading chromium (#654)
64124df - [api] add touchScreen.tap (#639)
e95fb96 - Throw an error when Chromium download is failed (#619)
42fa3af - Remove promise jsdoc (#641)
62ececb - Implement page.$eval (#638)
bf66696 - correct license to be a valid SPDX license expression
a052cdb - Update package.json with Apache License 2.0 (#632)
ce01e84 - [doc] Clarify networkIdleInflight default in docs. (#630)
9d7929c - Add environment variable to skip download (#606)
3365562 - Add DEBUG=* debugging guide to readme (#622)
66676c0 - Kill child process group (#621)
223a106 - Drop deasync: this is a left-over from phantomShim (#607)
c9b0a6c - Fix launcher to not leak event listeners (#605)
11ce8b2 - Implement Request.resourceType getter (#590)
8f74cc8 - [api] Add "step" option to mouse.move method (#601)
77600c6 - Implement ElementHandle.attribute() method (#543)
74c53f3 - Roll chromium to r497674 (#588)
8f66f73 - Fix launcher in case of empty arguments (#582)
d5327e6 - [api] Allow a custom userDataDir to be specified (#555)
66912a7 - [api] use object instead of map for headers (#567)
39b9081 - Bump version to 0.10.2-alpha (#566)
59fc757 - [docs] a mistake in allowed values of page.evaluateMedia (#580)
f9abc8e - readme: move up note about Page.pdf working on headless only (#577)
da85b44 - [docs] Add CentOS troubleshooting notes (#579)
225e880 - doc: Clarify that examples need Node v8 (#559)
e921a1c - Fix Request Interception (#565)

v0.10.1

26 Aug 02:44
Compare
Choose a tag to compare

Bug Fixes:

  • #538 - This package is not compatible with nodejs 6.x, unlike the engines in package.json claims

Raw notes:

cd81944 - Test node6 on travis (#551)
bd5b4fe - Phantom shim mention (#552)
e8f8a1a - Kill PhantomShim. (#533)
2c4dfbf - Fix node6 support for Object.entries and URL object (#548)
4e3b6a1 - Example: add listen for custom event on page load (#529)
be4da58 - Bump tip-of-tree version to 0.10.1-alpha (#534)
751164c - Mark version 0.10.0

Release v0.10.0

25 Aug 01:23
Compare
Choose a tag to compare

Big changes

  • Node 6 support! (9212863)
  • Support proxies when Puppeteer downloads Chromium (a00ba6a)
  • Puppeteer now downloads and runs Chromium 62 (r496140)

API changes

Added:

Removed:

Bug Fixes

  • #53 - Add Cookies API
  • #316 - Support Node 6
  • #462 - Block scripts
  • #474 - Page.waitForSelector timeout issue with parallel page tests in a single browser instance
  • #448 - node install.js fails inside enterprise proxy
  • #384 - Re-implement $$ (querySelectorAll) using new ElementHandles
  • #363 - Program that runs a bundled version of chromium can not stop
  • #396 - Examples for .waitForSelector() fail
  • #406 - Page.html()
  • #312 - Add an option to generate PDF with the screen CSS media type
  • #344 - Screenshots are captured with a white background
  • #350 - Question: Control sound and audio
  • #301 - Print to PDF call not working as expected in example?

Upstream Changes

Raw notes

10b9dfe - Prepare to release (#532)
60ace82 - add 'use strict'; to examples (#530)
0791774 - Cookies (#314)
9212863 - Node 6 support (#484)
46115f9 - add missing backticks in README.md (#525)
3b44de4 - readme: add evaluate snippet (#524)
b8c3686 - [doc] elaborate on url parameter in page.goto. (#504)
4471969 - fix a typo in the api.md (#505)
a1414de - Implement page.setJavaScriptEnabled method
63e2b36 - [doc] Add reference to released API
a330c8e - Bump version to 0.9.1-alpha
1458a3b - fix typo in test.js (#490)
8fe2477 - Enable MutationObserver attributes (#499)
a756bc8 - Don't complain about Windows line endings on Windows (#496)
ac109db - Kill Chrome quickly on Windows (#488)
a00ba6a - Adding proxy support for ChromiumDownloader (#455)
151d512 - Implement page.$$ method (#463)
7e1f2f0 - readme: add console event debugging tip (#481)
a526e9f - Stricter eslint rules (#472)
ce08fc7 - Roll chromium to r496140 (#465)
11e3343 - Put chrome profiles into a temporary directory (#439)
1f9b4fb - Change let into const (#457)
5d6d3e0 - cleanup: Use ES6 default params (#447)
271fd09 - Launcher: add timeout to chrome launching (#434)
afd9012 - waitTask should survive cross-process navigation (#435)
c1731dd - Fail gracefully when chromium failed to download (#430)
598f439 - Add Page.content() method. Fixes #406. (#419)
6fcf3d9 - Fix grammar in troubleshooting.md
16e1499 - doc: fix typo (#431)
fcb8ab9 - Add troubleshooting.md (#428)
a5eca57 - Add proxy server example (#427)
281db8f - doc: change ambiguous phrase in api.md (#410)
292c7a2 - doc: remove mentions of removed Boxy mixin (#425)
6a35c97 - doc: fix descriptions of certain page methods (#424)
6581416 - doc: fix some nits in code examples from api.md (#407)
3b03fdd - example 'block images' - make extension check case insensitive (#401)
9ede314 - doc: fix some links in api.md (#400)
ab125f6 - doc: Fix return type in response.text()
e8b4288 - readme: fix missing word (#414)
caa6f81 - docs: note headless flag defaults to true (#332)
7796ca5 - examples: replace let with const (#403)
8c245ee - doc: fix code examples in CONTRIBUTING.md (#402)
970e9c4 - doc: fix copy-paste artefacts (#394)
f851501 - doc: remove a link to a deleted example (#392)
6289219 - README: Fix a typo (#385)
6cc2741 - Introduce page.emulateMedia method (#383)
8f43bef - Make prettier JS snippets (#377)
ae3fedf - readme: start of useful debugging tips (#352)
500b956 - #366 - tone of logo surface from light source (#369)
d71feb6 - Determine failed navigation based on Frame.unreachedURL (#365)
ae14c1e - Use randomized folder names for user profile directories (#364)
127f396 - Allow capturing transparent screenshots (#354)
1ca7849 - Mute audio in headless, closes #350 (#355)
b9c7c36 - Add Serializable type into the docs (#318)
16e190b - Indent the code in README.md (#319)
f3143a3 - Fix flaky test (#351)
5f0afd5 - Move uploadFiles onto ElementHandle (#348)
ad1b292 - install.js: refactor to template string (#340)
21aa0a2 - example 'block images' - fix typo and add other extensions (#334)
2655f20 - docs: fix link to ElementHandle (#345)
e7356bf - docs: fix typo in event: 'load' section (#325)
e5876c7 - corrected minor typos (#322)
7cef3d7 - Teach page.pdf to respect printBackground argument (#307)
a93377f - readme: migrate from travis-ci .com to .org (#297)
3cc5ba4 - update code example: setRequestInterceptionEnabled (#294)
da53218 - Fix doc on pdf method. Minor addition to PDF path option docs. (#292)