Release Notes XWiki 7.4 Milestone 1

Last modified by Thomas Mortagne on 2023/10/13

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

This is our last stabilization branch for the XWiki 7.x Cycle. It brings polishing and stabilization for the Nested Pages feature and the changes in UI that resulted from it, especially for the Watchlist.

New and Noteworthy (since XWiki 7.3)

Full list of issues fixed and Dashboard for 7.4.

Notifications & Watchlist

  • A new menu has been added to the top bar, on the right: the "notifications" menu (represented by a bell). In the future, it will be the place where you can find notifications about some events happening on the wiki (personal message, a page has been modified, etc...).

    Notifications.png

  • In this menu, we have moved the Watchlist icons (watch this page, watch this wiki, etc...). These actions can be triggered with the new switch buttons

    WatchList-Notifications.png

App Within Minutes

The application Code and Data pages are now being created. The Code page lists the application code pages.

awmCodeHomePage.png

The application Data page shows a live table with the application entries. The application home page has been modified to include the Data page.

awmDataHomePage.png

The application entries (custom) live table results page is not generated any more because it was used only to load the translations on demand and now they are loaded on the wiki or user scope, based on the user rights.

Miscellaneous

  • Some bootswatch themes have now a more accurate logo.
  • When the search button on the top menu is clicked, it now closes all other menus.
  • The Sandbox now uses XWiki Syntax 2.1.
  • Non terminal pages are now exported with their corresponding WebPreferences page

See the full list of JIRA issues fixed in this release.

For Developers

Flamingo

An extension point to add content inside the new "Notifications" menu has been added:

org.xwiki.platform.notifications
NotificationsInside.png

Tree Velocity Macros

You are now able to "call" the Document Tree from Velocity using something like this:

#documentTree({
  'class': 'location-tree',
  'finder': true,
  'showAttachments': false,
  'showRoot': $showRoot,
  'showTerminalDocuments': false,
  'showTranslations': false,
  'showWikis': $showWikis
})

The same is possible with the generic Tree Widget:

#tree({
  'reference': 'XWiki.DocumentTree',
  'root': 'document:xwiki:Sandbox.WebHome',
  'openTo': 'document:xwiki:Sandbox.TestPage2'
})

All the parameters that are available for the wiki macros ({{documentTree}} and {{tree}}) should be available also for the corresponding Velocity macro.

New public Abstract job

A public org.xwiki.job.AbstractJob (and corresponding AbstractJobStatus) is now provided to help implementing a Job. An AbstractJob class already existed since a long time but it was in an internal package.

Miscellaneous

  • A new extractFirstReference(EntityType) API has been added to EntityReference: Extract the first entity of the given type from this one by traversing the current entity to the root. This differentiates it from extractReference(EntityType) which extracts the last entity of the given type.
  • The escape Velocity tool has a new method to escape CSS identifiers. This is similar to CSS.escape() available in JavaScript, and is useful if you want to create CSS selectors dynamicaly using untrusted input.
    $escapetool.css('a#b.c d[e=f]g{h:i;j}k')
    ## Output: a\\#b\\.c\\ d\\[e\\=f\\]g\\{h\\:i\\;j\\}k
  • The Document Tree Macro has a new parameter to control whether the hidden documents are filtered or not. Set to false to force the display of the hidden documents in the tree.
    {{documentTree filterHiddenDocuments="false" /}}
  • Temporary resources can now be forced to be downloaded by using the force-download=1 URL parameter

Upgrades

The following dependencies have been upgraded:

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:

BrowserTest Result
Chrome30.pngGoogle Chrome 46Not Tested
Firefox30.pngMozilla Firefox 42Jira Tickets Marked as Fixed in the Release Notes
IE30.pngInternet Explorer 10Not Tested
IE30.pngInternet Explorer 11Not Tested

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

DatabaseTest Result
hypersql.pngHyperSQL 2.3.3Jira Tickets Marked as Fixed in the Release Notes
mysql.pngMySQL 5.6.24Not Tested
oracle.pngOracle 11.2Not Tested
postgresql.pngPostgreSQL 9.3.10Not Tested

Known issues

Backward Compatibility and Migration Notes

General Notes

When upgrading make sure you compare your xwiki.cfg, xwiki.properties and web.xml files with the newest version since some configuration parameters may have been modified or added. Note that you should add xwiki.store.migration=1 so that XWiki will attempt to automatically migrate your current database to the new schema. Make sure you backup your Database before doing anything.

Issues specific to XWiki 7.4 Milestone 1

  • Better backward-compatibility for URLs has been added for the following 2 cases:
    • If the view action is omitted in the URL and the first space name doesn't match an action name, then the "view" action is implied
    • The view action can be specified even when the wiki is configured to hide the view action.
    • Note that this fixes some backward-compatibility issue introduced in XWiki 7.2

API Breakages

The following APIs were modified since XWiki 7.3:

  • Was wrongly extending internal class:
    org.xwiki.extension.job.history.ReplayJobStatus: Removed org.xwiki.job.internal.AbstractJobStatus from the list of superclasse
    org.xwiki.extension.job.history.ReplayJobStatus: Removed org.xwiki.job.internal.DefaultJobStatus from the list of superclasse
    org.xwiki.extension.xar.job.diff.DiffXarJobStatus: Removed org.xwiki.job.internal.AbstractJobStatus from the list of superclasse
    org.xwiki.extension.xar.job.diff.DiffXarJobStatus: Removed org.xwiki.job.internal.DefaultJobStatus from the list of superclasse
    org.xwiki.refactoring.job.EntityJobStatus: Removed org.xwiki.job.internal.AbstractJobStatus from the list of superclasse
    org.xwiki.refactoring.job.EntityJobStatus: Removed org.xwiki.job.internal.DefaultJobStatus from the list of superclasse
Tags:
   

Get Connected