Release Notes for XWiki 18.0.0

Last modified by Ilie Andriuta on 2026/05/18 15:06

This is the release notes for XWiki Commons, XWiki Rendering and XWiki Platform. They share the same release notes as they are released together and have the same version.

This release updates the icon theme, improves the accessibility of annotations, and adds new features to Live Data. Apart from this, many bugs were fixed. This is the first version of XWiki that requires Java 21 and supports Java 25. This release also contains security fixes, with the highest severity being 9.3/10.

New and Noteworthy (since XWiki 17.10.2)

Full list of issues fixed and Dashboard for 18.0.0.

For Users

Upgrade to Font Awesome 7.0.1

 
The base icons used in XWiki Standard have been upgraded from version 4.7.0 to 7.0.1. This comes with an update in visual style in almost all icons used throughout the interface. Macros that used these icons are updated as well.

Improved accessibility of annotations

 
Updated the annotations to make them keyboard interactable. Small changes to the design of highlights have been applied. When clicking any part of an annotation highlight, its bubble is now displayed. Annotation highlights now contain a button that shows up when focused with the keyboard. Learn more about using annotations

Miscellaneous

For Admins

  • Require Java 21: XWiki now requires at least Java 21 and now officially support up to Java 25.

For Developers

Image insertion popover override

 
The default image insertion UI from BlockNote editor can now be overridden by providing a new overrides.imageEdition parameter to blocknote-headless. For more infos see the complete props API

Changes to abstract design system API

 
The abstract design system API has been slightly altered:

  • The components XNavigationTree and XNavigationTreeSelect have been deprecated and removed,
  • The XTree component now supports generic props, and can define two new methods (lazyLoadChildren and nodeClickAction) to become an alternative to the removed components.

Javascript Importmap declaration

 
Developers of JavaScript applications relying on JavaScript modules can now easily declare importmap entries by adding a new xwiki.extension.javascript.modules.importmap property in the pom.

NPM packages are now published during the release

 
All the JavaScript packages required to build Blocknote are now bundled in XWiki and published on https://www.npmjs.com/ for each release of XWiki Standard.
You can find them under the @xwiki npm group with the @xwiki/platform-* package names.

Support for Properties from Other Classes in Live Data

 
In Live Data it is now possible to display properties from other classes. This allows more advanced use cases where data from different objects on the same page shall be displayed. Further, this allows displaying a property from an XObject without filtering out pages without that object. For example, it is now possible to display all pages and their tags without filtering out pages without tags.

Miscellaneous

  • Static values supported in HQL queries: It is now possible to select static values like select 1 in HQL queries with just script right. This is useful for example for not exists subqueries that involve tables from which no columns are allowed to be selected directly.

  • Keep XWiki running after a UI test: When executing a UI integration test, it is now possible to keep XWiki running after the test finishes by specifying the -Dxwiki.test.ui.keepRunning=true configuration option in the command line.

  • Enforce Required Rights property in LiveTable: The property if required rights are enforced on a page is now supported in LiveTable, and with the LiveTable source also in Live Data. This allows, for example, to develop dashboards for seeing which pages are already enforcing required rights and which don't.

Upgrades

The following runtime dependencies have been upgraded (they have a different release cycle than XWiki Commons, XWiki Rendering and XWiki Platform):

Translations

The following translations have been updated:

Tested Browsers & Databases

Automated testing

XWiki executes a lot of automated tests during its build, testing all supported configurations. In addition, some manual QA is also executed to try to discover additional problems (see below):

Manual testing

Here is the list of browsers we support and how they have been manually tested for this release:

 BrowserTested on:
Firefox30.pngMozilla Firefox 149Jira Tickets Marked as Fixed in the Release Notes
Chrome30.pngGoogle Chrome 146Not Tested
Edge30.pngMicrosoft Edge 146Not Tested
Safari30.pngSafari 18Not Tested

Here is the list of databases we support and how they have been manually tested for this release:

 DatabaseTested on:
hypersql.pngHyperSQL 2.7.4Not Tested
mysql.pngMySQL 9.3Jira Tickets Marked as Fixed in the Release Notes
postgresql.pngPostgreSQL 17Not Tested
mariadb.pngMariaDB 11.8Not Tested
oracle.pngOracle 19cNot Tested

Here is the list of Servlet Containers we support and how they have been manually tested for this release:

 Servlet ContainerTested on:
tomcat-icon.pngTomcat 11.0.21Jira Tickets Marked as Fixed in the Release Notes
jetty-icon.pngJetty 12.1.5 (XWiki Standalone packaging)Not Tested
jetty-icon.pngJetty 12.1.5Not Tested

Security Issues

Security issues are not listed in issue lists or dashboards to avoid disclosing ways to use them, but they will appear automatically in them once they're disclosed. See the XWiki Security Policy for more details.

Known issues

Backward Compatibility and Migration Notes

General Notes

  • When upgrading make sure you compare and merge the following XWiki configuration files since some parameters may have been modified, removed or added:
    • xwiki.cfg
    • xwiki.properties
    • web.xml
    • hibernate.cfg.xml
  • Add xwiki.store.migration=1 in xwiki.cfg so that XWiki will attempt to automatically migrate your current database to any new schema. Make sure you backup your Database before doing anything.

Issues specific to XWiki 18.0.0

Java 21 required

XWiki 18 require at least Java 21.

Upgrade to Groovy 5

As usuall with Groovy major upgrades, this can come with potential breakages. See https://groovy-lang.org/releasenotes/groovy-5.0.html#Groovy5.0-breaking for more details.

API Breakages

The following APIs were modified since XWiki 17.10.2:

No breakage!

Credits

The following people have contributed code and translations to this release (sorted alphabetically):

  • 이경철
  • Aman-Baliyan
  • Anca Luca
  • anonymous
  • Cédric LAMBLIN
  • Clément Eraud
  • Gianmarco
  • Ilie Andriuta
  • Lucas Charpentier
  • Manuel Leduc
  • Marius Dumitru Florea
  • Michael Hamann
  • Nikita Petrenko
  • Peter Viskup
  • Pierre Jeanjean
  • Raphaël Jakse
  • Rostyslav Haitkulov
  • Saa Kiraly
  • Simon Urli
  • Simpel
  • Thiago Krieck
  • Thomas Mortagne
  • Vincent Massol
  • Xiaofei Cui
  • xrichard
  • 龔敖摩

Get Connected