2016-06-23 22:55:06 +03:00
# Change log
All notable changes to this program is documented in this file.
2017-01-31 20:06:48 +03:00
## 0.14.0 (2017-01-31)
### 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` and `Cache-Control` thanks to @jugglinmike
2017-01-06 20:37:06 +03:00
## 0.13.0 (2017-01-06)
### Changed
- When navigating to a document with an insecure- or otherwise invalid TLS certificate, an [insecure certificate ](https://w3c.github.io/webdriver/webdriver-spec.html#dfn-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
2017-01-03 22:22:53 +03:00
## 0.12.0 (2017-01-03)
2016-12-19 18:00:26 +03:00
### Added
2017-01-03 22:28:36 +03:00
- Added [_Take Element Screenshot_ ](https://w3c.github.io/webdriver/webdriver-spec.html#take-element-screenshot ) command
- Added new [_Status_ ](https://w3c.github.io/webdriver/webdriver-spec.html#status ) command
- Added routing for the [_Get Timeouts_ ](https://w3c.github.io/webdriver/webdriver-spec.html#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 ](https://w3c.github.io/webdriver/webdriver-spec.html#actions ), but it too is not yet fully implemented in Marionette
2017-01-03 22:22:53 +03:00
### Changed
2017-01-03 22:28:36 +03:00
- [Synced Firefox preferences ](https://github.com/mozilla/geckodriver/commit/2bfdc3ec8151c427a6a75a6ba3ad203459540495 ) with those used in Mozilla automation
2017-01-03 22:22:53 +03:00
- Default log level for debug builds of Firefox, which used to be `DEBUG` , changed to `INFO` -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
2017-01-03 22:28:36 +03:00
- Added documentation of supported capabilities to [README ](https://github.com/mozilla/geckodriver/blob/master/README.md )
- Included capabilities example in [README ](https://github.com/mozilla/geckodriver/blob/master/README.md )
2016-12-19 18:00:26 +03:00
2016-10-10 14:43:21 +03:00
## 0.11.1 (2016-10-10)
### Fixed
- Version number in binary now reflects the release version.
2016-10-10 13:33:51 +03:00
## 0.11.0 (2016-10-10)
2016-08-05 21:55:43 +03:00
2016-09-06 13:03:03 +03:00
### Added
2016-10-10 13:33:00 +03:00
- Introduced continous integration builds for Linux- and Windows 32-bit binaries
- Added commands for setting- and getting the window position
2016-09-06 13:03:03 +03:00
- Added new extension commands for finding an element’ s anonymous children and querying its attributes; accessible through the `/session/{sessionId}/moz/xbl/{elementId}/anonymous_children` to return all anonymous children and `/session/{sessionId}/moz/xbl/{elementId}/anonymous_by_attribute` to return an anonymous element by a name and attribute query
2016-10-05 18:52:07 +03:00
- Introduced a `moz:firefoxOptions` capability to customise a Firefox session:
2016-09-07 19:41:51 +03:00
- The `binary` , `args` , and `profile` entries on this dictionary is equivalent to the old `firefox_binary` , `firefox_args` , and `firefox_profile` capabilities, which have now all been removed
- The `log` capability takes a dictionary such as `{log: "trace"}` to enable trace level verbosity in Gecko
- The `prefs` capability lets you define Firefox preferences through capabilities
2016-09-22 01:41:26 +03:00
- Re-introduced the `--webdriver-port` argument as a hidden alias to `--port`
2016-09-06 13:03:03 +03:00
2016-08-05 21:55:43 +03:00
### Changed
2016-10-05 18:52:07 +03:00
- `firefox_binary` , `firefox_args` , and `firefox_profile` capabilities removed in favour of the `moz:firefoxOptions` dictionary detailed above and in the README
2016-08-05 21:55:43 +03:00
- Removed `--no-e10s` flag, and geckodriver will from now rely on the Firefox default multiprocessing settings (override using preferences)
2016-08-06 17:56:57 +03:00
- Disable pop-up blocker in the default profile by @juangj
2016-09-06 13:03:03 +03:00
- Changed Rust compiler version to 1.12 (beta) temporarily because of [trouble linking Musl binaries ](https://github.com/rust-lang/rust/issues/34978 )
2016-09-30 16:59:35 +03:00
- Replaced _env_logger_ logging facility with the _slog_ package, causing the `RUST_LOG` environment variable to no longer have any affect
2016-10-10 13:33:00 +03:00
- Updated the WebDriver Rust library to version 0.15.
2016-09-06 13:03:03 +03:00
### Fixed
- Corrected link to repository in Cargo metadata
2016-10-10 13:33:00 +03:00
- Verbosity shorthand flag `-v[v]` now works again, following the replacement of the argument parsing library in the previous release
- When the HTTPD fails to start, errors are propagated to the user
- Disabled the additional welcome URL (`startup.homepage_welcome_url.additional`) so that officially branded Firefox builds do not start with two open tabs in fresh profiles
- Disabled homepage override URL redirection on milestone upgrades, which means a tab with an upgrade notice is not displayed when launching a new Firefox version
2016-08-05 21:55:43 +03:00
2016-08-03 01:40:31 +03:00
## 0.10.0 (2016-08-02)
2016-07-07 20:15:23 +03:00
### Changed
2016-08-03 17:34:20 +03:00
- Use multi-process Firefox (e10s) by default, added flag `--no-e10s` to disable it and removed `--e10s` flag
2016-07-07 20:15:23 +03:00
- Disable autofilling of forms by default by @mythsunwind
2016-08-03 17:34:20 +03:00
- Replace _argparse_ with _clap_ for arguments parsing
2016-07-07 20:15:23 +03:00
### Fixed
- Attempt to deploy a single file from Travis when making a release
2016-08-03 17:34:20 +03:00
- Grammar fix in README
2016-07-07 20:15:23 +03:00
2016-06-24 13:43:32 +03:00
2016-07-07 20:13:52 +03:00
## 0.9.0 (2016-06-30)
2016-06-24 13:43:32 +03:00
2016-06-23 22:55:06 +03:00
### Added
2016-07-07 20:13:52 +03:00
- Add ability to use `firefox_binary` capability to define location of Firefox to use
- Automatically detect the default Firefox path if one is not given
2016-06-23 22:55:06 +03:00
- Cross-compile to Windows and ARMv7 (HF) in CI
- Add Musl C library-backed static binaries in CI
- Add `-v` , `-vv` , and `--log LEVEL` flags to increase Gecko verbosity
- Add Get Element Property endpoint
- Add new `--version` flag showing copying information and a link to the repository
2016-06-24 13:43:32 +03:00
2016-06-23 22:55:06 +03:00
### Changed
2016-07-07 20:13:52 +03:00
- Now connects to a Marionette on a random port by default
2016-06-23 22:55:06 +03:00
- Update webdriver-rust library dependency
2016-07-07 20:13:52 +03:00
- Migrated to use Travis to deploy new releases
- Reduced amount of logging
- Introduced a changelog (this)
2016-06-24 13:43:32 +03:00
2016-06-23 22:55:06 +03:00
## 0.8.0 (2016-06-07)
2016-06-24 13:43:32 +03:00
2016-06-23 22:55:06 +03:00
### Added
- Allow specifying array of arguments to the Firefox binary through the `firefox_args` capability
- Pass parameters with New Session command
2016-06-24 13:43:32 +03:00
2016-06-23 22:55:06 +03:00
### Changed
- Change product name to _geckodriver_
- Make README more exhaustive
- Quit Firefox when deleting a session
- Update webdriver-rust library
- Update dependencies
2016-06-24 13:43:32 +03:00
2016-06-23 22:55:06 +03:00
### Fixed
- Fix tests
- FIx typo in error message for parsing errors
2016-06-24 13:43:32 +03:00
2016-06-23 22:55:06 +03:00
## 0.7.1 (2016-04-27)
2016-06-24 13:43:32 +03:00
2016-06-23 22:55:06 +03:00
### Added
- Add command line flag for using e10s enabeld Firefox by @martionsideofthemoon
- Allow providing custom profiels
2016-06-24 13:43:32 +03:00
2016-06-23 22:55:06 +03:00
### Changed
- Allow binding to an IPv6 address by @juangj
- By default, connect to host-agnostic localhost by @juangj
- Make `GeckoContextParameters` public
- Update dependencies
2016-06-24 13:43:32 +03:00
2016-06-23 22:55:06 +03:00
### Fixed
- Squash rustc 1.6 warnings by using `std::thread::sleep(dur: Duration)`
2016-06-24 13:43:32 +03:00
2016-06-23 22:55:06 +03:00
## 0.6.2 (2016-01-20)
2016-06-24 13:43:32 +03:00
2016-06-23 22:55:06 +03:00
### Added
- Add LICENSE file from @joshbruning
- Schedule builds in CI on pushes and pull requests
2016-06-24 13:43:32 +03:00
2016-06-23 22:55:06 +03:00
### Changed
- Enable CPOWs in Marionette
2016-06-24 13:43:32 +03:00
2016-06-23 22:55:06 +03:00
## 0.6.0 (2016-01-12)
2017-01-03 22:22:53 +03:00
### Added
2016-06-23 22:55:06 +03:00
- Add Get Page Source endpoint
2016-06-24 13:43:32 +03:00
2016-06-23 22:55:06 +03:00
### Changed
- Handle arrays being sent from Marionette
- Correct build steps in README
- Update what properties are read from errors sent by Marionette
- Update dependencies
2016-06-24 13:43:32 +03:00
2016-06-23 22:55:06 +03:00
## 0.5.0 (2015-12-10)
2016-06-24 13:43:32 +03:00
2016-06-23 22:55:06 +03:00
### Changed
- Update argparse dependency to use Cargo
- Update to the latest version of the Marionette wire protocol
- Update to latest webdriver-rust library
- Update dependencies
2016-06-24 13:43:32 +03:00
2016-06-23 22:55:06 +03:00
## 0.4.2 (2015-10-02)
2016-06-24 13:43:32 +03:00
2016-06-23 22:55:06 +03:00
### Changed
- Skip compiling optional items in hyper
2016-06-24 13:43:32 +03:00
2016-06-23 22:55:06 +03:00
## 0.4.1 (2015-10-02)
2016-06-24 13:43:32 +03:00
2016-06-23 22:55:06 +03:00
### Changed
- Update webdriver-rust library
- Update dependencies
2016-06-24 13:43:32 +03:00
2016-06-23 22:55:06 +03:00
## 0.4.0 (2015-09-28)
2016-06-24 13:43:32 +03:00
2016-06-23 22:55:06 +03:00
### Added
- Add command extensions for switching between content- and chrome contexts
- Add more documentation from @vladikoff
2016-06-24 13:43:32 +03:00
2016-06-23 22:55:06 +03:00
### Changed
- Update Cargo.lock with new dependencies for building
- Update for protocol updates that flatten commands
- Update to new protocol error handling
- Update for Marionette protocol version 3 changes
- Strip any leading and trailing `{}` from the `sessionId` Marionette returns
- Update dependencies
2016-06-24 13:43:32 +03:00
2016-06-23 22:55:06 +03:00
### Fixed
- Fix `GetCSSValue` message to send correct key `propertyName`
- Fix example in documentation from @vladikoff
2016-06-24 13:43:32 +03:00
2016-06-23 22:55:06 +03:00
## 0.3.0 (2015-08-17)
2016-06-24 13:43:32 +03:00
2016-06-23 22:55:06 +03:00
### Added
- Add support for finding elements in subtrees
2016-06-24 13:43:32 +03:00
2016-06-23 22:55:06 +03:00
## 0.2.0 (2015-05-20)
2016-06-24 13:43:32 +03:00
2016-06-23 22:55:06 +03:00
### Added
- Extra debug messages
- Add ability to set WebDriver port
- Add support for getting the active element
- Add support for `GetCookies` and `DeleteCookie` /`DeleteCookies`
- Add preferences that switch off certain features not required for WebDriver tests
2016-06-24 13:43:32 +03:00
2016-06-23 22:55:06 +03:00
### Changed
- Make failing to communicate with Firefox a fatal error that closes the session
- Shut down session only when loosing connection
- Better handling of missing command line flags
- Poll for connection every 100ms rather than every 100s
- Switch to string-based error codes
- Switch webdriver-rust library dependency to be pulled from git
- Update dependencies
2016-06-24 13:43:32 +03:00
2016-06-23 22:55:06 +03:00
### Fixed
- Handle null id for switching to frame more correctly
2016-06-24 13:43:32 +03:00
2016-06-23 22:55:06 +03:00
## 0.1.0 (2015-04-09)
2016-06-24 13:43:32 +03:00
2016-06-23 22:55:06 +03:00
### Added
- Add proxy for converting WebDriver HTTP protocol to Marionette protocol
- Add endpoints for modal dialogue support
- Allow connecting to a running Firefox instance
- Add explicit Cargo.lock file
- Start Firefox when we get a New Session command
- Add flag parsing and address parsing
- Add basic error handling
2016-06-24 13:43:32 +03:00
2016-06-23 22:55:06 +03:00
### Changed
- Update for Rust beta
- Switch to new IO libraries
- Pin webdriver-rust commit so we can upgrade rustc versions independently
- Set preferences when starting Firefox
- Improve some error messages
- Re-enable environment variable based logging
2016-06-24 13:43:32 +03:00
2016-06-23 22:55:06 +03:00
### Fixed
- Fix Get Element Rect command to return floats instead of integers
- Fix passing of web elements to Switch To Frame command
- Fix serialisation of script commands
- Fix assorted bugs found by the Selenium test suite
- Fix conversion of Find Element/Find Elements responses from Marionette to WebDriver
- Fixed build by updating Cargo.lock with new dependencies for building
- Squash compile warnings