Skip to content

v0.22.0

Compare
Choose a tag to compare
@AutomatedTester AutomatedTester released this 15 Sep 23:49
· 32 commits to master since this release

This release marks an important milestone on the path towards
a stable release of geckodriver. Large portions of geckodriver
and the [webdriver] library it is based on has been refactored to
accommodate using serde for JSON serialization.

We have also made great strides to improving WebDriver conformance,
to the extent that geckodriver is now almost entirely conforming
to the standard.

Added

  • Support for WebDriver web element-, web frame-, and web window
    identifiers from Firefox.

  • Added support for the non-configurable setWindowRect capability
    from WebDriver.

    This capability informs whether the attached browser supports
    manipulating the window dimensions and position.

  • A new extension capability moz:geckodriverVersion is returned
    upon session creation.

Changed

  • All JSON serialization and deserialisation has moved from
    rustc_serialize to serde.

  • The HTTP status codes used for script timeout and timeout
    errors has changed from Request Timeout (408) to Internal Server
    Error (500) in order to not break HTTP/1.1 Keep-Alive support,
    as HTTP clients interpret the old status code to mean they should
    duplicate the request.

  • The HTTP/1.1 Keep-Alive timeout for persistent connections has
    been increased to 90 seconds.

  • An invalid session ID error is now returned when there is no
    active session.

  • An invalid argument error is now returned when Add Cookie
    is given invalid parameters.

  • The handshake when geckodriver connects to Marionette has been
    hardened by killing the Firefox process if it fails.

  • The handshake read timeout has been reduced to 10 seconds instead
    of waiting forever.

  • The HTTP server geckodriver uses, hyper, has been upgraded to
    version 0.12, thanks to Bastien Orivel.

  • geckodriver version number is no longer logged on startup, as
    the log level is not configured until a session is created.

    The version number is available through --version, and now
    also through a new moz:geckodriverVersion field in the matched
    capabilities.

  • The webdriver library has been updated to version 0.37.0.

Fixed