Release Notes for XWiki 17.3.0-rc-1

Last modified by Simon Urli on 2025/04/23

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 introduces important improvments for the definition of wiki macro parameters and provides new mechanism for better performance in macro execution. It also contains a redefiniton of the realtime editing toolbar for better user experience. This release contains security fixes, with the highest severity being 9.3.

New and Noteworthy (since XWiki 17.2.0)

Full list of issues fixed and Dashboard for 17.3.0.

For Users

Improvments in Wiki Macro Parameters

 
Wiki Macro Parameters class has been improved to allow defining the same properties it was already possible to define in Java macro parameters. In particular it's now possible to define the following properties:

  • Parameter feature (optional): Allows to specify the name of the feature this parameter is bound to. If several parameters are bound to same feature, it means a choice need to be made between those parameters.
  • Parameter group (optional): Allows to specify the name of the group this parameter belongs to. This allows to visually shows the parameters together in the macro configuration UI.
  • Parameter hidden (optional): Indicates whether the parameter should be displayed or not in the macro configuration UI.
  • Parameter advanced (optional): Indicates whether the parameter should be emphasized or not in the macro configuration UI.
  • Parameter deprecated (optional): Indicates if the parameter is deprecated and shouldn't longer be used.
  • Parameter feature mandatory (optional): Indicates if the parameter feature is mandatory, i.e. the parameter itself might not be mandatory but if the feature is then at least one of the parameters of the feature should be used.

New Realtime Editing Toolbar

 
The toolbar that is displayed at the bottom of the page when editing in realtime has been redesigned:

  • The "Save & View" button has been renamed to "Done"
  • The "Save" (and continue) button has been removed because it's not needed as much with auto-save. You can still use the save & continue shortcut key though (Alt+Shift+s).
  • The "Cancel" button has been removed because its behavior with auto-save is confusing. You can still use the cancel shortcut key (Alt+c) though to leave the edit mode without saving.
  • The list of connected users has been moved here from the WYSIWYG editor toolbar. Besides the user avatar we also show the username abbreviation. If there are many users connected you can see all of them in the users' dropdown.
  • "Allow realtime collaboration" checkbox has been renamed to "Leave Collaboration" and is now located in the Done dropdown.
  • The save status is displayed directly on the toolbar (unsaved, saving, saved)
  • There is a new history dropdown on the right side that shows recently saved versions of the edited document, along with their author. You can use this to see the content of the edited document in those specific versions.
  • The "Minor edit" and "Version summary" fields have been moved to the "Summarize Changes" modal. Basically, you can:
    • either use the "Summarize Changes" entry from the history dropdown to review and summarize the current changes, then continue editing
    • or use the "Summarize & Done" entry from the Done dropdown to review and summarize the changes before leaving to view mode

Check the realtime editing module for more information.

Handles to resize panel columns

 
When panels are displayed on the right and left of instances, a handle can be dragged to resize them. The size of the panel is stored at the browser level, meaning that navigating to a new page on the same wiki will not lose this preference, but moving to another machine will.

Miscellaneous

  • Root parameter in Children macro: The Children macro now has a root parameter allowing to display the children to a given document, instead of displaying the children of the current document.

  • Allow to automatically expand nodes in DocumenTree macro: A new parameter has been added to the DocumentTree macro: expandToLevel allows to define to which level automatically expand the tree when displaying it: indicating 1 would automatically open top level nodes, 2 would also open their immediate nested nodes, etc. Default value is 0 so nothing is automatically expanded.

For Admins

  • Macro execution can be marked as isolated for improved rendering performance: In case of slow rendering times due to thousands of macros on a page, it is now possible to configure macros as being isolated without needing to modify the used macros. This is particularly useful for macros that have been installed as extensions whose authors haven't updated the macros to indicate if the execution is isolated yet.

For Developers

Mark macro executions as isolated for better performance

 
When macros are executed, until now, the whole XDOM tree needed to be re-scanned for the next macro to execute. This led to slow rendering times for pages with thousands of macros. It is now possible to mark the execution of macros and wiki macros as isolated if their execution won't modify the XDOM, which avoids this costly scan. As this can significantly improve the rendering time, e.g., from eight to one second (concrete improvements depend on the exact page content), macro developers are advised to mark their macros as isolated if their execution is actually isolated.

Added CSS property alternatives to LESS variables

 
Added a whole set of CSS properties to allow styling interfaces without LESS. Those CSS properties are still subject to change, but the system should be used and updated for any new UI implementation in XWiki Standard.

Miscellaneous

  • Added velocimacros for info, success, warning and error boxes: Added an inline and a standalone velocimacro for each type of box. Those velocimacros do not accept more parameters than the content. When it's not possible to use the XWiki macros, those velocimacros should be used instead of hard-coding. Read more about the box velocimacros here

  • Webjar URL Factory: The operations from the webjars script service are now also available through a role.

  • Added font weight properties to the skin: When developping a UI element, instead of hard-coding font-weights, prefer using the CSS properties font-weight-regularfont-weight-semibold and font-weight-bold. Learn more about CSS properties in XWiki and those new variables.

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: 

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.

API Breakages

The following APIs were modified since XWiki 17.2.0:

No breakage!

Credits

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

  • Konstantinos Koutsilis 
  • LucasC 
  • Manuel Leduc 
  • Marius Dumitru Florea 
  • Mend Renovate 
  • Michael Hamann 
  • Simon Urli 
  • Simpel 
  • Thomas Mortagne 
  • Vincent Massol 
  • XWiki 
  • Xiaofei Cui 
  • jan2xue 
  • tkrieck 
  • xrichard 
  • zhufukun1999 

Get Connected