Release Notes for XWiki 14.8-rc-1

Last modified by Ilie Andriuta on 2022/09/28

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 brings links and attachments refactoring on the farm (i.e., cross wikis and sub-wikis), and an improved attachments listing now based on LiveData. In addition to the usual bug fixes (including 4 security fixes), this release also brings various improvements for administrators and developers.

New and Noteworthy (since XWiki 14.7)

Full list of issues fixed and Dashboard for 14.8.

For Users

Replace the Livetable from the attachments tab with a LiveData

 
The attachments Livetable was updated to use the new LiveData.

Miscellaneous

  • Cross wiki refactoring of links by default: Cross wiki refactoring of links is now much faster (being in a different wiki does not anymore have any specific performance impact when refactoring links) and enabled by default.

For Admins

Indexing User

 
A new section to define a dedicated indexing user has been added in the "Search" category in the wiki administration.

The search index usually runs without a dedicated user. In some cases this creates minor issues when indexing the title of pages, e.g. in case of a closed wiki, where one cannot access as guest user the sheet that computes the user profile pages title as "Profile of «firstname» «lastname»". This is not possible unless the indexer is associated with a user that has access to the corresponding sheet. A new section in the "Search"  category of the wiki administration allows to set an "indexing user", which is used to access the sheets which might be used to compute page titles.

If this setting is left empty, the stored plain title of the page name is shown as title of the search result for affected pages.

Please read the description and especially about the security implications before setting an indexing user.

Miscellaneous

  • Configurable hidden macros categories : The list of categories hidden by default, previously hard-coded to Internal and Deprecated, can now be configured using the rendering.transformation.macro.hiddenCategories property in xwiki.properties.

    #-# [Since 14.8RC1]
    #-# Override the default hidden macro categories.
    #-# Note: the categories are case sensitive.
    #-#
    #-# The default value is:
    # rendering.transformation.macro.hiddenCategories = Internal,Deprecated
    #-#
    #-# For instance, to make the "Development" category hidden by default, in addition to the "Internal" and
    #-# "Deprecated" categories, you'd use:
    # rendering.transformation.macro.hiddenCategories = Development,Internal,Deprecated

For Developers

Async Form Validation

 
A new JavaScript API is available to help implement asynchronous form validation. It can be used like this:

require(['jquery', 'xwiki-form-validation-async'], function($) {
 const titleInput = $('input[name=title]');

 const validateTitle = () => {
   if (!titleInput.val()) {
     return Promise.reject();
    } else {
     return new Promise((resolve, reject) => {
        ...
      });
    }
  };

  titleInput.on('input', () => {
   // Schedule the asynchronous validation after 500ms. The namespace is used to prevent replacing validations added by
   // other modules.
   titleInput.validateAsync(validateTitle, /* delay: */ 500, /* namespace: */ 'myModule');
  });
});

Miscellaneous

  • Provide Raw content filtering mechanism for macros: A new rendering transformation component is now provided for macros to allow perform filtering of RawBlocks. A new API is provided, RawBlockFilter, with a first implementation for HTML raw blocks, used in html macro.

  • DocumentVersionReference is part of the model API: The DocumentVersionReference is now part of the model API: this reference API allows to manipulate a DocumentReference with a specific version attribute, allowing to specifically target a version of the document.

  • Hidden macro categories API: The MacroCategoryManager role gives access to the list of hidden macro categories.

    @Role
    public interface MacroCategoryManager
    {
       // [...]

       /**
         * @return the set of hidden categories (e.g., "Deprecated, Internal")
         * @since 14.8RC1
         */

       @Unstable
       default Set<String> getHiddenCategories()
       {
           return Set.of();
       }
    }
  • New event when livedata entries are displayed: A new javascript event xwiki:livedata:entriesUpdated is now triggered for LiveData when the entries are displayed: this event can be listened to when an extension need to augment the data.

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

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

 BrowserTested on:
Firefox30.pngMozilla Firefox 104Not Tested
Chrome30.pngGoogle Chrome 105Not Tested
Edge30.pngMicrosoft Edge 105Not tested
Safari30.pngSafari 15

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

 DatabaseTested on:
hypersql.pngHyperSQL 2.7.0Not Tested
postgresql.pngPostgreSQL 14Not Tested
mariadb.pngMariaDB 10.6Tests run and results
mysql.pngMySQL 8Jira Tickets Marked as Fixed in the Release Notes
oracle.pngOracle 19cNot Tested

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

 Servlet ContainerTested on:
tomcat-icon.pngTomcat 9.0.65
jetty-icon.pngJetty 10.0.7 (XWiki Standalone packaging)Not Tested
jetty-icon.pngJetty 10.0.7Not Tested

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 14.8-rc-1

Changes in Solr search core

The shema of the Solr search core (the one used as source for document search in the UI) has been modified and will need to be resetted. This is done automaticlaly in case of embedded Solr (the default) but is a manual process in the case of a standalone remote Solr install: you should remove the Solr core with name "xwiki" and reinstall it as documented on Solr Search API.

Also, since the version of Solr with which XWiki is tested (the version embedded in XWiki) has been upgraded to 8.11.2, it's is highly recommended to make sure, if you use a remote standalone Solr setup, that have a 8.11.x verison of Solr (it may work with other versions but XWiki was not tested with them).

API Breakages

The following APIs were modified since XWiki 14.7:

No breakage!

Credits

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

Alex Cotiugă
Andreea Chirica
Clemens Klein-Robbenhaar
Clemens Robbenhaar
Manuel Leduc
Marius Dumitru Florea
Michael Hamann
Nikita Petrenko
Oana-Lavinia Florean
Simon Urli
Thomas Mortagne
Vincent Massol
acotiuga
raphj

Get Connected