Changes Report

Last modified by Vincent Massol on 2026/09/10 13:54

Icon REST API

The Icon Theme Application is now providing a REST API. This API allows requesting the icons' metadata of the provided icon themes.

For instance:

# Request two icons from the current theme:
curl -H 'Accept: application/json' http://localhost:8080/xwiki/rest/wikis/xwiki/iconThemes/icons?name=add&name=home
# # {"icons":[{"name":"add","iconSetType":"FONT","iconSetName":"Font Awesome","cssClass":"fa fa-plus","url":null},{"name":"home","iconSetType":"FONT","iconSetName":"Font Awesome","cssClass":"fa fa-home","url":null}],"missingIcons":[]}

Likes list in the user profile

The list of likes of a user are now displayed using the Live Data Macro.

Releases list

The list of Releases is now displayed using the Live Data Macro.

Panels list

The list of Panels is now displayed using the Live Data Macro.

Wikis lists

The lists of wikis and wiki templates of the Wiki Application are now displayed using the Live Data Macro.

Mail Sending Status list

The Mail Sending Status list of the Mail Application is now displayed using the Live Data Macro.

InputSource and OutputTarget converter improvements

The InputSource and OutputTarget converters used for example during macros and filters UI are now extensible so any extension can add support for supporting conversion from more Java types and support for more references prefixes. See Filter Module for more details

Improved Notification Widget Style

Notification widget messages are now displayed with a style that is more aligned with XWiki UI guidelines regarding spacing, border and font weight.

Menus list

The list of menus of the Menu Application is now displayed using the Live Data Macro.

Siblings list

The list of siblings of a Page are now displayed using the Live Data Macro.

Children list

The list of children of a Page are now displayed using the Live Data Macro.

User profile Groups list

The list of groups of a user in the user profile is now displayed using the Live Data Macro.

Orphaned Pages list

The list of Orphaned Pages of theĀ Index Application is now displayed using the Live Data Macro.

New API to unregister a custom right

It was already possible to register a custom right, but we were missing the API to unregister it, this is now possible in the AuthorizationManager API.

History delete event

It's now possible to be notified when a range of document history versions is deleted using the event org.xwiki.bridge.event.DocumentVersionRangeDeletedEvent. See Model Bridge API for more details.

Improved display when there is no entry

A message is now displayed when there is not entries to be displayed in a Live Data.

Java API to delete a range of versions

Exposed a Java API to delete a range of versions and used it inside DeleteVersionsAction.

Document restoration events

It's now possible to be notified when a document is restored from the recycle bin using the events org.xwiki.bridge.event.DocumentRestoringEvent and org.xwiki.bridge.event.DocumentRestoredEvent. See Model Bridge API for more details.

Allow to recompute average ratings from script service

A new API methods has been added in Ratings script service to allow computing back the average ratings when needed.

The signature of the method is the following:

    /**
     * Recompute the average rating of a reference.
     * Note that this method can be resource consuming if the set of data is large.
     *
     * @param reference the reference for which to recompute the average ratings.
     * @return the average rating in an optional or an empty optional in case of error.
     * @since 13.7RC1
     * @since 13.4.3
     * @since 12.10.9
     */
    @Unstable
    @Programming
    Optional<AverageRating> recomputeAverageRating(EntityReference reference)

Allow to store Like average xobjects

Like implementation is based on Ratings, and until this version the configuration of Ratings we were using was hardcoded.

We provide in this version 2 new properties that allow to store the average ratings xobjects related to the Like information: those xobjects can notably be used to perform HQL queries with the total number of likes in pages, since this data is stored in them.

Warning

We only provide those properties as an experimental feature: it might be removed later, by providing a cleaner API for this usecase.

The properties are the following:

## Specify if the average rating should be stored or not for likes. Default value is false.
like.averagerating.isStored=true

## Specify where the average ratings should be stored. Default value is xobject. Possible values are currently solr or xobject.
like.averagerating.hint=xobject

Get Connected