Release notes

Latest versions


28.6.1 - 04 Jul 2024

  • Library RPA.Robocorp.Vault (#1199): Proper error message if caused by SSL truststore patching bug.

28.6.0 - 17 May 2024

  • Library RPA.Browser.Selenium (#1191):

    • Fix/workaround for Chromium browser all instances not closing after the run. Which affects methods open_available_browser and open_chrome_browser. The default behavior can be changed with new parameter sandbox=True.

  • Library RPA.Excel.Application (#1191):

    • Enhance find with new parameters search_type, start_after, and exact

    • Allow open_workbook to load workbooks from URLs

    • Improve all RPA.*.Application.quit_application methods to perform garbage collection before calling app.quit() to avoid problem with unreleased COM objects

    • Add rgb_to_excel_color(red, green, blue) method for get suitable color value for Range.Font.Color and Range.Interior.Color

28.5.1 - 05 Apr 2024

  • Relax exchangelib version requirements to allow 5.1.0 and above.

28.5.0 - 05 Apr 2024

  • Library RPA.Email.Exchange:

    • Fix problem with email subfolder selection (#1182).

    • Add keywords Delete message and Forward message (#1179).

04 Apr 2024

  • Package rpaframework-assistant 3.0.4 (#1178): Replaces flet with robocorp-flet.

    The flet package had some released versions removed from the PyPI package index (speficically versions we were depending on). This caused all new installations using rpaframework-assistant to fail. We have now replaced the dependency with robocorp-flet which is a fork of the original package.

03 Apr 2024

Security releases regarding dependency packages pillow, cryptography and aiohttp.

  • package rpaframework 28.4.2

  • package rpaframework-aws 5.3.3

  • package rpaframework-assistant 3.0.3

  • package rpaframework-google 9.0.1

  • package rpaframework-hubspot 1.0.1

  • package rpaframework-openai 1.3.2

  • package rpaframework-pdf 7.3.2

  • package rpaframework-recognition 5.2.4

  • package rpaframework-windows 7.5.1


The dialogs package has been deprecated since 07 Apr 2023 and will be removed from the repository during the next week as a maintenance chore.

28.4.1 - 19 Mar 2024

  • Library RPA.Excel.Application (#1160): Fix problem with Get Range using active worksheet.

28.4.0 - 14 Mar 2024

  • Library RPA.Word.Application (#1159):

    • Add keyword Select current paragraph for selecting the current paragraph.

    • Add keyword Select paragraphs for selecting previous/next paragraphs.

    • Add keyword Copy selection to clipboard for copying the selection to the clipboard.

  • Library RPA.Excel.Application (#1158):

    • Add keyword Remove hidden columns and rows from given range.

    • Add keyword Merge range for merging cells in a range.

    • Add keyword Unmerge range for unmerging cells in a range.

  • Library RPA.Cloud.Google (#1157, rpaframework-google 9.0.0):

    • Fix problem with method intellisense in Python development environments.

    • Add keyword Detect Tables for detecting table-like structures in spreadsheet’s sheets.

    • Add keyword Get Sheet Formulas for getting formulas from a sheet.

    • Add keyword To A1 notation for converting column number to A1 notation.

28.3.0 - 22 Feb 2024

  • Library RPA.Excel.Application (#1152): Add keyword Write data to range for writing data to range(s) in a spreadsheet. This will be significantly faster than using Write to cells keyword for large data sets.

  • Library RPA.Word.Application (#1152):

    • Add keywords starting with Move_ for positioning cursor position in a document.

    • Add keyword Find text for finding text in a document.

    • Add keyword Paste from clipboard for pasting text from clipboard to a current cursor position.

    • Add keyword Get current line to get text from the current line.

    • Add keyword Get number of lines to get number of lines in a current document.

    • Refactor keyword Write text to take cursor positioning into consideration.

28.2.0 - 02 Feb 2024

  • Library RPA.Excel.Application (#1149):

    • Add new keyword Create Pivot Field for creating pivot fields for the pivot table.

    • Add new keyword Create Pivot Table for creating pivot tables in a spreadsheet.

    • Add new keyword Create Table for creating a table in a spreadsheet.

    • Add new keyword Find for finding a value in a range.

    • Add new keyword Get Pivot Tables for getting pivot tables in a spreadsheet.

    • Add new keyword Get Range for getting a range in a spreadsheet.

    • Add new keyword List Tables for listing tables in a spreadsheet.

  • For all RPA.*.Application libraries (#1149): Add new utility keyword for Robot Framework syntax Set Object Property

  • Security dependency fix given the bump of cryptography package to version 42.0.2. (#1149)

17 Jan 2024

  • Library RPA.Cloud.Google (#1145, rpaframework-google 8.2.0):

    • All init_ keywords will return initialized service instance.

    • Library level documentation refactoring. Authentication related examples are now in their own markdown file.

28.1.0 - 12 Jan 2024

  • Library RPA.Outlook.Application (#1144): Add reply_to and check_names parameters for Send Email.

28.0.0 - 18 Dec 2023

  • Library RPA.Browser.Selenium (#1139): Keyword Open Available Browser won’t anymore try to initialize webdrivers for browsers that are not installed in the system.

  • Library RPA.Crypto (#1140): Fix AES256 return types for keywords Generate Key and Decrypt String (from bytes to string).

  • Library RPA.Hubspot (#1106): Extract the RPA.Hubspot library out of the main package and into its own package rpaframework-hubspot. This is a breaking change, please update your conda.yaml accordingly.

27.7.0 - 21 Nov 2023

  • Update selenium package to the version 4.15.2.

  • Library RPA.Crypto (#1128): Add AES256 encryption method support.

  • Library RPA.Windows (#1134; rpaframework-windows 7.5.0): Add keywords Enable Process Listing and Disable Process Listing to enable/disable the listing of processes in the List Windows keyword.

27.6.0 - 15 Nov 2023

  • Library RPA.Robocorp.Vault (#1129): Improve error message when trying to connect to Control Room Vault without valid connection details.

  • Library RPA.SAP (#1130): Add keywords for pressing F1 or F4 on textfield and gridview elements. Thanks to Enrico Franzelli for the contribution!

  • Relax importlib-metadata version requirement to allow 4.13.0 and above.

27.5.3 - 10 Nov 2023

  • Library RPA.Outlook.Application (#1127): Fix how keyword Move Emails works. Read more from the pull request.

27.5.2 - 06 Nov 2023

  • Library RPA.Robocorp.Storage (robocorp-storage 1.0.2): Fix keyword List Assets for listing and returning correctly all the assets available in the cloud.

  • Library RPA.Assistant (#1122; rpaframework-assistant 3.0.2): Show files selected with Add File Input to make it easier for users to know it has been used. Also shows a warning if the image path for Add Image is not valid or if the file does not exist.


This version is compatible with robocorp 1.2.1.

27.5.1 - 01 Nov 2023

  • Library RPA.Browser.Selenium (#1123; rpaframework-core 11.2.3): Fix “There is no such driver by url” error with Chrome/Chromium versions above 114 attempting a chromedriver version resolution.

  • Library RPA.Robocorp.WorkItems: Fix dirty items logging and documentation nits.

27.5.0 - 24 Oct 2023

  • Add reply_to parameter for Send Message keyword for RPA.Email.Exchange and RPA.Email.ImapSmtp libraries.

27.4.2 - 13 Oct 2023

  • Application classes from RPA.*.Application libraries can be further inherited and extended without the need of adding a mandatory class-level docstring.

  • Library RPA.Robocorp.WorkItems won’t get easily affected anymore by any issue within the RPA.Email.ImapSmtp library.

  • Keyword Email To Document raises appropriately when the input value is of an unexpected type.

  • Takes into use the latest robocorp-storage 1.0.1, adding various fixes into the RPA.Robocorp.Storage library.

27.4.1 - 11 Oct 2023

  • Fix keyword Email To Document in library RPA.Email.ImapSmtp by restricting the python-docx package version to the maximum working one.


    This affected both this library and RPA.Robocorp.WorkItems due to a slipped sub-dependency breaking change. We strongly suggest to upgrade to the latest rpaframework in order to benefit from the fix, and if you’re not ready for it yet, pin in your conda.yaml python-docx==0.8.11 for the time being.

27.4.0 - 11 Oct 2023

  • Library RPA.JavaAccessBridge (#1060; java-access-bridge-wrapper 1.1.0):

    • New library import parameter max_depth which limits the maximum level the search will go when selecting a window and building the element tree. With disable_refresh one can disable any implicit global refresh when this is set to False.

    • Add new keyword Refresh Element for explicitly refreshing elements. (useful when callbacks are disabled and new data appears in the app)

    • Enhance Read Table with visible_only parameter which controls what kind of children (inner cells of the table) to return. The number of columns is correctly detected and the table automatically refreshes when callbacks are disabled and the global refresh is enabled.

    • Bugfixes in the following keywords: Click Element, Set Display Scale Factor, Get Element Actions.

27.3.1 - 10 Oct 2023

  • Casual dependencies upgrades and alignment.

06 Oct 2023

  • Security update for rpaframework-recognition (#1105 5.2.2): Bumps opencv-python-headless to version

27.3.0 - 29 Sep 2023

  • Library RPA.PDF (#1102; rpaframework-pdf 7.3.0):

    • Keywords HTML to PDF and Template HTML to PDF now support parameters margin and working_dir. Latter can be used to set directory for example image files referenced in the HTML content.

    • Keyword HTML to PDF can be given a single HTML string to create single page PDF or list of HTML strings to create multi-page PDF.

27 Sep 2023

  • Security update for rpaframework (27.2.1) and rpaframework-recognition (5.2.1): Bumps pillow to version 10.0.1.

27.2.0 - 26 Sep 2023

  • Add regular expression support for RPA.JavaAccessBridge library locators by updating java-access-bridge-wrapper package to the version 1.0.0.

  • Update selenium package to the version 4.13.0.

27.1.0 - 15 Sep 2023

  • Library RPA.Browser.Selenium (#1091; rpaframework-core 11.2.0):

    • Display the used webdriver and browser versions in the logs. (#1078)

    • Support profile usage with Edge in IE mode as well. (#1079)

    • Warn when maximizing the browser in headless mode and offer help. (#1075)

    • Reminder: You can disable webdriver-manager SSL checks during downloads by setting WDM_SSL_VERIFY=false in the environment.

14 Sep 2023

  • Library RPA.Cloud.Google (#1092; rpaframework-google 8.1.0): Add possibility to send HTML email by adding html parameter for Send Message keyword.

27.0.1 - 11 Sep 2023

  • Library RPA.Robocorp.Storage: Internal fix for the updated asset API upload URL and ability to set the RC_DISABLE_SSL env var in order to disable SSL checks when operating on assets.

27.0.0 - 07 Sep 2023

  • Enables system certificate store usage with truststore automatic injection. Minimum versions for this to happen are Python 3.10.12 and pip 23.2.1. (#1083)

  • Library RPA.Browser.Selenium (#1084; rpaframework-core 11.1.0):

    • Fixes webdriver caching when attempting previously downloaded executable reuse and latest release version retrieval optimization.

    • Use Robocorp controlled secure sources for querying and downloading webdrivers. Base URL to whitelist: – set RPA_EXTERNAL_WEBDRIVERS to any value if you want to default to the previously used external sources (#1080)

    • Ability to take into use a 64bit webdriver version for IE on a 64bit Windows system by setting RPA_ALLOW_64BIT_IE to any value. (by default the 32bit version is used as that’s the recommendation provided by Selenium)

26.1.1 - 07 Sep 2023

  • Library RPA.JavaAccessBridge (#1087): Fix problem with Select Window By Title keyword, which caused all but full title match to fail to select window successfully.

04 Sep 2023

  • Library RPA.Cloud.Google (#1082; rpaframework-google 8.0.0):

    • Add new keywords for Google Sheets

      • Copy spreadsheet

      • Create spreadsheet

      • Delete sheet

      • Generic spreadsheet batch update

      • Get all sheet values

      • Get spreadsheet basic information

      • Get spreadsheet details

      • Rename sheet

      • To column letter

    • Repurposed keywords

      • Copy sheet (now will copy a sheet within a spreadsheet)

      • Create sheet (now will create a sheet within a spreadsheet)


    Breaking changes in the Sheets keywords. All actions/properties related to a whole spreadsheet will use spreadsheet name and sheet will be used to indicate a single sheet in a spreadsheet. This is to be consistent with Google API naming.

24 Aug 2023

  • Library RPA.Cloud.Google (rpaframework-google 7.1.2):

    • Fix how OAuth token is updated into Control Room Vault.

  • Library RPA.Cloud.Google (#1057; rpaframework-google 7.1.1):

    • Fix mimetype handling in overall and for Excel documents in Send Message keyword. (#994)

    • Improve token handling in authentication flow.

26.1.0 - 24 Aug 2023

  • General update on all packages (#950):

    • All packages will be taking into use the latest robotframework version (6.1.1).

    • The minimum Python version is set to 3.8.

    • All new package versions are listed below.

      • rpaframework-assistant 3.0.0 (additional release note included below)

      • rpaframework-aws 5.3.0

      • rpaframework-google 7.1.0

      • rpaframework-openai 1.3.0

      • rpaframework-pdf 7.2.0

      • rpaframework-recognition 5.2.0

      • rpaframework-windows 7.4.0

    • Library RPA.Assistant (#1068; rpaframework-assistant 3.0.0):

      • Fix Add Date Input validation and return value as Date object instead of a string.

      • Add Python examples for every keyword.

26.0.3 - 24 Aug 2023

  • Library RPA.Browser.Selenium: Properly show webdriver errors in case the initial default is not found in PATH.

26.0.2 - 24 Aug 2023

  • Library RPA.Browser.Selenium (#1069): Use an already existing webdriver found in PATH if present. Only if such a default expected executable isn’t found, a newly cached one will be downloaded and used. (affects all supported browsers)

26.0.1 - 22 Aug 2023

26.0.0 - 18 Aug 2023

  • Library RPA.Browser.Selenium (#1058):

    • Fixed options passing with Firefox. (when a binary location is specified)

  • General improvements to RPA.*.Application libraries (#1055):

    • All: Better error handling (COM -> runtime), improved generic docs and troubleshooting guiding, fixed document closing (if was closed already) and app open/quit management, improved warnings and logging, file paths are tested for existence when operating on documents and raise errors in their absence.

    • Excel:

      • Removed deprecated parameter tabname from Add New Sheet. (use sheetname)

      • Save Excel As raises when there’s no workbook open. (use Open Workbook first)

    • Outlook:

      • Removed deprecated keywords: Send Message (use Send Email) and Wait For Message (use Wait For Email).


    Breaking changes in the Application libraries listed above.

25.0.1 - 11 Aug 2023

  • Library RPA.DocumentAI.Base64AI (#719):

    • Fix signature matching API.

    • Better documentation and errors.

  • Library RPA.PDF (#1051; rpaframework-pdf 7.1.6):

    • Make the reader parameter optional in the Save PDF keyword.

    • Fix PDF fields retrieval, value decoding and setting. (#872)

25.0.0 - 10 Aug 2023

  • Library RPA.Salesforce (#1003): Add keywords Auth with connected app and Execute APEX.

  • Library RPA.Email.ImapSmtp (#1054): Fix handling of To, Cc and Bcc fields in Send Message keyword.

24.1.2 - 27 Jul 2023

  • Library RPA.Robocorp.Storage (robocorp-storage 0.3.2): Fix bug when retrieving assets containing spaces in their names.

24.1.1 - 26 Jul 2023

  • Library RPA.Browser.Selenium (#1035; rpaframework-core 11.0.5): Fix chromedriver download issues with Chrome 115 and over.

24.1.0 - 25 Jul 2023

  • Library RPA.Browser.Selenium (#1021; rpaframework-core 11.0.4):

    • Correctly handles and downloads a valid existing webdriver version when there’s a need for one.

    • Ability to provide a default browser binary location with the RPA_SELENIUM_BINARY_LOCATION environment variable. (useful when the webdriver isn’t able to automatically detect and start your system browser)

    • Portal example taking these into use:

  • Library RPA.Browser.Playwright: Renders documentation for robotframework-browser==17.1.0.

24.0.0 - 18 Jul 2023

  • Library RPA.Robocorp.Storage: Takes into use robocorp-storage 0.3.1 and replaces the limited generic keywords with the ones below. (#1016)

    • Set Bytes Asset & Get Bytes Asset

    • Set Text Asset & Get Text Asset

    • Set JSON Asset & Get JSON Asset

    • Set File Asset & Get File Asset


    Breaking changes: Old Set Asset & Get Asset keywords are gone, please replace them with one of the pairs above.

23.5.2 - 29 Jun 2023

  • Library RPA.Robocorp.Storage: Add support for using Assets in VSCode

23.5.1 - 28 Jun 2023

  • Library RPA.JavaAccessBridge:

    • Update and pin java-access-bridge-wrapper to version 0.14.1

23.5.0 - 27 Jun 2023

  • Library RPA.JavaAccessBridge:

    • Update java-access-bridge-wrapper to version 0.13.0

    • Add keyword Print Locator Tree

23.4.0 - 22 Jun 2023

  • Add new library RPA.Robocorp.Storage for managing assets within Asset Storage in Control Room. (#957)

09 Jun 2023

  • Library RPA.Assistant 2.3.0:

    • Add new elements with Add Loading Spinner and Add Loading Bar.

23.3.0 - 09 Jun 2023

  • Library RPA.MSGraph (#980):

    • Lock O365 dependency to a version less than 2.0.27 for compatibility with Python 3.7.

  • Security update: Bumps cryptography to version 41.0.1. (#979)

  • Library RPA.JavaAccessBridge:

    • Update java-access-bridge-wrapper to version 0.12.0

23.2.1 - 02 Jun 2023

  • Library RPA.JavaAccessBridge (#978):

    • Fix element search issue with Click Element keyword

    • Add new keyword Wait Until Element Exists

23.2.0 - 02 Jun 2023

  • Library RPA.Browser.* (#974):

    • Selenium:

      • Fix bug with detecting the right web-driver version for download on systems having Chromium installed instead of Chrome. (#949)

      • Add support for operating on shadow DOMs within the Get WebElement keyword. (#941)

    • Playwright:

      • Upgrade version and documentation to the latest robotframework-browser 16.2.0. (#942)

      • Automatic headless detection when running on systems without UI, including our Cloud Worker (Linux container). (#166)

01 Jun 2023

  • Library RPA.OpenAI 1.2.0 (#973):

    • Add support for AzureAI and update openai to 0.27.7.

23.1.0 - 19 May 2023

  • Library RPA.Browser.Selenium (#943):

    • New keyword Click Element When Clickable which tries to overcome errors like “Other element would receive the click”. (#884)

    • New keyword Set Element Attribute which sets an attribute value to an element retrievable with Get Element Attribute. (#762)

    • Setting a custom download directory is now supported by all Chromium-based browsers and Firefox. Use Set Download Directory before opening any browser instance in order to set such a custom path. (this should be working now in both headful and headless modes; #882)

    • Custom user profiles (and common configuration) can be used with all Chromium-based browsers, like Chrome, Edge. (#865)

    • Improved main library documentation, accepting both WebElement and str as locator types under our keywords as well. (#940, #939)

12 May 2023

  • Library RPA.Assistant 2.2.2:

    • Documentation example fix, correct name of argument to maximum_rows.

23.0.0 - 05 May 2023

  • Library RPA.Database (#944):

    • Improvements for keyword Call Stored Procedure

      • Fix keyword not returning results of the procedure

      • Add possibility of returning result as a RPA.Tables.Table by parameter as_table=True (default is True, ie. Table is returned)

      • Add possibility of returning multiple resultsets from a Call Stored Procedure by parameter multiple=True (default is False, ie. only one resultset is returned) Multiple results are then either list of lists or list of Tables.

      • Remove specific support for Python 2.* in this keyword

  • Library RPA.Email.Exchange (#948):

    • Add new keyword Send Reply Message

    • Add parameter items_only for keyword List Messages which returns internal Email objects (mainly for advanced usage)

  • Library RPA.Email.ImapSmtp:

    • Add keyword Convert EML file into message which reads EML message and returns headers, attachments and body (in text and HTML) format. (#948)

    • Add parameters in_reply_to and return_path to keyword Send Message. (#948)

    • Make the recipients optional. It is still mandatory to give one of the following parameters recipients, cc or bcc. (#930)

  • Library RPA.FTP (#938): Add socket support for TLS connections.

  • Library RPA.JavaAccessBridge (#947):

    • Add new keyword List Java Windows

    • Add new keyword Select Window By PID

    • Add new keyword Select Window By Title

    • Keyword Select Window is deprecated in favor of the 2 Select.. keywords mentioned above. Direct replacement for this keyword is Select Window By Title. This keyword will be removed during next major release involving RPA.JavaAccessBridge library.

  • Update library documentation to contain information about autoexit init parameter

    • RPA.Excel.Application

    • RPA.Outlook.Application

  • Library RPA.Word.Application (#945): Add autoexit init parameter (on default True as it is for similar libraries). This is a breaking change.

04 May 2023

  • Library RPA.Cloud.Google (rpaframework-google 7.0.3; #935): Fix move drive file

22.5.3 - 02 May 2023

  • Security update: Bumps cryptography to version 40. (fixes the limitation of not being able to use the latest rpaframework-pdf in some scenarios; #926)

22.5.2 - 13 Apr 2023

  • Library RPA.Browser.Selenium (#916):

    • Takes into use the latest Selenium (4.8.3 at the time of the release) and its logging fixes. (#883)

    • Fixes scheme ensuring bug during not provided URLs. (#586)

    • Fixes headless mode setting with newer browsers and enables more browser features when running in this mode. (#919)

    • Ensures keyword Screenshot works and logs messages as expected. (logs aren’t polluted with raw image data on levels equal or greater than INFO and it returns the final output image path; #920)

    • Takes into use the latest webdriver-manager fixes given rpaframework-core 11.0.1.

22.5.1 - 07 Apr 2023

  • Library RPA.Windows (rpaframework-windows 7.3.2; #913):

    • Keywords [Double|Right|Middle ]Click will raise ActionNotPossible if the element is not visible during clicking. (thus clicking wouldn’t happen at all)

    • Main library and various keywords documentation fixes.

  • Library RPA.PDF (rpaframework-pdf 7.1.5) (#914): Fix “TypeError: cannot pickle ‘dict_keys’ object” bug with the HTML To PDF keyword.


    This rpaframework version requires at least the following library versions (if you have such dependencies already listed in your conda.yaml), although we recommend upgrading to the latest found in PyPI:

    • rpaframework-assistant 2.2.1

    • rpaframework-aws 5.2.8

    • rpaframework-dialogs 4.0.4 (deprecated)

    • rpaframework-google 7.0.2

    • rpaframework-pdf 7.1.4

    • rpaframework-recognition 5.1.2

    • rpaframework-windows 7.3.0

22.5.0 - 05 Apr 2023

  • Library RPA.Windows (rpaframework-windows 7.3.0; #912):

    • Our Windows elements recorder (windows-recorder) supports path: strategy display when run with verbosity on. (-v flag)

    • Keyword Print Tree now displays the path: strategy locator alongside printed controls and flattened-by-level returned elements.

    • Keyword Set Value supports value validation customization through the validator parameter.

04 Apr 2023

  • Library RPA.Assistant 2.2.0:

    • Add minimum_rows and maximum_rows arguments to Add Text Input.

    • Add ability to specify validation functions as Robot Framework keywords.

    • Improve how validation errors are displayed. They display besides the input field now, instead of bottom of the dialog.

    • Fix checkbox values being returned as strings true and false instead of booleans.

22.4.0 - 29 Mar 2023

  • Library RPA.Excel.Files

    • Make method require_open_xlsx_workbook that was accidentally exposed a private method.

  • Library RPA.JavaAccessBridge (#908):

    • Fixes related to keyword Select Window

      • Update to the latest java-access-bridge-wrapper 0.9.7

      • Add additional system window verification before using jab.switch_window_by_title

  • Library RPA.Database (#899):

    • Add support for parameterized sql queries

  • Library RPA.PDF (rpaframework-pdf 7.1.3) (#909): Add documentation about PDF merge and split.

22.3.0 - 22 Mar 2023

  • New library RPA.Smartsheet (#880):

    • Supports getting, creating and updating Smartsheet sheets, as well as downloading attachments.

    • Read library documentation for a full list of keywords.

22.2.3 - 15 Mar 2023

  • Library RPA.PDF (rpaframework-pdf 7.1.2): Light documentation fix and preserved default behaviour with the boxes_flow parameter in the Set Convert Settings keyword. (defaults to 0.5)

14 Mar 2023

  • Library RPA.Assistant 2.1.2:

    • Fix file picker sometimes causing AssertionError: Control must be added to the page first. error.

    • Fix Add Next Ui Button getting a normal dict and not a dotdict as its first argument.

22.2.2 - 13 Mar 2023

  • Library RPA.Browser.Selenium (#859):

    • Fixes Set Download Directory keyword: functionality, docs, examples.

    • Improves Browser Locators functionality. (referenced by alias:)

22.2.1 - 09 Mar 2023

  • Library RPA.Calendar: Documentation fixes in various keywords.

22.2.0 - 09 Mar 2023

  • New library RPA.Calendar (#694):

    • Supports holiday and business day related calculations.

    • Read library documentation for a full list of keywords.

  • Library RPA.Database:

    • Changes how psycopg2 module handles the Call Stored Procedure keyword.

    • Sets on the autocommit parameter use with Connect To Database keyword when using psycopg2 module.

    • Removes INFO level logs from Connect To Database keyword. (privacy)

  • Library RPA.Outlook.Application (#878):

    • Adds possibility to set CC and BCC recipients with Send Email and Send Message keywords.

08 Mar 2023

  • Library RPA.Assistant (rpaframework-assistant 2.1.0):

    • Features:

      • Add Set Title keyword. Can be used to set title of assistant when it is running.

      • Add Open Row and Close Row keywords. Used to layout elements into rows.

      • Add Open Column and Close Column keywords. Used to layout elements into columns.

      • Add Open Navbar and Close Navbar keywords. Can be used to create an always visible top bar for a dialog.

      • Add Open Stack and Close Stack keywords. Can be used to position elements manually.

      • Add Open Container and Close Container keywords. Useful for styling or placing single elements.

      • Add Add Flet Icon that enables adding any icons from flets large gallery of icons.

        • Compared to Add Icon, it is more difficult to use but supports a much larger amount of icons.

      • Bugfixes:

        • Fix regression, Assistant flet app not closing properly when run from CLI and when the close button is pressed.

        • The library no longer silently misses adding to the result when an input name duplicate name is used, instead it raises a ValueError.

22.1.1 - 06 Mar 2023

  • Library RPA.Windows (rpaframework-windows 7.2.1; #869): Documentation fixes in keywords: Set Value, Print Tree, Set Mouse Movement.

22.1.0 - 06 Mar 2023

  • Library RPA.Windows (rpaframework-windows 7.2.0; #855):

    • Enhances keyword Set Value with additional checks and a send_keys_fallback parameter as an alternate way of setting in the provided value. (if the main one fails; #483)

    • Improves keyword Print Tree with clearer printed depths and children positions in the element tree. The returned element structure now encapsulates a usable path based locator in every element. (#796)

    • Adds new keyword: Set Mouse Movement which enables/disables mouse movement simulation when interacting with elements. (e.g. clicking combo-boxes; #791)

    • Miscellaneous: better recording instructions, documentation updates, bugfixes. (#591, #797)

22.0.1 - 03 Mar 2023

  • Added PyYAML 6.0 support, rpaframework can now install together with tools like langchain.

02 Mar 2023

RPA.OpenAI (rpaframework-openai 1.1.1):

  • Fix keyword Chat Completion Create not working as documented.

RPA.OpenAI (rpaframework-openai 1.1.0; #867):

  • New keyword Chat Completion Create can be used to build up discussion with ChatGPT.

RPA.Assistant (rpaframework-assistant 2.0.0):

  • Added location argument to Add Button keyword.

  • Added round argument to Add Slider keyword.

  • Internal refactoring.

  • Update underlying UI library to flet 0.2.2 -> 0.4.2, granting various bugfixes and improvements.

  • Depend on rpaframework-core 10.4.1 due to Flet dependency incompatibilities with earlier versions.


Breaking changes:

  • Run Dialog and Ask User parameter clear was removed, clearing is now mandatory.

  • (affects Python side users only): Location enum that run_dialog and ask_user accepts was changed from Location to WindowLocation to improve clarity.

  • By default Slider now rounds to 1 decimal.

28 Feb 2023

Library RPA.PDF (rpaframework-pdf 7.1.0):

  • Add possibility to change boxes_flow setting of PDF conversion with the Set Convert Settings keyword. The boxes_flow defines how text boxes within the PDF page are ordered. Read more about this in the keyword documentation.

22 Feb 2023

RPA.Assistant (rpaframework-assistant 1.2.4):

  • Reduce unnecessary debug logging from Flet that didn’t obey the log level.

21 Feb 2023

RPA.Assistant (rpaframework-assistant 1.2.3):

  • Fix results.key access not working as documented.

22.0.0 - 20 Feb 2023


Breaking change release.

  • The rpaframework-dialogs package is no longer part of the rpaframework package. Reason for this change is the deprecation of the RPA.Dialogs library as we are recommending the RPA.Assistant library for building attended Robots.

    This means that RPA.Dialogs library can be still used, but it needs to be separately added into the pip section of the conda.yaml file (rpaframework-dialogs==4.0.2).

    The RPA.Assistant library also requires separate package installation of rpaframework-assistant==1.2.1.

    We see that unattended robots are a majority of the process run cases and thus it makes sense to move libraries meant for the attended robots into separate packages. Added benefit is that will reduce the package size for the rpaframework package.

    Please read the migration guide on how to move from RPA.Dialogs to RPA.Assistant.

Other changes included in the release:

  • Library RPA.Windows (rpaframework-windows 7.1.0; #840):

    • Add support for the path: strategy in locators. (index-based element tree search)

    • Enhance Print Tree keyword with better element tree logging and the ability to return such structure.

  • Library RPA.Tables (#821): Allow custom dialects in csv files.

  • Library RPA.Robocorp.Process (#845): Host of the Process API should use the host from an environment variable (RC_API_PROCESS_HOST) if that is available.

  • Script use-robocorp-vault maximum token validity time has been lowered to 20 hours.

20 Feb 2023

  • Library RPA.Assistant:

    • 1.2.2

      • Fix package on Python 3.7.

    • 1.2.1

      • Fix Add Slider default parameter misbehave if no user input was done on it.

17 Feb 2023

  • Library RPA.Assistant (rpaframework-assistant 1.2.0):

    • Add default argument to Add Slider keyword to set a default for the slider.

  • Library RPA.Assistant (#838, #828; rpaframework-assistant 1.1.0):

    • Bugfixes for dialog clearing.

    • New Add Slider keyword to create sliders for numeric inputs.

    • New default and required arguments for Add Text Input.

    • Removing None values from the results so it makes value checking easier.

21.1.1 - 15 Feb 2023

  • Security upgrade of cryptography dependency to 39.0.1. (#833)

21.1.0 - 09 Feb 2023

  • Library RPA.DocumentAI.Base64AI (#803): Support for signature matching on image documents with the following newly added keywords:

    • Get Matching Signatures: Detects and returns signatures and their similarity.

    • Filter Matching Signatures: Keeps relevant and alike signatures only.

    • Get Signature Image: Saves signature’s image for manual inspection.

    Portal example:

  • Global fix with retrieving the output directory path.

08 Feb 2023

  • OpenAI (#792) comes to RPA Framework! New library RPA.OpenAI adds four keywords covering GPT-3 text completions and DALL.E image creation.

    • Authorize To Openai: Authorize with OpenAI using your API key.

    • Completion Create: Keyword for creating text completions in GPT-3 API using your prompt and various arguments.

    • Image Create: Create one or more images based on a text prompt.

    • Image Create Variation: Creating one or more variations of an existing image.


    RPA.OpenAI is not included in the core rpaframework package, so please add rpaframework-openai==1.0.1 as a pip dependency in your conda.yaml.

  • rpaframework-assistant 1.0.0

    • New RPA.Assistant library! Provides better development experience for various use cases where previously RPA.Dialogs would have been used.

      • RPA.Dialogs users: the new Migration Guide

      • Does not use webview. Should improve compatibility and reduce broken installs.

      • Added mechanism to make buttons execute Python functions or Robot keywords.

      Enables building of code executing interactive assistants. - New Ask User keyword for building simple dialogs with less boilerplate.

  • rpaframework-assistant 1.0.1

    • macOS force stop bugfix

  • rpaframework-assistant 1.0.2, 1.0.3, 1.0.4

    • documentation building fixes and documentation updates

21.0.1 - 03 Feb 2023

  • Library RPA.Windows (rpaframework-windows 7.0.3): Fix Windows element(s) retrieval. (and dependent keywords)

21.0.0 - 01 Feb 2023


Multiple breaking changes below!

  • Library RPA.Cloud.Azure (#635):

    • robocloud_vault_name -> robocorp_vault_name

    • use_robocloud_vault -> use_robocorp_vault

    • Set Robocloud Vault -> Set Robocorp Vault

  • Library RPA.Cloud.Google (#794; rpaframework-google 7.0.0):

    • RPA.Robocloud.Secrets -> RPA.Robocorp.Vault

  • Library RPA.PDF (#785; rpaframework-pdf 7.0.1):

    • Keyword Find Text:

      • Supports additional parameter ignore_case, which if set to True, will make the search case insensitive. (switch it on if you experience a different behaviour)

      • Adds subtext: strategy in the passed locator which checks for a substring instead of the whole text to match.

    • New related Portal example for parsing PDF invoices:

20.1.2 - 26 Jan 2023

  • Library RPA.Browser.Selenium (#787): Improved browser order resolution given the set env var and running OS.

20.1.1 - 26 Jan 2023

  • Library RPA.Browser.Selenium (#781): Ability to change the default search order of browsers, when using the Open Available Browser keyword, through the RPA_SELENIUM_BROWSER_ORDER env var.

20.1.0 - 19 Jan 2023

20.0.2 - 10 Jan 2023

  • Security dependency fix given the bump of cryptography package to version 38. (#773)

20.0.1 - 10 Jan 2023

  • Fix docs given the dropped support for extras under library dependencies. (#772)

20.0.0 - 09 Jan 2023

  • Global package & sub-library updates adding security and documentation fixes. (#767)

  • Other affected sub-libraries:

    • rpaframework-aws 5.2.5 (no API change, just dev & docs 3rd-party package upgrades)

    • rpaframework-google 6.1.5 (no API change, just dev & docs 3rd-party package upgrades)

    • rpaframework-pdf 6.0.1 (no API change, but behaviour may be different)

    • rpaframework-windows 7.0.2 (no API change, but locators recording may act differently)


This is a breaking change!

  • We don’t support optional packages anymore. Migrate your conda.yaml if needed:

    • rpaframework[aws] -> rpaframework-aws==5.2.4

    • rpaframework[cv] -> rpaframework-recognition==5.0.1

    • rpaframework[playwright] -> robotframework-browser==14.4.1

    • And of course, don’t forget about rpaframework==20.0.0.

  • RPA.Desktop keywords related to mouse and keyboard may behave differently due to their pynput dependency recent upgrade.

  • Extra dependencies are pinned to the following minimum versions:

    • requests = "^2.28.1"

    • oauthlib = "^3.2.2"

    • requests-oauthlib = "^1.3.1"

  • Misleading keyword On Token Refresh was removed from the RPA.Email.Exchange library. (wasn’t meant to be a keyword at all)

19.4.2 - 21 Dec 2022

  • Library RPA.Hubspot (#740): Deprecate keyword Auth With API Key in favor to Auth With Token. (read how to generate one with Private Apps)

19.4.1 - 09 Dec 2022

  • Library RPA.Email.Exchange (#736): Fix token auto-refresh for single-tenant Client apps.

19.4.0 - 08 Dec 2022

19.3.1 - 29 Nov 2022

  • Library RPA.Browser.Selenium (#710): Fix bug with auto_close=${False} param when importing the library, which still had the browser closed at the end of the session. (now it’s left open if such parameter is set to False)

19.3.0 - 28 Nov 2022

  • Library RPA.Slack (#711): New keyword Slack Raw Message adds support for blocks message property by allowing user to set message dictionary.

  • Library RPA.Excel.Files (#712): Add new keywords for the library.

    List of new RPA.Excel.Files keywords:

    • Set Cell Formula

    • Copy Cell Values

    • Delete Columns

    • Delete Rows

    • Insert Rows Before

    • Insert Rows After

    • Insert Columns After

    • Insert Columns Before

    • Move Range

    • Clear Cell Range

    • Set Styles

    • Auto Size Columns

    • Hide Columns

    • Show Columns

    • Set Cell Values

19.2.0 - 17 Nov 2022

  • Library RPA.Windows (#693):

    • Keyword Get Elements supports now parameter siblings_only which filters for elements found on the same level with the first match. This is ON by default; set it to False for a global search, which retrieves all the found elements matching the criteria instead.

    • Keyword Get Value returns None when there’s no value to retrieve at all.

    • Fix sibling element searching in keyword Get Elements when there’s no comparison strategy identified.

19.1.2 - 17 Nov 2022

  • Library RPA.Robocorp.WorkItems (#692): Allow email input Work Item variable in the absence of the Control Room controlled one during e-mail triggering.

19.1.1 - 04 Nov 2022

  • Library RPA.Outlook.RPA (#687): Fix pywintypesXX.dll errors.

19.1.0 - 03 Nov 2022

  • Library RPA.Cloud.AWS (#683): Fix S3 List Files empty list response. Released in rpaframework-aws version 5.2.1.

  • Library RPA.HTTP (#685): Add keyword Check Vulnerabilities which will now just check for OpenSSL vulnerable versions.

    Related article:

19.0.0 - 27 Oct 2022

  • New Intelligent Document Processing library RPA.DocumentAI, which is a convenient wrapper over the existing libraries (#557):

    • RPA.Cloud.Google (needs rpaframework-google installed)

    • RPA.DocumentAI.Base64AI (moved from RPA.Base64AI)

    • RPA.DocumentAI.Nanonets (moved from RPA.Nanonets)

    Provides the following generic keywords capable of working with all the engines above:

    • Init Engine

    • Switch Engine

    • Predict

    • Get Result

    Portal example:


This is a breaking change! Two DocumentAI related libraries have moved, thus the importing location is changed now:

  • RPA.Base64AI -> RPA.DocumentAI.Base64AI

  • RPA.Nanonets -> RPA.DocumentAI.Nanonets

18.0.0 - 17 Oct 2022

  • Library RPA.MSGraph (#669): Fix bugs in listing SharePoint files and in keywords not supporting Drive objects. Replace parameter drive_id with drive throughout library, this is a breaking change for this library.

17.7.0 - 14 Oct 2022

  • Library RPA.Outlook.Application (#666): Add parameter save_as_draft parameter to Send Message / Send Email keywords. Will save the email instead of sending.

  • Library RPA.Database (#667): Add SSL support for MySQL modules (pymysql and mysql.connector).

  • Library RPA.SAP (#656): Add new keywords.

17.6.0 - 12 Oct 2022

  • Library RPA.Browser.Selenium (#661): Downloads correctly Mac arm64 web drivers. (due to rpaframework-core 10.0.1)

  • Library RPA.Cloud.AWS (#663): Add more options for List Files keyword.

17.5.1 - 11 Oct 2022

  • Library RPA.Browser.Selenium (#660): Ensure use_profile parameter is working as expected when set true. Affecting the Open Available Browser and Open Chrome Browser keywords.

17.5.0 - 07 Oct 2022

  • New library RPA.MSGraph (#176, #653): This library wraps the O365 package, giving robots the ability to access the Microsoft Graph API programmatically.

17.4.0 - 06 Oct 2022

  • Library RPA.Robocorp.WorkItems (#655): Fix behaviour when releasing FAILED items with empty string code or message.

  • Library RPA.Salesforce (#570): Added two new keywords: Set Domain and Get Domain. Enhanced documentation around the different ways to set a domain.

17.3.0 - 03 Oct 2022

  • Library RPA.Database (#649): Add support for new Psycopg 3 PostgreSQL database adapter

17.2.0 - 30 Sep 2022

  • Library RPA.Cloud.AWS (#648):

    • Add new keyword Generate Presigned URL for S3

    • Released in rpaframework-aws 5.1.0

  • Library RPA.Windows (#647):

    • Add new keywords Drag and Drop and Set Focus

    • Released in rpaframework-windows 6.1.0

17.1.1 - 29 Sep 2022

  • Library RPA.Email.Exchange (#643): Fix access_type parameter usage in keyword Authorize with “delegate” & “impersonation” accepted values.

17.1.0 - 28 Sep 2022

  • Library RPA.Email.Exchange (#641): Add support for OAuth2 auto token refresh in Vault with vault_name and vault_token_key parameters during library import.

17.0.1 - 21 Sep 2022

  • Library RPA.Cloud.AWS (#637):

    • All references to Robocloud.Vault changed to Robocorp.Vault (parameters and documentation). This is breaking for this library, which leads to major version bump also for rpaframework, because this library can be also installed with rpaframework[aws] instead of rpaframework-aws.

    • Add possibility to pass extra parameters for some S3 keywords, for example. metadata and content type.

    • Released in rpaframework-aws 5.0.0

  • Library RPA.Excel.Files (#638): Add support for opening .xlsx files in read_only mode

  • New library RPA.Base64AI (#639): Supports Base64 AI IDP service

  • New library RPA.Nanonets (#639): Supports Nanonets IDP service

  • Library RPA.Cloud.Google (#619):

    • Add support for Document AI IDP service

    • Released in rpaframework-google 6.1.1

16.3.0 - 07 Sep 2022

  • Library RPA.Browser.Selenium (#618): Simplified dict-like options passing to keywords Open Available Browser and Open Browser.

16.2.0 - 07 Sep 2022

  • Library RPA.Email.ImapSmtp (#622): Add parameter attachment_position for keyword Send Message

16.1.0 - 01 Sep 2022

  • Library RPA.Browser.Selenium (#615): Keyword Open Available Browser supports passing a custom port to open the browser on.

  • Library RPA.Windows (rpaframework-windows 6.0.1, #609): Fix clicking sibling elements retrieved with keyword Get Elements. (previous bug with robocorp_click_offset)

16.0.0 - 31 Aug 2022

  • New library RPA.MFA (#610) adds support for one time passwords (OTP). Currently supports time and counter based use cases.

  • Library RPA.Robocorp.Process (#611): New keywords List Process Run Artifacts and Get Robot Run Artifact.

  • Library RPA.Browser.Selenium (#494):

    • Upgraded to Selenium 4. (#602)

    • Using the new webdriver-manager for an improved download and cache of the driver. (#607)

    • Keyword Open Available Browser supports options parameter allowing to customize the browser run. (desired capabilities got deprecated; #385)


This is a breaking change! The library works with the following major version upgrades given any dependent package:

  • rpaframework-aws 4.0.0

  • rpaframework-dialogs 4.0.0

  • rpaframework-google 6.0.0

  • rpaframework-pdf 5.0.0

  • rpaframework-recognition 5.0.0

  • rpaframework-windows 6.0.0

15.9.0 - 22 Aug 2022

  • Library RPA.Database: Add support for new Oracle connector oracledb

15.8.1 - 19 Aug 2022

  • Library RPA.JavaAccessBridge: Include java-access-bridge-wrapper dependency 0.9.5 fixing memory leak issue

  • rpaframework-recognition 4.0.2: Fix issue with dependency opencv-python-headless

15.8.0 - 12 Aug 2022

  • Library RPA.Excel.Files (#599): Add parameter formatting_as_empty for keyword Append Rows To Worksheet, which allows appending rows to sheet with formatted cells.

  • Library RPA.Notifier (#603): Fix how keyword parameters are forwarded

15.7.0 - 10 Aug 2022

  • Security dependency update (lxml 4.9.1) within the following packages:

    • rpaframework-aws 3.1.2

    • rpaframework-dialogs 3.0.1

    • rpaframework-google 5.0.2

    • rpaframework-recognition 4.0.1 (rpaframework[cv])

  • Library RPA.Tables (#495):

    • New keywords: Filter Table With Keyword, Map Column Values. (#226)

    • Improved documentation. (#220)

    • Improved str/int row index resolving.

  • Library RPA.FileSystem (#597): New Get File Stem keyword retrieving only the name of a file (without its extension) from the given path.

15.6.1 - 09 Aug 2022

  • Library RPA.Salesforce (#583): Keyword Salesforce Query Result As Table bugfix on empty results.

  • Library RPA.Browser.Selenium (#593): Keyword Print To PDF provides better error message when trying to print in non-headless mode (which doesn’t work by design; same with full page screenshots).

15.6.0 - 02 Aug 2022

  • Library RPA.Desktop (#592): Ability to customize the locators path using the locators_path parameter during library import.

  • Ability to customize the locators file path through the RPA_LOCATORS_DATABASE environment variable. (#370)

  • Library RPA.PDF (#558, rpaframework-pdf 4.1.0): Fix pages selection rationale when operating with PDFs. (bugs & documentation)

15.5.0 - 22 Jul 2022

  • Library RPA.Windows (#587): Fix offset-based clicking. (coordinates relative to the center of the element with offset:x,y locator property)

  • Library RPA.Robocorp.WorkItems (#538): Automatically release the current input Work Item as FAILED Application when the robot fails unexpectedly.

15.4.0 - 13 Jul 2022

  • Adds overwrite parameter (default False) for controlling how attachment download happens with the following keywords (#584):

    • RPA.Email.ImapSmtp:

      • Save Attachment

      • Save Attachments

    • RPA.Email.Exchange: Save Attachments

    • RPA.Outlook.Application: Save Email Attachments

15.3.0 - 08 Jul 2022

  • Library RPA.Excel.Application: Fixes bug with keyword Run Macro on Excel file names containing spaces or other problematic symbols. (#479)

  • Library RPA.Excel.Files:

    • Keyword Create Workbook supports now sheet_name parameter which sets a custom name for the newly created active sheet. (#224)

    • Fixes a problem with Microsoft validation by stripping leading/trailing whitespace from the workbook properties. (#572)

15.2.0 - 05 Jul 2022

  • Library RPA.Email.Exchange (#567): Keyword Authorize supports OAuth2 Authorization Code flow. (enable it with is_oauth=${True}; Portal example)

  • Library RPA.FileSystem (#568): Add keyword examples and type hints.

15.1.4 - 23 Jun 2022

  • Fix VSCode keyword definitions in all packages (#560). (libspec Python modules paths)

    • rpaframework-aws 3.1.1

    • rpaframework-google 5.0.1

    • rpaframework-pdf 4.0.2

    • rpaframework-windows 5.0.1

  • Library RPA.Desktop: Fix docs examples returning Region elements.

15.1.3 - 22 Jun 2022

  • Fix VSCode keyword definitions. (libspec Python modules paths)

15.1.2 - 21 Jun 2022

  • Library RPA.PDF (#549, rpaframework-pdf 4.0.1): Extended PDF examples.

  • Library RPA.Tables (#492): Keyword examples updated to be more complete.

  • Library RPA.Excel.Files (#493): Doc strings and typehints updated.

15.1.1 - 17 Jun 2022

  • Library RPA.JSON (#548): Fix libspec infinite recursion on JSONType type.

  • Deprecate Lab references under documentation.

15.1.0 - 15 Jun 2022

  • Library RPA.Cloud.AWS (#508, rpaframework-aws 3.1.0):

    • New service client support for Amazon Redshift’s Data API (#496). Keyword support for submitting SQL queries and obtaining results from them (can be performed asynchronously, if desired).

    • New service client support for Amazon STS and the Assume Role operation (#498). The Assume role keyword returns temporary credentials which include a session token. All services updated to support using the session token as part of their Init … client keyword.

  • Library RPA.Robocorp.WorkItems (#536): Expand examples for Release Input Work Item and fix other documentation issues.

  • Library RPA.Outlook.Application (#545): Reduce logging

security release (all packages) - 27 May 2022

Critical Python package security update concerning pillow package which is a common image processing library for Python.

All new release versions:

  • rpaframework 15.0.0

  • rpaframework-aws 3.0.0

  • rpaframework-dialogs 3.0.0

  • rpaframework-google 5.0.0

  • rpaframework-pdf 4.0.0

  • rpaframework-recognition 4.0.0

  • rpaframework-windows 5.0.0

14.2.0 - 25 May 2022

  • Library RPA.PDF (#515, rpaframework-pdf 3.0.1): Ensures checkboxes are ticked correctly with latest dependency upgrades.

  • Library RPA.JSON (#481): Keyword Delete From JSON supports filter expressions for keys removal.

  • Library RPA.Browser.Selenium (#502): Automatically add URL scheme when navigating, such as https (default) or http. This functionality is controlled with the keyword Set Default URL Scheme. with the keyword Set default URL scheme.

  • Library RPA.Hubspot: Fix several bugs and improve logging (#504, #505, #506, and #507).

14.1.1 - 12 May 2022

  • Library RPA.Email.ImapSmtp (#500): Keywords Authorize[ Imap/Smtp] support is_oauth parameter which instructs the client to authenticate through the basic (False) or XOAUTH2 (True) protocol.

  • Library RPA.Excel.Files (#490): Keyword examples updated to be more complete and Python examples have been added to all keywords.

14.1.0 - 05 May 2022

  • Library RPA.Robocorp.WorkItems (#485): Automatically parse into email[body] payload variable the e-mail body on e-mail Process triggering with “Parse email” configuration option enabled in Control Room.

  • Library RPA.Hubspot (#484): Add keywords for creating and updating objects in Hubspot, as well as a new batch system when creating batched inputs via keyword.

  • Library RPA.Excel.Files (#491):

    • Fix IndexError when removing .xls worksheets.

    • Fix removing currently active worksheet.

14.0.0 - 02 May 2022

  • Robot Framework 5 support, but not restricted to (#470):

  • Library RPA.Email.Exchange (#477): Keyword Send Message supports sending messages with any combination of recipients, cc and/or bcc.

  • The support for Python version 3.6 has been REMOVED from the rpaframework[-*] packages starting with the following versions (#469):

    • rpaframework 14.0.0

    • rpaframework-aws 2.0.0

    • rpaframework-dialogs 2.0.0

    • rpaframework-google 4.0.0

    • rpaframework-pdf 3.0.0

    • rpaframework-recognition 3.0.0

    • rpaframework-windows 4.0.0

13.3.1 - 15 Apr 2022

  • Library RPA.Windows (rpaframework-windows 3.1.1, #473): Fix documentation.

13.3.0 - 14 Apr 2022

  • Library RPA.Dialogs: Include fix for dependency robocorp-dialog package.

  • Library RPA.Windows (rpaframework-windows 3.1.0, #439):

    • Keyword Get Elements returns all similar elements matching locator. (#471)

    • Keyword List Windows returns now extra attributes similar to the old deprecated RPA.Desktop.Windows library (#408):

      • automation_id

      • control_type

      • class_name

      • rectangle

      • keyboard_focus

      • is_active

      • object

    • Improved locators parsing and ability to enclose values containing spaces with " double-quote. (#363)


    This is a breaking change! If you use single-quote locator value enclosing, please switch it to double-quote instead. (e.g. Control Window  subname:'- Notepad' -> Control Window  subname:"- Notepad")

    If you’re having issues with your current robots, pin in your conda.yaml rpaframework-core==7.0.1 and stay on rpaframework<=13.2.0. Once you do the double-quote fix, remove the pin and upgrade to the latest rpaframework.

13.2.0 - 08 Apr 2022

  • New library RPA.Hubspot: Library support for Hubspot CRM API. Current keywords primarily focus on retrieving data from Hubspot, there is currently no support for updating information.

13.1.0 - 07 Apr 2022

  • Library RPA.Database: Fix configuration value retrieval. (#456)

  • Library RPA.Dialogs: Add next button to support wizard style dialogs. (#452)

13.0.3 - 05 Apr 2022

  • Library RPA.Database: Fix queries with pyodbc module. (affects Microsoft SQL Server, #443)

13.0.2 - 04 Apr 2022

  • Library RPA.Email.ImapSmtp: Fix handling of cc and bcc fields with Send Message keyword

  • Library RPA.Cloud.AWS:

    • Fix initializing services with Vault (broken by 13.0.1 release)

    • The service region can also be given as a environment variable or as Vault key: AWS_REGION

    • Included and available as separate package rpaframework-aws 1.0.3

13.0.1 - 01 Apr 2022

  • Library RPA.Cloud.AWS: Fix getting analysis result from larger PDF files

  • Library RPA.Tables: Fix reading table from CSV file with longer rows

  • Various updates to keyword type hinting

  • New package rpaframework-aws 1.0.2 (can be used without rpaframework package)

13.0.0 - 28 Mar 2022

  • Major version upgrades for the following packages (incompatible with rpaframework<13):

    • rpaframework-google 3.0.0

    • rpaframework-recognition 2.0.0

    • rpaframework-windows 3.0.0

    • rpaframework-dialogs 1.0.0

    • rpaframework-pdf 2.0.0


    Any optional package (google, recognition) should be upgraded at least to the version above in your conda.yaml in order to use rpaframework 13.0.0. (if such dependencies are explicitly pinned)


    Package rpaframework-windows can be omitted entirely from the conda.yaml since it’s included automatically with this version.

12.10.1 - 25 Mar 2022

  • Library RPA.Email.ImapSmtp: Fix multiple recipients error with Send Message

12.10.0 - 23 Mar 2022

  • Library RPA.Cloud.AWS: Fix Download Files on saving objects with paths.

  • Library RPA.HTTP: Overriding RequestsLibrary logging to DEBUG level for request and response.

  • Automatically installing rpaframework-windows 2.3.2. (no need to specify this dependency in your conda.yaml anymore)

  • Deprecated RPA.Desktop.Windows in favor of RPA.Windows.

12.9.0 - 11 Mar 2022

12.8.2 - 25 Feb 2022

  • Library RPA.Robocorp.WorkItems: Keyword Create Output Work Item supports adding variables, files and saving in one go through parameters. (#392)

  • Library RPA.Windows (rpaframework-windows 2.2.2): Keyword Get Os Version returns proper Windows version. (#394)

  • Library RPA.Excel.Files:

    • Fix I/O for tables with one or no rows. (#391)

    • Add parameter data_only to keyword Open Workbook to read value instead of formula on XLSX file.

12.8.1 - 18 Feb 2022

  • Library RPA.Excel.Application: Fix on Windows 11 given pywin32 dependency update.

  • Package comtypes upgrade which fixes Syntax Error issues.

  • Library RPA.core: Add internal interact() helper for interrupting code execution and spawning an interactive shell which aids REPL debugging.

  • Library RPA.Windows (rpaframework-windows 2.2.1):

    • Add keyword Get Os Version which returns the current Windows version.

    • Add keyword Close Window which closes any matched open window.

    • Keyword Get Elements returns now only sibling elements similar to provided locator.

    • General library and tests fixes. (COMError, comtypes)

12.8.0 - 10 Feb 2022

  • Library RPA.Tables: Add delimiter support to Write Table To CSV

12.7.0 - 10 Feb 2022

  • Library RPA.Email.ImapSmtp

    • Add email dictionary support for all keywords with parameter criterion

    • Add prefix parameter to keywords Save Message and Save Attachment

12.6.1 - 08 Feb 2022

  • Library RPA.Email.Exchange: Fix saving .eml attachments from emails (#381)

  • Library RPA.Email.ImapSmtp: Fix handling of folder names with spaces (#380)

12.6.0 - 27 Jan 2022

  • Library RPA.JavaAccessBridge: Add Close Java Window keyword

12.5.1 - 18 Jan 2022

  • Fix importing issues of RPA.Desktop on Windows due to comtypes dependency Python 3 compatibility.

12.5.0 - 17 Jan 2022

  • Library RPA.Email.Exchange: Add .eml file support to Save Attachments keyword

  • Library RPA.JavaAccessBridge:

    • Add strict locator match support to locator string and to keyword Get Elements

    • Fix some issues related to JavaElement objects

12.4.1 - 12 Jan 2022

  • Library RPA.JavaAccessBridge:

    • Fix scaling issue when clicking element coordinates (#355)

    • Add click and type_text methods into Java Element object

    • Fix ``Type Text

  • Library RPA.Notifier:

    • Fix handling of keyword **kwargs parameter

    • Add kwargs documentation and examples

12.3.0 - 10 Jan 2022

  • Library RPA.JavaAccessBridge:

    • Add keyword Read Table which returns table cells as ``Java Element``s

    (more info in the documentation).

    • Keyword Get Elements can also return elements as Java Element when

    new parameter java_element=True.

    • Fix locator value parsing for keys like indexInParent which can have

    only integer value.

    • Open known issue: clicking table cell elements seems to be problematic

    atleast on Java Swing application (#355)

12.2.0 - 17 Dec 2021

  • Library RPA.Database:

    • Keyword Query supports now a returning parameter which explicitly instructs the statement execution to return or not the fetched values. (#286)

    • Auto commits and rollbacks fixes given the sanstran flag. (#282)

  • Library RPA.PDF: Fixed Add Watermark Image To PDF with the same file for both input and output (#337, rpaframework-pdf 1.30.4)

12.1.2 - 14 Dec 2021

  • Library RPA.PDF: HTML -> PDF rendering serialized fonts cleanup bug fix (#322, rpaframework-pdf 1.30.3)

12.1.1 - 7 Dec 2021

  • Library RPA.PDF: Serialize PDF related fonts under Robocorp’s home directory (#315, rpaframework-pdf 1.30.2)

12.1.0 - 7 Dec 2021

  • Library RPA.PDF (#304, rpaframework-pdf 1.30.1):

    • Fixed unicode when rendering HTML as PDF

    • Fixed PDF form fields setting given various codecs

    • Faster PDF parsing

    • Updated docs on Find Text keyword and library

Releases on 01 Dec 2021

  • All rpaframework packages include now .libspec file for each library in the package. This will make coding experience in the VSCode editor better via Robot Framework Language Server extension.

    • rpaframework 12.0.3

    • rpaframework-windows 1.4.2

    • rpaframework-google 1.0.2

12.0.0 - 29 Nov 2021

  • Add .libspec files for all the libraries (used by VScode extension)

  • Library RPA.PDF (#243):

    • Keyword Find Text improvements and breaking changes:

      • Sets and works with multiple anchors if more than one are found

      • Anchor search supports “regex:” criteria too through the locator

      • only_closest parameter got replaced by closest_neighbours which can specify the max number of adjacent texts to return in the match object

      • The return value is a list of Match objects where every match has an anchor (the pinpoint in the PDF through locator) and a list of neighbours (the adjacent texts to the anchor given the provided direction)

    • Fixed by rpaframework-pdf 1.26.11 (included in this release)

11.6.4 - 24 Nov 2021

  • API retrying improvements affecting Work Items (#298)

  • Library RPA.Email.ImapSmtp: Keyword Email To Document for converting HTML or Text e-mails into Word documents (#295)

  • Library RPA.Robocorp.WorkItems (#285):

    • Removed Keyword Parse Work Item From Email

    • Automatically loads e-mail body formats like JSON/YAML/Text/HTML into “parsedEmail” work item variable

  • Updated rpaframework-recognition dependency (to version 1.0.0) (#303)

11.6.3 - 15 Nov 2021

  • Library RPA.Email.ImapSmtp: Fix email fetch when uid is empty

11.6.2 - 13 Nov 2021

  • Library RPA.Email.ImapSmtp: Fix handling of application/octet-stream attachments

11.6.1 - 12 Nov 2021

  • Library RPA.PDF:

    • Fix non empty or junk XML dumping on PDF parsing (#287)

    • Fixed by rpaframework-pdf 0.10.0 (included in this release)

  • Library RPA.Email.ImapSmtp:

    • Fix sender name encoding when using Send Message keyword (#279)

    • Fix filename encoding when using Save Attachment/Save Attachments keywords (#290)

11.6.0 - 4 Nov 2021

  • Library RPA.Robocorp.WorkItems: Keyword Parse Work Item From Email for retrieving the input item dictionary payload from the sent e-mail JSON body which triggered the process (#275)

  • Library RPA.Desktop.Windows: Fix how keyword Screenshot handles filename when saving


  • Library RPA.JavaAccessBridge: Raise the causing error (instead of just logging it) if initialization fails


  • Library RPA.Robocorp.WorkItems: Keyword For Each Input Work Item supports now human-friendly parameter names as items_limit and return_results


  • Library RPA.Robocorp.WorkItems:

    • Keyword For Each Input Work Item bugfixes and results collection switch (#250)

    • Keyword Release Input Work Item allows exception passing with type, code and name (#256)

    • Automatic API call retrying under Control Room for failed requests (#252)

    • Default input item during local dev, docs and cloud requests hotfixes (#253)

  • Library RPA.Outlook.Application:

    • Changes related to (#248)

    • Add new keyword Get Emails

    • Add new keyword Mark Emails As Read

    • Add new keyword Move Emails

    • Add new keyword Save Email Attachments

    • Renamed keyword Send Email (old keyword Send Message gives Deprecation warning)

    • Renamed keyword Wait For Email (old keyword Wait For Message gives Deprecation warning)

  • Add warning message if importing Windows platform dependtant library on non-Windows platform

    • RPA.Desktop.Windows

    • RPA.Excel.Application

    • RPA.Outlook.Application

    • RPA.Word.Application

  • Library RPA.Desktop.Windows: Add possibility to bypass initial element lookup when using Open Dialog or Connect By Handle keywords

  • Library RPA.Email.ImapSmtp: Keyword List Messages bugfix


  • Library RPA.Robocorp.WorkItems support on iterating work items for both local development and in the cloud:

    • Add keyword For Each Input Work Item for applying a keyword over all input work items (#241)

    • Add keywords Get Current Work Item and Release Input Work Item for releasing and setting the state of the currently processed input work item (#245)


  • Library RPA.Robocorp.Vault: Supports both .yaml/.json local vault secrets file formats (#225)

  • Library RPA.PDF: Add possibility to preserve whitespacing in PDF textboxes - #235

  • Library RPA.Robocorp.WorkItems: New environment variables for work items I/O during local dev (“RPA_INPUT_WORKITEM_PATH”, “RPA_OUTPUT_WORKITEM_PATH” - #234)

  • Library RPA.Email.ImapSmtp:

    • Fix Move Messages issue (#237)

    • Add keyword Move Messages By IDs

    • Fix boolean return values for keywords doing definite actions (like Mark As Read, Delete Messages..)

  • Library RPA.Email.Exchange: Update exchangelib dependency to 4.5.1 and pin tzlocal dependency to 2.1


  • Library RPA.Robocorp.WorkItems: Handle payloads with non-ascii characters

  • Library RPA.Dialogs: Date ISO format for Add Date Input keyword

  • Library RPA.Desktop: Always write unicode with Type text


  • Library RPA.Dialogs: Add Date Input keyword

  • New library RPA.Robocorp.Process: Library support for Control Room Process API


  • Library RPA.Salesforce:

    • Fix Salesforce Query result being limited to 250 objects

    • Add parameter to Salesforce Query to return result as Table


  • Library RPA.Email.ImapSmtp:

    • Remove newline and carriage return chars from attachment filenames

    • Fix problem with saving attachments which do not have payload


  • Library RPA.Robocorp.WorkItems: Ensure file-based database has at least one item

  • Library RPA.Tables: Fix reversed sort ordering

  • Library RPA.Windows: Fix internal argument for Screenshot keyword

  • Library RPA.JSON: Fix docstring examples


  • Library RPA.Email.ImapSmtp:

    • Add support for IMAP literal search

    • Add support for Gmail advanced search


  • Migration guide: Given this major upgrade, the Load Work Item ... keywords got removed with functionality replaced by Get Input Work Item. Use this keyword for loading your next input work item no matter if you’re running the robot in Control Room or locally. Keep in mind that under Robot Framework code, the first input work item gets loaded automatically and you don’t need to call this keyword if you only process one item in your run. For disabling this behavior, use autoload=${False} when importing the RPA.Robocorp.WorkItems library.

    If multiple steps are configured in Control Room, make sure that “Done items forwarding” is checked in Process’ configuration. Uncheck this if you have a modern robot that explicitly retrieves multiple input work items and creates output ones.

  • Terminology fixes for Robocorp Control Room

  • Renamed library RPA.Robocloud.Items to RPA.Robocorp.WorkItems:

    • Previous import works as before, with deprecation warning

    • Removed keywords Load work item and Load work item from environment

    • Added keywords Get input work item and Create output work item

    • Added support for variables and home directory in local database path

    • Changed local work items format

  • Renamed library RPA.Robocloud.Secrets to RPA.Robocorp.Vault:

    • Previous import works as before, with deprecation warning

    • Added support for variables and home directory in local vault path

  • Library RPA.Email.ImapSmtp:

    • Add uid into email dictionary

    • Fix email body decoding

    • Fix folder list problem when requesting non-existing folder

  • Library RPA.PDF:

    • Handle missing document information

    • Always create output directory when writing to disk

  • Library RPA.Windows: Fix exception from empty parent attribute

  • Library RPA.Images:

    • Deprecate screenshot keywords, use rpaframework-recognition for template matching

    • Use the library RPA.Desktop for image-based automation going forward


  • Library RPA.Excel.Files:

    • Return empty list when reading empty worksheet (#203)

    • Correctly handle header names with non-string values


  • Library RPA.Email.ImapSmtp:

    • Fix List Messages error not returning matching emails

    • Fix marking emails as SEEN when using List Messages or Wait For Message

    • Add encoding library initialization parameter (default is utf-8 as it used to be)

    • Add readonly parameter to keywords List Messages (True), Wait For Message (True) and Select Folder (False). Default values are in the parenthesis.


  • Library RPA.Desktop.Windows: Add COMError protection to keyword Open From Search

  • Library RPA.Email.ImapSmtp: Fix possible None error when reading email body

  • Library RPA.Database: Fix typo in ibm_db connection

  • Library RPA.JavaAccessBridge:

    • Add new library init parameters: ignore_callbacks and access_bridge_path

    • Bump java-access-bridge-wrapper version to 0.7.4


  • Library RPA.HTTP:

    • Fix downloading of big files

    • Bump robotframework-requests version to 0.9.1


  • Bump robotframework-pythonlibcore version to 3.0.0


  • Library RPA.Email.Exchange: Add keyword Save Message to save message in EML format


  • Library RPA.JavaAccessBridge: Bump java-access-bridge-wrapper to latest version

  • Library RPA.Database: Add parameter autocommit to connect_to_database keyword (now only used with pymssql module)

  • Library RPA.Email.Exchange: Fix List Messages when received_by is missing from the email


  • New experimental library RPA.JavaAccessBridge

Library requirements:

  • Windows only

  • Java Access Bridge is enabled

  • Environment variable pointing to the Access Bridge DLL file is set

See more details in library documentation.

Feedback is highly appreciated via Slack or Github issues!

  • Library RPA.Email.ImapSmtp: Allow sending message with empty account and password


  • Library RPA.Database: Return rows for SHOW and EXPLAIN statements

  • Library RPA.Desktop.Windows: Add parent as possible locator


  • Library RPA.Excel.Application:

    • Add keyword Export As PDF

    • Add automatic document and application closing to prevent file being locked

  • Library RPA.FTP: Add keyword parameters to support FTP over TLS/SSL (FTPS)

  • Library RPA.Desktop.Windows: Add point of origin parameter to Drag and Drop

rpaframework-google: 0.2.3

  • Fix authentication issue when using Robocorp Vault

  • Fix keyword Synthesize Speech


  • Library RPA.Excel.Files:

    • Add keyword Set cell format for adjusting cell number formatting

    • Add new keyword aliases Get cell value and Set cell value

    • Improve keyword documentation

  • Library RPA.Excel.Application: Add option to save in legacy formats

  • Library RPA.Desktop: Fix issues with Press keys on Windows


  • Library RPA.Dialogs: Print full traceback from errors when opening dialog

  • Update optional numpy and opencv dependencies


  • Library RPA.Dialogs:

    • Add unique name and icon for dialog window

    • Fix MacOS keyboard focus and dock icon issues


  • Bump PyObjC versions from 6.x to 7.x, to fix possible API version errors with MacOS


  • Library RPA.Dialogs:

    • Fix automatic height calculation on Windows

    • Fix element clearing if dialog throws exception

    • Fix errors in keyword examples


  • Updated rpaframework-pdf dependency


  • Fix use-robocorp-vault script error when creating devdata/env.json file


  • Fix TypeError errors when creating Tables inside Robocorp Lab


  • Library RPA.Cloud.Google:

    • Available now as rpaframework-google package instead of rpaframework extra

    • Added basic support for Gmail API

    • Added keyword tags to identify keywords by service in the documentation

    • Fix regression bug with Sheets keyword Insert Values

  • Library RPA.Dialogs:

    • Open dialogs as native OS windows instead of new browser instances

    • Renamed multiple keywords and arguments, added type hints for all arguments

    • Visual upgrade to all components

    • Available separately as rpaframework-dialogs package, but still part of main release

  • Library RPA.Tables:

    • Removed support for named rows, which caused confusion and had several shortcomings

    • Added automatic argument conversion for all keywords

    • Added examples for all keywords


  • Library RPA.Email.ImapSmtp:

    • Return file paths of saved attachments

    • Fix problem with non-ASCII attachment filenames

  • Library RPA.FileSystem: Fix default argument handling (#170)

  • Library RPA.Word.Application: Add option to control opening documents in ReadOnly mode (#171)


  • Library RPA.Tables:

    • Add encoding option for CSV reading and writing

    • Add not contains and not in operators for filtering

  • Library RPA.JSON: Add indent option to Save JSON To File

  • Library RPA.Excel.Files: Add keyword Get worksheet value

  • Library RPA.HTTP: Allow string as verify parameter to give path to CA_BUNDLE


  • Library RPA.PDF: Add Set Convert Settings keyword to adjust document analysis settings from default values


  • Library RPA.PDF: Add orientation, rotate and format image properties for Add Files To PDF

  • Library RPA.Cloud.Google: Fix bug in create file properties and set initial mimetype correctly


  • Library RPA.Cloud.Google: Fix mimetype error with Drive Upload File


  • Library RPA.Email.Exchange: Fix Empty Folder keyword


  • Library RPA.Cloud.Google: Add missing service account support for Drive and Apps Script


  • Library RPA.PDF:

    • Add keywords Save Figure As Image and Save Figures As Images to save PDF Figure objects

    • Add keyword Add Files To PDF to combine images and/or a PDFs (or pages from PDF) to new PDF

    • Improved performance by setting pdfminer log level to INFO

  • Library RPA.Dialogs:

    • Add new keyword Add Password Input, see (#161)

    • Logging from keyword Request Response is now suppressed in Robot Framework logs

Thank you for submitting the pull request!


  • Library Email.ImapSmtp: Fix issue with saving attachments


  • Add new script use-robocorp-vault, which helps to setup local development run to use Robocorp Vault


  • Library RPA.PDF:

    • Restore path create feature for keyword HTML To PDF

    • Fix keyword annotation of Save PDF, which caused unavailability of the keyword

    • Update changes to this library in release notes of 8.0.0

    • Known issue about viewing PDF with form checkbox fields, see (#156)

  • Library RPA.Cloud.Google:

    • Add Sheets keyword Update Values

    • Add Sheets keyword Copy Sheet

    • Return responses from all Sheets keywords


Update to Robot Framework 4.0.

Feature highlights:

  • Native IF/ELSE syntax

  • Ability to skip tasks dynamically

  • Argument auto-conversion improvements

  • Documentation generation improvements

  • Removal of task criticality

To see the full list of changes see the official release notes.


  • Library RPA.Robocloud.Secrets:

    • Add keyword Set Secret for updating stored secrets


  • Library RPA.Email.Exchange:

    • Add keyword List Unread Messages

    • Add keyword Move Message


  • Library RPA.Browser.Selenium: Fix webdriver creation on Windows


  • Library RPA.Browser.Selenium:

    • Keyword Open Available Browser has the default option ‘AUTO’ for arguments headless and download. See keyword documentation for details.

    • Webdrivers for Chrome/Chromium and Firefox are automatically matched to the currently installed browser version.

    • Webdrivers which are still running on Python process exit are closed automatically to prevent hanging subprocesses. (#94)

    • Webdrivers are stored in the user’s home folder, to speed up browser start-up times between reboots.

  • Library RPA.PDF:

    • Refactor library into a separate package. (#97)

    • Rename keyword Add Image to PDF to Add Watermark Image to PDF.

    • Rename Get Value From Anchor to Find Text.

    • Rename Page Rotate to Rotate Page.

    • Rename PDF Decrypt to Decrypt PDF.

    • Rename PDF Encrypt to Encrypt PDF.

    • Rename Update Field Values to Save Field Values.

    • Rename Open PDF Document to Open PDF.

    • Rename Close PDF Document to Close PDF.

    • Unify keyword signatures, now keywords can be given an input and output paths. If no input path given, the library assumes a PDF is already opened by some other keyword. If no output path given, the library will output the file to output/output.pdf.

  • Library RPA.Desktop.Windows:

    • Keyword Open File return type changed from boolean to integer, to indicate the opened application ID

    • Add object key into Get Window List return data (allows advanced usage)

    • Change how field is emptied with Type Into parameter empty_field=True

  • Library RPA.Tables:

    • Add option to define column name for unknown CSV fields, and warn about header and data mismatch

    • Correctly handle source data with NoneType columns

  • Library RPA.Word.Application: Fix saving with Office 2007 and older (#146)

  • Library RPA.Cloud.AWS:

    • Add keyword Convert Textract Response To Model

    • Add model parameter to Keyword Analyze Document for getting modeled response object

  • Library RPA.Email.ImapSmtp: Set attachment header correctly (#148)


  • Library RPA.Outlook.Application: Fix ActiveDocument bug when closing Outlook

  • Library RPA.Email.ImapSmtp: Convert non-literal values in List Messages response to strings

  • Library RPA.Desktop.Windows: Add keyword Set Automation Speed


  • Library RPA.Email.Exchange:

    • Fix sub folder bug with Move Messages

    • Add keyword Save Attachments

    • Add criterion parameter to List Messages for filtering

    • Add save_dir parameter to List Messages for saving attachments

    • Add more details into returned messages

  • Library RPA.Database:

    • Fix bug with Call Stored Procedure

    • Hide details of Connect To Database from Robot Framework logs


  • Library RPA.Email.ImapSmtp: Fix errors in server folder handling

  • Library RPA.Desktop: Use correct default application when opening files on Windows

  • Fix integer handling in Notebook Print core keyword


  • Library RPA.Outlook.Application: Fix HTML email body issue


  • Library RPA.Browser.Selenium:

    • Add parameter user_agent for keywords Open Available Browser and Open Chrome Browser

    • Add keyword Execute CDP to execute Chrome DevTools Protocol commands

  • Fix issues with Windows library imports on Python 3.9


  • Library RPA.Desktop.Windows:

    • Open File performs the Open Dialog call only if windowtitle is given

    • Expose timeout parameter for Open File keyword

  • Library RPA.Browser.Selenium:

    • Keyword Open Available Browser now prints table of attempts to Notebooks on error

  • Library RPA.JSON: Add optional default for fetching values


  • Library RPA.Desktop.Windows:

    • Add keyword Refresh Window to support element re-evaluation when UI changes

    • Improve Restore Dialog keyword

    • Add experimental support for combined locators like name:element1 and type:Button

    • Add window title wildcard support for keywords starting applications and Open Dialog

    • Fix Quit Application error when using process id to quit

    • Add focus parameter to Mouse Click keyword

    • Add legacy and object attributes to element dictionary

    • Fix Wait For Element error when asserting number of elements to wait

    • Fix Open File by adding parameters to control window it opens

    • Fix Connect By Handle parameter type to int

  • Library RPA.Desktop.OperatingSystem: Add keyword Process ID Exists

  • Library RPA.Browser.Selenium:

    • Add keyword Print to PDF

    • Increase headless Chrome window size

  • Library RPA.PDF:

    • Add possibility to get textboxes (text and its coordinates) with keyword Get Text From PDF

    • Add possibility to set anchor to point or area for keyword Get Value From Anchor


  • Library Desktop.Windows:

    • Fix Open Executable error not taking control of the window

    • Address window resizing issue with Open Dialog


  • New library Crypto for common hashing and encryption operations

  • Library Cloud.Google: Improve help and error messages for rpa-google-oauth tool

  • Library Desktop: Handle locators with whitespace, allow using return values as arguments

  • Library Dialogs: Throw error if user closes browser, add timeout to response

  • Library Excel.Application:

    • Expose header argument in Create Worksheet

    • Fix issues with worksheet access in keywords

    • Deprecate argument tabname in keyword Add new sheet

    • Add more helpful error messages

  • Library FileSystem: Add keyword for reading file owner

  • Constrain version of comtypes dependency to fix issue with Windows DLLs


  • Fix issue with pip resolving incompatible chardet version


  • Library Desktop.Windows: Remove library destructor actions


  • Library Desktop.Windows: Fix possible COM exception when gathering elements from a window


  • Library Cloud.Google: Remove unnecessary log message


  • Library Cloud.Google: Fix how authentication scopes are initialized


  • Library Desktop:

    • Add initial version of OCR support

    • Add syntax for locator chaining

    • Add built-in buffer time between keyboard/mouse inputs

    • Add built-in wait period for all locators, instead of failing immediately

    • Add preview images for matched locators in Robot Framework log

  • Library Cloud.Google:

    • Add support for Apps Script service

    • Add support for Drive service

  • Library Desktop.Windows: Add more properties into dictionary returned by Get Window List

  • Library Email.ImapSmtp:

    • Add keyword Move Messages

    • Add source folder parameter to List Messages

    • Add limit to Delete Messages

    • Add keywords to add/remove labels from GMail messages

    • Add keyword Do Message Actions for performing custom set of actions on selected messages

  • RPA.Browser libraries

    • RPA.Browser.Playwright has been added, enabling use of playwright based robotframework-browser library

    • RPA.Browser was moved to RPA.Browser.Selenium, and the old import RPA.Browser is kept as deprecated alias for now

  • Library Tables: Correctly handle empty fields when filtering


  • Fix issue with pip resolving incompatible chardet version


  • Add docutils as dependency to fix robotframework-lsp support


  • Library Desktop: Fix moving mouse to image template


  • Library Excel.Files:

    • Add keyword for inserting images to worksheets

    • Fix off-by-one issue with Find Empty Row return value

  • Library Desktop:

    • Store screenshots in unique path by default, embed preview in logs

    • Resolve image templates correctly with different working directories

  • Library Excel.Application:

    • Add keyword Find First Available Cell to return free cell

    • Keyword Open Workbook will set first worksheet active by default

  • Library PDF: Fix error when parsing figures in the document

  • Library Database: Add support for pymssql database module


  • Library Tables: Add various helper keywords:

    • Merge Tables for merging tables, with an optional shared key

    • Find Table Rows for finding rows with a specific column value

    • Set Row As Column Names for setting an existing row as header

  • Library Browser: Add keyword Highlight Elements for highlighting elements that match a selector

  • Library RPA.Desktop: Fix macOS coordinate scaling when using image template locators

  • Remove dependency to python-evdev on Linux


  • Library Excel.Application: Fix for finding first available row.

  • Add missing variables for Robot Framework library scope and documentation format

  • Add more verbose library docstrings in general


  • Library Browser: Add Set Download Directory keyword

  • Library Cloud.AWS: Add keywords for Textract asynchronous operations regarding document analysis and text detection

  • Library Dialogs: Default value support for input text element (pull request #70)

  • Library Desktop.Windows: Mouse Click keyword supports now also element dictionary as target locator


  • Library Desktop.Windows: Add parameter to Get Element to prevent opening dialog


  • Library Desktop: Image template confidence changed to logarithmic scale

  • Library HTTP: Directory support for download target

  • Reduce logging in keyboard emulation keywords, e.g. Send Keys, to prevent accidentally logging sensitive information


  • Library Desktop.Windows: Add timeout parameter for keywords Open From Search and Open Using Run Dialog


  • New library JSON for manipulating JSON objects


  • Library Desktop:

    • Library scope changed to global

    • Obey default image locator confidence


  • Library Desktop: Fix case handling with default locator


  • Library FileSystem: Replace force arguments with missing_ok to match python API

  • Library Desktop: Initial release of new cross-platform desktop automation library

  • Library Dialogs: Add library initialization arguments to change server port and form stylesheet

  • Library Robocloud.Items: Remove invalid assert on file overwrite

  • Library Browser:

    • Add new option to allow missing elements with status keywords such as Is Element Visible

    • Set Chrome argument disable-dev-shm-usage by default in all environments


  • Library Images: Fix duplicate region matches, timeout option

  • Library Robocloud.Items: Allow saving files with FileAdapter


  • Library Robocloud.Items: Fix relative path inputs, always return absolute paths.


  • Library Robocloud.Items: Fix accessing unsaved files from items

  • Library Tables: Fix creating empty table with predefined columns

  • Library Database: Fix Query keyword bug when SELECT result is empty


  • Library Robocloud.Items: Support for files in work items

  • Library Dialogs: Type hinting and documentation updates

  • Library Images: Raise error when timeout has been reached


  • New library Dialogs which allows getting input from the user via HTML forms


  • Library Browser: Add keyword Get Browser Capabilities

  • Library Cloud.Google: Add Google Sheets service support


  • Library Database:

    • Drop dependency robotframework-databaselibrary

    • Some of the old keywords do not exist anymore and some new keywords have been added (NOTE. backwards compatibility breaking change)

  • Library PDF: Keywords Template HTML To PDF and HTML To PDF will now create directory structure and overwrite existing file by default.

  • Library Images: Remove Save Format option from Take Screenshot and Crop Image keywords. Change screenshotting library from pyscreenshot to mss.


  • Library Browser:

    • Add keywords Does Alert Contain and Does Alert Not Contain

    • Fix Screenshot to explicitly call Notebook Image to insert images into notebook when that is available

  • Library Robocloud.Items: Allow NoneType as default for variables


  • Library Browser: Add keyword Open User Browser which opens URL with user’s default browser. Allows using browser’s existing cache. To control this browser see keyword Attach Chrome Browser or use Desktop.Windows library to control the browser


  • Library Browser: Change keyword Screenshot to embed Base64 image string into log and save same Base 64 string to a file as png image (NOTE. backwards compatibility breaking change)

  • Library Desktop.Windows:

    • Fix Windows backend handling to be consistent within a library

    • New keyword Set Windows Backend


  • Upgrade Robot Framework to 3.2.2

  • Upgrade pyscreenshot to 2.2

  • Library Email.ImapSmtp:

    • Add keyword examples (documentation)

    • Change List Messages to return list of dictionaries containing message attributes. In addition there is attribute Has-Attachments for each message (NOTE. backwards compatibility breaking change)

    • Add keyword Save Attachment which can be used save attachments from a message. Can be used when looping through messages received by List Messages

  • Library Desktop.Windows:

    • Add keyword examples (documentation)

    • Add keyword Get Text. Returns dictionary of possible values due to many implementation methods

    • Add parameter empty_field to keyword Type Into which will empty field before typing into a field

    • Add keyword Wait For Element which will search for element with timeout

    • Add more information about started app instances into application list

  • Library Desktop.OperatingSystem:

    • Add keyword examples (documentation)

    • Add keyword Kill Process By PID to terminate process using its identifier

  • Library Browser:

    • Add keyword examples (documentation)

    • Add proxy parameter for keywords Open Available Browser and Open Chrome Browser. Works only for Chrome at the moment


  • Desktop.Windows: Fix window dialog handling in Open Executable keyword

  • New Archive library for ZIP and TAR operations

  • core.notebook: Add parameter count to control row output from keyword Notebook Table


  • Browser: Do not EMBED screenshots when in notebook run mode

  • Excel.Application: Add keyword Read From Cells

  • RobotLogListener: Add keyword Mute Run On Failure to mute SeleniumLibrary’s run_on_failure behaviour

  • Email.ImapSmtp: Fix filetype issue when adding attachments to emails

  • Tables and Excel.Files: Move table trimming actions from Excel.Files library to Tables library. Added parameter trim to Tables keyword Create Table which is by default False

  • PDF: Fix input field setting and saving to PDF


  • Browser: Fix missing default argument


  • Browser:

    • Attempt fallback browser if webdriver unpacking fails

    • Attempt to use webdriver from PATH

    • Add option to define Chrome profile path and name

    • Add option to define Chrome profile preferences

    • Add keyword to attach to existing Chrome instance

    • Add keyword for waiting and clicking elements

    • Disable Chrome’s password manager prompts

  • Robocloud.Items: Allow empty list (or otherwise falsy value) as raw payload

  • Desktop.Windows:

    • Add keyword Type Into

    • Remove confusing placeholder keyword(s)

  • Excel/Word/Outlook.Application: Use early binding to ensure constants exist

  • Tables: Fix issues with invalid internal method calls

  • Email.ImapSmtp:

    • Use given IMAP port

    • Fix confusing error message if TLS not supported


  • Browser: Add alias support for Open Available Browser

  • Browser: Fix indexing issues with multiple chromedriver instances

  • Browser: Reduce superfluous logging from keywords

  • Robocloud.Items: Add keywords for reading and writing full payloads


  • New FTP library, which interacts with FTP servers

  • Use RPA.core.notebook* library to output data into Jupyter Notebook (in Robocode Lab especially). Support added to keywords in the following libraries: **Browser, FTP, HTTP, Images, PDF, Twitter, Tables and Robocloud.Items

  • Browser sets default screenshot directory to EMBED which means that when using keywords Capture Page Screenshot or Capture Element Screenshot without filename argument the image is embedded into log.html as Base64 image


  • Robocloud.Secrets: Add support for Robocloud end-to-end encryption

  • FileSystem: Add exist_ok argument for Create directory keyword

  • Tasks: Fix support for FAIL status in schema actions

  • Tasks: Allow inlining execution graph in log (enabled by default)

  • Excel.Files: Always fallback to legacy mode on error

  • Tables: Fix manual override for CSV dialect, document arguments

  • Desktop.Windows: Attach to windows more reliably, and show helpful message on error


  • FileSystem: Fix keyword Normalize Path to match built-in library, and add new keyword Absolute Path for previous functionality.

  • PDF: Fix keyword Template HTML To PDF to handle HTML content from non-English Chrome browser.

  • PDF: Add keyword HTML To PDF which takes HTML content as string parameter.

  • Email.Exchange: Fix Authorize when autodiscover is set to False. Add missing parameters to keyword.

  • New Notifier library, which allows using notification services like Slack, Gmail, Pushover etc.


  • Browser: Fix for regression in Chrome’s Webdriver version handling

  • Email.ImapSmtp: Fix how IMAP server is initialized

  • Fix for issue with missing files when upgrading from version 1.x


NOTE: Changes to Email.ImapSmtp and Email.Exchange are backwards compatibility breaking changes.

  • Browser: Added support for locator aliases

  • Browser: Upgrade SeleniumTestability plugin to 1.1.0 version

  • Browser: Remove “..controlled by automated..” infobar by default when using Chrome

  • Email.ImapSmtp library initialization parameter port split to smtp_port and imap_port (breaks backwards compatibility)

  • Email.ImapSmtp: Add keywords for folder management and marking messages as read/unread and flag/unflag

  • Email.Exchange library keyword list_messages parameter order changed - new order folder_name, count (breaks backwards compatibility)

  • Email.Exchange: Add keywords for folder management

  • Email.Exchange: Add keywords Wait For Message and Move Messages

  • Core functionality separated into rpaframework-core package


  • Robocloud.Items: Add keywords for listing and deleting variables

  • Windows: Add keyword Get Window List

  • Windows: Fix keywords Connect By PID and Connect By Handle


  • New features for Browser library

    • Set headless mode with environment variable RPA_HEADLESS_MODE=1

    • New boolean returning keywords like Is Element Visible and Does Page Contain

    • New keyword Get Element Status to get 4 different element states in a dictionary

    • Added plugin SeleniumTestability which can be enabled with Library  RPA.Browser  use_testability

    • In total 40 new keywords

  • OperatingSystem: Improve error messages on keywords restricted to specific operating systems


  • Cloud libraries: Fix use_robocloud_vault to support also FileSecrets


  • Add support for Robocloud Vault for the following libraries:

    • Cloud.AWS

    • Cloud.Azure

    • Cloud.Google

  • Images: Automatically convert points/regions from strings

  • Outlook.Application: Add keyword Wait For Message


  • New Tasks library, which allows using flow control between tasks

  • New Cloud.Azure library, which supports following Azure APIs:

    • Text Analytics

    • Face

    • Computer Vision

    • Speech

  • Cloud.AWS: Fix parameters and return options for keywords Detect Document Text and Analyze Document


  • Excel.Files: Add keyword for setting cell values

  • Excel.Files: Mitigate compatibility issues with file extensions


  • Excel.Files: Fixed double close issue with workbooks

  • Excel.Files: Ignoring columns with empty header

  • Tables: Improved handling of non-string columns


  • msoffice: Fix. Call close document only on Word documents

  • Browser: Fix Geckodriver downloading version based on Chrome version

Thank you for providing fix for the msoffice


  • Tables: Added keywords Get table slice and Rename table columns

  • Excel.Files: Fixed various issues with appending data to empty worksheet

  • Outlook: Fix attachment handling


  • MAJOR change. Package has been renamed to rpaframework. The old PyPI package will continue to work for a while (not receiving updates anymore), but it will be removed before official GA launch in the beginning of July.


  • Cloud.Google: Added as optional package, needs to be installed with pip install rpa-framework[google]

    Support for services:

    • Google Cloud Natural Language

    • Google Cloud Speech to Text

    • Google Cloud Storage

    • Google Cloud Text to Speech

    • Google Cloud Translation

    • Google Cloud Video Intelligence

    • Google Cloud Vision

  • Excel.Files: Minor documentation update


  • Email.Exchange: Fix parameter handling for kw send_message


  • Email.Exchange: Add support for HTML content, attachments, and inline images

  • Email.ImapSmtp: Allow sending inline images - parameter images for kw Send Message

  • HTTP: Return response of Download keyword (including content)

  • Cloud.AWS: Due to boto3 dependency size, library requires pip install rpa-framework[aws] to use


  • New library: Cloud.AWS, supporting following services:

    • Comprehend

    • S3

    • SQS

    • Textract

  • Tables: Add keyword Get table dimensions, allow setting arbitrary cell value

  • New library: Twitter


  • Updated Robot Framework to 3.2.1


  • Email.ImapStmp: Fix attachment handling for kw Send Message

  • Excel.Application: Add keyword Run Macro

  • PDF: Add keywords:

    • Parse PDF

    • Get input fields

    • Update field values

    • Set field value

    • Set anchor to element

    • Get value from anchor

    • Add image to PDF

    • Save PDF

    • Dump PDF as XML


  • Tables:

    • Note: This change is backwards incompatible

    • Removed limitation of column names being valid Python identifiers

    • Default iteration method changed to dictionaries instead of namedtuples

    • Keywords that return rows or columns now harmonized to return them in dictionary format by default, with option to use lists

    • Table head/tail keywords changed to return new Table instance

    • Added keyword for trimming extra whitespace from column names

  • Excel.Files: Trim column names in addition to rows


  • OperatingSystem: psutils dependency marked as Windows only because it has wheel files only for Windows


  • HTTP:

    • Add keyword Download

    • Add overwrite option to HTTP Get

  • FileSystem:

    • Fix string interpolation in error messages

    • Add force option for file removal keywords

    • Add overwrite option for file create keywords

  • Tables: Add keyword Trim empty rows

  • Excel.Files:

    • Add keyword Read worksheet as table

    • Auto-convert integer values in .xls worksheets


  • PDF: Add Encrypt PDF and Add Pages To Source PDF keywords.

  • Windows: Add aliases for element locators, for better Robocode Lab compatibility

  • HTTP: Add keyword HTTP Get

  • Tables: Fix missing cell values for sanitized columns


  • Fix: PDF Template HTML to PDF keyword


  • Fix: Windows drag_and_drop keyword

  • New library: Netsuite

  • PDF: add new keywords


  • Windows: Add keyword for clicking image templates

  • Windows: Add keyword for drag and drop


  • Browser: Fix Open Available Browser kw parameter bug


  • New library: Salesforce

  • New library: Database


  • Email.ImapSmtp: Separate how IMAP and SMTP are handled in the library

  • Windows: Improve documentation for keys

  • Browser: Manage webdrivermanager download error


  • Browser: Restructure how driver downloads and logging are handled


  • Browser: Detect Chrome and chromedriver versions. Download driver if they differ

  • Images: Don’t template match same region multiple times

  • Tables:

    • Added new keywords: Set table row, Set table column, Set table cell

    • Renamed keyword Get cell value to Get table cell


  • Browser: Store webdrivers in temporary directory


First public release of RPA Framework