Skip to main content
5.7 Release notes

Process Templates, Passthrough APIs and speedy Process builds

E
Written by Erkka Honkavaara
Updated over 2 months ago

Breaking changes in 5.7 release

Frends API changes (for pre 5.7 installations)

The Frends API has been now released and the old v0.9 path has been retired, so you will need to update any calls to the API to target the new v1 path. Also the error result for the API calls has been changed, otherwise the APIs will work the same way as before. Also there are changes to the internal API which is not fully supported for outside use, so if you have used that, you will need to verify everything works separately.
More info here

Frends Agent container image path changed

The path for the assemblies inside of the container image is now /app. If there are modifications to the official container image, the new path should be taken into account.

Agents required to have access to the UI

The Agents now fetch their Process and Task packages through the UI, so firewalls on the Agents need to allow outbound access to the Frends UI: <tenant>.frendsapp.com on port 443.

Agent bundled installation LocalDB requires Visual C++ Redistributable (Frends 5.7.3+)

Because the bundled LocalDb for the Legacy Agent was updated, you will need to install Visual C++ 2019 redistributable before installing the bundle. The installer available from here: https://learn.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170

OpenId Connect (SSO)

Customers who use their own O365 or Azure AD (Entra) for Frends Authentication will need to modify the App Registration they created as of Frends version 5.7, The Redirect URI needs to include the Application (client) ID:

Note: These following changes were already present in 5.5 and are listed here for visibility

Service Bus for Windows (for pre 5.5 installations)
Support for Service Bus for Windows Server is removed, when updating to 5.5+ switching to RabbitMQ for full on-premise deployments is mandatory. This also means that using the Service Bus Trigger no longer works with Service Bus for Windows Server.


Remote Subprocesses (for pre 5.5 installations)

Because of changes to the message busses used by Frends, Agent groups within an Environment should be reinstalled at the same time. This is required when Remote Subprocesses are being used.


Frends.Tasks.Attributes support to be removed

Frends Tasks Attributes was a way of modifying the Parameter editor for Tasks before Frends 4.5.6, when it was deprecated and support for it was removed in 5.5.3. Previously imported Tasks will continue to work normally, but new Task imports will require migration to System.ComponentModel.Annotation to support conditional parameter displays etc.

SQL Server requirements

The minimum supported version of SQL Server is now MS SQL Server 2017 for on-premise deployments.

What has changed

5.7.4

6th of September 2024 (hotfixed 2nd of October)

UI

Improvements

  • The Process editor now warns the user about incompatible NuGet dependencies which may cause runtime errors. Before 5.7 these were left ignored, but now they are notified about and the user has to either acknowledge the warning and continue with the build, or get updated versions of Tasks that have compatible dependencies

Agent

Bug fixes

  • The Agent now works the same way as previously to try to support the use of incompatible package versions. This is to ensure backwards compatibility for Process versions and for cases where the developer knows and has tested that the dependency version conflicts do not cause any issues

  • (hotfix) Fixed issue with resolving some System package dependency versions, e.g. System.Text.Json

5.7.3

19th of June 2024 (hotfixed 13th of August 2024)

Note:

Because the bundled LocalDb for the Legacy Agent was updated, you will need to install Visual C++ 2019 redistributable before installing the bundle. The installer available from here: https://learn.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170

UI

Bug fixes

  • Duplicate Process version rows caused by concurrent builds of the same Process are now fixed during update to 5.7.3

  • Fixed issue with API deployments sometimes failing due to SQL failure

  • Fixed issue with API key protected SwaggerUI not prompting for API key

Log service

Bug fixes

  • Fixed issue with logging Processes with long Trigger names

Agent

Improvements

  • LocalDB in the bundled installer is now updated to version 2022

Bug fixes

  • Fixed issue with API Passthrough matching when the path contains a datetime string

  • Fixed issue with installing Process with Tasks that have conflicting indirect dependency versions

  • (Hotfix) Fixed issue with Legacy Agent not being able to deploy Processes with Tasks that have system dependencies

5.7.2

30th of April 2024

UI

Improvements

  • Process Template list now remembers the users choice of how many items to show

  • Process Template list can now be sorted according to Tags and Template used in

  • Process Template list can be linked to filtered by a Tag

  • Added Frends API endpoints for managing API Passthroughs

  • Process Template list is now paginated and filtered on the backend

  • Made the cookie acceptance dialog more clear with a description of what the cookies are used for. Also it is mandatory to make the cookie choice before doing anything else on the UI

  • Processes can now be linked to a Process Template that is created from them

  • It is now possible to unlink a Process from a Process Template

Bug fixes

  • Improved Process Instance array result viewing to be more clear between elements

  • Fixed Process editor view issue with screen going blank after removing an unhandled error handler

  • Fixed issue with Process version diff view not highlighting all changes when a Task test execution was associated with a Process

  • Fixed issue with the Process editor view not being able to search for Tasks with a space, e.g. HttpRequest worked, but Web HttpRequest did not

  • Fixed issue when importing API Processes not being linked automatically to the correct API specification when there are API specifications with identical paths

  • Agent Triggers view no longer show Passthroughs that had failed to initialize

  • Fixed issue with Process Instance view showing the first loop iteration as 0 instead of 1

  • Fixed issue with configuring API Passthrough header modifications action type being applied to multiple modifications

  • Fixed issue with importing multiple Processes at the same time

  • Fixed issue with Process having two "active" version in the database which would block deploying the Process

  • Process Variables are correctly retained after when updating Processes from a Process Template

  • Fixed issue with Process instance duration being shown with the wrong duration when auto-refresh is enabled due to timezone conversion

  • Fixed issue with Frends API not generating ProblemDetails correctly

  • Fixed issue with the Error message toast not showing the error message in all cases

  • Fixed issue with Process editor showing multiple warning icons being shown for a Subprocess when there is an obsolete parameter is being used

  • Fixed issue with Process cleanup being too eager when multiple Processes are being cleaned up simultaneously

  • Fixed issue with switching Process version when the old version is not supported by the Development Agent group, example:

    • Version 1.0.0 (Target framework: .NET Framework 4.7.1)

    • Version 2.0.0 (Target framework: .NET 8)

    • Cross-platform Development Agent Group

    • Previously switching back to version 2.0.0 was blocked, but now it is allowed even though it will not be possible to execute on the Development Agent Group

Log service

  • Fixed issue with Log service not being able to clean up dead lettered Service Bus messages

  • Process that are marked as Zombies are now updated with the correct end state and error if the actual Process end message is received

Agent

Bug fixes

  • Remote Subprocess execution messages are now immediately consumed to prevent a Remote Subprocess from being executed multiple times

  • Fixed issue with Agent running out of memory when doing large Process updates due to excessive loading of data from the database

  • Fixed issue with Agent not being able to load Passthrough when the API specification's server is in invalid format

  • Fixed issue with API Passthrough not working when the specification has endpoints with differing method configurations

  • Fixed issue with a Task dependency NuGet that contains a deps.json file blocking the deployment of a Process

5.7.1

2nd of April 2024

UI

Improvements

  • Template list can be downloaded as a CSV-file

  • Templates can be pinned in the Process Templates list

  • Improved API Monitoring filters to only show the most relevant filters initially

Bug fixes

  • Fixed UI trying to show a Passthrough after it was deleted from the UI

  • Fixed Process Instance count graph using UTC time instead of local time

  • Fixed not being able to set an Environment variable value through the Frends API when the value did not previously exist

  • Fixed API Monitoring not always being able to load new rows when scrolled fast

  • API Passthrough active state is now based on if the status of the Agent instead of the configuration on the UI

  • Fixed issue with not being able to view the API Management page without Edit rights

  • Fixed issue with not being able to cleanup old Process versions when the Process has been renamed at some point

  • Fixed issue with Process Instance list not showing milliseconds correctly on hover over the Duration of the Instance

  • Fixed issue with not being able to build a Process that is creating JTokens in Code shapes

  • Fixed issue with unlinked(orphaned) API Processes not being shown in the API Management view

Agent

Bug fixes

  • API Spec is now correctly removed from the Agent Swagger UI when Passthroughs are deleted

  • Fixed issue with API Passthroughs causing errors when the Passthrough wasn't deleted correctly from the Agent

  • Fixed issue with Agent Heartbeat sending failure causing the Agent to crash

5.7.0

29th of February 2024

UI

The UI has been migrated from .NET Framework 4.7.1 to .NET8. This will allow us to keep up to date with the latest changes and improvements in the .NET ecosystem.

Notable changes, improvements and features:

  • Cross-platform Process compilation speed increased dramatically

    • .NET and Standard Process compilation was rebuilt to match and outperform the Framework Process compilation speeds of previous versions

  • .NET Processes now target .NET8

  • NuGet libraries update

    • Instead of using Blob containers or the filesystem for hosting the internal NuGet feed, the Frends UI hosts a NuGet v3 compliant feed

    • The NuGet client libraries on both the Cross-platform and Legacy Agent have been updated to 6.8.0, which provides support for the packages that require it

    • This also means that Cross-platform Agents now use the Process NuGets instead of having prebuilt and packaged Process Host Packages with all the dependencies built-in. This means that the dependencies will be cached on the Agent and when a Process is updated, it will only have to fetch the new version of only the Process NuGet and not the dependencies

    • Note: Existing NuGets will be migrated from the old NuGet repository to the new one and the old one will continue to serve Agents that are on a previous version. The migration can take some time depending on the amount of Processes and Process versions, this will require a development freeze on during the update.
      If you have a lot of Processes (>500) and are unsure of the effect the update will have, please don't hesitate to contact us

  • Library updates

    • The transition from .NET Framework to .NET8 necessitated a lot of different library updates for the UI

  • A multitude of minor improvements and fixes

New feature - Process Templates

Process Templates offer a way of creating reusable templates for Processes with specific Process Variable parameters. Processes that are based on these Templates can be easily updated when the Template is changed to provide a way of managing and updating large amounts of Processes that have the same structure but differ on a parameter level.


Process Templates can either be created from an existing Process or they can be imported from a Template's export file. When the Template needs to be updated, a new version can be created by modifying a Process and then creating a new version of an existing template from it. When a new version of a Template is created, the Processes that are based on it can be updated.

Templates will be an integral part of the future Business Integration Portal and will allow easy provisioning of Processes there. Also in the future there will be a Template feed which will provide ready to use Templates.

New feature - API Passthroughs

Previously creating passthrough APIs always required a Process even if the request was not modified in any way. API Passthroughs provide a way of exposing API endpoints without the need for a Process, the API Passthroughs work like a proxy for API endpoints in Frends. The target URL and headers for the call can be modified when the API is called and it passes the request to the target URL.


Note: Passthroughs are only available on Cross-Platform Agents and due to the passthrough nature, they will not handle any sort of authentication themselves, it will need to be handled by the target backend server.

However, the upcoming API Policy feature will provide a way of enabling authentication for any endpoint exposed by a Frends Agent, including passthrough APIs.

New feature - API Monitoring

Because the API Passthroughs don't have actual Processes behind them, they won't be logged as Process executions and viewable in the Process Instance lists. Instead we are introducing the API Monitoring feature, which allows to see all HTTP requests coming into Frends. This is integrated into the API view, and you can easily see calls related to a specific API or API endpoint there.

Note: This will also mean that you can also see requests that aren't targeting any exposed endpoints (API passthroughs, API or HTTP Triggers), so you will also see requests that are caused by web crawlers, etc. This is normal for any publicly exposed HTTP endpoints and this does not mean that the Agent has been compromised. As well as Passthroughs, API Monitoring is only available on Cross-Platform Agents.

Did this answer your question?