Skip to main content

Release r202625

What's new​

This release contains the following improvements and changes:

Improved handling of API calls​

Calls to external systems are placed in per-credential queues to help manage rate limits. Two improvements have been made in this area:

  • Calls in the same queue are now processed sequentially. Previously, they could be executed in parallel while waiting for responses to one or more previous calls. This change reduces bursts of requests that could trigger rate limits when an external system responds slowly.
  • For Xurrent accounts using bearer tokens, credentials belonging to the same API user now share a queue when the API user ID is known. When that queue is paused, calls using any of those credentials wait. This avoids unnecessary retries with another credential that is subject to the same rate limit.

The rate limit warnings shown in the package logs have also received two improvements:

  • Packages waiting for an API call in a queue blocked by a rate limit, other than the package that triggered the rate limit, now also receive a warning.
  • When multiple credentials are configured for an account, no pause warning is shown when a call can immediately be retried using one of the other credentials.

See Auto-retry for API calls for more information.

Environment variables replaced by libraries​

The Environment variables tab has been removed. There are two reasons for this:

  • Environment libraries fulfill a similar role. Both let you define variables once and use them in multiple packages. Environment variables were available in all packages within an environment. Variables defined in an environment library are only available in packages linked to that library.
  • Analysis showed that environment variables were rarely used.

In the few profiles that used environment variables, the variables have already been replaced by environment libraries and the integrations updated to use them. No action is needed.

The following example illustrates the conversion. Previously, an order integration might have had these entries in the Environment variables tab:

Environment variableValue
$ORDER_SERVICE_INSTANCE_ID12345
$ORDER_NOTIFICATION_EMAILorders@example.com

In the environment library, these settings are grouped in an object:

const ORDER_SETTINGS = {
serviceInstanceId: 12345,
notificationEmail: "orders@example.com",
};

Packages using these settings include the library and, for example, refer to ORDER_SETTINGS.serviceInstanceId instead of $ORDER_SERVICE_INSTANCE_ID.

See Libraries for more information.

Timeline​

The expected deployment dates for this release are:

EnvironmentDate
DemoFriday, September 25
ProductionTuesday, September 29

The deployment to the Production environment will be conducted outside of office hours (Central European Time Zone), usually between 8 and 10pm.