Release Notes for XWiki 5.2 Milestone 1
This is the release notes for XWiki Platform, XWiki Enterprise and XWiki Enterprise Manager. They share the same release notes as they are released together and have the same version.
The first milestone of the 5.2 release brings a lot of bug fixes and a few improvements, notably the ability to toggle email address obfuscation and a better-looking user profile menu.
New and Noteworthy (since XWiki 5.1)
Full list of issues fixed and Dashboard for 5.2.
Toggle Email Address Obfuscation
The email configuration section in the Administration now has an option to enable/disable the obfuscation of the email addresses that are stored in object properties of type Email. The obfuscation is done by displaying only the first letter of the email account, e.g. a...@domain.org, the rest of the letters being replaced by an ellipsis. Email obfuscation is off by default.
Miscellaneous
- The create new wiki wizard is now using the user and group pickers in the last step ("Initial global members")
- The user profile menu is now consistent with the administration menu.
See the full list of JIRA issues fixed in this release.
For Developers
New Filter Module
Commons has a new core module for all streaming systems based on filters like Rendering and the upcoming Wiki Stream. See Filter Module documentation.
JSON parsing in Velocity
$jsontool.parse('["json string"]') can now be used to parse a serialized JSON into json-lib arrays or objects.
Only valid JSON strings can be parsed. JSONP is not supported. If the argument is not valid JSON, then null is returned, parsing exceptions are caught.
Query String escaping
The following method $escapetool.url(Map<String, ?>) has been added to the escapetool module. It allows to create a properly URL-escaped query string from a map of parameters. The key in the map is the parameter name and the value can be an object, an array of objects or a collection of objects. String.valueOf(Object) is used to serialize the objects (values). For example $escapetool.url({'alice': ['A&A', 'M&M'], 'bob': [13, 27]}) would return alice=A%26A&alice=M%26M&bob=13&bob=27. See XCOMMONS-435.
New Eclipse cs extension
XCOMMONS-353 made our checkstyle.xml file unusable as it is in Eclipse cs because of the custom rule that could not be found in the Eclipse classpath.
xwiki-commons-tool-verification-resources module is now also an Eclipse cs extension which mean you can just drop its jar in Eclipse plugins/ folder and you will get the XWiki checkstyle configuration listed in the standard configurations.
New XWikiDocument API to remove an attachment
XWikiDocument#deleteAttachment methods have been deprecated in favor of the combination of XWikiDocument#removeAttachment and XWiki#saveDocument. This make attachment deletion follow the same behavior as xobject and among other things allow doing all sort of modifications to a XWikiDocument without touching the database until we decide to apply them by saving the document.
Deprecated and Retired projects
- Google plugin (com.xpn.xwiki.plugin.google.GooglePlugin) has been retired, you can find it on https://github.com/xwiki-contrib/retired/tree/master/xwiki-platform-google-plugin
Upgrades
The following dependencies have been upgraded:
- Infinispan 5.3
- Tika 1.4
- JGroups 3.3.4
- Maven 3.1.0
- Aether 0.9.0.M2 (moved from org.sonatype.aether to org.eclipse.aether)
- CSSParser 0.9.9
Miscellaneous
- The way to declare the type supported by a org.xwiki.properties.converter.Converter component changed from role hint to generic type. See Properties Module documentation for more details. The old way is still supported for retro-compatibility.
Translations
The following translations have been updated:
Tested Browsers & Databases
Here's the list of browsers we support and how they've been tested specifically for this release:
Browser | Tested | Details | |
---|---|---|---|
Google Chrome 28 | Partially | Jira Tickets Marked as Fixed in the Release Notes | |
Mozilla Firefox 23 | Partially | Jira Tickets Marked as Fixed in the Release Notes | |
Internet Explorer 8 | Partially | Jira Tickets Marked as Fixed in the Release Notes | |
Internet Explorer 9 | Partially | Jira Tickets Marked as Fixed in the Release Notes | |
Internet Explorer 10 | Partially | Jira Tickets Marked as Fixed in the Release Notes |
Here's the list of databases we support and how they've been tested specifically for this release:
Database | Tested | Details | |
---|---|---|---|
HyperSQL 2.3.0 | Partially | Jira Tickets Marked as Fixed in the Release Notes | |
MySQL 5.6.10 | Not Tested | ||
Oracle 11.2 | Not Tested | ||
PostgreSQL 9.2.4 | Not Tested |
Known issues
Backward Compatibility and Migration Notes
General 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.
SOLR Search Format Change
If you're upgrading from XWiki 4.5.x to this version you'll need to perform a full re-indexation when using the SOLR Search. This because in XWiki 4.5.x the SOLR search was experimental and we've completely changed the indexing
format in XWiki 5.1.
Email Address Obfuscation
In 4.2 we introduced a new object property type called Email that can be used to store email addresses. In 5.1 we decided to use this new property type in the user profile to store the user email address. With this change we also introuced a defaut custom displayer for the Email property type that obfuscates the email address in view mode. As a consequence the user profile email address became obfuscated by default. Starting with 5.2 we allow you to toggle the email address obfuscation from the administration. What is important to know is that the email address obfuscation is off by default. So if you upgrade from 5.1 and you want to preserve the obfuscation then you need to enable it from the administration.
API Breakages
The following APIs were modified since XWiki 5.1:
- Moved to xwiki-commons-legacy-properties
- This method should never have existed
- Moved from xwiki-rendering-api to xwiki-rendering-xml
org.xwiki.rendering.renderer.printer.XMLWikiPrinter: Class org.xwiki.rendering.renderer.printer.XMLWikiPrinter removed
- This field is not meant to be be modified, the final was just forgotten.
- Has been moved to xwiki-platform-feed-api since it was the only module using it. We also dropped jTidy in favor of HTMLCleaner.
- Google API plugin has been retired
com.xpn.xwiki.plugin.google.GooglePluginApi: Class com.xpn.xwiki.plugin.google.GooglePluginApi removed
- Return the number of imported documents