From f883bdd4c80d60ddd2ad63b6129b5ced92ad6f69 Mon Sep 17 00:00:00 2001 From: Ed Manlove Date: Sun, 23 Feb 2025 11:48:19 -0500 Subject: [PATCH 1/8] Removed verbose argument from robotstatuschecker --- atest/run.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/atest/run.py b/atest/run.py index 3e7960a15..d386ea7db 100755 --- a/atest/run.py +++ b/atest/run.py @@ -251,7 +251,7 @@ def process_output(browser): print("Verifying results...") options = [] output = os.path.join(RESULTS_DIR, "output.xml") - robotstatuschecker.process_output(output, verbose=False) + robotstatuschecker.process_output(output) options.extend([opt.format(browser=browser) for opt in REBOT_OPTIONS]) try: rebot_cli(options + [output]) From d1b21d309b4e43e40e53a482258435f042a2a8ee Mon Sep 17 00:00:00 2001 From: Ed Manlove Date: Sun, 23 Feb 2025 11:48:54 -0500 Subject: [PATCH 2/8] Relaxed click version requirement --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 616d9719e..502fafc26 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,4 +1,4 @@ selenium >= 4.3.0 robotframework >= 4.1.3 robotframework-pythonlibcore >= 4.4.1 -click >= 8.1.7 +click >= 8.0 From fbd15da49b60e5b1e17cadadfc787c503205b782 Mon Sep 17 00:00:00 2001 From: Ed Manlove Date: Sun, 23 Feb 2025 11:51:07 -0500 Subject: [PATCH 3/8] Updated older RETURN syntax to newer one --- atest/acceptance/locators/custom.robot | 2 +- atest/acceptance/resource.robot | 2 +- src/SeleniumLibrary/__init__.py | 2 +- .../PluginDocumentation.test_many_plugins.approved.txt | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/atest/acceptance/locators/custom.robot b/atest/acceptance/locators/custom.robot index 56841038f..af1b87fdf 100644 --- a/atest/acceptance/locators/custom.robot +++ b/atest/acceptance/locators/custom.robot @@ -55,4 +55,4 @@ Teardown Custom Locator Custom Locator Strategy [Arguments] ${browser} ${locator} ${tag} ${constraints} ${element}= Execute Javascript return window.document.getElementById('${locator}') || []; - [Return] ${element} + RETURN ${element} diff --git a/atest/acceptance/resource.robot b/atest/acceptance/resource.robot index 7b429d0ff..b965d3611 100644 --- a/atest/acceptance/resource.robot +++ b/atest/acceptance/resource.robot @@ -24,7 +24,7 @@ Open Browser To Start Page Without Testing Default Options ... desired_capabilities=${DESIRED_CAPABILITIES} alias=${alias} ${orig speed} = Set Selenium Speed ${SPEED} ${orig timeout} = Set Selenium Timeout 10 seconds - [Return] ${orig speed} 5 seconds + RETURN ${orig speed} 5 seconds Cannot Be Executed In IE [Documentation] Cannot Be Executed In IE diff --git a/src/SeleniumLibrary/__init__.py b/src/SeleniumLibrary/__init__.py index 1228fb94e..5290a567a 100644 --- a/src/SeleniumLibrary/__init__.py +++ b/src/SeleniumLibrary/__init__.py @@ -238,7 +238,7 @@ class SeleniumLibrary(DynamicCore): | Custom Locator Strategy | [Arguments] | ${browser} | ${locator} | ${tag} | ${constraints} | | | ${element}= | Execute Javascript | return window.document.getElementById('${locator}'); | - | | [Return] | ${element} | + | | RETURN | ${element} | This keyword is a reimplementation of the basic functionality of the ``id`` locator where ``${browser}`` is a reference to a WebDriver diff --git a/utest/test/api/approved_files/PluginDocumentation.test_many_plugins.approved.txt b/utest/test/api/approved_files/PluginDocumentation.test_many_plugins.approved.txt index 447445852..1a204d3bb 100644 --- a/utest/test/api/approved_files/PluginDocumentation.test_many_plugins.approved.txt +++ b/utest/test/api/approved_files/PluginDocumentation.test_many_plugins.approved.txt @@ -177,7 +177,7 @@ a WebElement that should be acted on: | Custom Locator Strategy | [Arguments] | ${browser} | ${locator} | ${tag} | ${constraints} | | | ${element}= | Execute Javascript | return window.document.getElementById('${locator}'); | -| | [Return] | ${element} | +| | RETURN | ${element} | This keyword is a reimplementation of the basic functionality of the ``id`` locator where ``${browser}`` is a reference to a WebDriver From 33bd5efa1aeb60f0ca6cf9a7bff93f75d4a41511 Mon Sep 17 00:00:00 2001 From: Ed Manlove Date: Sun, 23 Feb 2025 13:54:52 -0500 Subject: [PATCH 4/8] Quick update to upload-artifacts v4 --- .github/workflows/CI.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index dea36b146..41fa78502 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -87,8 +87,9 @@ jobs: # sudo chmod u+x ./selenium-server-standalone.jar # xvfb-run --auto-servernum python atest/run.py --zip headlesschrome --grid True - - uses: actions/upload-artifact@v3 + - uses: actions/upload-artifact@v4 if: failure() with: name: SeleniumLibrary Test results path: atest/zip_results + overwrite: true \ No newline at end of file From a6874407f8d3a11025d4800e1c979b29341267a6 Mon Sep 17 00:00:00 2001 From: Ed Manlove Date: Wed, 26 Feb 2025 19:37:35 -0500 Subject: [PATCH 5/8] Release notes for 6.7.1 --- docs/SeleniumLibrary-6.7.1.rst | 72 ++++++++++++++++++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 docs/SeleniumLibrary-6.7.1.rst diff --git a/docs/SeleniumLibrary-6.7.1.rst b/docs/SeleniumLibrary-6.7.1.rst new file mode 100644 index 000000000..31c557f0a --- /dev/null +++ b/docs/SeleniumLibrary-6.7.1.rst @@ -0,0 +1,72 @@ +===================== +SeleniumLibrary 6.7.1 +===================== + + +.. default-role:: code + + +SeleniumLibrary_ is a web testing library for `Robot Framework`_ that utilizes +the Selenium_ tool internally. SeleniumLibrary 6.7.1 is a new release with +one minor change - downgrade the requirements on the click dependency. + +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.7.1 + +to install exactly this version. Alternatively you can download the source +distribution from PyPI_ and install it manually. + +SeleniumLibrary 6.7.1 was released on Wednesday February 26, 2025. SeleniumLibrary supports +Python 3.8 through 3.13, Selenium 4.24.0 through 4.27.1 and +Robot Framework 6.1.1 and 7.1.1. + +.. _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.7.1 + + +.. contents:: + :depth: 2 + :local: + +Changes +======= + +- Downgrade the requirement on click to `click>=8.0`. (`#1932`_) + +Acknowledgements +================ + +I want to thank Oliver Boehmer for raising up this issue and Pekka Klärck and Tatu Aalto for +consultation and review. (`#1932`_) + +Full list of fixes and enhancements +=================================== + +.. list-table:: + :header-rows: 1 + + * - ID + - Type + - Priority + - Summary + * - `#1932`_ + - --- + - medium + - Downgrade requirements on click to `click>=8.0` + +Altogether 1 issue. View on the `issue tracker `__. + +.. _#1932: https://github.com/robotframework/SeleniumLibrary/issues/1932 From 7af16cec8b78d77b623df06942e46716d580e4bd Mon Sep 17 00:00:00 2001 From: Ed Manlove Date: Wed, 26 Feb 2025 19:38:11 -0500 Subject: [PATCH 6/8] Updated version to 6.7.1 --- src/SeleniumLibrary/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/SeleniumLibrary/__init__.py b/src/SeleniumLibrary/__init__.py index 5290a567a..0187df611 100644 --- a/src/SeleniumLibrary/__init__.py +++ b/src/SeleniumLibrary/__init__.py @@ -55,7 +55,7 @@ from SeleniumLibrary.utils import LibraryListener, is_truthy, _convert_timeout, _convert_delay -__version__ = "6.7.0" +__version__ = "6.7.1" class SeleniumLibrary(DynamicCore): From bbb50d51b407597ea33bca2118e1ef7b93a5fe34 Mon Sep 17 00:00:00 2001 From: Ed Manlove Date: Wed, 26 Feb 2025 19:39:30 -0500 Subject: [PATCH 7/8] Generated docs for version 6.7.1 --- docs/SeleniumLibrary.html | 2187 +++++++------------------------------ 1 file changed, 367 insertions(+), 1820 deletions(-) diff --git a/docs/SeleniumLibrary.html b/docs/SeleniumLibrary.html index 2bd5eac76..4d6abc3b6 100644 --- a/docs/SeleniumLibrary.html +++ b/docs/SeleniumLibrary.html @@ -7,1194 +7,11 @@ - - - - - - - - - - + - - - + +

Opening library documentation failed

  • Verify that you have JavaScript enabled in your browser.
  • -
  • Make sure you are using a modern enough browser. If using Internet Explorer, version 11 is required.
  • -
  • Check are there messages in your browser's JavaScript error log. Please report the problem if you suspect you have encountered a bug.
  • +
  • + Make sure you are using a modern enough browser. If using + Internet Explorer, version 11 is required. +
  • +
  • + Check are there messages in your browser's + JavaScript error log. Please report the problem if you suspect + you have encountered a bug. +
- - - + + + + +
+ - + + + + + + - + - - - + + - + + - - - - - + {{#if usages.length}} +
+

{{t "usages"}}

+
    + {{#each usages}} +
  • {{this}}
  • + {{/each}} +
+
+ {{/if}} + + + + + From 15ce0966638cb3a2e7e22fa4cc7fd129030252d8 Mon Sep 17 00:00:00 2001 From: Corey Goldberg <1113081+cgoldberg@users.noreply.github.com> Date: Fri, 23 May 2025 10:50:47 -0400 Subject: [PATCH 8/8] Update README.rst 'Browser drivers' section --- README.rst | 37 ++++--------------------------------- 1 file changed, 4 insertions(+), 33 deletions(-) diff --git a/README.rst b/README.rst index efd83b3c4..1f4346024 100644 --- a/README.rst +++ b/README.rst @@ -44,8 +44,7 @@ The recommended installation method is using pip_:: pip install --upgrade robotframework-seleniumlibrary Running this command installs also the latest Selenium and Robot Framework -versions, but you still need to install `browser drivers`_ separately. -The ``--upgrade`` option can be omitted when installing the library for the +versions. The ``--upgrade`` option can be omitted when installing the library for the first time. It is possible to install directly from the GitHub_ repository. To install @@ -64,39 +63,11 @@ using ``pip`` see `its own documentation `__. Browser drivers --------------- -After installing the library, you still need to install browser and -operating system specific browser drivers for all those browsers you -want to use in tests. These are the exact same drivers you need to use with -Selenium also when not using SeleniumLibrary. More information about -drivers can be found from `Selenium documentation`__. - -The general approach to install a browser driver is downloading a right -driver, such as ``chromedriver`` for Chrome, and placing it into -a directory that is in PATH__. Drivers for different browsers -can be found via Selenium documentation or by using your favorite -search engine with a search term like ``selenium chrome browser driver``. -New browser driver versions are released to support features in -new browsers, fix bug, or otherwise, and you need to keep an eye on them -to know when to update drivers you use. - -Alternatively, you can use a tool called WebdriverManager__ which can -find the latest version or when required, any version of appropriate -webdrivers for you and then download and link/copy it into right -location. Tool can run on all major operating systems and supports -downloading of Chrome, Firefox, Opera & Edge webdrivers. - -Here's an example: - -.. code:: bash - - pip install webdrivermanager - webdrivermanager firefox chrome --linkpath /usr/local/bin - - +Browsers and drivers are installed and managed automatically by `Selenium Manager`__. +For more information, see the `Selenium documentation`__. +__ https://www.selenium.dev/documentation/selenium_manager __ https://seleniumhq.github.io/selenium/docs/api/py/index.html#drivers -__ https://en.wikipedia.org/wiki/PATH_(variable) -__ https://github.com/omenia/webdrivermanager Usage -----