Release Notes for XWiki 8.2-rc-1

Last modified by Thomas Mortagne on 2017/03/24

This is the release notes for XWiki Commons, XWiki Rendering, XWiki Platform and XWiki Enterprise. They share the same release notes as they are released together and have the same version.

This release integrates CKEditor as the default WYSIWYG content editor and adds a tour on the home page to describe the XWiki user interface to newcomers.

New and Noteworthy (since XWiki 8.2 Milestone 2)

Full list of issues fixed and Dashboard for 8.2.

Tour for Homepage

A tour has been created to present the existing UI elements from the home page. Every user will be guided through this tour in order to become familiar with XWiki.

step4.png

CKEditor Becomes the Default WYSIWYG Editor

Starting with this version we have a new WYSIWYG editor: the CKEditor. The integration with CKEditor was already available as an extension and now this extension is bundled with the standard XWiki distribution.

ckeditor.png

The old WYSIWYG editor is still available and if you want to switch back to it you can do it from the "Edit Mode Settings" section in the wiki administration.

defaultWysiwygEditorConfig.png

Miscellaneous

  • Removed Main.Welcome page from the Dashboard since we now have a new Homepage that contains the welcome messages
  • In the TemplateProviderClass, 2 new properties have been added: description and icon, in order to display additional information in template providers list.
  • events produced during Filter conversion job are now folded by default. This essentially means that they won't appear in Activity Stream anymore.

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

For Developers

Associate Editors to Data Types

This version introduces a new module that provides APIs to associate editors to data types. For instance you can associate a date picker to java.util.Date, or a WYSIWYG editor to org.xwiki.rendering.block.XDOM. There can be multiple editors available for a specific data type and the user or the administrator can configure the preferred one. Checkout the Edit Module documentation for more details. This new API has been used to embed CKEditor as the default WYSIWYG editor.

Instance Filter improvements

  • Instance Output Filter now support missing begin/end event on document locale and revision so input filter for which those two concept don't make sense don't have to send them anymore.
  • Instance Output Filter now use the context locale as default locale (used to be empty locale).

Deprecated and Retired projects

MediaWiki parser

xwiki-rendering-syntax-mediawiki has been deprecated and moved to https://github.com/xwiki-contrib/syntax-mediawiki-1.0.

It's now recommended to use MediaWiki Syntax extension instead.

Upgrades

The following dependencies have been upgraded:

Miscellaneous

  • new org.xwiki.rendering.listener.SectionGeneratorListener to generate section events from headers events
  • Instance Output filter now indicate the target syntax for Input filters producing rendering events
  • The same relative file path supported for source filter properties parameter is now supported for any InputSource filter properties parameter in the Filter test framework
  • $regextool Velocity Tool has a new method to quote the replacement string in String#replaceAll(). Here's how you can use it:
    #set ($out = $out.replaceAll(" (id|for)=('|"")$regextool.quote($oldId)",
      " ${escapetool.d}1=${escapetool.d}2$regextool.quoteReplacement($newId)"))

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:

BrowserTest Result
Chrome30.pngGoogle ChromeNot Tested
Firefox30.pngMozilla Firefox 34Jira Tickets Marked as Fixed in the Release Notes + New and Noteworthy Features
IE30.pngInternet Explorer 10Not Tested
IE30.pngInternet Explorer 11Not Tested

Here is the list of databases we support and how they have been tested for this release:

DatabaseTest Result
hypersql.pngHyperSQLNot Tested
mysql.pngMySQLNot Tested
oracle.pngOracleNot Tested
postgresql.pngPostgreSQL 9.5.1Jira Tickets Marked as Fixed in the Release Notes + New and Noteworthy Features

Known issues

Backward Compatibility and Migration 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.

Issues specific to XWiki 8.2RC1

We refactored the way in which the editors are loaded for page content and TextArea properties. We're now using the new Edit API. The following breaking changes have been done:

  • textarea_text.vm and textarea_wysiwyg.vm Velocity templates have been removed. In case you have customized these templates you can port the changes to the new editor templates available in /templates/editors/xdom*.vm
  • $xcontext.getEditorWysiwyg() has been deprecated and is now returning null all the time (which translates into "no TextArea fields that need a WYSIWYG editor"). If you were using this method to customize the WYSIWYG editor then you can do the same from the new editor templates available in /templates/editors/xdom*.vm

A side effect of this refactoring is that the Object and Class editors are now using the configured preferred editor, unless it is overwritten using the "editor" meta property.

  • If you have a TextArea property that doesn't support wiki syntax then best is to configure the xclass to use the PureText editor for this property.
  • If the TextArea property supports wiki syntax but it's mostly code (e.g. Velocity, HTML) then best is to configure the Text editor.
  • Finally, if the TextArea property supports wiki syntax and it's mostly free text then best is to configure the WYSIWYG editor.

API Breakages

The following APIs were modified since XWiki 8.1:

  • Moved to a different module
    • Violation type:
      java.class.removed
    • Code:
      ## Old:
      class org.xwiki.rendering.wikimodel.mediawiki.MediaWikiMacroParser
  • Moved to a different module
    • Violation type:
      java.class.removed
    • Code:
      ## Old:
      class org.xwiki.rendering.wikimodel.mediawiki.MediaWikiParser
  • Moved to a different module
    • Violation type:
      java.class.removed
    • Code:
      ## Old:
      class org.xwiki.rendering.wikimodel.mediawiki.MediaWikiReferenceParser
  • No actual breakage. Class was moved to another module
    • Violation type:
      java.class.removed
    • Code:
      ## Old:
      class org.xwiki.rendering.parser.ContentParser

Credits

The following people have contributed code to this release (sorted alphabetically):

  • Alexandru Cotiuga
  • Anca Luca
  • Ecaterina Moraru (Valica)
  • Eduard Moraru
  • Guillaume Delhumeau
  • Marius Dumitru Florea
  • Raluca Stavro
  • Thomas Mortagne
  • Vincent Massol
Tags:
   

Get Connected