Release Notes for XWiki 16.5.0-rc-1
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.
The most noticeable change of this release is a revamp of the notifications watch button. In addition, the notification email contrast has been improved. This release also contains a few bug fixes, as well as improvements for developers.
New and Noteworthy (since XWiki 16.4.0)
Full list of issues fixed and Dashboard for 16.5.0.
For Users
Revamping of notification watch buttons
We changed the way one can decide to watch a location in XWiki.
Starting with this release, a button is present in all pages next to the edit button. This buttons shows by default the current state of the page:
- Followed: if you're following the page to receive notifications about it
- Blocked: if you're blocking the page to not receive notifications about it
- Not set: in case you haven't set any preferences for watching or blocking it
- Custom: this appear if you have some preferences corresponding to that page but that are specific to some specific event types, or some specific formats (e.g. you only want to receive some notifications by email for a specific location).
If you click on the button, you will obtain a modal window explaining the current state (e.g. you might have a page followed because you are actually following a space containing that page), and allowing you to perform actions to change that state.
That modal also contains a link to access directly the notification filters settings: this is useful if you want to properly review your settings or perform custom actions from there. Note that if the current state is custom you can only perform actions from the notification filters settings.
Notification email contrast
Colors of the default notification email content have been updated to have improved contrast.
For Admins
No changes!
For Developers
WebJar category: A webjar category has been added for the Repository Application.
Replacing Macros: It is now easier to write a rendering macro that replaces itself by another macro. This is useful to, e.g., replace an old legacy macro by a new macro. While this was possible before, it required a little undocumented hack. You can find more in the updated documentation that now documents both the possibility in general and also the hack that makes it possible to use this feature already in older versions of XWiki.
Upgrades
The following runtime dependencies have been upgraded (they have a different release cycle than XWiki Commons, XWiki Rendering and XWiki Platform):
- dompurify 3.1.4
- Jetty 10.0.21
- RssReader 3.7.0
- Elastic search client 8.14.1
- MariaDB connector 3.4.0
- MySQL connector 8.4.0
- Tika 2.9.2
- CVSS Calculator 1.4.3
- PrettyTime 5.0.8
- Liquibase 4.28.0
- MChange Commons 0.3.1
- Netty 4.1.111.Final
- Calcite 1.37.0
- Calcite Avatica 1.25.0
- HSQLDB 2.7.3
- c3p0 v0.10.1
- Commons Net 3.11.1
- Commons Configuration 2.11.0
- Eclipse Sisu 0.9.0.M3
- Checker Qual 3.44.0
- Guava 33.2.1-jre
- Error Prone annotations 2.28.0
- Maven to 3.9.7
- bytebuddy 1.14.17
- commons-compress 1.26.2
- Gson 2.11.0
- Plexus XML 3.0.1
- JGroups 5.3.7
- Commons CLI 1.8.0
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:
Browser | Tested on: | |
---|---|---|
Mozilla Firefox 128 | Jira Tickets Marked as Fixed in the Release Notes | |
Google Chrome 127 | Not Tested | |
Microsoft Edge 127 | Not Tested | |
Safari 17 | Not Tested |
Here is the list of databases we support and how they have been tested for this release:
Database | Tested on: | |
---|---|---|
HyperSQL 2.7.3 | Not Tested | |
MariaDB 11.3 | Not tested | |
MySQL 8.4 | Not Tested | |
PostgreSQL 16 | Jira Tickets Marked as Fixed in the Release Notes | |
Oracle 19c | Not Tested |
Here is the list of Servlet Containers we support and how they have been tested for this release:
Servlet Container | Tested on: | |
---|---|---|
Tomcat 9.0.91 | Jira Tickets Marked as Fixed in the Release Notes | |
Jetty 10.0.21 (XWiki Standalone packaging) | Not Tested | |
Jetty 10.0.21 | Not 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 16.5.0-rc-1
The NotificationFilterPreferenceProvider component role has been deprecated and existing implementations have been removed: the goal is to simplify usage of this API by accessing directly NotificationFilterPreferenceManager.
API Breakages
The following APIs were modified since XWiki 16.4.0:
Real breakages
Real backward compatibility breakages that we have unwillingly accepted to do for the reasons mentioned in each violation below.
- Simplify future extensions of this API.
- Violation type:java.method.numberOfParametersChanged
- Code:## Old:
method void org.xwiki.notifications.filters.watch.WatchedLocationReference::<init>(org.xwiki.model.reference.EntityReference, java.lang.String, org.xwiki.model.reference.EntityReferenceResolver<java.lang.String>, org.xwiki.notifications.filters.internal.scope.ScopeNotificationFilterLocationStateComputer, org.xwiki.notifications.filters.NotificationFilterPreferenceManager)
## New:
method void org.xwiki.notifications.filters.watch.WatchedLocationReference::<init>(org.xwiki.model.reference.EntityReference, org.xwiki.component.manager.ComponentManager) throws org.xwiki.component.manager.ComponentLookupException
- Violation type:
- Simplify future extensions of this API.
- Violation type:java.method.numberOfParametersChanged
- Code:## Old:
method void org.xwiki.notifications.filters.watch.WatchedUserReference::<init>(java.lang.String, org.xwiki.notifications.filters.internal.user.EventUserFilterPreferencesGetter, org.xwiki.notifications.filters.NotificationFilterPreferenceManager)
## New:
method void org.xwiki.notifications.filters.watch.WatchedUserReference::<init>(java.lang.String, org.xwiki.component.manager.ComponentManager) throws org.xwiki.component.manager.ComponentLookupException
- Violation type:
Credits
The following people have contributed code and translations to this release (sorted alphabetically):
- Dorian OUAKLI
- Gankov Andrey
- Ilie Andriuta
- LucasC
- Manuel Leduc
- Mariana Batista
- Marius Dumitru Florea
- Michael Hamann
- Nikita Petrenko
- Oana-Lavinia Florean
- Pierre Jeanjean
- Raphaƫl Jakse
- Simon Urli
- Thomas Mortagne
- Vincent Massol
- daeseong.choi