Release Notes for XWiki 10.11
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 version is mostly a stabilization release for the 10.x end of cycle. We've added a way to rapidly empty the wiki's recycle bin, that contains all the deleted pages. We've also polished the asynchronous execution and caching of panels added in the previous version, that makes the panels render faster. Plus we added many other improvements and bugfixes.
New and Noteworthy (since XWiki 10.10)
Full list of issues fixed and Dashboard for 10.11.
All Changes
For Users
Delete all from the recycle bin
It is now possible to permanently delete all pages that have been already deleted, in order to clean the recycle bin. See Index Application Documentation.
For Admins
No changes!
For Developers
Use RequestFactory to create a request from the refactoring script service
The refactoring script service has been refactored: you need to access the new RequestFactory in order to create any kind of request.
For example a script using :
should now use:
All the API related to refactoring operations themselves remains at the same place. See the Refactoring Module Documentation for all information.
Upgrades
The following runtime dependencies have been upgraded (they have a different release cycle than XWiki Commons, XWiki Rendering and XWiki Platform):
- CKEditor Integration 1.29
- Pygments 2.3.1
- JNR POSIX 3.0.47
- Apache PDFBox 2.0.13
- Rome 1.12.0
- JNR Constants 0.9.12
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 | Tests performed and results | |
---|---|---|
Google Chrome 71 | Smoke tests | |
Mozilla Firefox 64 | New and Noteworthy Features + Jira Tickets Marked as Fixed in the Release Notes + Smoke tests | |
Microsoft Edge 17 | Not Tested | |
Internet Explorer 11 | Not Tested | |
Safari 12 | Not Tested |
Here is the list of databases we support and how they have been tested for this release:
Database | Tests performed and results | |
---|---|---|
HyperSQL 2.4.1 | Not Tested | |
MySQL 5.7 | Smoke tests | |
Oracle 11.2 | New and Noteworthy Features + Jira Tickets Marked as Fixed in the Release Notes + Smoke tests | |
PostgreSQL 10 | Not Tested |
Here is the list of Servlet Containers we support and how they have been tested for this release:
Servlet Container | Tests performed and results | |
---|---|---|
Tomcat | Not Tested | |
Jetty (XWiki Standalone packaging) | New and Noteworthy Features + Jira Tickets Marked as Fixed in the Release Notes + Smoke tests | |
Jetty | Not 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.
API Breakages
The following APIs were modified since XWiki 10.10:
- Not a breakage.
- Violation type:java.annotation.attributeValueChanged
- Code:## Old:
@interface org.xwiki.stability.Unstable
## New:
@interface org.xwiki.stability.Unstable
- Violation type:
- Not a breakage: class moved to a legacy module
- Violation type:java.class.removed
- Code:## Old:
class org.xwiki.velocity.introspection.AbstractChainableUberspector
- Violation type:
- Not a breakage: class moved to a legacy module
- Violation type:java.class.removed
- Code:## Old:
interface org.xwiki.velocity.introspection.ChainableUberspector
- Violation type:
- Not a breakage: class moved to a legacy module
- Violation type:java.class.removed
- Code:## Old:
class org.xwiki.velocity.introspection.ChainingUberspector
- Violation type:
- Not a breakage: class moved to a legacy module
- Violation type:java.class.removed
- Code:## Old:
class org.xwiki.velocity.introspection.LinkingUberspector
- Violation type:
- As RssMacro now inherits from AbstractBoxMacro, its parameter class needs to inherits from BoxMacroParameters. This could only break compatibility if a class inheriting from RssMacroParameters defines a method with same name and parameters than in BoxMacroParameters but different return type. We consider this risk as acceptable since the chances are very low and in case it occurs, the fix for the user would be easy.
- Violation type:java.class.nonFinalClassInheritsFromNewClass
- Code:## Old:
class org.xwiki.rendering.macro.rss.RssMacroParameters
## New:
class org.xwiki.rendering.macro.rss.RssMacroParameters
- Violation type:
- Bad design at fist attempt
- Violation type:java.method.numberOfParametersChanged
- Code:## Old:
method void org.xwiki.notifications.filters.NotificationFilterPreferenceManager::deleteFilterPreference(java.lang.String) throws org.xwiki.notifications.NotificationException
## New:
method void org.xwiki.notifications.filters.NotificationFilterPreferenceManager::deleteFilterPreference(org.xwiki.model.reference.DocumentReference, java.lang.String) throws org.xwiki.notifications.NotificationException
- Violation type:
- Bad design at fist attempt
- Violation type:java.method.numberOfParametersChanged
- Code:## Old:
method void org.xwiki.notifications.filters.NotificationFilterPreferenceManager::saveFilterPreferences(java.util.Set<org.xwiki.notifications.filters.NotificationFilterPreference>)
## New:
method void org.xwiki.notifications.filters.NotificationFilterPreferenceManager::saveFilterPreferences(org.xwiki.model.reference.DocumentReference, java.util.Set<org.xwiki.notifications.filters.NotificationFilterPreference>)
- Violation type:
- Bad design at fist attempt
- Violation type:java.method.numberOfParametersChanged
- Code:## Old:
method void org.xwiki.notifications.filters.NotificationFilterPreferenceManager::setFilterPreferenceEnabled(java.lang.String, boolean) throws org.xwiki.notifications.NotificationException
## New:
method void org.xwiki.notifications.filters.NotificationFilterPreferenceManager::setFilterPreferenceEnabled(org.xwiki.model.reference.DocumentReference, java.lang.String, boolean) throws org.xwiki.notifications.NotificationException
- Violation type:
- Bad design at fist attempt
- Violation type:java.method.numberOfParametersChanged
- Code:## Old:
method void org.xwiki.notifications.filters.NotificationFilterPreferenceProvider::deleteFilterPreference(java.lang.String) throws org.xwiki.notifications.NotificationException
## New:
method void org.xwiki.notifications.filters.NotificationFilterPreferenceProvider::deleteFilterPreference(org.xwiki.model.reference.DocumentReference, java.lang.String) throws org.xwiki.notifications.NotificationException
- Violation type:
- Bad design at fist attempt
- Violation type:java.method.numberOfParametersChanged
- Code:## Old:
method void org.xwiki.notifications.filters.NotificationFilterPreferenceProvider::saveFilterPreferences(java.util.Set<org.xwiki.notifications.filters.NotificationFilterPreference>) throws org.xwiki.notifications.NotificationException
## New:
method void org.xwiki.notifications.filters.NotificationFilterPreferenceProvider::saveFilterPreferences(org.xwiki.model.reference.DocumentReference, java.util.Set<org.xwiki.notifications.filters.NotificationFilterPreference>) throws org.xwiki.notifications.NotificationException
- Violation type:
- Bad design at fist attempt
- Violation type:java.method.numberOfParametersChanged
- Code:## Old:
method void org.xwiki.notifications.filters.NotificationFilterPreferenceProvider::setFilterPreferenceEnabled(java.lang.String, boolean) throws org.xwiki.notifications.NotificationException
## New:
method void org.xwiki.notifications.filters.NotificationFilterPreferenceProvider::setFilterPreferenceEnabled(org.xwiki.model.reference.DocumentReference, java.lang.String, boolean) throws org.xwiki.notifications.NotificationException
- Violation type:
- Handles conflicting macro parameters. This change is backward compatible.
- Violation type:java.annotation.added
- Code:## Old:
method org.xwiki.model.EntityType org.xwiki.rendering.macro.include.IncludeMacroParameters::getType()
## New:
method org.xwiki.model.EntityType org.xwiki.rendering.macro.include.IncludeMacroParameters::getType()
- Violation type:
- Handles conflicting macro parameters. This change is backward compatible.
- Violation type:java.annotation.added
- Code:## Old:
method void org.xwiki.rendering.macro.include.IncludeMacroParameters::setPage(java.lang.String)
## New:
method void org.xwiki.rendering.macro.include.IncludeMacroParameters::setPage(java.lang.String)
- Violation type:
- Handles conflicting macro parameters. This change is backward compatible.
- Violation type:java.annotation.added
- Code:## Old:
method void org.xwiki.rendering.macro.include.IncludeMacroParameters::setReference(java.lang.String)
## New:
method void org.xwiki.rendering.macro.include.IncludeMacroParameters::setReference(java.lang.String)
- Violation type:
- Handles conflicting macro parameters. This change is backward compatible.
- Violation type:java.annotation.added
- Code:## Old:
method void org.xwiki.rendering.macro.include.IncludeMacroParameters::setReference(java.lang.String)
## New:
method void org.xwiki.rendering.macro.include.IncludeMacroParameters::setReference(java.lang.String)
- Violation type:
Credits
The following people have contributed code and translations to this release (sorted alphabetically):
Adel Atallah
Alex Cotiugă
Alfons Soriano
Ecaterina Moraru (Valica)
Guillaume Delhumeau
Marius Dumitru Florea
m-lw
Rostyslav Fitsyk
Sergiu Dumitriu
Simon Urli
slauriere
Thomas Mortagne
Vincent Massol
xrichard