launch_chrome()
to throw an
error. (#175)The headless mode used by Chrome can now be selected with the
chromote.headless
option or CHROMOTE_HEADLESS
environment variable.
In Chrome v128, a new headless mode became the default. The new mode uses the same browser engine as the regular Chrome browser, whereas the old headless mode is built on a separate architecture. The old headless mode may be faster to launch and is still well-suited to many of the tasks for which chromote is used.
For now, to avoid disruption, chromote defaults to using the old
headless mode. In the future, chromote will follow Chrome and default to
"new"
headless mode. (And at some point, Chrome intends to
remove the old headless mode which is now offered as a
separate binary.) To test the new headless mode, use
options(chromote.headless = "new")
or
CHROMOTE_HEADLESS="new"
(in .Renviron
or via
Sys.setenv()
). (#172)
Chromote$is_active()
method now
reports if there is an active connection to the underlying chrome
instance, rather than whether or not that instance is alive (#94).Chromote
and ChromoteSession
gain print
methods to give you a snapshot of the most important values
(#140).
Chromote
gains a new is_alive()
method
equivalent to the old is_active()
method; i.e. it reports
on if there is an active chrome process running in the background
(#136).
ChromoteSession
now records the
targetId
. This eliminates one round-trip to the browser
when viewing or closing a session. You can now call the
$respawn()
method if a session terminates and you want to
reconnect to the same target (#94).
ChromoteSession$screenshot()
gains an
options
argument that accepts a list of additional options
to be passed to the Chrome Devtools Protocol’s Page.captureScreenshot
method (#129).
ChromoteSession$screenshot()
will now infer the
image format from the filename
extension. Alternatively,
you can specify the format
in the list passed to
options
(#130).
--disable-gpu
is no longer included in the default
Chrome arguments, except on windows where empirically it appears to be
necessary (otherwise GHA check runs never terminate) (#142).
Fixed #109: An error would occur when a Chromote
object’s $close()
method was called. (#110)
Fixed #99: When the $view()
method was called,
recent versions of Chrome would display
"Debugging connection was closed. Reason: WebSocket disconnected"
.
(#101)
Fixed #89, #91: find_chrome()
now checks more
possible binary names for Chrome or Chromium on Linux and Mac. (thanks
@brianmsm and @rossellhayes,
#117)
Fixed #22: Added a new chromote.timeout
global
option that can be used to set the timeout (in seconds) for establishing
connections with the Chrome session. (#120)