Releases: mozilla/geckodriver
v0.19.1
Changed
-
Search suggestions in the location bar turned off as not to
trigger network connections -
Block addons incompatible with E10s
Fixed
-
Marionette stacktraces are now correctly propagated
-
Some error messages have been clarified
Removed
- Removed obsolete
socksUsername
andsocksPassword
proxy
configuration keys because neither were picked up or recognised
v0.19.0
Note that with geckodriver v0.19.0 the following versions are recommended:
- Firefox 55.0 (and greater)
- Selenium 3.5 (and greater)
Added
-
Added endpoint:
- POST
/session/{session id}/window/minimize
for the Minimize Window
command
- POST
-
Added preference
extensions.shield-recipe-client.api_url
to disable shield
studies which could unexpectedly change the behavior of Firefox -
Introduced the temporary, boolean capability
moz:webdriverClick
to enable
the WebDriver conforming behavior of the Element Click command. -
Added crashreporter environment variables to better control the browser
in case of crashes -
Added preference
dom.file.createInChild
set to true to allow file
object creation in content processes
Changed
-
Log all used application arguments and not only
-marionette
-
Early abort connection attempts to Marionette if the Firefox process
closed unexpectetly -
Removed deprecated
socksProxyVersion
in favor ofsocksVersion
-
Removed
ftpProxyPort
,httpProxyPort
,sslProxyPort
, and
socksProxyPort
because ports have to be set forftpProxy
,
httpProxy
,sslProxy
, andsocksProxy
using ":" -
The
proxyType
noproxy
has been replaced withdirect
in accordance
with recent WebDriver specification changes -
The
WindowRectParameters
have been updated to return signed 32-bit
integers in accordance with the CSS and WebDriver specifications, and
to be more liberal with the input types -
Mapped the
FullscreenWindow
to the correct Marionette command -
To make sure no browser process is left behind when the
NewSession
fails, the process is closed immediately now -
/moz/addon/install
command accepts anaddon
parameter, in lieu of
path
, containing an addon as a Base64 string (fixed by Jason Juang) -
webdriver crate upgraded to version 0.31.0
-
mozrunner crate upgraded to version 0.5.0
Removed
- Removed the following obsolete preferences for Firefox:
browser.safebrowsing.enabled
browser.safebrowsing.forbiddenURIs.enabled
marionette.defaultPrefs.port
marionette.logging
v0.18.0
Changed
RectResponse
permits returning floats forwidth
andheight
fields- New type
CookieResponse
for theGetNamedCookie
command returns a single cookie, as opposed to an array of a single cookie - To pick up a prepared profile from the filesystem, it is now possible to pass
["-profile", "/path/to/profile"]
in theargs
array onmoz:firefoxOptions
- geckodriver now recommends Firefox 53 and greater
- Version information (
--version
) contains the hash from from the commit used to build geckodriver - geckodriver version logged on startup
- webdriver crate upgraded to version 0.27.0
- mozrunner crate upgraded to version 0.4.1
Fixed
- The
SetTimeouts
command maps to the MarionettesetTimeouts
command, which makes geckodriver compatible with Firefox 56 and greater - Linux x86 (i686-unknown-linux-musl) builds are fixed
v0.17.0
Added
- Added endpoints:
- POST
/session/{session id}/window/fullscreen
to invoke the window manager-specificfull screen
operation - POST
/session/{session id}/moz/addon/install
to install an extension [Gecko only] - POST
/session/{session id}/moz/addon/uninstall
to uninstall an extension [Gecko only]
- POST
Changed
- Increasing the length of the
network.http.phishy-userpass-length
preference will cause Firefox to not prompt when navigating to a website with a username or password in the URL - Library dependencies upgraded to mozrunner 0.4 and mozprofile 0.3 to allow overriding of preferences via capabilities if those have been already set in the profile
- Library dependencies upgraded to mozversion 0.1.2 to only use the normalized path of the Firefox binary for version checks but not to actually start the browser, which broke several components in Firefox on Windows
Fixed
- The SetWindowRect command now returns the WindowRect when it is done
- Use ASCII versions of array symbols to properly display them in the Windows command prompt
- Use
SessionNotCreated
error instead ofUnknownError
if there is no current session
v0.16.1
Fixed
- Read Firefox version number from stdout when failing to look for the application .ini file (fixes Selenium #3884)
- Session is now ended when closing the last Firefox window (fixes #613)
v0.16.0
Note that geckodriver v0.16.0 is only compatible with Selenium 3.4 and greater.
Added
- Support for WebDriver-conforming New Session negotiation, with
desiredCapabilities
/requiredCapabilities
negotiation as fallback - Added two new endpoints:
- GET
/session/{session id}/window/rect
for Get Window Rect - POST
/session/{session id}/window/rect
for Set Window Rect
- GET
- Align errors with the WebDriver errors:
- Introduces new errors
ElementClickIntercepted
,ElementNotInteractable
,InvalidCoordinates
,NoSuchCookie
,UnableToCaptureScreen
, andUnknownCommand
- Removes
ElementNotVisible
andInvalidElementCoordinates
errors
- Introduces new errors
Removed
- Removed following list of unused endpoints:
- GET
/session/{session id}/alert_text
- POST
/session/{session id}/alert_text
- POST
/session/{session id}/accept_alert
- POST
/session/{session id}/dismiss_alert
- GET
/session/{session id}/window_handle
- DELETE
/session/{session id}/window_handle
- POST
/session/{session id}/execute_async
- POST
/session/{session id}/execute
- GET
Changed
SendKeysParameters
, which is used for the Element Send Keys and Send Alert Text commands, has been updated to take a stringtext
fieldCookieResponse
andCloseWindowResponse
fixed to be properly wrapped in avalue
field, like other responses- Allow negative numbers for
x
andy
fields inpointerMove
action - Disable Flash and the plugin container in Firefox by default, which should help mitigate the “Plugin Container for Firefox has stopped wroking” problems many users were reporting when deleting a session
- Preferences passed in a profile now take precedence over set of default preferences defined by geckodriver (fixed by @DrMarcII)
- The exceptions are the
marionette.port
andmarionette.log.level
preferences and their fallbacks, which are set unconditionally and cannot be overriden
- The exceptions are the
- Remove default preference that disables unsafe CPOW checks
- WebDriver library updated to 0.25.2
Fixed
- Fix for the “corrupt deflate stream” exception that sometimes occured when trying to write an empty profile by @kirhgoph
- Recognise
sslProxy
andsslProxyPort
entries in the proxy configuration object (fixed by @juangj) - Fix “
httpProxyPort
was not an integer” error (fixed by @juangj) - Fix broken unmarshaling of Get Timeouts response format from Firefox 52 and earlier (fixed by @juangj)
- Allow preferences in
moz:firefoxOptions
to be both positive- and negative integers (fixed by @juangj) - Allow IPv6 hostnames in the proxy configuration object
- i686-unknown-linux-musl (Linux 32-bit) build fixed
- Log messages from other Rust modules are now ignored
- Improved log messages to the HTTPD
v0.15.0
IMPORTANT: If you use geckodriver with Selenium, you must upgrade to Selenium 3.3 since this release aligns HTTP responses with the WebDriver standard.
Added
- Added routing and parsing for the Get Timeouts command
Changed
- All HTTP responses are now wrapped in
{value: …}
objects per the WebDriver specification; this may likely require you to update your client library - Pointer move action’s
element
key changed toorigin
, which lets pointer actions originate within the context of the viewport, the pointer’s current position, or from an element - Now uses about:blank as the new tab document; this was previously disabled due to bug 1333736 in Marionette
- WebDriver libary updated to 0.23.0
Fixed
- Aligned the data structure accepted by the Set Timeouts command with the WebDriver specification
v0.14.0
Changed
- Firefox process is now terminated and session ended when the last window is closed
- WebDriver library updated to version 0.20.0
Fixed
- Stacktraces are now included when the error originates from within the Rust stack
- HTTPD now returns correct response headers for
Content-Type
andCache-Control
thanks to @jugglinmike
v0.13.0
0.13.0 (2017-01-06)
Changed
- When navigating to a document with an insecure- or otherwise invalid TLS certificate, an insecure certificate error will be returned
- On macOS, deducing Firefox’ location on the system will look for firefox-bin on the system path (
PATH
environmental variable) before looking in the applications folder - Window position coordinates are allowed to be negative numbers, to cater for maximised window positioning on Windows
- WebDriver library updated to version 0.18.0
Fixed
- Check for single-character key codes in action sequences now counts characters instead of bytes
v0.12.0
Added
- Added Take Element Screenshot command
- Added new Status command
- Added routing for the Get Timeouts command, but it is not yet implemented in Marionette, and will return an unsupported operation error until it is
- Implemented routing for new actions API, but it too is not yet fully implemented in Marionette
Changed
- Synced Firefox preferences with those used in Mozilla automation
- Default log level for debug builds of Firefox, which used to be
DEBUG
, changed toINFO
-level - WebDriver library dependency upgraded to 0.17.1
- Using session not created error when failing to start session
- geckodriver will exit with exit code 69 to indicate that the port is unavailable
Fixed
- Improved logging when starting Firefox
- Reverted to synchronous logging, which should address cases of inconsistent output when failing to bind to port
- Clarified in README that geckodriver is not supported on Windows XP
- Added documentation of supported capabilities to README
- Included capabilities example in README