Release Notes for XWiki 14.10.2
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 is the first release of the new 14.10.x LTS branch (replacing the 13.10.x LTS). It is mainly a bugfix release that covers important issues that we have discovered since 14.10.1 has been released, but it also contains some improvments in code macro and include macro. It also contains fixes for several security vulnerabilities, making it a recommended upgrade.
New and Noteworthy (since XWiki 14.10.1)
Full list of issues fixed and Dashboard for XWiki 14.10.2.
For Users
Split Office Content into Nested Pages
The Office Importer Application has been improved to generate (by default) non-terminal (nested) pages when the "Split document" option is selected, if the target wiki page is also non-terminal. The following strategy was implemented:
- if the target wiki page is terminal then the "child" pages created by the split operation are also terminal
- if the target wiki page is nested (non-terminal) then:
- the "child" pages are also nested, if the current user is simple
- advanced users have a checkbox to control whether the "child" pages are terminal or not, but by default they are not
Besides this, we also did a couple of small improvements to the office import form to:
- filter office files based on media type (when browsing the local file system)
- improve existing field labels and hints, adding missing hints
- hide UI elements that are not relevant for the office import operation
- perform the office import asynchronously and redirect the user directly to the imported page after a successful import operation
For Admins
User-scope translations require script right: Translations with user scope require script right now. A new configuration option allows disabling this check.
For Developers
Include Macro Author
It's now possible to control which author should be used to execute the target of include macro. See Include Macro for more details.
Code Macro Source
The code macro now have an alternative way to indicate the content to highlight, which allows highlighting a script value or the content of an entity stored in the XWiki database. See Code Macro for more details.
Miscellaneous
Extension previous identifiers: It's now possible to explicitly indicate a list of previous identifier (or an empty list) if you don't want to import all the features along with the extension in the Repository Application. See Maven for more details.
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:
Browser | Tested on: | |
---|---|---|
Mozilla Firefox 108 | Tests run and results | |
Google Chrome 108 | ||
Microsoft Edge 108 | Jira Tickets Marked as Fixed in the Release Notes | |
Safari 16 | 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.1 | Not Tested | |
PostgreSQL 15 | Jira Tickets Marked as Fixed in the Release Notes | |
MariaDB 10.6 | Not Tested | |
MySQL 8 | Tests run and results | |
Oracle 19c |
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.70 | ||
Jetty 10.0.7 (XWiki Standalone packaging) | ||
Jetty 10.0.7 | 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.
Issues specific to XWiki 14.10.2
- Translations with user scope now require script right. A new configuration option allows disabling this check.
This release introduce some new Japanese translations that might cause error logs such as:
SQL Error: 1366, SQLState: HY000
Incorrect string value: '\xC4\xBEa zd...' for column 'XWD_CONTENT' at row 1
Incorrect string value: '\xC4\xBEa zd...' for column 'XWD_CONTENT' at row 1Those errors shouldn't impact you unless you're trying to use Japanese language, in which case you need to ensure to use a database encoded with utf8mb4. You can find details on https://jira.xwiki.org/browse/XWIKI-20517.
API Breakages
The following APIs were modified since XWiki 14.10.1:
Real breakages
Real backward compatibility breakages that we have unwillingly accepted to do for the reasons mentioned in each violation below.
- Added support for controlling whether the pages created by the office import splitter are terminal or not.
- Violation type:java.method.addedToInterface
- Code:## Old:
## New:
method java.util.Map<org.xwiki.officeimporter.splitter.TargetDocumentDescriptor, org.xwiki.officeimporter.document.XDOMOfficeDocument> org.xwiki.officeimporter.splitter.XDOMOfficeDocumentSplitter::split(org.xwiki.officeimporter.document.XDOMOfficeDocument, org.xwiki.officeimporter.splitter.OfficeDocumentSplitterParameters) throws org.xwiki.officeimporter.OfficeImporterException
- Violation type:
- Annotated NamingCriterion interface as component role and added two methods needed to refactor existing implementations as components.
- Violation type:java.annotation.added
- Code:## Old:
interface org.xwiki.refactoring.splitter.criterion.naming.NamingCriterion
## New:
interface org.xwiki.refactoring.splitter.criterion.naming.NamingCriterion
- Violation type:
- Annotated NamingCriterion interface as component role and added two methods needed to refactor existing implementations as components.
- Violation type:java.method.addedToInterface
- Code:## Old:
## New:
method org.xwiki.model.reference.DocumentReference org.xwiki.refactoring.splitter.criterion.naming.NamingCriterion::getDocumentReference(org.xwiki.rendering.block.XDOM)
- Violation type:
- Annotated NamingCriterion interface as component role and added two methods needed to refactor existing implementations as components.
- Violation type:java.method.addedToInterface
- Code:## Old:
## New:
method org.xwiki.refactoring.splitter.criterion.naming.NamingCriterionParameters org.xwiki.refactoring.splitter.criterion.naming.NamingCriterion::getParameters()
- Violation type:
Unstable APIs
Not real backward compatibility breakages since they were done on APIs marked @Unstable (a.k.a Young APIs). Thus it's part of the contract that they can be broken until they become stable. They're listed purely for reference in case you decided to still use them (and thus agreed to be broken).
- New methods on unstable code, allowing to get the mimetype configuration for a given document.
- Violation type:java.method.addedToInterface
- Code:## Old:
## New:
method java.util.List<java.lang.String> org.xwiki.attachment.validation.AttachmentValidationConfiguration::getAllowedMimetypes(org.xwiki.model.reference.DocumentReference)
- Violation type:
- New methods on unstable code, allowing to get the mimetype configuration for a given document.
- Violation type:java.method.addedToInterface
- Code:## Old:
## New:
method java.util.List<java.lang.String> org.xwiki.attachment.validation.AttachmentValidationConfiguration::getBlockerMimetypes(org.xwiki.model.reference.DocumentReference)
- Violation type:
Credits
The following people have contributed code and translations to this release (sorted alphabetically):
- Manuel Leduc
- Marius Dumitru Florea
- Michael Hamann
- Nikita Petrenko
- Oana-Lavinia Florean
- Simon Urli
- Simpel
- Suguru Hirahara
- Thomas Mortagne
- Vincent Massol
- tambovtsev