Release r202612
What's new
This release contains the following new features and improvements:
- Xurrent GraphQL function to find records by Node ID
- Better code completion for the
sendMailfunction - Profile lock applies to current browser tab
- Improved documentation of HTTP functions
Xurrent GraphQL function to find records by Node ID
The Xurrent GraphQL functions that were added in release r202609 have been received enthusiastically and we have seen adoption in many packages already.
Based on feedback from our customers, we have now added a more specialized function Xurrent.graphqlFindByIds to the set. This function allows you to find records by their Node ID and returns an object, keyed by Node ID, for easy lookup.
A common use case for this function is to enrich a list of custom-suggest custom fields, which values are Node IDs,
with the details of the corresponding records. The documentation
of the function explains how to use it.
Better code completion for the sendMail function
The sendMail function now has better code completion for selecting the
outbound email configuration to use. In addition, to bring the function signature more in line with other functions,
the configuration to use is now a separate parameter instead of being part of the options parameter.
The old way, adding a profile property to the options parameter, is still supported for backward compatibility.
We recommend that you update your code to use the new way.
Profile lock applies to current browser tab
When a profile is locked by you, other people cannot make changes to it. However, when you opened the same profile in another browser tab, the automator was unable to detect that you were already editing that profile, which could cause you to accidentally make changes in multiple tabs and only discover this when you try to save the profile and receive an error message.
This has now been improved, and when the profile is locked by you it applies only to the current browser tab. If you open the same profile in another browser tab, the automator detects this and will not allow you to make changes.

In addition, a profile lock is now automatically removed when you close the browser tab that holds the lock, or when you navigate away.
Improved documentation of HTTP functions
We have improved the documentation of the HTTP functions http_request, http_request_file and http_stream_file.
The available options have been documented, and the examples and return value have been clarified. When a package uses an option that is not available, the automator will warn about this in the package execution logs.
Under the hood, the technical implementation of these functions has been revised to bring dependencies up to date and improve our security posture.
Removals and deprecations
- The preferred way to login into the automator is via your email address, as has been the case for a long time. After monitoring usage of the old login method with a username, we found that all customers have already switched to using their email address, and therefore we have decided to now remove the possibility to login with username.
Other changes
This release also contains a number of smaller changes:
- Fix: in rare cases, the
http_requestfunction could hang when the external server stopped responding. This has been fixed by adding a 5-minute idle timeout to the connection. - When sequential package execution is enabled, a package execution that hangs or runs for too long may cause serious issues, since it will block the queue for that package until it completes. Going forward, we plan to gradually introduce run time limits on package executions. In this release, as an initial, cautious step towards that goal, package executions that run for more than 16 hours will no longer block the queue - even though the package might still be running and will still be allowed to run to completion. Based on actual usage, it is expected that we lower the limit in the future and abort packages that go over the limit.
Timeline
The expected deployment dates for this release are:
| Environment | Date |
|---|---|
| Demo | Friday, May 15th |
| Production (automator-eu, automator) | Tuesday, May 19th |
| Production (automator-bt, automation) | Tuesday, May 26th |
The deployment of the Production environments will be conducted outside of office hours (Central European Time Zone).