2024 07 17 release notes (core)
Release summary
This page summarises items scheduled for the following release to the Patchworks Production environment:
Patchworks core (backend)
1.21.5
17th July (starting between 8am-9am)
Patchworks dashboard (frontend)
1.15.7
17th July (starting between 8am-9am)
This release includes preparatory information for an upcoming change which affects the behaviour of filters when values are not of the expected data type. Please ensure that you check the Breaking changes section.
New features, updates, and enhancements of note are summarised by product area, below:
Process flows
New filter types for 'in' and 'not in' scenarios
To handle cases where a filter needs to match incoming data based on one of many given values being present/not present, two new filter types have been implemented: Contains one of many
and Does not contain one of many
.
CPT-1872
Shape source endpoint selector In shapes where source instance/endpoint options are available (e.g. connector, flow control, route), the endpoint selector has been enhanced to include a search field, so you can quickly search for the required endpoint by name.
CPT-2500
Run process flow shape When selecting a process flow to be initialised from a run process flow shape, ALL defined process flows and associated versions are available for selection (by default, the latest is prompted). This removes the restriction of only being able to call deployed & enabled process flows.
CPT-2983
Filters: enforced validation for data types Additional validation has been added for filters, which means that input values must be of the expected data type. For example, consider the payload below:
Notice that both records include a ref field, but one (Jane) is a string
type value and the other (Bob) is a number
type value. Now suppose we define a filter to examine the ref
field, and to expect the value of this field to be a number
.
Previously, the data type was not validated, so both records (Jane and Bob) would have been matched. Now, the data type defined in filters is validated and a record will only be matched if the filter value is of the expected type. This is a phased change.
Phase 1 (this release)
In this release, any data type validation issues will be reported as warnings in run logs but this will not cause filter behaviour to change. So taking our example above, both records (Jane and Bob) would continue to be matched.
Phase 2 (next release)
In our next release, data type validation for filters will be enforced - i.e. filter behaviour will change so a record will only be matched if the required value is of the expected type. Taking our example above, only Bob will be matched - Jane would not be matched because the ref
field is provided as a string
.
For more information please see the Breaking changes section.
CPT-2862
Company insights - usage stats Fixed issue where usage figures shown in the left-hand navigation bar may not match the main customer insights page.
CPT-1568
Company insights - graph display Fixed issue where the graph display could be lost when switching between process flows/connectors/shapes tabs multiple times in quick succession. Now, switching between tabs is not possible until the current graph is fully loaded. In a related issue, graph zoom has been disabled.
CPT-3097 CPT-3098
Static date selector for variables Fixed issue where no time selector was available when choosing to add a static date/time in a flow variable or in the set variables shape.
CPT-2451
Route shape settings Fixed issue where creating a new route for a route shape did not go on to display settings for that route. Now, associated settings are shown when a new route is created.
CPT-3129
Breaking changes
This release includes changes that may affect the behaviour of filters defined in existing process flows. Please follow the advice below to avoid any issues.
Filter validation enforcement
When defining process flow filters (for example, in a filter or route shape), you select a data field and then the corresponding data type for this field - for example:
In this release, we start to enforce the specified data type for any filters. For example, if a filter based on the customer_id
field is defined to expect string
data, but the incoming payload provides these values as numbers, this will cause a validation error.
What's happening?
Filter validation issues will be enforced in two phases:
1: Warning
17th July 2024
2: Enforcement
If a process flow runs and an invalid data type is passed into a filter, a warning message is displayed in the run logs.
A record that previously matched a filter based on the required filter value will now fail to match if that value is not of the expected data type.
Phase 1 (recommended actions prior to this release)
Phase 1 is scheduled for implementation on the 17th July 2024. We recommend making the following checks before this time:
Filter & route shapes
Check any filter and route shapes in your process flows now, and ensure that defined data types reflect your source data. If you find a mismatch, you can:
Change the data type for the process filter, if appropriate
Apply a field transform (via a map shape) immediately before the filter step to convert incoming values to a different data type. Several transform functions are available which can help to change data from one type to another - please see Working with field mapping transformations for more information.
Change the data type for this value at source (if you have the option to do so)
Connector shapes
Check any connector shapes in your process flows, and ensure that defined data types reflect your source data. If you find a mismatch, action depends on whether the connector is a standard Patchworks connector or a custom connector that was built by your own company with the Connector builder:
For a standard Patchworks connector, it’s advisable to change the data type for this value at source. If this isn’t possible, you can edit the filter within the connector endpoint setup and change the data type to match source data. However, be aware that if you subsequently install a Patchworks update for this connector, your changes will be overwritten.
For custom connectors, you can edit the filter within the connector endpoint setup and change the data type to match source data.
Phase 1 (recommended actions ASAP after this release)
After the release on the 17th July 2024, please review run logs for all of your active process flows and check if there are any warnings - for example:
You can filter your run logs list so that only entries with warnings are displayed.
If warnings are given, please check the associated process flow and make changes as detailed above.
Phase 2 action required
Phase 2 is scheduled for implementation on the 24th July 2024. We recommend checking run logs for your flows with extra care as soon as possible after this release, just in case validation issues are still present.
Please see release notes for the 24th July 2024 regarding Phase 2 of this change, and also Phase 2 of a similar change to transform validations.
Last updated