# 2024 05 01 release notes (core)

## Release summary

The information detailed on this page refers to updates included in the following releases to the Patchworks Production environment:

**Patchworks core (backend)**

| Release version | Release date |
| --------------- | ------------ |
| 1.16.0          | 1st May 2024 |

**Patchworks dashboard (frontend)**

| Release version | Release date |
| --------------- | ------------ |
| 1.13.0          | 1st May 2024 |

New features, updates, and enhancements of note are summarised by product area, below:

* [Marketplace](#marketplace)
* [Process flows](#process-flows)
* [Custom scripts](#custom-scripts)
* [General](#general)

## Marketplace

<table><thead><tr><th width="180">Type<select><option value="edbc33cea7f34e16b3a205c7a65c3172" label="New" color="blue"></option><option value="d8457d8925c74fab90fa132d141b764b" label="Change" color="blue"></option><option value="030babd6286a4fe19214da74af9afb98" label="Enhancement" color="blue"></option><option value="9a29ee576f43448f9b1623baca59c3db" label="Bug" color="blue"></option><option value="L09Gy6z2y7VD" label="Breaking change" color="blue"></option></select></th><th width="428">Summary</th><th>Ref #</th></tr></thead><tbody><tr><td><span data-option="9a29ee576f43448f9b1623baca59c3db">Bug</span></td><td><p><strong>Custom script selection</strong></p><p>Fixed issue where selecting a script in the scripts section of the marketplace could cause the page to become unresponsive.<br><img src="https://2440044887-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLYNcUBVQwSkOMG6KjZfz%2Fuploads%2F7ebRB4tRIozWxpBMCAoN%2Ficons8-google-docs-20.svg?alt=media&#x26;token=ac61da4e-764c-452c-b9b5-d65f188769c9" alt=""><a href="../../marketplace/marketplace-scripts">Marketplace - scripts</a></p></td><td>CPT-2733</td></tr></tbody></table>

## Process flows

<table><thead><tr><th width="180">Type<select><option value="edbc33cea7f34e16b3a205c7a65c3172" label="New" color="blue"></option><option value="d8457d8925c74fab90fa132d141b764b" label="Change" color="blue"></option><option value="030babd6286a4fe19214da74af9afb98" label="Enhancement" color="blue"></option><option value="9a29ee576f43448f9b1623baca59c3db" label="Bug" color="blue"></option><option value="L09Gy6z2y7VD" label="Breaking change" color="blue"></option></select></th><th width="426">Summary</th><th>Ref #</th></tr></thead><tbody><tr><td><span data-option="edbc33cea7f34e16b3a205c7a65c3172">New</span></td><td><p><del><strong>Event connectors (BETA)</strong></del></p><p><del>Event connectors can now be used to trigger process flows by listening for events that are published to message queues/topics by a message broker (e.g. RabbitMQ).</del></p><p></p><p><del>Event connectors can be accessed using a new <em>Event connectors</em> option in the left-hand navigation menu. Once configured, these connectors can be selected as <em>Event listeners</em> in process flow trigger shapes.</del> <br><img src="https://2440044887-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLYNcUBVQwSkOMG6KjZfz%2Fuploads%2F7ebRB4tRIozWxpBMCAoN%2Ficons8-google-docs-20.svg?alt=media&#x26;token=ac61da4e-764c-452c-b9b5-d65f188769c9" alt=""><a href="../../connectors-and-instances/event-connectors-beta">Event connectors (BETA)</a></p></td><td><del>CPT-1668</del></td></tr><tr><td><span data-option="edbc33cea7f34e16b3a205c7a65c3172">New</span></td><td><strong>Import &#x26; export</strong> <strong>map shape configuration</strong> <br>It's now possible to export the the configuration of one map shape (including all field mappings and transformations), and then import that configuration into other map shapes. Exported configurations can be imported into map shapes within the same process flow, within different process flows for the same company profile, and within process flows for any linked company profiles.<br><img src="https://2440044887-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLYNcUBVQwSkOMG6KjZfz%2Fuploads%2F7ebRB4tRIozWxpBMCAoN%2Ficons8-google-docs-20.svg?alt=media&#x26;token=ac61da4e-764c-452c-b9b5-d65f188769c9" alt=""><a href="../../process-flows/building-process-flows/process-flow-shapes/standard-shapes/map-shape/importing-and-exporting-map-shape-configurations">Importing &#x26; exporting map shape configuration</a></td><td>CPT-2121</td></tr><tr><td><span data-option="d8457d8925c74fab90fa132d141b764b">Change</span></td><td><strong>Payload metadata size restriction</strong><br>A size restriction of 10240 bytes has been introduced for payload metadata. Exceeding this limit will cause the process flow to fail on the associated step.<br><img src="https://2440044887-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLYNcUBVQwSkOMG6KjZfz%2Fuploads%2F7ebRB4tRIozWxpBMCAoN%2Ficons8-google-docs-20.svg?alt=media&#x26;token=ac61da4e-764c-452c-b9b5-d65f188769c9" alt=""><a href="../../process-flows/building-process-flows/dynamic-variables/metadata-variables">Metadata variables</a></td><td>CPT-2800<br>CPT-2799</td></tr><tr><td><span data-option="d8457d8925c74fab90fa132d141b764b">Change</span></td><td><p><strong>Dynamic dates now use flow run time</strong></p><p>Some process flow steps (connectors, filters, set variables, transforms, etc.) can be configured to use dynamic/relative dates, where the date is relative to the time the process flow is <em>initialised</em>.</p><p></p><p>With the recent introduction of queues for process flow runs, all process flows are added to a queue when they are initialised (either by a defined trigger, or a manual run). This means that the time a flow is <em>initialised</em> is not the same as the time the flow actually <em>runs</em> - sometimes the run will be almost instant, but in busier periods there may be some minutes between starting and running a flow.</p><p></p><p>To prevent cases where records are missed because they were added between the time a flow was started and the time it actually ran, a new <em>Use queued time</em> process flow setting has been introduced. This allows you to choose whether any relative dates should be based on the time that the process flow is <em>initialised</em> or the time it is <em>queued</em>.</p><p></p><p>The <em>Use queued time</em> option defaults to <code>false</code> on all <strong>existing</strong> process flows, and defaults to <code>true</code> for all <strong>new</strong> process flows.   <br><img src="https://2440044887-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLYNcUBVQwSkOMG6KjZfz%2Fuploads%2F7ebRB4tRIozWxpBMCAoN%2Ficons8-google-docs-20.svg?alt=media&#x26;token=ac61da4e-764c-452c-b9b5-d65f188769c9" alt=""><a href="../../process-flows/building-process-flows/process-flow-settings">Process flow settings</a></p></td><td>CPT-2455</td></tr><tr><td><span data-option="d8457d8925c74fab90fa132d141b764b">Change</span></td><td><p><strong>Transform functions - null values</strong><br>The default behaviour for transform functions has changed so that by default, if they are given null, they return null. Exceptions to this are:</p><ul><li><em>Custom Dynamic Date</em>. Returns the custom dynamic date set in the transform function.</li><li><em>Custom Static Date</em>. Returns the custom static date set in the transform function.</li><li><em>Date Now</em>. Returns the date now as the transform is run.</li><li><em>Custom Number</em>. Returns the custom number set in the transform function.</li><li><em>Custom Boolean</em>. Returns the custom boolean set in the transform function.</li><li><em>Fallback</em>. Returns the custom fallback value set in the transform function.</li><li><em>Custom String</em>. Returns the custom string set in the transform function.</li><li><em>Null Value</em>. Returns null. </li></ul><p><img src="https://2440044887-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLYNcUBVQwSkOMG6KjZfz%2Fuploads%2F7ebRB4tRIozWxpBMCAoN%2Ficons8-google-docs-20.svg?alt=media&#x26;token=ac61da4e-764c-452c-b9b5-d65f188769c9" alt=""><a href="../../process-flows/building-process-flows/process-flow-shapes/standard-shapes/map-shape/working-with-field-transformations/available-transform-functions">Transform functions</a></p></td><td>CPT-2773</td></tr><tr><td><span data-option="9a29ee576f43448f9b1623baca59c3db">Bug</span></td><td><p><strong>Process flow version update dates</strong></p><p>Fixed issue where the <code>updated</code> date for process flow versions was not incremented when changes to the flow were saved. <br><img src="https://2440044887-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLYNcUBVQwSkOMG6KjZfz%2Fuploads%2F7ebRB4tRIozWxpBMCAoN%2Ficons8-google-docs-20.svg?alt=media&#x26;token=ac61da4e-764c-452c-b9b5-d65f188769c9" alt=""><a href="../../process-flows/building-process-flows/process-flow-versioning">Process flow versioning</a></p></td><td>CPT-2603</td></tr></tbody></table>

## Custom scripts

<table><thead><tr><th width="180">Type<select><option value="edbc33cea7f34e16b3a205c7a65c3172" label="New" color="blue"></option><option value="d8457d8925c74fab90fa132d141b764b" label="Change" color="blue"></option><option value="030babd6286a4fe19214da74af9afb98" label="Enhancement" color="blue"></option><option value="9a29ee576f43448f9b1623baca59c3db" label="Bug" color="blue"></option><option value="L09Gy6z2y7VD" label="Breaking change" color="blue"></option></select></th><th width="426">Summary</th><th>Ref #</th></tr></thead><tbody><tr><td><span data-option="edbc33cea7f34e16b3a205c7a65c3172">New</span></td><td><p><strong>SSH2 Extension</strong></p><p>The SSH2 library is now available when working with PHP scripts.<br><img src="https://2440044887-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLYNcUBVQwSkOMG6KjZfz%2Fuploads%2F7ebRB4tRIozWxpBMCAoN%2Ficons8-google-docs-20.svg?alt=media&#x26;token=ac61da4e-764c-452c-b9b5-d65f188769c9" alt=""><a href="../../marketplace/marketplace-scripts">Custom scripts</a></p></td><td>CPT-2777</td></tr></tbody></table>

## General

<table><thead><tr><th width="180">Type<select><option value="edbc33cea7f34e16b3a205c7a65c3172" label="New" color="blue"></option><option value="d8457d8925c74fab90fa132d141b764b" label="Change" color="blue"></option><option value="030babd6286a4fe19214da74af9afb98" label="Enhancement" color="blue"></option><option value="9a29ee576f43448f9b1623baca59c3db" label="Bug" color="blue"></option><option value="L09Gy6z2y7VD" label="Breaking change" color="blue"></option></select></th><th width="432">Summary</th><th>Ref #</th></tr></thead><tbody><tr><td><span data-option="d8457d8925c74fab90fa132d141b764b">Change</span></td><td><strong>Enforced MFA at company level</strong><br>If any company that a user is related to has MFA enabled, the user may not disable MFA. In this scenario, the <em>Disable MFA</em> option cannot be selected - instead, the user will see a message advising that MFA is enforced by their company. </td><td>CPT-2027</td></tr></tbody></table>
