- Update to Chrome 129.0.6668.58
- Change close code for websocket in web to 1000
- Update to Chrome 128.0.6613.137
- Update to Chrome 127.0.6533.119
- Update to Chrome 126.0.6478.126
- Update to Chrome 125.0.6422.60
- Fix navigation error
- Update to Chrome 124.0.6367.201
- Small bug fix
- Update to Chrome 123.0.6312.122
- Update to Chrome 122.0.6261.69
- Update to Chrome 121.0.6167.184
- Requires Dart 3.3.0
- Update to Chrome 119.0.6045.105
- Fix new lints from package:lints v3.0.0
- Update to Chrome 118.0.5993.70
- Update to Chrome 117.0.5938.92
- Update to Chrome 117
- Update to Chrome 116
- Require Dart 3.1.0
- Update to Chrome 115
- Update to Chrome 114.0.5735.133
- Widen constraint on dependency
package:http
- Update to Chrome 114
- Fix a bug on Windows when a relative directory was passed to
userDataDir
- Download "Chrome for Testing" instead of Chromium.
- Update to Chrome 113
- Cache the browser binaries by default in
.local-chrome
instead of.local-chromium
- Replace
int revision
parameter withString version
indownloadChrome
- Require minimum Dart
3.0.0
version.
- Update to Chromium 112
- Update to Chromium 111
- Check for null child node/Ids in Accessibility
- Add additional screenshot parameters
- Add
onDownloadProgress
callback ondownloadChrome
function
- Update to Chromium 110
- Fixed a bug:
page.waitForSelector('#selector', timeout: Duration.zero)
throws instantly instead of disabling timeout #210. - Internal refactor of target management to use auto discover feature of Chromium.
- Update to Chromium 109
- Adds a setter for the TargetInfo type
- Expose
Worker
class - Update the default arguments used to launch the chromium process
- Update to Chromium 108
- Upgrade
package:petitparser
to version 5.1.0 - Fix some lint rules
- Allow
puppeteer.connect
to be called on the Web platform (Dart code compiled to JavaScript).
- Update to Chromium 107
- Fix a bug during request interception. In
NetworkManager.continueRequest
original headers were discarded.
- Update to Chromium 105
- Update to Chromium 104
- Update to Chromium 103
- Use dart enhanced
enums
for all enumerations in the protocol
- Update to Chromium 102
- Update to Chromium 101
- Update to Chromium 100
- Resolving browser paths in windows
- Update to Chromium 99
- Add
BrowserPath
to have access to installed browser executable path.
var browser = await puppeteer.launch(executablePath: BrowserPath.chromeCanary);
- Fix bug to make current version work with chrome stable 96
- Update Chromium to version 97
- Update Chromium to version 93
- Make
defaultViewport
nullable in theconnect
method.
- Update Chromium to version 92
- Add drag-and-drop support
- Update Chromium to version 91
- Migrate to null-safety
- Update Chromium to version 90
- Update Chromium to version 87
- Update Chromium to version 87
- Fix
Browser.close()
error
- Update Chromium to version 86
- Update Chromium to version 85
- Update Chromium to version 84
- Add
Mouse.wheel
- Update Chromium to version 81
- Revert change to
uploadFile
implementation.
- Fix a bug with the new
uploadFile
implementation.
- Update to chromium 722234
- Expose
ClientError
class - (internal) Revert previous change in
jsHandle.uploadFile
- Add element.select and element.evaluate for consistency
- Prepare jsHandle.uploadFile for CDP Page.handleFileChooser removal
- Export class
Target
inpuppeteer.dart
- Update Chrome to version 79
- Add
Page.emulateTimezone
andPage.emulateMediaFeatures
- Deprecate
Page.emulateMedia
in profit ofPage.emulatedMediaType
- Fix a "Concurrent modification error" when navigating from a page with iframes.
- Fix a NullPointerException in NetworkManager
- (internal) Add more tests for headful mode
- (internal) Remove all implicit casts (preparation for nnbd)
- Fix bug in
puppeteer.connect()
- Add the same capabilities that pupeeteer Node.JS to
puppeteer.launch
for the management of the flags passed to Chromium. - Add
userDataDir
topuppeteer.launch
to allow managing the user data directory. By default, we now use a temporary data directory in the system temp folder. - Add more tests for launching and connecting to chromium
- Update Chromium version to 686378
- Introduce file chooser interception
- Update Chromium version to 674921
- Update Chromium version to 672088
- Update dependencies
- Fixes for Dart 2.4.0
- Fix regression in
page.tracing
- Update Chromium version to 669486
- Add an
IOSink
[output] parameter to [Page.pdf] as an alternative to returning the whole PDF bytes in memory.
- Update Chromium version to 666595
- Remove --disable-gpu flag passed to Chromium on Windows
- Update Chromium version to 662092
- Enable more Dart lints
- Add
page.ccessibility
feature - Update default Chromium version to 662092
- Add
puppeteer.connect
to connect to an existing Chromium instance - Add
slowMo
parameter forpuppeteer.launch
etpuppeteer.connect
to slow down communications with the browser. - Create
Worker
from service_worker and shared_worker. - Use a default viewport of 1280x1024 by default (allow to pass null to disable the default).
- Add a small "plugin" system
- Add the
StealthPlugin
to automatically applies various techniques to make detection of headless puppeteer harder. - Add
Page.clickAndWaitForNavigation
for convenience. - Add
Page.coverage
feature - Add
Page.metrics
feature - Add
Page.tracing
feature
- Rename classes
Frame
,Request
&Response
to match the puppeteer API - Add Worker class
- Add more test for the network API
- Add more unit tests and more documentation
- Fix bugs in request interception
- Add more unit tests and more documentation
- Update default chromium
- Add example for screencast
- Fix bugs
- Add some documentation and examples in the source code (still work in progress: not all classes are documented yet).
- Start a browser with
puppeteer.launch
instead ofBrowser.start
to align with the puppeteer API - Add a list of all the devices from chrome:
Accessible with:
page.emulate(puppeteer.devices.iPhone6)
- Add tests
- Add some unit tests from the Puppeteer/Node.JS project and fix some bugs.
- Initial port of Puppeteer in Dart