Release notes for Magnolia CMS 6.3.0
LTS release • Delivered on September 4, 2024 • Changelog: 11643
Magnolia 6.3.0 is the next step in the digital experience hub for omnichannel. In this major release, we focus particularly on the following areas:
-
Improved search, usability, and UI experience
-
Enhanced overall system performance
-
Refined flexibility of configuration
As with any Magnolia release, this release also delivers critical bug and security fixes. We keep the details of security fixes private in line with our security policy. Contact our Support team if you need more information.
What’s new
Search experience
We’re improving the Magnolia search experience by refining its usability and building a more efficient workflow for editors to find and manage relevant content in a seamless way.
More specifically, we bring the in-app search for Pages and Assets apps, together with usability enhancements to the top navigation and action bar.
Usability
This release brings several usability updates to the deletion workflow as part of our ongoing efforts to improve user experience.
Users benefit from better visual feedback thanks to informative success notification pop-ups upon submitting deletion requests or completing content deletion actions.
Additionally, the Action Bar has been refined with updated titles, action labels, and icons for better clarity.
These improvements aim to make content management smoother and more intuitive for our users.
CKEditor 5
Magnolia 6.3 comes with version 5 of the CKEditor, a highly customizable editor which powers the Magnolia Rich text field.
Version 5 is a modern, state-of-the-art, modular, and highly customizable editor that provides a number of advanced formatting, editing, and productivity features.
- A full-featured rich text field with the CKEditor functions bar
-
See also the following resources on the |
New app home tab icon
You see a new Home tab when you open an app. Each app has this tab, regardless of the number of subapps, to maintain consistency in your user experience.
Use the slider to see the current and previous view.
System performance
This release brings significant performance-related improvements:
-
A technical preview of Swift publishing
-
Reworked observation handling and its effect on the UI
-
Introduced two new flush cache policies not based on observation: FlushAllFromPublishingEventPolicy and SiteAwareFlushFromPublishingEventPolicy in the multisite cache configuration
-
Published a large-scale content guide and metrics
Configuration
MicroProfile Config
Magnolia 6.3 embraces MicroProfile Config, adding state-of-the-art flexibility for external instance configuration. This is applied first to publishing receivers config (moving out of JCR).
For more details, see the following links:
MicroProfile Health
Magnolia 6.3 provides MicroProfile Health endpoints, facilitating deployment with liveness, readiness, and startup probes in Kubernetes environments.
Below is an example of a response payload, following the MicroProfile Health REST interface specification.
{
"status": "UP",
"checks": [
{
"name": "magnolia-instance",
"status": "UP",
"data": {}
}
]
}
As a consequence, the Health check API is deprecated in Magnolia 6.3.
Reworked configuration sources
Magnolia 6.3 streamlines the ConfigurationSources
implementation by following the general trend of moving definitions from JCR to YAML.
Key changes
-
You can pull definitions from variable sources.
-
The registry keeps no resolved configuration state on its own.
-
A configuration source keeps the state of the definitions it discovers.
-
Validation can still be applied at the registry level.
-
A built-in facility for observation changes is available.
A drawback of these changes is, however, that YAML configurations can no longer inherit configurations in JCR. If you want to inherit an existing definition that’s supplied via JCR configuration, you must migrate it to a YAML file. Inheriting from YAML remains fully functional. |
Default user groups and roles
Magnolia 6.3 introduces a modular privilege pattern to increase the coherence and traceability of roles in the system. You can now onboard users with only an assignment to groups, with everything framed by better traceability and an overview of privileges.
Each Magnolia module is now responsible for providing roles describing access (privileges) to the resources it provides.
For more details, see Roles, groups and users.
Multiple login providers for SSO
Magnolia 6.3 provides the ability to use default Magnolia users as well as SSO-based users to log into Magnolia. This guarantees that you can always access the Magnolia instance even if your Identity Provider (IdP) is down.
For more details on SSO updates, see the SSO module changelog.
IETF language tags
Magnolia now supports IETF Language Tags (also known as BCP 47). These tags are used in most web standards and allow for a more flexible and semantically accurate representation of language variations and local specificities.
The support is done through a more permissive languageTag
property in language configuration (LocaleDefinitions
).
Since Magnolia 6.3.0, the IETF-compliant i18n support (info.magnolia.cms.i18n.IetfI18nContentSupport) is the default implementation. |
-
MAGNOLIA-8709 Allow use of IETF language tags
Improvements
Functionality
-
MAGNOLIA-8380 Add debug logging for tracking
SystemRepositoryStrategy
instances -
MAGNOLIA-9258 Exclude observation listeners from the config workspace from registering a
EventListenerMBean
-
MAGNOLIA-9388 Add postLogoutRedirectUrl property for
LoginHandler
-
MGNLCACHE-240 Optimise
EhCache3Factory
cache wrapping functionality -
MGNLCACHE-369 Prevent cache entries duplications
-
MGNLDAM-1429 Make bulk restore recursive in the Assets app
-
MGNLDAM-1471 Set
allowedMimeTypePattern
for the multiple upload feature -
MGNLDAM-1522 Declutter the Upload CTAs in the Assets chooser
-
MGNLMAIL-114 Upgrade or restore Mail Tools app
Authentication
-
MGNLMAIL-136 Implement OAuth 2.0 authentication
REST API
-
MGNLREST-799 Add a way to force maximum limit of nodes returned by Delivery API endpoint
-
MGNLREST-803 Change default of
maxLimit
property from 1000 to 100
User experience
-
MGNLUI-7570 Global
SafeHtmlValidatorDefinition
validator doesn’t accept HTML comment block -
MGNLUI-8082
FormView#getPropertyValue
could support composite fields -
MGNLUI-8807 Update CKEditor 4 to
4.24.0-lts
-
MGNLUI-8828 The first tab (Home) label should be customizable
-
MGNLUI-8939 Change the modifier of
pasteSingleItem
fromprivate
toprotected
inJcrClipboard
Miscellaneous
-
ADMINCTR-520 Revert feature-toggle-based App Launcher config
-
ADMINCTR-549 Long sticker content breaking the UI
-
DEV-2454 Verify upgrade with Cloudinary and OpenAI
-
IMGREC-117 Sunset
local-image-recognition
submodule -
MAGNOLIA-7739 Remove old pages app from webapps
-
MAGNOLIA-8286 As a developer, I can add a servlet via annotation or web.xml
-
MAGNOLIA-8341 As a developer, I need a feature flag to enable servlet though annotation or web xml
-
MAGNOLIA-8440 Replace Reflections library with ClassGraph
-
MAGNOLIA-8481 Review ConfigurationSource / Registry refactoring potential blindspots
-
MAGNOLIA-9181 Expose EventListenerMBean for monitoring
-
MAGNOLIA-9183 Expose QueryStatManagerMBean for monitoring
-
MAGNOLIA-9184 Expose RepositoryStatistics for monitoring
-
MAGNOLIA-9198 Refactor ProviderImpl to gain access to the RepositoryContext
-
MAGNOLIA-9219 Provide MicroProfile ConfigSources for webapp WEB-INF resources
-
MAGNOLIA-9242 Revert locking of the
config
workspace -
MAGNOLIA-9244 Align liveness & readiness with standard MicroProfile Health API
-
MAGNOLIA-9357 Consolidate the accessibility of superuser in Magnolia webapp
-
MAGNOLIA-9437 Synchronize node ID’s in new bootstraps with old nodes for editors and publishers groups
-
MGNLCE-304 Replace Reflections library with ClassGraph
-
MGNLCE-323 Swap default MySQL repo config to Connector/J 8
-
MGNLDAM-1486 Missing
i18
German translation for new asset dialog -
MGNLEE-815 Ship
content-editor
v2
with 6.3.0 -
MGNLGQL-123 Update to graphql
17.4
or higher -
MGNLGROOVY-256 Update Groovy to latest stable
4.0.x
-
MGNLIMG-232 Create
imaging-editor
role that allows retrieval from/.imaging/*
-
MGNLLIC-91 Replace Reflections library with ClassGraph
-
MGNLREST-411 Replace Reflections library with ClassGraph
-
MGNLREST-775 Health check API should also check the database connection
-
MGNLREST-781 Implement Health check rest endpoint
-
MGNLSITE-105 Site definition registry
-
MGNLUI-7184 Replace Reflections library with ClassGraph
-
MGNLUI-7693 Remove support for deprecated
linkField#chooser
config -
MGNLUI-8438 Performance: Configurable JCR observation delay and the option to disable observation
-
MGNLUI-8695 Add extra popup confirmation in the delete workflow
-
MGNLUI-8703 Update the Action Bar title, actions' labels and icons
-
MGNLWORKFLOW-484 Java 17 - Content isn’t allowed in
prolog
-/mgnl-nodetypes/workflow-jbpm-nodetypes.xml
- Convert to CND -
MGNLWORKFLOW-495 Complete Simple Workflow "Marked for deletion" changes to all the apps
-
PAGES-1459 Show status label in the footer of the page detail
-
PSWDMNGR-12 Split Password Manager module into
core
andapp
submodules -
PSWDMNGR-37 Solve Password manager topic in SaaS
-
PUBLISHING-318 Remove default receiver config from module’s MicroProfile Config
Java 17
Java 17 is the build baseline of Magnolia 6.3. Magnolia 6.3 also runs on the latest Java versions, as specified in the Certified stack.
Artifact changes
Unification of extensions
Each module has been re-categorized into a Core module, Extension, or Framework, as well as being assigned to a defined business-case category. Modules follow a new uniform module structure, which is easier to understand for both the user and the developer.
For more details, see Old module packs, new extensions. |
Travel Demo webapps extracted to the Demo project
The Community and DX Core Demo webapps are now part of the Magnolia Demo project. Their artifact names have changed:
-
For DX Core, from
dx-core-demo-webapp
totravel-demo-webapp
. -
For Community, from
magnolia-community-demo-webapp
totravel-demo-community-webapp
.
Local image recognition module discontinued
We are discontinuing the option to use a local, pre-trained neural network for the Image Recognition module. This feature was experimental and relied on outdated and unmaintained libraries. Amazon Rekognition becomes the reference implementation for the Image Recognition module.
Key bug fixes
-
ADMINCTR-479 Logout from external IdPs no longer works
-
CFGUI-154 Definitions app displays the same problem twice
-
CONTEDIT-597 Stories
Multiblock
Others
button doesn’t obey the YAML definition -
CONTEDIT-609 Stories aren’t rendered
-
CONTEDIT-614 Copy blocks from fallback doesn’t copy text fields with 'rows' attribute
-
MAGNOLIA-9214 Instances randomly fail to start up on fast machines
-
MAGNOLIA-9342
TabbedForm
shows definition error -
MGNLCACHE-367 Cache redirect doesn’t include response header on redirect responses
-
MGNLCACHE-370 Potential cache header poisoning - include headers in cache keys
-
MGNLDAM-1482 New File Upload doesn’t set Multipart Boundary when uploading assets via chooser
-
MGNLDAM-1484 Handle EXTDAM exceptions better so that they don’t break the Assets chooser
-
MGNLDEMO-428 Component with JavaScript model isn’t rendered on stories page
-
MGNLDEMO-431 Remove dependency on old
dam-app
compatibility -
MGNLEE-829 Cannot upload archives with JavaScript
-
MGNLGQL-164 Cannot access GraphQL app and GraphQL API
-
MGNLMAIL-198 Can’t use
ThreadedMailHandler
handler -
MGNLMAIL-206 Fix
6.2
to6.3
migration tests -
MGNLPER-192
JcrSearchResultSupplier
generates inefficient queries -
MGNLRES-404 Create
resources-editor
role that allows retrieval from/.resources/*
-
MGNLREST-361 Configuration property to control the depth of referenced nodes
-
MGNLREST-655
richTextLinkReferenceResolver
doesn’t resolve localised links for all languages -
MGNLREST-800 Performance on resolver resolution
-
MGNLREST-804
assetReferenceResolver
returns different asset link -
MGNLSITE-214 Empty webapp can’t be started without site JCR module
-
MGNLUI-8710 Multi field with nested composite fields needs a click to display the fields
-
MGNLUI-8780 JCR Multi field throws exception on dialog without an existing node
-
MGNLUI-8785 RichText area problem while resizing
-
MGNLUI-8863 Some actionbars are collapsed by default
-
MKTAUT-177
marketing-automation-ui
deprecation issue -
PAGES-1057 Paste action fails due to an area node not being created
-
PAGES-1620 Adding SVG to an HTML component template breaks edit mode
-
PAGES-1624
DefaultSoftLockingView
may not be added -
PAGES-1626
VariantSelectorViewDefinition
may not be added -
PSWDMNGR-60 Don’t generate new keypair if one already exists
-
TXTREC-109 Text Classification module not working properly on demo environments
Third-party library updates
This release comes with a number of third-party library updates, see the Magnolia Third-party library BOM 6.3.0.
Upgrading to 6.3
Performance tuning
The Performance tuning guide provides an overview of performance-related topics that could help improve the operation and capabilities of your upgraded Magnolia setup.
Known issues
Due to the complexity and number of code changes, we’re still aware of some known issues in this major release, which we aim to address in the next 6.3 maintenance releases.
For the latest information, see the 6.3 list of known issues.
New or updated modules
-
AWS Foundation
2.0.0
-
About
6.3.0
-
Admincentral-legacy
6.3.0
-
Admincentral
6.3.0
-
Advanced Cache
3.0.0
-
Blossom
4.0.0
-
CKEditor 5 Build
1.0.0
-
Cache
6.0.0
-
Categorization
3.0.0
-
Community Edition
6.3.0
-
Contacts App
2.0.0
-
Content Dependencies
3.0.0
-
Content Editor
3.0.0
-
Content Importer
2.0.0
-
Content Tags
3.0.0
-
Content Translation Support
3.0.0
-
Content Types
2.0.0
-
DAM
4.0.0
-
DX Core
6.3.0
-
Definitions App
3.0.0
-
Demo Projects
6.3.0
-
Diff
3.0.0
-
Form
3.0.0
-
Freemarker Templating Samples
6.3.0
-
GraphQL
2.0.0
-
Groovy
4.0.0
-
Icons
29
-
Image Recognition
2.0.0
-
Imaging
4.0.0
-
JCR Tools
2.0.0
-
Javascript Models
3.0.0
-
LDAP Connector
2.0.0
-
Language Bundles
2.0.0
-
License
2.0.0
-
Log Tools
2.0.0
-
Magnolia
6.3.0
-
Mail
6.0.0
-
Marketing Tags Manager
3.0.0
-
Messages
6.3.0
-
Multisite
3.0.0
-
Observation
3.0.0
-
Pages
6.3.0
-
Password Manager
2.0.0
-
Periscope
2.0.0
-
Personalization
3.0.0
-
Public User Registration
3.0.0
-
Publishing Transactional
2.0.0
-
Publishing
2.0.0
-
REST Client UI
2.0.0
-
REST Client
3.0.0
-
REST Framework
3.0.0
-
Ranker
2.0.0
-
Repository Tools
2.0.0
-
Resources
4.0.0
-
Scheduler
3.0.0
-
Security
7.0.0
-
Single Sign On
4.0.0
-
Site
2.0.0
-
SiteMesh
2.0.0
-
Soft Locking
4.0.0
-
Synchronization
3.0.0
-
Task Management
2.0.0
-
Tasks
6.3.0
-
Templating Essentials
3.0.0
-
Text Classification
2.0.0
-
Third-party library BOM for Extensions
6.3.0
-
Third-party library BOM
6.3.0
-
UI
6.3.0
-
Usage Metrics
2.0.0
-
Vaadin Compatibility Addons
1.3.17
-
Webhooks
2.0.0
-
Workflow
7.0.0
Acknowledgements
The Magnolia team would also like to thank everyone who reported issues, contributed patches or simply commented on issues for this release.
Special thanks go out to Marco Blasco, Thomas Comiotto, Björn Eschle, Philipp Gaschuetz, Rico Jansen, Marvin Kerkhoff, Martijn Kooijman, Denis Lobo, Juan Miguel Ruiz Ladrón, Pierre Sandrin, Marzena Sieradzka, Frank Sommer, Antonio Tuor, Janek Valgma, and Andrey Zavodnik.