Release Notes for XWiki 5.0
- New and Noteworthy (since XWiki 4.5.3)
- For Developers
- Translations
- Tested Browsers & Databases
- Known issues
- Backward Compatibility and Migration Notes
- General Notes
- Issues specific to XWiki 5.0
- Page/Attachment deletion on Oracle and PosgreSQL
- XWikiDocument authors and public access
- Programming right imply Admin right and not the opposite
- Sub-wikis now inherit rights from their main wiki
- Public access on an empty wiki does not receive admin right anymore
- Edit right now imply view right
- Edition of XWikiPreferences and WebPreferences
- The undelete action is now checked against the edit right
- The xwiki/1.0 syntax is now hidden by default
- Virtual mode is always on
- Miscellaneous
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.
This is the first release of the 5.x cycle (Roadmap). This release comes with virtual mode enabled and uses the new security authorization module for rights checking. It also brings improvements to the Extension Manager, Distribution Wizard and the WYSIWYG editor.
New and Noteworthy (since XWiki 4.5.3)
Full list of issues fixed and Dashboard for 5.0.
Extension Updater
We added a new section to the Extension Manager administration UI that lists the available extension updates.

New wiki mode step
By default you can now get the same distribution wizard you used to have for main wiki only on subwikis too. When enabled it means that each wiki administrator is able to take care of his own wiki upgrade and farm administrator will only deal with main wiki.
There are two modes:
- ALL IN ONE: the former Distribution Wizard behavior where everything is done at main wiki level
- WIKI: on main wiki only the main wiki is upgraded and each wiki gets its own Distribution Wizard and its own status
A new step to setup the upgrade mode has been added.

WYSIWYG Editor improvements
Automatic Paste Cleaning
Starting with this version, whenever you paste some content into the rich text area of the WYSIWYG Editor that content is (by default) automatically cleaned before being inserted into the rest of the content.
You can disable the automatic cleaning from the WYSIWYG Editor administration section if you wish:

Office Import using the Office Macro
We added an option to the WYSIWYG Editor's Import Office Document dialog to allow you to import an office file using the Office Macro. This is useful if you don't plan to edit the content of the office file after the import or if you don't want to mix the content of the office file with the content of the wiki page.

The generated wiki syntax looks like this:
{{office attachment="presentation.odp"/}}Of course, you need to have the Office server connected in order to use this feature.
Miscellaneous
- Add support for Numbered Lists and Verbatim for the LaTex Renderer
- Ability to more easily create multiple FAQ spaces.
- The FAQ Application can now be translated into multiple languages + added translation for French.
- Automatically register translations for the Annotations application
- autowww is not enabled by default and mandatory (can not be disabled), since with virtual mode enabled by default if could prove problematic to access your main wiki without a proper wiki descriptor set up. The main reason why you could have needed to disable it was if you actually had subwiki named www and you wanted to access it instead of the main wiki. Now the autowww feature checks for this case and serves the right content.
- Increased Permgen requirements from recommended 128MB to 196MB
- The Jetty distribution now uses Jetty 8.1.9.v20130131
See the full list of JIRA issues fixed in this release.
For Developers
Deprecated and Retired projects
No deprecated nor retired projects in this release.
Upgrades
The following dependencies have been upgraded:
- Apache Ivy 2.3.0
- Groovy 2.1.3
- GWT 2.5.1 and SmartGWT 3.1
- Hamcrest 1.3
- httpclient 4.2.3
- JGroups 3.2.7.Final
- Joda Time 2.2
- JUnit 4.11
- Jython 2.5.4-rc1
- Liquibase 2.0.5
- LogBack 1.0.11
- Pygments 1.6
- SLF4J 1.7.5
- Tika 1.3
- XStream 1.4.4
Miscellaneous
- More API added to the Model Script Service
- You can now specify a target user or an email address in the share page URL like this:
/xwiki/bin/view/Space/Page?viewer=share&[email protected]&target=XWiki.mflorea - Added methods to query existing wikis: api.XWiki.getWikiNames() and api.XWiki.hasSubWikis()
- XWiki is now always in virtual mode so development needs to consider the fact that the main wiki may not be the only wiki available.
- With the transition to virtual mode by default, the XWiki.XWikiServerClass is now a mandatory class to be used when creating a wiki descriptor. Its existence will be, like all mandatory classes, checked when XWiki starts, but only for the main wiki. It was formerly initialized by and part of the wiki-manager module but it's now part of the core. Also, the XWiki.XWikiServerClassSheet has been moved to the wiki-manager-ui module.
- A new Unstable annotation has been added to indicate new API that is not stable yet.
Translations
The following translations have been updated:
- Catalan
- Czech
- Danish
- German
- Spanish
- French
- Galician
- Italian
- Korean
- Latvian
- Dutch
- Portuguese
- Portuguese (Brazil)
- Romanian
- Russian
- Slovak
- Swedish
- Ukrainian
- Simplified Chinese
- Traditional Chinese
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 26 | Not Tested | |
![]() | Mozilla Firefox 20 | Not Tested | |
![]() | Internet Explorer 8 | Not Tested | |
![]() | Internet Explorer 9 | Not Tested |
Here's the list of databases we support and how they've been tested specifically for this release:
| Database | Tested | Details | |
|---|---|---|---|
![]() | HyperSQL 2.2.9 | Not Tested | |
![]() | MySQL 5.6.10 | Not Tested | |
![]() | Oracle 11.2 | Not Tested | |
![]() | PostgreSQL 9.1.3 | Not Tested |
Known issues
- Bugs we know about
- If you're migrating an XWiki instance using PostgreSQL or Oracle you may get this error (fixed in XWiki 5.2). The workaround is to remove the hibernate_sequence sequence prior to starting XWiki (for the main wiki and all subwikis).
Backward Compatibility and Migration Notes
General Notes
You may also want to import the default wiki XAR in order to benefit from all the improvements listed above.
Issues specific to XWiki 5.0
Page/Attachment deletion on Oracle and PosgreSQL
In multiwiki mode, page deletion wasn't working prior to XWiki 4.5.4 and 5.0M2. If you have created subwikis and you get an error you'll need to issue the following SQL command for all your subwikis:
create sequence hibernate_sequenceOf course all new subwikis you create starting with XWiki 4.5.4 and 5.0M2 will work seamlessly.
XWikiDocument authors and public access
The document reference used to indicate that a document has been created/modified by a public access user (or guest user) is now null. In practice in means that even if the database indicate that the document has been saved by "XWiki.XWikiGuest" document.getAuthorReference() will return null. See https://jira.xwiki.org/browse/XWIKI-8953.
Programming right imply Admin right and not the opposite
With the previous Right Service implementation some side effect used to give you Programming Right when you had main wiki admin right, it's not the case anymore. Programming right is stronger than admin right in new security module default implementation which means you can have admin right without programming right, even on main wiki.
Sub-wikis now inherit rights from their main wiki
With the previous Right Service implementation, only the admin and programming rights get inherited somehow on sub-wikis. The new implementation provide a more consistant behavior, all rights are inherited from the main wiki into sub-wikis in the same maner they are between wiki, space and document.
Public access on an empty wiki does not receive admin right anymore
With the previous Right Service implementation, until some right are sets, the public (previously XWikiGuest user, now null user) used to receive admin access and is able to import the default XAR. Since we now have a Distribution Wizard that kicks in to allow installing at least a minimal flavor to get you started, this is no more needed. This will improve security since the detection of an initial import situation was not so trivial.
If you do not have installed a minimal package using the new Distribution Wizard or you want to continue to import XAR manually, you may use the superadmin access to do so.
Note that public receive view, edit, comment, login, and register access to an empty wiki.
Edit right now imply view right
With the previous Right Service implementation, you were able to receive edit access to a document while you were not able to see or read that same document. This potential issue stay hidden since nobody notice until a edit URL is manually entered. Since we do not see any practical use case where a user would need to edit a document he cannot access, the edit right now imply the view right. Therefore, giving edit alone is now sufficient.
Edition of XWikiPreferences and WebPreferences
For increased security, edition of the XWikiPreferences and WebPreferences documents are now always restricted to admin users, whatever the right settings of these documents and their parents.
The undelete action is now checked against the edit right
The undelete right (not exposed in the UI) was associated with the undelete action in the old implementation. The new module currently check the edit right for the undelete action. We are currently evaluating the opportunity to reintroduce the undelete right, and the right way to do so.
The xwiki/1.0 syntax is now hidden by default
The old xwiki/1.0 syntax is no longer available for selection when editing a document. The rendering engine will continue to be available, so existing documents using it will continue to work, and creating application documents based on a template in the xwiki/1.0 syntax will still work. Anyway, users are strongly encouraged to migrate away from this syntax.
Virtual mode is always on
Since the multiwiki mode (aka virtual mode) is always on now you might have some error like the following one after migrating:
Throwable occurred: com.xpn.xwiki.XWikiException: Error number 2 in 0: The wiki [wiki] does not exist
at com.xpn.xwiki.XWiki.getXWiki(XWiki.java:505)
...The problem will happen if you had the virtual mode off before and if you were using some URL with a domain like http://wiki.some.domain/xwiki/bin/view.... Since all URLs are now multiwiki URLs XWiki needs to figure out which wiki is being called. What happens is the following:
- Since the default configuration is a path-based configuration XWiki first tries to find the wiki name in the URL path and it won't find it
- Then it falls back to domain-based configuration and gets the host name, i.e. wiki.some.domain. It tries to find a page in the wiki containing an Object of type XWiki.XWikiServerClass and with a server property of wiki.some.domain.
- Since it doesn't find one, it defaults to using the wiki wiki (ie the part of the host name before the first dot), which leads to the error since that wiki doesn't exist.
To fix this, you need to create a wiki descriptor for your main wiki. This is done by creating a page named XWiki.XWikiServerXwiki (be careful with the case) and add a XWiki.XWikiServerClass object in it with a server field value of wiki.some.domain.
Once you've done this XWiki will find that page and will compute the wiki name based on the suffix of the page name found (it'll also lowercase it), i.e. it'll find XWiki.XWikiServerXwiki and extract Xwiki which, when lowercased, will be xwiki which is the name of the main wiki...
For more details on this, check the Admin Guide for Multi-wiki.
Miscellaneous
- the default resolver used by the model script service moved from currentmixed to current. In practice it means $services.model.resolveDocument('') will now return a document reference with currentwiki:currentspace.currentdocument instead of currentwiki:currentspace.WebHome. See XWIKI-8834 for more details.
- The translations page for each workspace (xwiki:WorkspaceManager.TemplateTranslations) has been moved to the template (and implicitly locally, on each workspace) in XWiki.WorkspaceTranslations. The extension org.xwiki.platform:xwiki-platform-workspace-template-features will need to be installed on existing workspaces. New workspaces will use their local XWiki.WorkspaceTranslations document.
- As stated above, a new table has been added to the schema, xwikistringlists. Make sure the DB user has the required privileges to create it automatically, or create it manually before starting the new version.
- Links to attachment by default point to a specific version instead of a versionless "display the latest" link.
- Several velocity templates have been removed, since they haven't been used in a very long time; this might break custom skins built on top of old skins like Dodo or Albatross. See the related issue for more details.
- One important template that was removed is analytics.vm, the preferred way of enabling Google Analytics is through the dedicated administration section






