September 2025 Releases

Learn about the changes to Squiz DXP released in September 2025.

Visit the changelog areas for each DXP capability for features and changelogs published before October 2024.

What’s new in September 2025

Content Management

Obfuscated NameID element helps protect PII in SAML Account Manager

The Obfuscated NameID element is available for the SAML user ID location option on the SAML account manager.

This option will make the username of the user asset created for an SAML sign in a cryptographic hash of the NameID element, making potential personally identifiable information (PII) much harder to deduce from the created username.

All SAML elements, including NameID, may include personally identifiable information (PII). Adding this element to the SAML user ID location option helps protect customer information.

Treat false and true as boolean values in ^eq and ^neq keyword modifiers

An initial argument to ^eq or ^neq now always performs a boolean comparison.

The ^eq and ^neq keyword modifiers relied on the internal representation of variables. When used to compare 'true' and 'false', the behavior was unpredictable across platforms and internal API changes.

Squiz Integrations

Platform hosting in the EU for new EMEA region customers

New Squiz DXP customers in the EMEA region will have their Squiz Integrations platform hosted in the EU.

This localised hosting solution caters specifically to customers in European countries, assuaging their data sovereignty concerns.

By providing a regional hosting option, customers in the EMEA region can trust that their data complies with any data sovereignty concerns.

What’s changed in September 2025

Other minor improvements and bug fixes for this month are described in the changelog table.

Type Description Capability Release date Release version Copyable link

3 Bug fixes

If you have two components with the same name in a set, the Add Component dialog selects both of them when one or the other is selected

Details

The comparison used to check which component is selected wasn’t checking against the component set. Regardless of the component set, any component with the same name appeared to be selected.

The comparison check now compares against the slug, version, and component set. The correct component can now be selected based on the component set it is a part of.

Page Builder

2025-09-02

6.71

3 Bug fixes

When the component is read-only, the inline image and link icons appear in build mode, allowing users to change values

Details

Inline Squiz Link and Squiz Image selection buttons were rendered in read-only mode. Users could change a Squiz Link or Squiz Image for a read-only section of the page.

The fix ensures that inline Squiz Link and Squiz Image selection buttons no longer render when in read-only mode. Squiz link or image selection is no longer visible for read-only sections on a content page.

Page Builder

2025-09-02

6.71

3 Bug fixes

Long-running cron jobs are causing memory leaks and poor error visibility

Details

Long-running cron job processing could run concurrently, resulting in Out of Memory events on the cron system.

Cron jobs would stop running and deadlock, causing functionality relying on these processes to fail.

The fix introduced the LongRunningJobRunner to process long-running cron jobs independently of the regular cron jobs to ensure long-running cron jobs are never run concurrently.

This change reduces the possibility of cron jobs failing due to out-of-memory fatal errors and provides better debugging tools.

Content Management

2025-09-02

6.71

3 Bug fixes

Redirects from /__data URLs should not redirect to /__data URLs

Details

Redirects for an asset on the /__data path could unintentionally redirect back to the /__data path. This behavior could cause a redirect loop and confuse users.

The redirection logic now checks for this scenario. It only redirects if it discovers a non /__data path URL for the requested asset. Redirects from the /__data path will no longer redirect back to the /__data path.

Content Management

2025-09-02

6.71

2 Minor improvements

Cache Component dependant parents to DeJa Vu

Details

Previously, component-dependent parents needed to be looked up by multiple pieces of functionality on the standard page Contents screen.

The contents screen on standard page assets loads faster because of improvements to how the lookup function parses the component-dependent parents.

Content Management

2025-09-02

6.71

3 Bug fixes

Metadata time trigger failing to run

Details

An array-only method was used on a value that was not an array, which caused a fatal error in certain metadata time triggers.

The value is now checked before calling the array-specific method, which prevents the fatal error from occurring.

Content Management

2025-09-02

6.71

3 Bug fixes

formatDateTime() fails for non-numeric strings

Details

A non-numeric value was used in a date-related function requiring a numeric value. This condition could contribute to causing a fatal error during a cron run.

The value is checked before use to determine if it is numeric. Cron runs will no longer experience a fatal error due to the presence of non-numeric strings in the formatDateTime method.

Content Management

2025-09-02

6.71

3 Bug fixes

Fix fatal Call to a member function getSchemaIds() on null in metadata.inc

Details

Changes in the metadata UI code caused the custom edit layouts metadata section keywords to always assume the section ID was valid. Invalid metadata section keywords would generate a fatal error, making the contents screen unable to load.

Metadata interface code was adjusted to protect from invalid metadata section keywords. Custom edit layouts referencing invalid metadata section keywords should function as they did before 6.70.

Content Management

2025-09-02

6.71

2 Minor improvements

Retrieve lock information in bulk

Details

Previously, the system would retrieve all lock types for an asset individually, resulting in more round-trips to ElastiCache than required.

The minor improvement uses the Redis MGET request type to retrieve all lock types of an asset in one request, improving performance.

Content Management

2025-09-02

6.71

3 Bug fixes

Viper Open in new window option is always selected, no matter the content editor’s choice

Details

A feature of the Page Builder Service’s WYSIWYG editor is to open links in the content page preview in a new tab rather than the preview frame navigating to another page.

Because of this opening behavior, inline editable links were incorrectly updated to open in a new window with target="_blank", even if explicitly changed to exclude the logic.

The code that sets preview frame links to open in a new tab now ignores any links within an editable region. Inline editable links can now have their target set correctly.

Page Builder

2025-09-02

6.71

3 Bug fixes

Collection alias endpoint returns 500 when both endpoints do not share the same event property configuration

Details

The collection alias endpoint returned a 500 error when both endpoints did not share the same event property configuration. This condition meant that requests could not be made to the affected endpoints.

A fix was implemented to the endpoint, allowing collection requests to alias endpoints where event properties differ.

Data Services

2025-09-04

4.1.4

3 Bug fixes

Dependencies updated for Data Services 4.1.4 release

Details

Dependencies have been upgraded to address security issues, ensuring a safer and more reliable system.

Data Services

2025-09-04

4.1.4

3 Bug fixes

Content page synced from PROD instances (that were updated on DEV instances) updates the PROD instance

Details

Syncing the assets between development and production environments would also sync the content page asset’s page_content_id attribute.

The duplicate page_content_id would cause the production and development instances to sync content page assets to reference the same content page Item at the content store. Changes made on the development environments content page asset were also reflected on the prod’s content page asset.

If the Content Management instance slug metadata value stored on the content page data does not match the Content Management environment when the page is saved, re-create the content page and update the asset’s page_content_id attribute to the new content page ID.

Content page asset updates on development environments won’t get reflected on the sync asset at prod env (or vice-versa).

Page Builder

2025-09-23

6.72

3 Bug fixes

[PHP 8] Non-arithmetic but numeric-related keyword modifiers need a default for non-numeric strings

Details

Math-related functions were being passed non-numeric values. In versions of PHP 8 and later, this caused fatal errors.

The values are now validated to be numeric before use, and a sensible fallback is used when they are not numeric. These fatal errors will no longer occur.

Content Management

2025-09-23

6.72

3 Bug fixes

Remove generation of Google Analytics (v3) View reports

Details

Fetching new data on a Google Analytics View asset, whether manually or through the daily Generate Google Analytics Report scheduled job, failed due to a type error in PHP 8.1. The symptoms of this issue included a Scheduled Jobs Manager deadlock for systems that contained a Google Analytics View asset.

The Google Analytics v3 endpoints used for fetching this data were retired from July 2024, with most properties not collecting new data since July 2023. Attempts to fetch data on these assets have been turned off, and attempts to fetch new data should no longer cause a fatal error.

This change will not affect previously cached data. Generally speaking, the reports that showed this data (particularly the ones in the previous Edit+ interface in Matrix 5) will show nothing because the data has expired by now.

Content Management

2025-09-23

6.72

3 Bug fixes

[PHP81] Type error for handling potential missing Redis entry for Deja Vu

Details

A certain code path for Redis database connections was permitted to have an expected return type of bool instead of Redis. This condition could cause a fatal type error.

The fix ensures the incorrect return value is validated before being returned. The fatal type error no longer occurs when attempting to connect to Redis.

Content Management

2025-09-23

6.72

2 Minor improvements

Cache small text files per process

Details

Small text files are sometimes used through keywords to add code or other implementation-related data.

Retaining the contents of small text files improves the performance of Squiz Content Management when the same text file is referenced many times in keywords.

Content Management

2025-09-23

6.72

3 Bug fixes

Handle failed DeJa Vu and Matrix Cache Redis nodes

Details

Timeouts were not being correctly set or handled for Content Management Redis connections. If a Redis node failed for DeJa Vu or Matrix Cache, this condition could bring down the system.

Timeouts are being configured and handled when encountered. Squiz Content Management will function if the Redis server for DeJa Vu or Matrix Cache is down.

Content Management

2025-09-23

6.72

3 Bug fixes

Page_Calendar_Events_Search is incorrectly passing a bool to the parameter one of array_intersect

Details

The wrong data type of bool was used in a method requiring an array. This mismatched type could cause some Calendar Events Search Page grouping logic to break.

The data type is validated before use, and a sensible default is in place. The Calendar Events Search Page will no longer fatal error in this way.

Content Management

2025-09-23

6.72

3 Bug fixes

Handle Metadata screen loading with only one restricted section

Details

When the Metadata schema only has one restricted section, it prevented the Metadata screen from loading. The Metadata screen remained in a loading state indefinitely.

Restricted sections appear empty, while the schema and code output screens are shown correctly. Metadata screen loads reliably, ensuring users can view schema and code output even when sections are restricted.

Content Management

2025-09-23

6.72

2 Minor improvements

Reduce the affect of REST logging to http.log

Details

Previously, REST logging to http.log would take a synchronous lock on the file before writing to it, which caused contention on shared file systems.

REST logging writes to a faster disk in the DXP and sync logs to their final location out of band, minimising any impact from http.log logging on REST.

Content Management

2025-09-23

6.72

3 Bug fixes

Mirror exports with a map loose strategy on certain Paint Layouts can incorrectly match asset IDs

Details

With certain Paint Layout implementations, asset IDs could be wrongly matched during asset syncing. This condition could cause an invalid asset ID error to be thrown.

The matching logic has been fixed. Asset IDs are matched correctly during the asset syncing and no longer cause an error.

Content Management

2025-09-23

6.72

3 Bug fixes

PHP 8.1 Fatal error: Uncaught exception 'TypeError' with message: 'method_exists()'

Details

When an asset that provides URLs for other resources (bridge asset) is deleted, it can still be referenced.

A fatal error could be produced when looking up URLs through non-existent assets.

When a bridge asset is asked to provide a URL, it is checked to see if the asset exists before it can provide URLs.

Fatal errors can no longer occur from looking up URLs for other resources from bridge assets.

Content Management

2025-09-23

6.72

3 Bug fixes

loadAttribute() validation fails on empty strings in PHP 8.1

Details

A string value could be set as an asset attribute ID on certain Search Page implementations. This condition could cause fatal errors when using the Search Pages.

The value is validated before use, and a sensible default is used in this scenario. The Search Page no longer errors in this way under these conditions.

Content Management

2025-09-23

6.72

2 Minor improvements

Treat false and true as boolean values in ^eq and ^neq keyword modifiers

Details

An initial argument to ^eq or ^neq now always performs a boolean comparison.

The ^eq and ^neq keyword modifiers relied on the internal representation of variables. When used to compare 'true' and 'false', the behavior was unpredictable across platforms and internal API changes.

Content Management

2025-09-23

6.72

3 Bug fixes

Known Issue: Paint Layouts can error after referenced containers have been deleted

Details

Under certain rare circumstances, when containers are removed from the type formats of a paint layout, the content cache for the paint layout may not be updated. When the container is purged from the trash, the paint layout will return a 500 Server Error response when an asset to which it is applied is requested.

Any paint layouts whose type formats changed after this change will no longer fatally error, even if the content cache still holds a reference to the deleted container.

The content cache can be regenerated in the Administration backend by changing the type format and then changing it back again. Additionally, a code change was made where the cache for a paint layout will silently ignore missing containers, as if the accessing user did not have permission to read them.

Content Management

2025-09-23

6.72

2 Minor improvements

Skip assetExists check on globals keyword replacements

Details

Globals keywords will perform better now that the assetExists validation is skipped on global keyword replacements.

Globals keywords did an additional DB query to check if each asset exists before loading it, which slowed down the validation process.

Content Management

2025-09-23

6.72

3 Bug fixes

Update dependencies for Data Services 4.1.5 release

Details

Dependencies have been upgraded to address security issues, and to ensure a safer and more reliable system.

Data Services

2025-09-25

4.1.5

2 Minor improvements

Generate Start Urls v1.2.0 plugin updates to offset mode

Details

The Generate Start Urls plugin dependency on json-path, was updated to use json-smart to 2.6.0.

Supported offset mode, which allows pagination based off an offset rather than a page.

Fixed incorrect configuration key name in XML Page mode example.

Search

2025-09-25

16.36.0.0

3 Bug fixes

Split XML or HTML Plugin Approval

Details

XML namespaces were not being handled and results in errors being thrown. The plugin now enumerates and collects the namespaces and reapplies them to the extracted elements of the document. The extracted elements will contain the original XML namespaces.

Search

2025-09-25

16.36.0.0

3 Bug fixes

Twitter V2 API gatherer throws HTTP 429 error

Details

Added support to retry calling the Twitter API if it returns an HTTP 429 Too Many Requests response. The plugin will retry up to one time with a delay based on the API HTTP header x-rate-limit-reset.

Added a limit of getting a maximum of 100 tweets per request. This is to reduce the number of requests made to the Twitter API, thereby preventing HTTP 429 requests and improving performance.

Search

2025-09-17

16.36.0.0

2 Minor improvements

Workspaces are no longer shown on the Integrations page

Details

Individual workspaces are no longer shown on the Integrations page, but the direct link to your Integrations platform remains and lets you navigate without confusion.

Links between the existing Squiz Integrations workspaces and the Squiz DXP Console were difficult to keep synchronised, which lead to confusion about workspace links or names being invalid.

DXP Console

2025-09-30

2.49.0

3 Bug fixes

Access restriction updates for the auto-completion plugin

Details

The auto-completion plugin could not generate the auto-completion CSV file when this plugin was enabled. The plugin now allows all-results.json and search.json endpoints unrestricted access. As a consequence, the auto-completion plugin now works as expected.

Search

2025-09-25

16.36.0.0