Conditional triggers
In FRENDS 5.1, there is now a new "Conditional" trigger type. It is meant for situations where you need to poll e.g. a backend system or service, and start a Process if there is work to do.
Previously, you would implement this polling with a Schedule trigger, adding a polling step and a check at the start of the Process. This works, but also means a new Process instance is started and logged for every check. If there are only few instances that actually do something, they may get hidden in the large number of no-op instances.
The conditional trigger allows you to give a Subprocess that is executed with a steady time interval. If the Subprocess returns a value, the actual Process will be executed. This means you will only see Process instances that actually did something.
Experimental support for RabbitMQ
For on-premise installations, FRENDS 5.1 brings experimental support for using RabbitMQ as the message bus in addition to Service bus for Windows Server. As Microsoft has deprecated Service bus for Windows server, RabbitMQ will be the preferred replacement in the future for situations that cannot use Azure Service Bus.
New Swagger Editor for APIs
The API management view now has the full Swagger Editor embedded for editing Swagger documents. The new editor allows you to see the generated UI while editing the specification. It also has much better validation for the specifications and can show more helpful warnings and errors.
Other changes
You can now set the log level of a Process to "Everything" for only a given duration, e.g. for the next hour when you are diagnosing a problem. This helps avoid situations where too much data gets inadvertently logged in production because the log settings were accidentally left at too high a level.
HTTP trigger now allows for receiving requests as byte arrays, serialized as Base64 strings. This allows you to receive any kind of non-text data, e.g. PDF files or GZIP-compressed data.
API policy rules now allow regex matches on claim values as well, for e.g. validating access by a common organization prefix in the user's role in the token
Process Error Handler is renamed to Subprocess to call on unhandled error, to reduce misconceptions of what it does.
The integrated help center right in the FRENDS UI, on tenants hosted on frendsapp.com, allow you quick access to the latest documentation.
frends.com site and documentation for FRENS has been completely redone, new address of documentation is docs.frends.com.
Breaking changes
Due to JavaScript library updates, Internet Explorer is no longer supported for the FRENDS UI. It is advised to update to latest Chrome, Firefox or Edge browsers instead.
5.1.1
30th October 2018
This release includes some new features in the UI:
Added option to run test Processes on any Agent group that has it allowed.
Improved search in the Environment variables view to search and highlight also any matching values.
API specs can now be created directly from the API management view; you no longer need to import them from a file.
New
#trigger.claimsprincipal
reference allows easy access to the claims from the token when using OAuth authentication.
There are also many fixes for the UI, e.g.:
The Process list rendering performance has been improved.
OAuth validation errors are now logged with more details to the Agent logs in order to help with diagnosing authentication issues.
5.1.2
21st November 2018
This release again brings some new features to the UI:
You can now choose to show changes between two versions of a Process from the change log dialog. The diff view will show any added or removed shapes as well as changed parameters
You can now create new environment variables directly from the Process editor. The validation error for missing variables allows you to create it directly, without leaving the editor.
The UI now also will track any changes to the environment variables, and you can now also view the change history, showing e.g. who did the changes
Tasks and trigger shapes now get a name by automatically when you create one. The name will be the trigger type or name of task by default, but of course you can change it as needed.
There are also some bug fixes, like:
Assigning API access policies in the API management view now again works.
Fixed crashes in the process editor when moving existing connected shapes to other locations in the graph.
Processes with very long names will now deploy correctly on agents.
5.1.3
10th December 2018
This release brings some nice new UI features:
You can select many processes and view the instances of all of them in single instance list view, allowing you to easily view the latest status of all related processes.
You can pick a color to shapes in the Process editor to e.g. highlight specific parts of the process.
There are also fixes to the UI, especially improved performance on process instance list when there are millions of instances
There are also some bug fixes to the Agents, e.g:
Fix for rare race condition that stopped Agent for sending log messages
Setting logging to log everything for 15 minutes did not affect subprocess logging
Please note that the Agent fixes will require reinstalling the Agent. Hosted agents will be updated automatically, but on-premise Agents will need to be updated separately.
5.1.4
12th December 2018
This release fixes a couple of issues:
When viewing Process execution details, the executed branches and elements were not highlighted correctly inside loops.
If a Task is set to retry on error, the retries are now also immediately cancelled when terminating a Process.
5.1.5
9th January 2019
This release fixes agent group selector on API management view. The database cleanup job performance has been tweaked for large data sets.