All Versions
30
Latest Version
0.9
Avg Release Cycle
167 days
Latest Release
873 days ago

Changelog History
Page 1

  • v0.9 Changes

    June 04, 2019

    ๐Ÿ’ฅ Breaking API changes

    • ๐Ÿ”„ Changed the type of the cookExpiry field of Cookie from Maybe Integer to Maybe Double. This fixes parsing issues with some Selenium server implementations
    • ๐Ÿ”„ Changed elemPos and elemSize to return Float pairs instead of Int pairs. This fixes parsing issues with some Selemium server implementations.
    • โœ‚ Removed the Element argument from the sendRawKeys function. This argument is not used in modern Selenium versions.

    ๐Ÿ†• New API features

    • โž• Added a LogDebug constructor to the LogLevel type.
    • โž• Added ffAccpetInsecureCerts capability for Firefox geckodriver.
    • ๐Ÿ‘ป The constructor for ExpectFailed is now exported so that it can be caught properly by exception handlers
    • โž• Added GHC callstack support. BadJSON exceptions are now caught and rethrown with error calls to improve stack traces.

    ๐Ÿ›  W3C standard compatibility fixes

    • ๐Ÿ›  Fixed ToJSON Element instance so that it accepts both old OSS and new W3C element format (fixes compatibility issue with Selenium 3+ versions)
    • ๐Ÿ”„ Changed the maximize API call to use POST instead of GET

    ๐Ÿ›  Other Selenium compatibility fixes

    • ๐Ÿ›  Fixed an error with some versions of chromedriver when using closeWindow
  • v0.9.0.1

    June 10, 2019
  • v0.8.5 Changes

    April 19, 2017
    • โž• Added support for experimental Chrome options that are not part of the API
    • โž• Added a Phantomjs constructor for the Browser type
    • ๐Ÿ”„ Changed the type of StackFrame line numbers from Word to Int to avoid parse errors in newer Aeson versions (sometimes the server returns negative line numbers)
    • ๐Ÿ›  Fixed support for http-client > 0.5
  • v0.8.4 Changes

    September 30, 2016
    • โž• Added a new Test.WebDriver.Common.Keys module with named constants for use with sendKeys
    • ๐Ÿ“š Updated old URLs in documentation
    • ๐Ÿ‘ Introduced support for http-client 5.0
  • v0.8.3 Changes

    May 25, 2016
    • โœ‚ Removed most upper bounds on dependencies in our cabal file to avoid stackage version madness.
  • v0.8.2 Changes

    March 17, 2016
    • โž• Added a saveScreenshot command, for conenience, which writes the results of the screenshot command directly to a given file path.
    • โž• Added new WebDriver instance for ExceptT.
  • v0.8.1 Changes

    January 13, 2016
    • โœ… Previously internal convenience functions noReturn and ignoreReturn are now exported in Test.WebDriver.JSON
    • ๐Ÿš€ elemInfo is now deprecated due to it being phased out in the Marionette (Firefox) driver. It will likely be removed once Selenium 4 is released.
    • ๐Ÿ›  Fixed an issue causing PAC settings to not work.
  • v0.8 Changes

    Command changes

    • All commands that previously accepted a list parameter now accepts any instance of Foldable instead.

    ๐Ÿ”ง Overloadable configuration

    ๐Ÿ”ง It is now possible to define custom configuration types that can be used to initialize webdriver sessions.

    runSession now has the following type:

      runSession :: WebDriverConfig conf => conf -> WD a -> IO a
    

    And the typeclass to create new config types looks like this:

      -- |Class of types that can configure a WebDriver session.
      class WebDriverConfig c where
        -- |Produces a 'Capabilities' from the given configuration.
        mkCaps :: MonadBase IO m => c -> m Capabilities
    
        -- |Produces a 'WDSession' from the given configuration.
        mkSession :: MonadBase IO m => c -> m WDSession
    

    Of course you can still use WDConfig, as it is now an instance of WebDriverConfig.

    Reworked custom HTTP headers interface

    • ๐Ÿ‘Œ Support for custom request headers was added rather hastily, resulting in several functions having explicit RequestHeaders parameters. The interface has been reworked now so that custom request headers are stored inside WDSession and explicit RequestHeaders parameters have been removed.
    • ๐Ÿ”ง There's also now a distinction in configuration between wdAuthHeaders which are used only during initial session creation, and wdRequestHeaders, which are used with all other HTTP requests
    • Two new utility functions were added to make working with custom HTTP headers easier: withRequestHeaders and withAuthHeaders

    Clean-up and dependency changes

    • โœ‚ Removed a whole mess of unusued import and deprecation warnings when building with GHC 7.10
    • ๐Ÿ“œ We now enforce an attoparsec lower bound of 0.10 (there was no lower bound before)
    • ๐Ÿšš The unnecessary dependency on mtl is now removed.
    • โž• Added some monad transformer instances for WebDriver and WDSessionState that were mysteriously missing: strict WriterT, ReaderT, ListT
    • 0๏ธโƒฃ data-default dependency was changed to data-default-class
  • v0.8.0.4 Changes

    December 18, 2015
    • ๐Ÿ“œ Quick fix to parse "unsupported command" errors when using Marionette driver (Selenium + Marionette has nonstandard behavior when reporting that error type)
  • v0.8.0.3 Changes

    October 16, 2015
    • ๐Ÿ›  Fixed build errors for GHC < 7.10. webdriver now builds with GHC stable releases 7.4.2, 7.6.3, and 7.8.4
    • ๐Ÿ›  Fixed support for bytestring 0.9.*