Appearance
Core Engine Release 5.12 ​
June 2026
We upgraded! What's new? Learn more about new features, technical changes and solved bugs in 4App Core Engine.
Note on upgrading: If you skip a version when upgrading, check all release and patch notes in between for important information. They apply cumulative.
Note on individualization: If your 4ALLPORTAL is highly customized or if you installed individual apps, please contact your implementation partner before upgrading. We recommend checking your custom contents, especially layouts and object renderers, carefully after an upgrade.
Improvements ​
Mass Change ​
The mass change function now indicates when editable fields already contain values for at least one selected asset. Existing field values are not displayed directly; instead, a tag icon at the field signals that the field is filled. This helps users identify existing content before applying bulk changes.
Please note: When role-based dimension permissions are active, this function may be limited, for example if the user does not have permission for a specific combination of dimensions.
Search Speed ​
Searches on large systems are now significantly faster, both with and without filters. They no longer need to sort and load millions of rows completely. Instead, results are limited directly before they are processed.
Technical Changes ​
4APQL: New Aggregate Function SOME(<field>) ​
We have added the new SOME(<field>) aggregate function. It returns true if at least one record has a non-empty value in the field, otherwise false.
- For string fields, NULL and an empty string ('') count as empty
- For numeric, date, and boolean fields, only NULL counts as empty.
Multiple SOME(...) aggregates can be combined in a single SELECT. Works consistently on MySQL and SQL Server.
Further information: Aggregations documentation
Consistent Stopword Handling in Full-Text Search ​
Full-text searches that contained stopwords (e.g. in in rose in dose) could previously return no results, because stopwords were sent to the index as mandatory terms even though they are not indexed. Stopwords are now ignored consistently across all search modes, so the search returns the expected matches (as for rose dose). Quoted phrases (e.g. "rose in dose") are passed through unchanged and keep their stopwords.
Derivate Service Layer Selection ​
The Derivate service now uses layer=0 as the default convert option for multi-layer images with alpha masks. This selects the first layer during image composition. Layer selection can be disabled by explicitly setting layer=-1.
What to do: Review custom conversion settings where multi-layer image handling is configured.
App Development: IBeforeMergeSamlUser Deprecated in Favour of SamlUserMergeHook ​
The interface IBeforeMergeSamlUser and its method allowedIdentityProviders() are now deprecated and will be removed in a future release. The new interface is SamlUserMergeHook with method allowedAssertingPartyNames().
Custom development: Set the allowedAssertingPartyNames method so that the functionality of the default SAML providers is not affected. If you do not use it, it will be applied to all IDPs.
Solved Bugs ​
- Fix for sometimes changing the colors when downloading multi-layer images with alpha mask
- Fix the feature permission pop-up so that values do not revert to their previous state when changes are saved using the Ctrl+S keyboard shortcut
- Fix the WYSIWYG editor so its content also loads custom styles (e.g., fonts)
- Fix SAML attribute mapping hook to respect configured providers only
- Fix for pop-up windows with dimension values that threw errors when one or more dimensions were disabled for a role
Patch releases ​
Version 5.12.1 ​
- Fixing errors when opening the folder properties window
Version 5.12.2 ​
- Fix the order of values in dimensioned list fields (e.g. reference renderers in tile or bubble mode), which was sorted by id instead of the saved manual order. The displayed order set via drag and drop is now preserved again.
- Fixed the welcome screen reappearing with empty persona and experience after resetting the personal settings; both values are now always read directly from Intercom instead of a stale session cache
Version 5.12.3 ​
File copy operations of the derivate service now transfer data in large chunks, which significantly speeds up preparing file downloads on network file systems (e.g. NFS).
The chunk size is configurable via
fourallportal.filesystem.transfer-buffer-size(default16MB) or the environment variableFOURALLPORTAL_FILESYSTEM_TRANSFER_BUFFER_SIZE.- Fix the logic of the welcome page so that only the "Other" option requires a free-text field entry
Version 5.12.4 ​
- The token based session registration (
GET /api/session/tokens/register/{token}andGET /api/session/tokens/{token}) does not meet our security requirements and is now disabled, the endpoints answer with404. A replacement is planned
Integrations that still depend on them can re-enable the endpoints (more details)
Version 5.12.5 ​
- Fix short system outages caused by many real-time connections closing at once
Version 5.12.6 ​
- Fix the application failing to start after updating.

