Release Notes for XWiki 13.10-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.
Annotations can now be made on HTML content, including AWM applications. Progress on the conversion from Live Table to Live Data continues. A security issue has also been fixed.
New and Noteworthy (since XWiki 13.9)
Full list of issues fixed and Dashboard for 13.10.
For Users
Annotations on content generated by the HTML macro
Annotations can now be added on content generated by the HTML macro.
As a direct consequence, you can also add annotations to pages that are part of an application, such as AWM applications.
Miscellaneous
Data Types: The list of data types (classes) of the XClass Application is now displayed using the Live Data Macro.
Class Sheet: The list of existing pages with objects described by a class that is provided by the XClass Application as part of the default class sheet is now displayed using the Live Data Macro.
Filters for Static List properties in Live Data: The suggestions in the Live Data Macro's column filters now display labels or translations (if there are any) of the values of Static List properties instead of the plain values. The search for suggestions considers both the displayed label and the underlying value.
For Admins
The formula macro exposes a new configuration key to define the default image type to be used when rendering a formula. See the Formula Macro documentation to learn more.
Support for native rendering of formulas in SVG: It is now possible to render formulas in SVG using the native formula renderer. This will provide more crisp results, which can easily be resized at will. See the Formula Macro documentation to learn more.
For Developers
Bulletproofed NumberProperty: NumberProperty now accept any kind of Number in input and will automatically convert it to the right type instead of crash at save.
SecurityEntryReaderExtra in extensions: It's now possible to contribute a org.xwiki.security.authorization.SecurityEntryReaderExtra component in an installed extension.
Upgrades
The following runtime dependencies have been upgraded (they have a different release cycle than XWiki Commons, XWiki Rendering and XWiki Platform):
- Groovy 3.0.9
- CKEditor Integration 1.56
- Reflections 0.10.2
- Protobuf Java 3.19.1
- PostgresSQL connector 42.3.1
- Netty 4.1.70.Final
- MySQL connector 8.0.27
- Logback 1.2.7
- Liquibase 4.6.1
- Joda-Time 2.10.13
- JNR POSIX 3.1.11
- JNR FFI 2.2.8
- JNR Constants 0.10.3
- JNA 5.10.0
- JFFI 1.3.6
- Infinispan 13.0.2.Final
- Hibernate 5.6.0
- Gson 2.8.9
- Error Prone annotations 2.10.0
- Commons CLI 1.5.0
- Checker Qual 3.19.0
- Byte Buddy 1.12.1
- Antlr 4.9.3
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: | |
---|---|---|
Google Chrome 97 | Not Tested | |
Mozilla Firefox 96 | Tests run and results | |
Microsoft Edge 97 | Jira Tickets Marked as Fixed in the Release Notes | |
Safari 15 | Not Tested |
Here is the list of databases we support and how they have been tested for this release:
Database | Tested on: | |
---|---|---|
HyperSQL 2.5.2 | Not Tested | |
MariaDB 10.6 | Not Tested | |
PostgreSQL 14 | Jira Tickets Marked as Fixed in the Release Notes | |
MySQL 8 | Not Tested | |
Oracle 19c | Tests run and results |
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.58 | ||
Jetty 9.4.29 (XWiki Standalone packaging) | Not Tested | |
Jetty 9.4.29 | 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 13.9:
Unknown Criticality
These violationq are missing a criticality and need to be fixed.
- Code has been moved to another Maven module without any breakageNot a breakage thanks to type erasure
- Violation type:java.class.removed
- Code:## Old:
class org.xwiki.security.DefaultSecurityReferenceFactory
- Violation type:
- Code has been moved to another Maven module without any breakageNot a breakage thanks to type erasure
- Violation type:java.class.removed
- Code:## Old:
class org.xwiki.security.GroupSecurityReference
- Violation type:
- Code has been moved to another Maven module without any breakageNot a breakage thanks to type erasure
- Violation type:java.class.removed
- Code:## Old:
class org.xwiki.security.SecurityReference
- Violation type:
- Code has been moved to another Maven module without any breakageNot a breakage thanks to type erasure
- Violation type:java.class.removed
- Code:## Old:
interface org.xwiki.security.SecurityReferenceFactory
- Violation type:
- Code has been moved to another Maven module without any breakageNot a breakage thanks to type erasure
- Violation type:java.class.removed
- Code:## Old:
class org.xwiki.security.UserSecurityReference
- Violation type:
- Code has been moved to another Maven module without any breakageNot a breakage thanks to type erasure
- Violation type:java.class.removed
- Code:## Old:
class org.xwiki.security.authorization.AccessDeniedException
- Violation type:
- Code has been moved to another Maven module without any breakageNot a breakage thanks to type erasure
- Violation type:java.class.removed
- Code:## Old:
interface org.xwiki.security.authorization.AuthorExecutor
- Violation type:
- Code has been moved to another Maven module without any breakageNot a breakage thanks to type erasure
- Violation type:java.class.removed
- Code:## Old:
class org.xwiki.security.authorization.AuthorizationException
- Violation type:
- Code has been moved to another Maven module without any breakageNot a breakage thanks to type erasure
- Violation type:java.class.removed
- Code:## Old:
interface org.xwiki.security.authorization.AuthorizationManager
- Violation type:
- Code has been moved to another Maven module without any breakageNot a breakage thanks to type erasure
- Violation type:java.class.removed
- Code:## Old:
interface org.xwiki.security.authorization.AuthorizationManagerConfiguration
- Violation type:
- Code has been moved to another Maven module without any breakageNot a breakage thanks to type erasure
- Violation type:java.class.removed
- Code:## Old:
interface org.xwiki.security.authorization.AuthorizationSettler
- Violation type:
- Code has been moved to another Maven module without any breakageNot a breakage thanks to type erasure
- Violation type:java.class.removed
- Code:## Old:
interface org.xwiki.security.authorization.ContextualAuthorizationManager
- Violation type:
- Code has been moved to another Maven module without any breakageNot a breakage thanks to type erasure
- Violation type:java.class.removed
- Code:## Old:
class org.xwiki.security.authorization.DefaultAuthorizationManager
- Violation type:
- Code has been moved to another Maven module without any breakageNot a breakage thanks to type erasure
- Violation type:java.class.removed
- Code:## Old:
class org.xwiki.security.authorization.EntityTypeNotSupportedException
- Violation type:
- Code has been moved to another Maven module without any breakageNot a breakage thanks to type erasure
- Violation type:java.class.removed
- Code:## Old:
class org.xwiki.security.authorization.Right
- Violation type:
- Code has been moved to another Maven module without any breakageNot a breakage thanks to type erasure
- Violation type:java.class.removed
- Code:## Old:
interface org.xwiki.security.authorization.RightDescription
- Violation type:
- Code has been moved to another Maven module without any breakageNot a breakage thanks to type erasure
- Violation type:java.class.removed
- Code:## Old:
class org.xwiki.security.authorization.RightMap<V>
- Violation type:
- Code has been moved to another Maven module without any breakageNot a breakage thanks to type erasure
- Violation type:java.class.removed
- Code:## Old:
class org.xwiki.security.authorization.RightSet
- Violation type:
- Code has been moved to another Maven module without any breakageNot a breakage thanks to type erasure
- Violation type:java.class.removed
- Code:## Old:
enum org.xwiki.security.authorization.RuleState
- Violation type:
- Code has been moved to another Maven module without any breakageNot a breakage thanks to type erasure
- Violation type:java.class.removed
- Code:## Old:
interface org.xwiki.security.authorization.SecurityAccess
- Violation type:
- Code has been moved to another Maven module without any breakageNot a breakage thanks to type erasure
- Violation type:java.class.removed
- Code:## Old:
interface org.xwiki.security.authorization.SecurityAccessEntry
- Violation type:
- Code has been moved to another Maven module without any breakageNot a breakage thanks to type erasure
- Violation type:java.class.removed
- Code:## Old:
interface org.xwiki.security.authorization.SecurityEntry
- Violation type:
- Code has been moved to another Maven module without any breakageNot a breakage thanks to type erasure
- Violation type:java.class.removed
- Code:## Old:
interface org.xwiki.security.authorization.SecurityEntryReader
- Violation type:
- Code has been moved to another Maven module without any breakageNot a breakage thanks to type erasure
- Violation type:java.class.removed
- Code:## Old:
interface org.xwiki.security.authorization.SecurityEntryReaderExtra
- Violation type:
- Code has been moved to another Maven module without any breakageNot a breakage thanks to type erasure
- Violation type:java.class.removed
- Code:## Old:
interface org.xwiki.security.authorization.SecurityRule
- Violation type:
- Code has been moved to another Maven module without any breakageNot a breakage thanks to type erasure
- Violation type:java.class.removed
- Code:## Old:
interface org.xwiki.security.authorization.SecurityRuleEntry
- Violation type:
- Code has been moved to another Maven module without any breakageNot a breakage thanks to type erasure
- Violation type:java.class.removed
- Code:## Old:
class org.xwiki.security.authorization.UnableToRegisterRightException
- Violation type:
- Code has been moved to another Maven module without any breakageNot a breakage thanks to type erasure
- Violation type:java.class.removed
- Code:## Old:
class org.xwiki.security.authorization.cache.ConflictingInsertionException
- Violation type:
- Code has been moved to another Maven module without any breakageNot a breakage thanks to type erasure
- Violation type:java.class.removed
- Code:## Old:
class org.xwiki.security.authorization.cache.ParentEntryEvictedException
- Violation type:
- Code has been moved to another Maven module without any breakageNot a breakage thanks to type erasure
- Violation type:java.class.removed
- Code:## Old:
interface org.xwiki.security.authorization.cache.SecurityCache
- Violation type:
- Code has been moved to another Maven module without any breakageNot a breakage thanks to type erasure
- Violation type:java.class.removed
- Code:## Old:
interface org.xwiki.security.authorization.cache.SecurityCacheLoader
- Violation type:
- Code has been moved to another Maven module without any breakageNot a breakage thanks to type erasure
- Violation type:java.class.removed
- Code:## Old:
interface org.xwiki.security.authorization.cache.SecurityCacheRulesInvalidator
- Violation type:
- Code has been moved to another Maven module without any breakageNot a breakage thanks to type erasure
- Violation type:java.class.removed
- Code:## Old:
interface org.xwiki.security.authorization.cache.SecurityShadowEntry
- Violation type:
- Code has been moved to another Maven module without any breakageNot a breakage thanks to type erasure
- Violation type:java.class.removed
- Code:## Old:
class org.xwiki.security.authorization.event.RightUpdatedEvent
- Violation type:
- Code has been moved to another Maven module without any breakageNot a breakage thanks to type erasure
- Violation type:java.class.superTypeTypeParametersChanged
- Code:## Old:
class com.xpn.xwiki.objects.DoubleProperty
## New:
class com.xpn.xwiki.objects.DoubleProperty
- Violation type:
- Code has been moved to another Maven module without any breakageNot a breakage thanks to type erasure
- Violation type:java.class.superTypeTypeParametersChanged
- Code:## Old:
class com.xpn.xwiki.objects.FloatProperty
## New:
class com.xpn.xwiki.objects.FloatProperty
- Violation type:
- Code has been moved to another Maven module without any breakageNot a breakage thanks to type erasure
- Violation type:java.class.superTypeTypeParametersChanged
- Code:## Old:
class com.xpn.xwiki.objects.IntegerProperty
## New:
class com.xpn.xwiki.objects.IntegerProperty
- Violation type:
- Code has been moved to another Maven module without any breakageNot a breakage thanks to type erasure
- Violation type:java.class.superTypeTypeParametersChanged
- Code:## Old:
class com.xpn.xwiki.objects.LongProperty
## New:
class com.xpn.xwiki.objects.LongProperty
- Violation type:
- Code has been moved to another Maven module without any breakageNot a breakage thanks to type erasure
- Violation type:java.generics.elementNowParameterized
- Code:## Old:
class com.xpn.xwiki.objects.NumberProperty
## New:
class com.xpn.xwiki.objects.NumberProperty<N extends java.lang.Number>
- Violation type:
Credits
The following people have contributed code and translations to this release (sorted alphabetically):
Alex Cotiugă
Clément Aubin
Conrad Zelck
Gankov Andrey
Manuel Leduc
Marius Dumitru Florea
Michael Hamann
Oana-Lavinia Florean
Simon Urli
Simpel
Thomas Mortagne
Vincent Massol
xrichard