Release Notes for XWiki 5.0 Milestone 2

Version 14.1 by Thomas Mortagne on 2013/03/20

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.

<insert description of release here>

New and Noteworthy (since XWiki 5.0 Milestone 1)

Full list of issues fixed and Dashboard for 5.0.

Automatic Paste Cleaning in WYSIWYG Editor

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:

WYSIWYGEditor-AdminSection-cleanPasteAutomatically.png

Virtual mode is always enabled

Virtual mode and multiwiki is now part of XWiki's model and can no longer be disabled. What this means is that the difference between the 2 main products (XE and XEM) is getting smaller and smaller.

In the past, XEM differed from XE by the fact that it allowed the creation of multiple wikis (called subwikis) because it had the property xwiki.virtual=1 by default in xwiki.cfg, where as XE had xwiki.virtual=0 by default. Coupled with the Wiki Manager Application and the Workspace Application which were bundled by default, this allowed XEM to create and manage subwikis, while XE could not. This was causing confusion to users that had installed one product and later on, found out that they needed the other.

To avoid confusion and to simplify our development as well, we have defaulted to a virtual mode enabled by default, allowing you to create and manage subwikis/workspaces no matter what product you have downloaded. For instance, if you have downloaded XE, you now only have to install one or two extensions (Wiki Manager Application and/or Workspace Application) using the extension manager and you are all set. Most likely we will also switch to a single product scheme in the future.

Replace "xwiki.virtual.redirect" with an error template(or page)

This xwiki.cfg setting allowed the admin to redirect to a specified URL an user that tried to access an nonexistent wiki. However, it was enabled by default and the default value was http://127.0.0.1:9080/xwiki/bin/Main/ThisWikiDoesNotExist  which was definitely wrong and was causing more problems than it solved. See for an example.

We have decided to drop this feature and replace it with an error template wikidoesnotexist.vm that can be overridden by a document in the main wiki named XWiki.WikiDoesNotExist, to be consistent with what we are doing for other XWiki entities (documents, attachments, etc).

However, to avoid hitting problems with accessing your main wiki, this feature is disabled by default and can be enabled by uncommenting xwiki.virtual.failOnWikiDoesNotExist in xwiki.cfg and setting its value to 1. Otherwise, by default, the user will always get server the content of the main wiki if the wiki he requested is not found.

For those that want to achieve the same behavior as before (by redirecting to a fixed URL every time), they have to enable xwiki.virtual.failOnWikiDoesNotExist in xwiki.cfg and then redirect to the desired URL either in wikidoesnotexist.vm or in the main wiki's XWiki.WikiDoesNotExist.

Miscellaneous

<insert misc user stuff and important bug fix descriptions here in a list, when they are too small to warrant a section by themselves - Change the version in the URL below!>

- 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.

See the full list of JIRA issues fixed in this release.

For Developers

Translate log

It's possible to provide a translation key with any log to let log displayer use some localization framework to find proper translation for it.

See Logging Module for more details.

JQuery in XWiki using AMD/Require.js

Now with require.js you can pull in jQuery and use it when you need it without incurring the performance penalty when you don't need it.
To use jquery, use the script below:

{{html}}
<script>
require(['jquery'], function($) {
    $('#document-title>h1').text('JQuery in action');
});
</script>
{{/html}}

You can learn more about the power of AMD javascript modules by reading require.js documentation.

Back to JUnit

XWiki Commons used to force using junit-dep instead of junit at build time because of embedded libraries in junit jar. Since it's not the case anymore the enforcer rule and everything about junit-dep has been removed from our pom.xml files.

The main change for external projects if that if you depends on junit-dep and don't specify the version your project won't build anymore and you should change for junit

Deprecated and Retired projects

<description of deprecated and retired projects>

Upgrades

The following dependencies have been upgraded:

  • GWT 2.5.1
  • JUnit 4.11
  • slf4j 1.7.4
  • logback 1.0.10
  • Hamcrest 1.3
  • Groovy 2.1.2

Miscellaneous

<other dev stuff to add and link to JIRA for all issues fixed>

- Added methods to query existing wikis: api.XWiki.getWikiNames() and api.XWiki.hasSubWikis()
- Virtual mode is now enabled by default 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.

Translations

The following translations have been updated: 

Tested Browsers & Databases

Known issues

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.

Warning

Always make sure you compare your xwiki.cfg and xwiki.properties files with the newest version since some configuration parameters were 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.

Issues specific to XWiki 5.0 Milestone 2

<issues specific to the project>

- The translations page for each workspace (xwiki:WorkspaceManager.TemplateTranslations) has been moved to the template (and implicitly locally, on each workspace) in XWiki.WorkspaceTranslations. Existing workspaces will still use any existing xwiki:WorkspaceManager.TemplateTranslations document (registered as translation bundle) that you may still have on the main wiki. New workspaces will use their local XWiki.WorkspaceTranslations document.

API Breakages

The following APIs were modified since XWiki 4.5.2:

<clirr output here>

Get Connected