Release Date: 11th June 2018 Version number: 2018.2.2
The second minor release of this year brings forth a lot of improvements especially in terms of flexibility and scalability, with emphasis on the licensing aspects. As with every new version, we kept a security-first mindset and have therefore built upon the user password management system, as well as treated various API particularities.
In our path to AI we have implemented multiple activities that employ intelligent OCR through the ABBYY FlexiCapture engine and better text analysis through Stanford’s free natural language processing API. Support for executing Python code was added, as well as a manner in which to manipulate data tables more efficiently.
Our efforts to make processes DPI and zoom level independent have proven fruitful, while text visibility and readability in RDP sessions have been improved for Robots. Scroll down to view more details and many of the other functionalities we added to the UiPath suite.
New Features and Enhancements
Licensing your Robots through Orchestrator now offers a lot more flexibility and can be utilized to meet a variety of deployment needs.
For those using the same username on multiple machines, you might want to know that a Named User license for your Attended and Development Robots is available. If you are working in shifts, then Attended and Development Concurrent licensing models might be your thing. In this case, licenses are consumed only when users are actually using their Robots, a feature that can decrease your licensing needs significantly.
Unattended and NonProduction licenses facilitate users to define the number of processes that can be executed simultaneously. This model helps you get a clear picture of your license usage and, most importantly, enables a smooth management of the license distribution on machines.
All the new licensing models are available in the Regutil tool, if you extract license information, so you don’t need to worry - everything is prepared. Just also remember to update your Robot.
Coming to the aid of those that work without Internet from time to time, we are introducing offline support for Attended Robots. This means that these Robots retain their license for a configurable number of hours, and thus reducing any possible downtime. As with all changes, for those that prefer a non-UI interaction with Orchestrator, the possibility of changing the number of hours your Robot runs offline is available in the API, as a new parameter for the /odata/Settings/UiPath.Server.Configuration.OData.UpdateBulk endpoint.
It is no longer possible to edit the Username, Machine, and Type details of a Robot while it is busy.
The control you have over your Robots is greater than ever. Debugging rights are now available for all types of Robots, allowing you to go under the hood in Studio and run your workflows in debug mode.
Dedicated Reviewer’s Page
If one of the things you are dealing with is reviewing queue items in Orchestrator, then you should know we created a separate page on which you can see all the items you have to review, regardless of the queue they are part of.
Attended Jobs in Orchestrator
Troubleshooting attended jobs has gotten easier to handle - if an agent starts a job on an Attended Robot, this is logged and displayed in Orchestrator. Attended jobs can now be included in usage reports from a centralized location. For more information, see About Jobs.
Azure AD SSO Support
Azure Active Directory federated single sign-on has been implemented. This should come in handy for users that deploy their Orchestrator instances in Microsoft Azure, as it allows you to implement a simple authentication flow.
We know that migrating packages from one Orchestrator instance to another, such as moving from test to production, can be quite a pain at times. We have therefore added the possibility of downloading packages directly from the Package Versions window. Of course, this functionality is also available in the Orchestrator API. Let us know how it works out.
The communication between the Robot and Orchestrator is now enhanced and more secure. Robots need particular permissions to publish packages to Orchestrator, as well as download them. Internal and external feeds rely on different authentication methods. Please note that this feature only works with v2018.2 Robots and Orchestrator.
We have added an even better layer of security for each individual Orchestrator user. Resetting the password is the first step that needs to be performed before logging in to the application. To view exactly how to do this, click here.
Additionally, the password strengths requirements are now displayed when you reset it, to help you get it right from the start.
To help ease the Orchestrator’s load, we added a new endpoint to its API, StopJobs. It enables you to stop or kill any number of jobs, while only sending one request to Orchestrator. This call is also used in the user interface, so expect some performance improvements on the Jobs page.
Requesting the permissions of a specific role is now simpler, as we implemented the possibility of making this call according to the role id. Additionally, it is also possible to make PUT and DELETE calls. An example of such a GET call is available in the API documentation, here.
A new property, hasPermissions, has been added to the GetCountStats endpoint to better inform users about their permissions for each Orchestrator entity.
User Experience and Performance
Downloading large .csv reports about your transaction items, robot, or job logs is more efficient, as we enabled the compression of dynamic content in Orchestrator.
Additionally, to help you get a better view of what your Robots are doing if you store logs in Elasticsearch, they are now displayed in the Logs page.
The drop-down filters throughout the Orchestrator user interface have been redesigned to ensure a consistent view, as well as efficient navigation.
To help you better determine the state in which a package is while manually uploading it, a progress bar has been added.
Split Robot Binaries
Each Robot component now has its own executable, namely the Service, the Executor, the Tray Agent, and the Command Line Client. This is not a breaking change, because the Robot behaviour is the same.
Package Handling Authorization and Authentication Changes
The location of the UiPath.settings file is now conditioned by the following:
If the Robot is running as a Windows service it can be found in the %ProgramData%\UiPath folder, and only administrators can access it.
If the Robot is not running as a Windows service it is found in the %LocalAppData%\UiPath directory and is available per user. Please note that a user does not have access to the configuration settings of another user.
DPI and Zoom level Independent support
Previously, support for non-standard DPIs was limited. Some workflows could not properly run on a different DPI than the one they were designed in Studio. Now, workflows execute regardless of the design time DPI settings.
The ScaleCoordinates migration tool
Some existing workflows might have been designed at a non-standard DPI (e.g. scale factor of 150%), in which case, execution would have correctly worked with the DPI kept at 150%. With the new DPI independent feature, the old coordinates saved in workflows are incorrectly perceived as normalized.
The ScaleCoordinates tool provides a way to normalize coordinates in existing projects. For example, it can be used to scale coordinates in workflows saved with a factor of 150% in previous versions of Studio and run at 100% in 2018.2. It can also be used to adapt a normalized project to work with old Robots on a non-standard DPI.
In order to ensure the same environment for execution as for design in RDP sessions, the Font Smoothing property is now available, and can also be managed from Orchestrator. This enables the ClearType option on the RDP automation session for Robots, ensuring that the execution environment is identical to the design.
Universal Windows Platform Apps Support
In case UWP apps were your thing, you might be happy to know that you can now fully integrate them in your automation projects. The UI elements are better recognized and selectors easier to build.
NuGet Client 4.0
The NuGet client is updated to version 4.0 to ensure support for NuGet v3 feeds. This also enables the use of multiple versions of Activities per user profile, therefore if you update one of your packs, it no longer affects the others that are using the same machine.
Processes are now installed per-user (%USERPROFILE%.nuget\Packages), instead of machine-wide (%PROGRAMDATA%\UiPath\Projects). Previously, when multiple Robots were running a process simultaneously, some might have had problems handling temporary and output files with relative paths. Now you are safe to use relative paths in your workflows since each Robot uses its own installation of the process.
Verbose Tracing by All Users
For faster troubleshooting, we have enlarged the circle of user types which can perform verbose tracing on the Robot Executor and Service. Administrators, local, and domain users benefit from verbose tracing. However, only administrators are allowed to start low level tracing for the .etlfile.
The Locals panel now also displays more complex variables besides the primitive types. This means you can see whenever any other kinds of variables are used, and their value, which makes debugging a whole lot less complicated.
To help the GenericValue variable reach its true potential, we have made it support most of the common .NET methods, improving the overall productivity of RPA developers.
Since selectors are a very important part of UI automation, this release brings several enhancements to the Selector Editor, as follows:
To make editing selectors handier, the Selector Editor can now be opened from the body of activities, in the Workflow Designer panel. The Edit Attributes section now displays the attribute names as well as their values. Also, collapsing the Edit Selector section no longer hides the Open in UI Explorer button.
The .exe installer is no longer automatically updated if activated with an Enterprise license. Moreover, messages regarding license activation errors caused by multiple activations on a single machine have been humanized and now present a clearer explanation on the actual problem you are facing.
JavaFX apps are now supported and can be fully automated.
Studio, UI Explorer and the Robot now have different icons, to make it easier to identify them when switching apps.
Four new activities have been created for the enhanced manipulation of DataTable variables:
Lookup Data Table - Modeled after the Excel VLOOKUP function, it searches for relative cell values in a data table.
Filter Data Table - Enables you to select filtering conditions for a data table with the help of a wonderful wizard.
Sort Data Table - Sorts a data table in ascending or descending order based on the values in an indicated column.
Remove Duplicate Rows - Removes the duplicate rows from a specified DataTable variable.
We’ve added a new Continue activity to the Core pack. It enables you to streamline conditions inside a For Each loop, without nesting If activities, by skipping iterations.
The Timeout property has been implemented in the Invoke Workflow File activity. It enables you to wait for a specified amount of time before invoking a workflow. Please note that adding this property does not cause a breaking change, as the property’s default setting is to be inactive.
The Priority property of the Get Queue Items activity is now more intuitive, as you can choose the priority level directly from a drop-down.
To step up on our OCR game, coming to the aid of your digitization efforts, we have integrated the capabilities of the ABBYY FlexiCapture SDK into the new UiPath.IntelligentOCR.Activities pack, which contains the following:
IntelligentOCR Scope - Initializes the ABBYY FlexiCapture engine and provides a scope for all IntelligentOCR activities.
Classify Document - Enables you to classify a given document based on an ABBYY classifier file and one or more templates.
Export Document - Exports FlexiCapture documents to one of the .csv, .xml, .xls or .json formats.
Get Field - Retrieves a field from a specified FCDocument variable and returns it as a FCField variable.
Get Table - Retrieves a table from a FCDocument variable and returns it as a DataTable variable.
Process Document - Processes a document with the FlexiCapture engine and converts it to a FCDocument variable which can be used in other activities.
Validate Document - Validates a processed document contained in a FCDocument variable by using the ABBYY SDK and returns it in the same format.
The UiPath.Python.Activities is a new activity pack, created to enable running Python scripts directly from a workflow. It contains the following activities:
Python Scope - A container which provides a scope for Python activities.
Get Python Object - Retrieves the value inside a Python object as a .NET type to be used in a workflow.
Invoke Python Method - Helps you run a specified method from a Python script directly in a workflow.
Load Python Script - Converts your Python code to a PythonObject variable.
Run Python Script - Enables you to execute Python code. You can input the code directly in the activity or provide a file path for it.
To aid in your document classification and sentiment analysis endeavor, the Stanford CoreNLP engine has been implemented in the Cognitive pack, through several new activities:
Text Analysis - Analyzes a specified text by using the Stanford CoreNLP Natural Language Annotation Technology.
Get Components - Analyzes a sentence, returning a list of Tuple variables formed from each word and its corresponding analyzed element.
Get OpenIE Relations - Extracts the OpenIE relations of a sentence and stores them in a Tuple variable.
Get Sentence Sentiment - Returns a Tuple variable containing a sentence’s sentiment and sentiment value.
The IBM Watson Text Analysis activity has been refactored in order to maintain functionality, as the service it was based upon was deprecated.
Support for the FTP activity pack is no longer available. However, please note that a newer version of these activities is available in the Community feed. Additionally, you might also want to know that the Windows Credentials pack has been made open-source. Feel free to collaborate on our Github repositories.
The following activities versions are included in the local activities feed of UiPath Studio:
UiPath.Cognitive.Activities - v2.0.6716.19435
UiPath.Database.Activities - v1.1.6660.26865
UiPath.Excel.Activities - v2.3.6682.26635
UiPath.IntelligentOCR.Activities - v1.0.6725.18428
UiPath.Mail.Activities - v1.1.6562.21018
UiPath.PDF.Activities - v1.1.6732.21973
UiPath.Python.Activities - v1.0.6716.23055
UiPath.Terminal.Activities - v1.1.6464.20815
UiPath.WebAPI.Activities - v1.1.6479.13209
UiPath.Word.Activities - v1.1.6479.13205
The Orchestrator on-premise installation or upgrade scripts, all bundled in the UiPathOrchestrator.zip archive, have been deprecated. This means that they are no longer available for download and cannot be used for installing or updating your Orchestrator instance. But don’t despair! The Windows Installer is here to stay, and can now be used to set up or upgrade a multi-node environment.
Last but not least, you might want to know that all the system job and schedule tables are now also created or updated during the installation process, for both the Azure script or Windows Installer. As a result, the performance of the database has been improved, especially in multi-node environments.
The queue name is now displayed in the dedicated Audit view when modifying or deleting your comments, regardless of whether the queue uses unique or nonunique references.
The Stop Strategy was not displayed in the Audit Data window for stopped or killed jobs.
In the Audit Data window, the source and Robot details were not displayed for jobs that had been both started and stopped manually.
If you edited a transaction comment in Orchestrator using Firefox or Internet Explorer, the audit trail was registered two times.
If a user performed actions which were audited and then it was deleted, the name of the user was no longer visible in the Audit page.
A license key authentication header, X-ROBOT-LICENSE, has been added to check the /api/RobotsService/SubmitHeartbeat, /api/RobotsService/SubmitJobState, and /odata/Settings/UiPath.Server.Configuration.OData.GetServicesSettings endpoints.
The NuGet.Packages.ApiKey and NuGet.Activities.ApiKey parameters now support arbitrary strings, to enable you to incorporate feeds that provide this feature.
When using the API, it was possible to add the same Robot to the same Per Robot asset. Now, a validation was put in place that prevents you from doing this.
When making PUT requests to the Robots endpoint, the Robot username and password are not updated when you send the same username and a null or empty password. If a new username is sent with a null or empty password, the Robot credentials are updated and the new username is used.
The user that is assigned as the reviewer of a transaction now needs View permissions on Queues and Edit on Transactions.
Updating a Robot with a new username and a blank or null password did not delete the old credentials from the database.
If you change the Robot on an Asset per Robot, its value is automatically reset.
If you changed the name of a credential asset, you were also required to change the password.
In Internet Explorer, it was possible to add space characters in numeric fields, in the Add Robot window, in the Runtime tab.
The Robots drop-down list in the Add Asset window displays 20 items. Use the search functionality to find your Robot faster.
In large deployments with over 1500 Robots, if you killed all the Robots in the same time, some still appeared as Available after 3 minutes.
If the logs reached a maximum load in the database, Orchestrator stopped responding. Now, the logs load no longer affects the web application.
If the connection between Elasticsearch and Orchestrator was very slow, duplicate log entries were registered. Now the log writing mechanism was optimized and this behavior is corrected.
In multi-node Orchestrator environments, the Processes and Packages pages were slow to load.
The Orchestrator Azure script is now deployed by default with Quartz clustered-mode on, as Azure Web apps are by default in a cluster.
Fixed an issue that prevented users from commenting and viewing the details of transactions if the Specific Content field was not populated.
The name of the Robot that processed a transaction was no longer displayed if that Robot was deleted.
To make configuration changes in the tenant settings, you now require Edit permissions on the Settings page.
In some cases, in the Settings page, the Timezone selection did not properly work.
When editing the details of a user in the Users page, the User Profile page had to be refreshed to display the changes.
Fixed an issue that prevented processes that had their associated packages deleted to still be displayed in the Robot tray.
It was not possible to search by environment name in the Robots page.
The Robot did not install the missing dependencies if the Activities folder was corrupt, which caused the execution of the workflow to fail.
The communication channel between the Robot and Orchestrator caused a considerable response time from the Robot or a sudden termination of a workflow if the message size was exceeded. The default maximum size of these messages has been increased to 1MB, thus solving this issue. This can be tweaked to your advantage, and you can find out more here.
Fixed an issue that caused Robots to execute workflows using an older version of an activity package if others were not available. Now, an error is thrown if the indicated version or a newer one is not available.
Executing workflows in Studio 2018.1 that were created in Studio 2017.1 would send inconsistent log levels to Orchestrator if they were configured either in Orchestrator or the Robot Agent (Tray).
The folder containing a previously executed workflow was locked even after closing Studio, in the Community Edition (.exe).
The Hover and Click activities did not properly click on or hover over Internet Explorer, Chrome, and Firefox elements.
In rare cases, Studio remained in a running state after the workflow execution had ended.
In the 2017.1.6612 version, inconsistent selectors for certain Java apps were generated.
Detection of elements in Oracle ERP application broke if the app was restarted and Internet Explorer is not.
Chrome UI automations returned an error if the browser session was killed and then restarted.
Rarely, Internet Explorer elements were not properly recognized after considerable consecutive executions.
The VirtualName attribute was removed because it is not a recommended attribute to build selectors with.
The Selection Preview window would return no feedback if the cursor was positioned in the top-left corner of the screen after choosing to Select Target Element.
Some Java 4 and 5 UI elements were not properly recognized in various scenarios.
Running a workflow with a non-serializable out argument returned an error. This also happened when trying to invoke the workflow with the Isolation property enabled.
Using the chrome://restart command to restart the browser after installing the Chrome extension caused UI Explorer to throw an error when selecting elements in Chrome.
The name of an invoked .xaml was improperly displayed, if the file name contained a dot (“.”). Now, any character that is not a letter or a digit is replaced with an underscore character ("_").
The autosave interval remained at its default 30 second value even if you modified it in the uistudio.exe.config file.
An error was displayed if you edited a selector that contains dynamic elements in the Selector Editor window and then switched to UI Explorer.
The Validation icon did not appear in the Expression Editor window while editing selectors.
In UI Explorer, if you used the Repair feature on a partial selector it was transformed into a full one.
Fixed an issue that caused UI Explorer to crash when indicating elements in drop-down lists in the Options section of Microsoft Excel.
When indicating an element in an activity inside an Anchor Base activity for the second time, the Selector Editor window stopped responding.
When opening the Selector Editor from the Properties panel, Studio was minimized.
When validating a selector that used a relative element, its attributes were lost. On some apps, this issue also caused an exception to be thrown by UI Explorer.
An error was thrown when attempting to validate a relative element in UI Explorer for an activity inside an Anchor Base container.
In Windows Explorer, when the view was set to Details or Small Icons mode, using the Recorder to click an icon generated a Type Into activity, instead of a Click.
When using the Web Recording wizard, the Open Browser command did not auto-fill the URL property field of the generated activity.
On machines with multiple displays, the informative screenshots of activities with the Indicate On Screen feature were not taken correctly.
Trying to open an app by using the recording wizard did not auto-fill the Application Path property field of the generated activity.
Trying to select a menu item in UI Explorer on a 64-bit Notepad window threw an error.
An exception was thrown when opening and closing the Data Definition window when scraping data in a Java app or a PDF file.
The queueItemReviewStatus log field was not populated in Execution Logs.
If the Position property was set to Center in the Click activity, it failed to click in the center of the specified UI Element.
A selector containing the nav up tag did not display anything that was below the tag in UI Explorer.
If the variable creation shortcut, Ctrl+K, was used in a property field, and the user clicked outside the field before pressing Enter to confirm the variable name, the Workflow Designer panel threw an exception.
After clearing a selector in the Selector Editor or UI Explorer, clicking OK didn’t save the changes.
For some activity packages, the View Project Information links in the Package Manager window did not lead to the corresponding pages.
The Click activity threw an error if no selector was assigned to it.
The Hover activity did not work when used in Internet Explorer, on a Windows 10 machine.
The Set Asset activity threw an error even if the ContinueOnError property was configured.
The Load Image activity threw an exception when trying to process a large image.
The Add Transaction Item activity did not display the ContinueOnError property.
The Set Asset, Set Credential, and Get Queue Items activities required exact case matching with objects in Orchestrator.
The Generate Data Table activity added more columns than needed when creating a DataTable variable.
The Break activity could not stop the execution of a For Each activity if placed inside a Try Catch activity.
Scraping data with the Microsoft OCR engine failed if the WordsInfo property was selected.
An error was thrown when you clicked a button that closed a contextual menu of an app with the Click activity that had the SendWindowMessages property selected.
The Get Queue Items activity did not throw an error if the QueueName property had an input longer than 50 characters.
The Type Into activity did not record passwords when generated with the Recording Wizard.
If you added an empty space character in the Database Name field of the UiPathPlatform.msi wizard, the local machine was used as the SQL server host, when you installed Orchestrator. Now, this character is no longer accepted.
The update of a v2016.2 installation failed if you used the command line in silent mode and added Orchestrator.
Extra validation has been added to the Database Name field of UiPathPlatform.msi, and now no longer supports the following special characters: empty space, , /, *, :, ?, ", <, >, |. Additionally, the maximum accepted length is 123 characters.
If the activities path was customized in the web.config file, the upgrade did not add the new activities in that folder, but in the default directory.
If you upgraded your Orchestrator using the Windows Installer from a 2017.1 version to v2018.1, the installation folder was not moved from C:\inetpub to C:\Program Files (x86)\UiPath.
If you tried to upgrade an older version of Orchestrator and provided a custom installation path, the directory of the older installation was still used.
After a clean install or update of Orchestrator, an error message was displayed in the Event Viewer, although the website was working properly. Now the error no longer appears.
If you uninstalled Studio, Robot or Orchestrator through the Windows Installer, an error message was displayed in the Event Viewer, although no functionality of the product was broken. Now the message no longer appears.
If you restarted an Orchestrator website with multiple instances hosted in Azure, only the first machine successfully connected to the SQL server, while the others threw an error. This was fixed by moving the creation of the system job and schedule tables at the install or update time.
The value of the LicenseKey parameter is no longer returned when calling the /Sessions?$expand=Robots or /Robots endpoints. Now it is returned only when making requests to the /odata/Robots(Id) endpoint, if you have edit permission on the Robot.
To edit Orchestrator system schedule Cron triggers you have to enable automatic migrations in the web.config file.
Now you have to specify a Project.json file when running your project from the UiRobot.exe (command line) client. Running .xaml files is still supported, but the workflow must be inside of a project folder.
In Enterprise installations, a custom activity feed can only be used in workflows started from Studio on that user. Starting a job on the same machine from Orchestrator or the Agent (Robot Tray) results in the Robot not being able to retrieve the appropriate package. To avoid such scenarios, you should upload the activity package to Orchestrator Activity feed.
The IsNullOrEmpty() method can no longer be called directly on string variables. The workaround for this issue is replacing the method with String.IsNullOrEmpty(stringVariable).
Licensing v2016.2 Robots on a v2018.2 Orchestrator is not compatible. We recommend upgrading your entire UiPath suite to v2018.2 to fully take advantage of the new flexible licensing model offered.
When updating to v2018.2 from an older version, if you have High-Density Robots set up, the number of runtimes per machine is automatically set to 1, and not the total number of Robots on that machine. Please manually edit the runtimes per machine after updating.
You are required to restart the UiPath Robot after you upgrade your Orchestrator or Robot to v2018.2 on all Robot machines connected to Orchestrator.
If you use Elasticsearch to store your Robot logs, please note that only 10.000 entries can be queried in the Logs page. Please use the search to better refine the results displayed.
If you update your Orchestrator instance from v2017.1 to 2018.2, the previous and current values of global and per Robot assets are not displayed in the Audit Data window if they are updated.
The selection of Active Accessibility elements in Universal Windows Platform apps is not possible in .exe Studio installations.
The 2017.1.6612 .exe version of Studio does not auto-update to newer versions.
The .exe installer fails if you try to update Studio while it is running and has an activity that is connected to a UI Element, such as Click.
On a machine with two monitors, web page element detection is imprecise in a Chrome instance opened on a monitor with 125% DPI and moved to one with default DPI. In such scenarios, it is recommended to either minimize and restore, maximize, or resize the Chrome window.
The Select Item activity throws an error if the drop-down menu it targets is not clicked before.