2.33.0 (2013-05-26)
===================

Remote:
  * Support rotating devices, such as iPhone & iPad in simulator and Android browser in emulator
  * Support for interacting with touch screen devices, such as iPhone & iPad in simulator and Android browser in emulator
  * Improve error messages for invalid wire protocol responses 
Chrome:
  * Accept :service_log_path for Chrome. (#3475)
IE: 
  * IE >=9 versions triggerMouseEvent like other browsers (#2218).
Various:
  * Element#text ignores elements in <head>


2.32.1 (2013-04-11)
===================

Safari:
  * Fix typo when encoding the Safari server redirect URL (#5472)

2.32.0 (2013-04-09)
===================

Safari:
  * The Safari extension is now packaged with the gem and automatically installed (#5322)
  * Improved detection of the binary location on 64-bit windows (#5273)
Opera:
  * Allow passing :desired_capabailities (#5279)
Firefox:
  * This release supports versions 10esr, 17esr, 19, 20.
  * Improved SVG support
Other:
  * Allow #click_and_hold without target (#5410).
  * Remove assumptions about returned capabilities (for ios-driver)

2.31.0 (2013-03-02)
===================

Remote:
  * Expose session_id on the remote driver when used directly (#5240).
Firefox:
  * Native events in Firefox 19
Opera:
  * Treat UNSPECIFIED proxy type as a nil proxy (#5081).
Other:
  * Add ability to pass :desired_capabilities to all the Ruby drivers, not just for :remote.
    Direct arguments take presendence. (#5078, see also https://github.com/SeleniumHQ/selenium/pull/8, https://github.com/SeleniumHQ/selenium/pull/11)

2.30.0 (2013-02-20)
===================

Firefox:
  * Firefox 19 support (for synthesized events)
Remote:
  * Pass along firefox_binary correctly (#5152)
Safari:
  * Don't overwrite Driver#browser
Other
  * Alert#text should raise on closed alert.

2.29.0 (2013-01-21)
===================

Firefox:
  * Firefox 18 support (for native events).
IE:
  * New 'requireWindowFocus' desired capability.
  * IE view port calculation take scroll bars into account (#3602)
Safari:
  * Replace 'libwebsocket' with 'websocket' gem. This should ensure
    support with recent Safari.
Other:
  * Fix Cygwin issue in PortProber/Firefox::Bianry (#4963)

2.27.2 (2012-12-11)
===================

Firefox:
  * Fix for native events in v17 (packaging mistake)

2.27.1 (2012-12-07)
===================

Firefox:
  * Fix "g[b] is not an object" error when passing null to execute_script.

2.27.0 (2012-12-06)
===================

Firefox:
  * Support for Firefox 17.
IE:
  * Path to the server executable can be specified (S::W::IE.path=)
Other:
  * Added :phantomjs driver

2.26.0 (2012-11-02)
===================

Firefox:
  * Added support for native events for Firefox 15 and 16.
  * Modified FirefoxDriver to use atoms to switch between frames.
  * FIXED: 4309: 'Could not convert Native argument arg 0' error with Firefox.
  * FIXED: 4375: Executing javascript hangs Firefox.
  * FIXED: 4165: WebDriver fails on a machine with no IP address.
Safari:
  * Fixed SafariDriver to allow calling .quit() consecutively without error.
  * FIXED: 4676: Unable to fire javascript events into SVG's.
  * FIXED: 3969: SafariDriver should auto-dismiss alerts.
IE:
  * FIXED: 4535: Hover still does not work perfectly in IE.
  * FIXED: 4593: Alert.accept() Cancels the Resend Alert/Dialog Box.

2.25.0 (2012-07-19)
===================

* Respect no_proxy / NO_PROXY env vars (#4007).
* Improve error message if a configured proxy refuses the connection.
* Ignored exception can be configured on the Wait class.
* Add Selenium::WebDriver::Support::Color class.
* Ignore Errno::ENETUNREACH when trying to detect our local IP (#4165).
* Ignore Errno::EADDRNOTAVAIL in PortProber (#3987).
* Firefox:
  * Enumerate through client rects until finding one with non-zero dimensions when clicking.
  * Updated supported versions of Firefox to 17.
  * Allow windows to be resized from a frame (#3897).
  * Fix an issue where a call to submit could hang the driver.
* IE:
  * Ability to configure logging through the :log_file and :log_level options.
  * Increasing stability of file upload dialog handling (#3858)
* Better handling of overflow edge cases when determining element visibility.

2.24.0 (2012-06-19)
===================

* bot.dom.getVisibleText does not properly handle display:run-in or display:table (#1584).
* CSS selectors now support compound selectors.
* IE:
  * Failure to click on an element in the IE Driver will yield a more meaningful error.
  * Crash on IE8 when S_FALSE is returned from get_Document (#4064)
  * DLLs are no longer bundled with the gem, users must use the standalone server from now on.
* Firefox:
  * Support for Firefox 13
  * Ability to pass :proxy directly as Firefox option (no Profile needed).

2.22.2 (2012-06-05)
===================

* Improve method for determining the local IP (#3987).

2.22.1 (2012-06-01)
===================

* Fix for 1.8.7 behaviour of Socket.getaddrinfo.
* Automatically reap Firefox profile on exit, not just in #quit.

2.22.0 (2012-05-29)
===================

* Fix conflict with ActiveSupport's Object#load (#3819)
* IE:
  * Default to standalone server executable, fall back to bundled DLLs.
  * The 'nativeEvents' capabilitiy is exposed as :native_events in the Ruby client (mode still experimental).
* Firefox:
  * Native events for Firefox 12.
  * Native events retained for Firefox 3.x, 10 and 11.
  * Fix for typing in Firefox 12
  * Fix for typing on XHTML pages (#3647)
  * Fix for maximizing windows when switched to a frame (#3758)
  * Handle alerts from nested iframes (#3825)
* Remote:
  * Honor HTTP_PROXY env vars (#3838).
* Element#attribute returns nil if a boolean attribute is not present.
* NoSuchWindowError will be thrown if the currently selected window is closed and another command is sent.
* Safari:
  * support for frame switching, snapshot taking, execute script
  * message protocol changed, not backwards compatible with 2.21.
* Style attributes are no longer lower-cased by default (#1089).
* Make sure the Ruby client kills Firefox even when the RPC fails.
* Make sure the Ruby client checks all network interfaces when finding free ports.


2.21.2 (2012-04-18)
===================

* Check MultiJson.respond_to?, depend on ~> 1.0

2.21.1 (2012-04-16)
===================

* Set multi_json dependency to < 1.3 to avoid deprecation warnings.

2.21.0 (2012-04-11)
===================

* Add Selenium::WebDriver::Window#maximize (#3489)
* Safari:
  * New driver! See http://code.google.com/p/selenium/wiki/SafariDriver.
* Firefox:
  * Significant stability improvements.
  * Native events support for Firefox 11
  * Dropped native events support for Firefox 4-9
  * Window maximize implementation.
* IE:
  * Ignore invisible dialogs (#3360).
  * Window maximize implementation.
* Android:
  * Accept SSL certificates (#3504).

2.20.0 (2012-02-28)
===================

* Loosen the multi_json and ffi dependencies (#3446)
* Firefox:
  * Introduce a timeout for page loads. This needs to be used in
    conjunction with the unstable page load detection. Exposed as
    Timeouts#page_load=
* Scroll containing elements, not just windows (#3391).
* Element#{style => css_value}, with an alias for backwards compatibility.
* Atoms:
  * Submit a form when the enter button is pressed in its input
    element.
  * Add a "mouse pixel scroll" event to the atoms events module.
  * Adding a public "mouseOver" action and a little internal
    refactoring around the mouseOver functionality.
* Selenium::WebDriver::Wait: polling interval reduced from 0.5 to 0.2 seconds.

2.19.0 (2012-02-08)
===================

* RC client supports server-side WebDriver-backed Selenium.
* Touch APIs implemented in the Ruby client (Android only)
* Firefox:
  * Fix deserialization of user.js in Firefox::Profile
  * Native events implemented for Firefox 10.
  * Renamed the experimental "fast" page loaded strategy "unstable"
    and disable queuing of commands when it's enabled.
  * Disabled native events for Firefox 8 as it's deprecated by Mozilla.
  * Fix for exceptions thrown when an alert occurs during script execution.
* Chrome:
  * New download link for the server component:
    http://code.google.com/p/chromedriver/downloads/list

2.18.0 (2012-01-27)
===================

* Fix for getting value attribute of option elements. (#3169)
* Firefox and IE:
  * Raise UnhandledAlertError if an alert is present during an operation. The unhandled alert is also dismissed to mitigate repeat exceptions.
* Firefox:
  * Better handling of getText invocations on SVG elements.
  * Fix for Element#click in Firefox 4. (#3253)
  * Fixed bug when deserializing user.js in Firefox::Profile.
  * Default profile preferences now read from shared JSON blob.
* Android and iPhone:
  * Client support for the geolocation API (see Selenium::WebDriver::DriverExtensions::HasLocation)
  * Client support for the web storage API (see Selenium::WebDriver::DriverExtensions::HasWebStorage)
* iPhone:
  * Server now supports frame switching (for frames in the same domain).

2.17.0 (2012-01-16)
===================

* Firefox:
  * Fix excessive unwrapping when switching windows.
  * Set toolkit.telemetry.{enabled,rejected} in the default Firefox profile.
  * Support up to version 12 with synthesized events.
  * Fixed issues launching Firefox 9 due to modal dialog (#3154, #3144)
* Chrome:
  * Now accepts a :url option, pointing to an already running Chrome server.
  * Now accepts a :proxy option (i.e. Selenium::WebDriver::Proxy instance).
* iPhone:
  * iWebDriver will auto-play HTML5 video (#3152)
* Element#attribute("value") falls back to the text of option tags, if no value attribute is specified (#3169)

2.16.0 (2012-01-04)
===================

* Firefox:
  * Native events support for Firefox 9
  * Allow apps to use offline storage by default
  * Fix excessive unwrapping when executing mouseMove
  * Click in the middle, rather than the top-left of elements (#3034, #2700)
* IE:
  * Raise StaleElementReferenceError when interacting with elements outside the currently focused frame
  * Handle frames and iframes in showModalDialog windows
* Chrome:
  * Improve client handling of invalid error responses
* iPhone:
  * Updated to latest CocoaHTTPServer
* Remote:
  * Improve performance of Element#== by only making an RPC when necessary.
  * Disallow caching of GET requests
* Various:
  * Raise ArgumentError instead of UnsupportedOperationError on invalid modifier key
  * Improve docs for Server, ActionBuilder and Window
  * Update to latest Sizzle (used for :css selectors in older browsers)

2.15.0 (2011-12-08)
===================

* Firefox:
  * Now supports up to Firefox 11 (for syntesized events)
  * Implicit waits now change how long we wait for alerts. This
    functionality will change in 2.16
  * Fix scrolling issue (#2700)
* IE:
  * Fix issue with getWindowHandles() and showModalDialog() (#1828)
  * Add support for the window sizing and positioning API
* Make Platform.bitsize use the correct constant from FFI
* WebDriver internals:
  * Atoms code contribution from Google
  * Closure updated


2.14.0 (2011-11-29)
===================

* Add Selenium::WebDriver::Support::Select class to ease working with select lists.
* Add Capabilities.ipad and Capabilities.iphone (#2895)
* Replace json_pure dependency with multi_json. (#2901)
* Don't leave sockets hanging in SYN_SENT state while polling.
* Allow selecting option elements even if the enclosing select has zero opacity.
* Exception renames (old names aliased and will still work in rescues):
  * ObsoleteElementError      -> StaleElementReferenceError
  * UnhandledError            -> UnknownError
  * UnexpectedJavascriptError -> JavascriptError
  * NoAlertOpenError          -> NoAlertPresentError
  * ElementNotDisplayedError  -> ElementNotVisibleError
* Firefox:
  * Fixed issue with scrolling on small viewports with native events.
  * Fix CSS selector support in Firefox 3.0
* IE:
  * Implement the window control API

2.13.0 (2011-11-18)
===================

* Firefox:
  * Recovering from null window references in the Firefox driver (#1438)

2.12.2 (2011-11-13)
===================

* Firefox
  * Fix issue where Firefox 8 would throw permission errors after document.domain was modified (#2863).
  * Force window to the foreground on launch (see https://bugzilla.mozilla.org/show_bug.cgi?id=566671)

2.12.1 (2011-11-11)
===================

* Fix regression when typing into contenteditable elements.

2.12.0 (2011-11-10)
===================

* Loosened the ffi dependency now that Windows support is back (#2755).
* Fix shutdown issues when using net-http-persistent against remote servers.
* Added beta window control API (see Selenium::WebDriver::Options#window).
* Firefox
  * Support for Firefox 8.
  * Better reporting of page size when attempting to move out of bounds.
  * Beta implementation of window control.

2.11.0
======

(release skipped since it included only server-side changes)

2.10.0 (2011-10-27)
===================

* Improve native keyboard emulation on Windows.
* Allow commas in CSS selectors (#2301)
* Firefox:
  * Fix intermittent error when finding elements by XPath (#2099)
  * Fix detection of maximum page size (#2700)
  * Avoid extension selection dialog (extensions.autoDisableScopes)
  * Fix invalid wire responses from the synthetic mouse (#2695)
  * Don't scroll unnecessarily (#1771).
* IE:
  * Improve handling of #clear on disabled or readonly elements.

2.9.1 (2011-10-24)
==================

* Workaround for invalid error responses (#2695).

2.9.0 (2011-10-21)
==================

* Support file uploads to the remote server (see Selenium::WebDriver::DriverExtensions::UploadsFiles)
* New exception: Selenium::WebDriver::Error::MoveTargetOutOfBoundsError
* Implemented Chrome::Profile#add_extension
* Better respect for preformatted text in Element#text
* Reduced scrolling during tests for IE and Firefox.
* Firefox:
  * Support for experimental page load detection.
* IE:
  * Better detection of where to click on links (#2675).
  * Improve handling of modal dialogs (showModalDialog).

2.8.0 (2011-10-06)
==================

* Firefox
  - Avoid telemetry prompt on Firefox 7
  - Allow parallel execution with native events on Linux (#1326)
  - Added native events support for Firefox 7 on Linux/Windows
  - Improve search for libX11 for native events on Linux (#384)
  - Fix double click with native events
* Chrome
  - Fail fast if the chromedriver server is not executable.
* IE
  - Fix find_element bug (#2563)


2.7.0 (2011-09-23)
==================

* Firefox
  - no longer types in the URL bar (#2487)
  - fixed native events click() issue when element is out of view
  - double click + get no longer hangs firefox (#2456)
  - make sure escaped backslashes are properly escaped when serializing a Firefox profile (#2485)
* IE
  - fix event firing issue (#2516)
* Opera
  - don't start the remote service if the driver is passed bad arguments

2.6.0 (2011-09-13)
==================

* Rescue and retry on Errno::EADDRINUSE to work around ephemeral ports issue on Windows.
* Use correct default URL for the Android driver.
* Profile zipping now follows symlinks (#2416).
* Firefox
  - Disable malware check
  - Various #click improvements
  - Don't scroll if element is already in view
* IE:
  - improve scrolling to elements with 'overflow: scroll'
  - properly trigger jQuery change events (#2207)
  - improve handling of nested modal dialogs
* Opera:
  - capabilities exposed as options to Selenium::WebDriver.for
* Various iPhone driver fixes (e.g. #1396)

2.5.0 (2011-08-23)
==================

* IE: support for double click and fix for clicks close to edge of window.
* Fix for clicking links that overflow into multiple lines (#1020).
* Correct initial cursor position when typing into text fields with Firefox 6.
* Native events support for Firefox 6 on Windows and Linux.
* Fix bug in Android::Bridge when no :http_client option was passed.
* Set chrome.detach to tell chromedriver to leave browser running on exit.

2.4.0 (2011-08-11)
==================

* Firefox 6 support.
* Raise in switch_to.alert when no alert is present.
* Improved handling of non-breaking spaces for Element#text.

2.3.2 (2011-08-01)
==================

* Re-releasing since 2.3.1 was a buggy build.

2.3.1 (2011-08-01)
==================

* Fix bug where Firefox would hang if Firefox::Profile#log_file= was set.

2.3.0 (2011-08-01)
==================

* Add Selenium::WebDriver::Chrome::Profile
* Better detection of clickable areas in Firefox.
* Merge of Google-contributed code into the underlying Atoms.
* IE click issue fixed (#1650)
* No longer raise in Element#inspect if the element is obsolete.


2.2.0 (2011-07-26)
==================

* Add ability to listen for WebDriver events
* Fix Android/iPhone bridges to work similar to others (https://github.com/jnicklas/capybara/issues/425)
* Various atoms fixes
* Element equality now works properly with the remote server (#251).

2.1.0 (2011-07-18)
==================

* Various improvments to the IE driver (#2049, #1870)
* Atoms fixes (#1776, #1972).
* Synthetic mouse clicks do not propagate errors in onmouseover.

2.0.1 (2011-07-11)
==================

* Make sure at_exit hooks aren't inherited by child processes.

2.0.0 (2011-07-08)
==================

* Remove deprecated methods Element#{toggle,select,drag_and_drop_*,value}.
* Add ability to pass :verbose, :native_events to the Chrome driver.
* Synthetic mouse implementation for Firefox - improves drag and drop support platforms without native events.
* Added Selenium::WebDriver::Opera (requires the remote server).
* Fix for locating Firefox on 64-bit Windows when missing from the registry.
* Fix native events on Firefox 4, 5.

0.2.2 (2011-06-22)
==================

* Deprecate Element#{toggle,select,drag_and_drop_*}
* Chrome.path= now sets the path to Chrome, Chrome.driver_path= the path to the chromedriver server.
* Fix argument names in Mouse#move_to and Mouse#move_by.
* Support Firefox 5
* Chrome and Firefox drivers now includes the HasInputDevices module.
* Selenium::Rake::ServerTask now works with Rake 0.9.

0.2.1 (2011-06-01)
==================

* Allow passing custom command line switches to Chrome (requires today's release of the Chrome server)
* Avoid mutating arguments to find_element (issue #1273).
* Avoid conflicts when SUT modifies Array.prototype
* Allow setting arbitrary capabilities by adding Capabilities#[]=
* The Chrome driver is extended with TakesScreenshot.
* IE driver detects bad protected mode settings.
* Firefox driver no longer considers opacity when determining visibility.
* Fix for ActionBuilder#move_by.
* Treat Errno::EBADF as an indication that we failed to grab the socket lock (issue #1611).
* Ensure Firefox launches don't hang on some Ruby versions (by improving Selenium::WebDriver::SocketPoller).
* Various internal driver improvements.

0.2.0 (2011-04-22)
==================

* Update Ruby bindings to use the rewritten Chrome driver (see http://code.google.com/p/selenium/wiki/ChromeDriver).
* Add deprecation warning for WebDriver::Element#value (use Element#attribute("value") instead).
* Change the default timeout for Wait instances to 5 seconds.
* Fix bug where locators would fail if Object.prototype had been modified.
* Various IE fixes
  - Issues: #698, #1444
  - Improved handling of showModalDialog()
  - Full-size screenshots
* Allow users to override the dom.max_script_run_time preference in Firefox.
* Removed DesiredCapabilities.safari, which was never supported anyway.
* Add DesiredCapabilities.opera, which will be supported in the Remote server if OperaDriver is on the classpath.
* Print warnings for deprecated constants in the RC client:
  - Selenium::SeleniumDriver => Selenium::Client::Driver
  - Selenium::CommandError   => Selenium::Client::CommandError
* Removed top-level constants:
  - SeleniumHelper (available as Selenium::Client::SeleniumHelper)
  - SeleniumCommandError (available as Selenium::Client::CommandError)

0.1.4 (2011-03-21)
==================

* Support for Firefox 4.
* Search PATH for Firefox / Chrome on OS X as well.
* Bump dependencies for ffi and childprocess (#1356).
* Find module renamed to SearchContext
* Deprecated methods Driver#hover and Options#{speed,speed=} removed.
* Improve IE driver stability, IE9 support
* Added basic ActionBuilder and HasInputDevices#action. Not applicable for all browsers.
* Added Driver#execute_async_script
* Some WebDriver exception classes have been renamed to match its Java equivalents:
    ElementNotEnabledError   -> InvalidElementStateError
    UnknownScriptResultError -> XpathLookupError
* Fix bug where Element#disabled? would alternate between true/false (r11438)

0.1.3 (2011-02-14)
==================

* Several crashing bugs fixed in the IE driver.
* Alert API available through the remote driver.
* Driver#refresh fixed in the IE driver.
* Fixed paths for IE DLLs on Cygwin.
* Screenshot support in the IE and Remote drivers.
* Fix #1152 by avoiding IPv6 loopback.
* Added Mouse and Keyboard classes, accessible as Driver#{mouse,keyboard}. Considered experimental (IE + HtmlUnit only at the moment).
* Automation atoms now used extensively in the IE driver.
* Firefox::Bridge is now easier to extend (i.e. with a custom launcher).
* Add S::W::Remote::Http::Persistent (currently only usable with the remote server).
* IE driver passes along options like the other remote drivers, enabling user-specified HTTP clients.
* :firefox_profile added to Remote::Capabilities, enabling passing a profile to remote Firefoxes.
* IE driver now supports launching multiple instances of the browser.
* Remove some Ruby warnings (uninitialized ivars, URI.escape).


0.1.2 (2010-12-22)
==================

* Changed frame switching behaviour (http://groups.google.com/group/selenium-developers/browse_thread/thread/8dc7938c35bb3968)
* IE driver rewrite landed.
* Initial support for alerts/prompts (in Firefox).
* Cygwin support.
* Driver#execute_script now properly wraps elements inside Hashes.
* Various fixes for Firefox 4.

0.1.1 (2010-11-29)
==================

* Fix for Chrome.path=
* Remote drivers always add Content-Length for POST requests (thanks joshuachisholm)
* Fix for JS execution bug in the IE driver
* Add ability to specify a proxy on the Http::Default client.
* The remote drivers' :http_client argument now take a configured instance.

0.1.0 (2010-11-11)
===================

* selenium-client code (Se1/RC client) is now included in the gem (require "selenium/client").
* Add Selenium::WebDriver::Proxy, used to configure proxies for Firefox::Profile and the remote driver.
* Tweaked Firefox profile preferences, improve logging, disabled crash reporter.
* Reap Firefox profiles on close, not just on exit.
* Add selenium/rake/server_task and selenium/server which wraps the Selenium server jar.
* Various Firefox driver improvements (GC race conditions ++).
* IE::Bridge#initialize now takes an options hash like the other bridges.
* Added basic iPhone and Android driver classes.
* Firefox driver now works on FreeBSD.


0.0.29 (2010-10-09)
===================

* Element#find_element with :xpath follows the XPath spec (i.e. results are not limited to the receiver's subtree).
* Element#attribute(attribute) now returns "false" instead of nil.
* Firefox::Profile instances can now be reused for multiple drivers.
* Redirect Firefox console logs to a file with Firefox::Profile.log_file=
* Added a simple Wait class, based on WebDriverWait in Java.
* Search PATH for Firefox executable on Windows also.
* Added Capabilities.android
* Fix saving of screenshots on Windows and Ruby 1.9 (using "wb" mode string)
* CSS selector support in the remote driver
* CSS selector support for IE (using querySelector when available, Sizzle elsewhere)
* CSS selector support for older versions of Firefox (through Sizzle)
* Cookie expiration dates are now handled correctly (#730)
* Make Driver#bridge private, since this seems to be a common cause of confusion.
* Add {Element,Remote::Capabilities}#as_json for Rails 3 (http://jonathanjulian.com/2010/04/rails-to_json-or-as_json/)
* User can configure path to exectuables with {Firefox,Chrome}.path = "/some/path"
* Added "chromium" as a possible name for the Chrome binary (#769)
* Correctly set the HTTP client timeout (#768)
* switch_to.window with block now handles exceptions and non-local returns.
* switch_to.window with block returns the result of the block.
* Extracted handling of child processes to a separate gem: http://github.com/jarib/childprocess


0.0.28 (2010-08-23)
===================

* Fix behaviour of Element#==, Element#eql? and Element#hash (#hash still has issues on IE / remote).
* Include remote server backtrace in raised errors (if available).
* Chrome: Untrusted certificate support.
* IE: Fix NoMethodError when getElementAttribute returns nil.
* Driver#[] shorthand can take a locator hash, not just an id string.

0.0.27 (2010-07-22)
===================

* Fixes for Element#attribute on IE / Firefox

0.0.26 (2010-07-19)
===================

* Work around Curb issue: http://github.com/taf2/curb/issues/issue/40

0.0.25 (2010-07-19)
===================

* Prevent Firefox from launching in offline mode (issue #587).
* Add ability to set Firefox' binary path through Selenium::WebDriver::Firefox::Binary.path=
* Add ability to install Firefox XPIs through Profile#add_extension.
* Better packaging/building of Firefox/Chrome extensions, which adds rubyzip as a dependency.
* Remote client supports HTTPS (issue #613 - thanks kkaempf).
* Fix error message for TimeOutError in the IE driver (issue #602)
* Add ability to use Chrome's default profile.
* Fix for frame behaviour in Chrome (issue #273).
* Standard gem directory structure (issue #475).

0.0.24 (2010-06-17)
==================

* Fix issues with quitting Firefox/Chrome on Windows + MRI.


0.0.23 (2010-06-15)
===================

* Improved the HTTP clients:
  - hopefully fix some occasional socket errors on Windows
  - rescue error on driver.close() with curb

0.0.22 (2010-06-11)
===================

* Bugfix: Workaround for http://github.com/taf2/curb/issues/issue/33 - curb would sometimes use DELETE for GET requests.
* Minor doc fix
* Add ability to set timeout for HTTP clients

0.0.21 (2010-06-11)
===================

* User can specify :http_client for the Firefox driver.
* Refactor HTTP client code
* Add Remote::Http::Curb as an alternative to the default (net/http) client.


0.0.20 (2010-06-03)
===================

* Fix bug where Firefox would hang on quit().

0.0.19 (2010-05-31)
===================

* Add a max redirect check to the remote driver
* Add Firefox::Profile#assume_untrusted_certificate_issuer=
* Add implicit waits (Selenium::WebDriver::Timeouts)
* at_exit hook to clean temporary profiles
* Fix for Errno::ECONNABORTED errors on Windows
* Fix issue where Firefox::Profile#secure_ssl= would have no effect
* Fix issue where locating elements by :css would fail in the Chrome driver.
* IE driver now works on 64-bit rubies.
