diff --git a/docs/SeleniumLibrary-6.1.0.rst b/docs/SeleniumLibrary-6.1.0.rst new file mode 100644 index 000000000..e25452c9c --- /dev/null +++ b/docs/SeleniumLibrary-6.1.0.rst @@ -0,0 +1,265 @@ +===================== +SeleniumLibrary 6.1.0 +===================== + + +.. default-role:: code + + +SeleniumLibrary_ is a web testing library for `Robot Framework`_ that utilizes +the Selenium_ tool internally. SeleniumLibrary 6.1.0 is a new release with +some enhancements around timeouts, broadening edge support and removing +deprecated Opera support, and bug fixes. + +If you have pip_ installed, just run + +:: + + pip install --upgrade robotframework-seleniumlibrary + +to install the latest available release or use + +:: + + pip install robotframework-seleniumlibrary==6.1.0 + +to install exactly this version. Alternatively you can download the source +distribution from PyPI_ and install it manually. + +SeleniumLibrary 6.1.0 was released on Wednesday May 3, 2023. SeleniumLibrary supports +Python 3.7+, Selenium 4.0+ and Robot Framework 4.1.3 or higher. + +.. _Robot Framework: http://robotframework.org +.. _SeleniumLibrary: https://github.com/robotframework/SeleniumLibrary +.. _Selenium: http://seleniumhq.org +.. _pip: http://pip-installer.org +.. _PyPI: https://pypi.python.org/pypi/robotframework-seleniumlibrary +.. _issue tracker: https://github.com/robotframework/SeleniumLibrary/issues?q=milestone%3Av6.1.0 + + +.. contents:: + :depth: 2 + :local: + +Most important enhancements +=========================== + +Set Page Load Timeout +--------------------- +The ability to set the page load timeout value was added (`#1535`_). This can be done on the Library import. +For example, one could set it to ten seconds, as in, + +.. sourcecode:: robotframework + + *** Setting *** + Library SeleniumLibrary page_load_timeout=10 seconds + +In addition there are two addition keywords (``Set Selenium Page Load Timeout`` and ``Get Selenium Page Load Timeout``) +which allow for changing the page load timeout within a script. See the keyword documentation for more information. + +Duration of mouse movements within Action Chains +------------------------------------------------ +Actions chains allow for building up a series of interactions including mouse movements. As to simulate an acutal +user moving the mouse a default duration (250ms) for pointer movements is set. This change (`#1768`_) allows for +the action chain duration to be modified. This can be done on the Library import, as in, + +.. sourcecode:: robotframework + + *** Setting *** + Library SeleniumLibrary action_chain_delay=100 milliseconds + +or with the setter keyword ``Set Action Chain Delay``. In addition one can get the current duretion with the +new keyword ``Get Action Chain Delay``. See the keyword documentation for more information. + +Timeout documentation updated +----------------------------- +The keyword documentation around timeouts was enhanced (`#1738`_) to clarify what the default timeout is +and that the default is used if ``None`` is specified. The changes are, as shown in **bold**, + + The default timeout these keywords use can be set globally either by using the Set Selenium Timeout + keyword or with the timeout argument when importing the library. **If no default timeout is set + globally, the default is 5 seconds. If None is specified for the timeout argument in the keywords, + the default is used.** See time format below for supported timeout syntax. + +Edge webdriver under Linux +-------------------------- +The executable path to the edge browser has been changed (`#1698`_) so as to support both Windows and +Linux/Unix/MacOS OSes. One should not notice any difference under Windows but under Linux/*nix one will +no longer get an error message saying the Windows executable is missing. + +Bug fixes +========= + +``None`` argument not correctly converted +----------------------------------------- +There were some issues when using ``None`` as a parameter under certain arguments within the +SeleniumLibrary(`#1733`_). This was due to the type hinting and argument conversions. The underlying +issue was resolved within the PythonLibCore to which we have upgraded to PythonLibCore v3.0.0. + +Deprecated features +=================== + +- Support for the Opera browser was removed from the underlying Selenium Python + bindings and thus we have removed the deprecated opera support. (`#1786`_) +- *Internal Only:* The library's acceptance tests removed a deprecated rebot + option. (`#1793`_) + +Upcoming Depreciation of Selenium2Library +========================================= + +**Please Take Note** - The SeleniumLibrary Team will be depreciating and removing the Selenium2Library +package in an upcoming release. When the underlying Selenium project transitioned, over six years ago, +from distinguishing between the "old" selenium (Selenium 1) and the "new" WebDriver Selenium 2 into +a numerically increasing versioning, this project decided to use the original SeleniumLibrary package +name. As a convenience the Selenium2Library package was made a wrapper around the SeleniumLibrary +package. Due to the issues around upgrading packages and the simple passage of time, it is time to +depreciate and remove the Selenium2Library package. + +*If you are still installing the Selenium2Libary package please transition over, as soon as possible, +to installing the SeleniumLibrary package instead.* + +Acknowledgements +================ + +- `@0xLeon `_ for suggesting and + `@robinmatz `_ for enhancing the page + load timeout; adding an API to set page load timeout. (`#1535`_) +- `@johnpp143 `_ for reporting the action chains timeout + as fixed and unchangeable. `@rasjani `_ for enhancing + the library import and adding keywords allowing for user to set the Action Chain's + duration. (`#1768`_) +- `Dave Martin `_ for enhancing the documentation + around Timeouts. (`#1738`_) +- `@tminakov `_ for pointing out the issue around the + None type and `Tato Aalto `_ and `Pekka Klärck `_ + for enhancing the core and PLC resolving an issue with types. (`#1733`_) +- `@remontees `_ for adding support for Edge webdriver under Linux. (`#1698`_) +- `Lassi Heikkinen `_ for assisting in removing deprecated + opera support (`#1786`_), for enhancing the acceptance tests (`#1788`_), for + fixing the tests on firefox (`#1808`_), and for removing the deprecated rebot option (`#1793`_). +- `@dotlambda `_ for pointing out that the + RemoteDriverServerException was removed from Selenium (`#1804`_) +- `@DetachHead `_ for fixing `StringIO` import as it was + removed in robot 5.0 (`#1753`_) + +In addition to the acknowledgements above I want to personally thank **Jani Mikkonen** as a co-maintainer of +the SeleniumLibrary and all the support he has given over the years. I also want to thank **Tatu Aalto** for +his continued support and guidance of and advice concerning the SeleniumLibrary. Despite "leaving" the +project, he still is actively helping me to which I again say Kiitos! As I talked about in our Keynote +talk at RoboCon 2023 I have been working on building up the SeleniumLibrary team. I want to acknowledge +the following people who have stepped up and have been starting to take a larger development and +leadership role with the SeleniumLibrary, + +**Lassi Heikkinen, Lisa Crispin, Yuri Verweij, and Robin Matz** + +Their active participation has made this library significantly better and I appreciate their contributions +and participation. -- `Ed Manlove `_ + +Full list of fixes and enhancements +=================================== + +.. list-table:: + :header-rows: 1 + + * - ID + - Type + - Priority + - Summary + * - `#1733`_ + - bug + - high + - The Wait Until * keywords don't support a None value for the error parameter + * - `#1535`_ + - enhancement + - high + - Add API to set page load timeout + * - `#1698`_ + - enhancement + - high + - Update webdrivertools.py + * - `#1738`_ + - enhancement + - high + - Suggestion for clarifying documentation around Timeouts + * - `#1768`_ + - enhancement + - high + - Keywords which uses action chains are having a default 250ms timeout which cannot be overriden. + * - `#1786`_ + - --- + - high + - Remove deprecated opera support + * - `#1785`_ + - bug + - medium + - Review Page Should Contain documentation + * - `#1796`_ + - bug + - medium + - atest task loses python interpreter when running with virtualenv under Windows + * - `#1788`_ + - enhancement + - medium + - Acceptance tests: rebot option `--noncritical` is deprecated since RF 4 + * - `#1795`_ + - enhancement + - medium + - Microsoft edge webdriver + * - `#1808`_ + - enhancement + - medium + - Fix tests on firefox + * - `#1789`_ + - --- + - medium + - Review workaround for selenium3 bug tests + * - `#1804`_ + - --- + - medium + - RemoteDriverServerException was removed from Selenium + * - `#1794`_ + - bug + - low + - Documentation timing + * - `#1806`_ + - enhancement + - low + - Remove remote driver server exception + * - `#1807`_ + - enhancement + - low + - Rf v5 v6 + * - `#1815`_ + - enhancement + - low + - Updated `Test Get Cookie Keyword Logging` with Samesite attribute + * - `#1753`_ + - --- + - low + - fix `StringIO` import as it was removed in robot 5.0 + * - `#1793`_ + - --- + - low + - Remove deprecated rebot option + +Altogether 19 issues. View on the `issue tracker `__. + +.. _#1733: https://github.com/robotframework/SeleniumLibrary/issues/1733 +.. _#1535: https://github.com/robotframework/SeleniumLibrary/issues/1535 +.. _#1698: https://github.com/robotframework/SeleniumLibrary/issues/1698 +.. _#1738: https://github.com/robotframework/SeleniumLibrary/issues/1738 +.. _#1768: https://github.com/robotframework/SeleniumLibrary/issues/1768 +.. _#1786: https://github.com/robotframework/SeleniumLibrary/issues/1786 +.. _#1785: https://github.com/robotframework/SeleniumLibrary/issues/1785 +.. _#1796: https://github.com/robotframework/SeleniumLibrary/issues/1796 +.. _#1788: https://github.com/robotframework/SeleniumLibrary/issues/1788 +.. _#1795: https://github.com/robotframework/SeleniumLibrary/issues/1795 +.. _#1808: https://github.com/robotframework/SeleniumLibrary/issues/1808 +.. _#1789: https://github.com/robotframework/SeleniumLibrary/issues/1789 +.. _#1804: https://github.com/robotframework/SeleniumLibrary/issues/1804 +.. _#1794: https://github.com/robotframework/SeleniumLibrary/issues/1794 +.. _#1806: https://github.com/robotframework/SeleniumLibrary/issues/1806 +.. _#1807: https://github.com/robotframework/SeleniumLibrary/issues/1807 +.. _#1815: https://github.com/robotframework/SeleniumLibrary/issues/1815 +.. _#1753: https://github.com/robotframework/SeleniumLibrary/issues/1753 +.. _#1793: https://github.com/robotframework/SeleniumLibrary/issues/1793