Release Notes for XWiki Enterprise 3.2 Milestone 2

Last modified by Sergiu Dumitriu on 2011/08/17

Second milestone of the XWiki Enterprise 3.2 version (Roadmap). During a time when most developers are on vacation, there's very few things to announce in this release.

New and Noteworthy (since XWiki Enterprise 3.2 Milestone 1)

User Dashboards

After wiki- and space-wide dashboards, this milestone brings support for personal dashboards. Each user can define their own dashboard in their profile document.

userdashboard.png

Spotlight search improvements

Much polishing and bugfixing work has gone into the Spotlight-like search, making it more stable and easier to use and customize. Some of the improvements include the option to display only one "loading" status for all the suggestion sources, and the option to display hints next to each search result.

suggest.png

Extension Manager improvements

Progressing further with the extension manager, 3.2M2 adds support for virtual extensions, or aliases for extensions that have changed their identifiers, and support for pulling in provided dependencies.

For Developers

New JavaScript testing framework

Unit tests for JavaScript code can now be written using the Jasmine framework for behavioral-driven development.

Named parameters for the event stream

The new event stream module now has support for arbitrary named parameters to be associated with the stored events. This is a better way of dealing with extra parameters than the old up to 5 numbered parameters supported by the old ActivityStream plugin. The limitation is that both the name and the value must be strings of at most 255 characters. Read more about the event stream module and how to use these named parameters in the module's documentation.

GPG signed artifacts

From now on, all build artifacts will be signed by one of the XWiki developers using a PGP signature. Such signatures are available in our maven repository as .asc files next to each artifact. We advise you to check the signatures of the files you download to make sure there are no problems with them.

To check the signatures, you should:

# Install GPG, if it's not already installed on your system
# Download both the artifact and its .asc counterpart
# Run gpg --verify --keyserver-options auto-key-retrieve=true artifact-file.jar.asc

Moved legacy code into separate modules

By default, the platform is now free of legacy code: deprecated features that have been officially removed, but are still included via aspects for backwards compatibility. For each platform module that had legacy code, there's a corresponding module in xwiki-platform-legacy that generates an extended jar containing the deprecated classes or methods.

Upgrades

  • Groovy 1.8.1
  • jruby 1.6.3
  • Hibernate 3.6.6 Final

Backward Compatibility and Migration Notes

General Notes

If you're running in a multiwiki setup you'll also need to define the property xwiki.store.migration.databases=all to your xwiki.cfg file or explicitly name all databases to be migrated as in xwiki.store.migration.databases=db1,db2,....

You may also want to import the default wiki XAR in order to benefit from the improvements listed above.

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

API Breakages

The following APIs were modified since XWiki Enterprise 3.1:

com.xpn.xwiki.plugin.activitystream.api.ActivityEvent: Method 'public java.util.Map getParameters()' has been added to an interface
com.xpn.xwiki.plugin.activitystream.api.ActivityEvent: Method 'public void setParameters(java.util.Map)' has been added to an interface
com.xpn.xwiki.plugin.adwords.AdWordsPluginApi: Method 'public com.xpn.xwiki.plugin.XWikiPluginInterface getPlugin()' has been removed
com.xpn.xwiki.plugin.alexa.AlexaPluginApi: Method 'public com.xpn.xwiki.plugin.XWikiPluginInterface getPlugin()' has been removed
org.xwiki.bridge.AttachmentNameFactory: Class org.xwiki.bridge.AttachmentNameFactory removed
org.xwiki.bridge.AttachmentNameSerializer: Class org.xwiki.bridge.AttachmentNameSerializer removed
org.xwiki.bridge.DocumentNameFactory: Class org.xwiki.bridge.DocumentNameFactory removed
org.xwiki.bridge.DocumentNameSerializer: Class org.xwiki.bridge.DocumentNameSerializer removed
org.xwiki.eventstream.Event: Method 'public java.util.Map getParameters()' has been added to an interface
org.xwiki.eventstream.Event: Method 'public void setParameters(java.util.Map)' has been added to an interface
com.xpn.xwiki.api.Api: Method 'public boolean checkProgrammingRights()' has been removed
com.xpn.xwiki.api.Context: Method 'public boolean isVirtual()' has been removed
com.xpn.xwiki.api.Document: Method 'public com.xpn.xwiki.stats.impl.DocumentStats getCurrentMonthWebStats(java.lang.String)' has been removed
com.xpn.xwiki.api.StatsService: Method 'public com.xpn.xwiki.XWikiContext ajc$superDispatch$com_xpn_xwiki_api_StatsService$getXWikiContext()' has been removed
com.xpn.xwiki.api.StatsService: Method 'public com.xpn.xwiki.stats.impl.DocumentStats getCurrentMonthXWikiStats(java.lang.String)' has been removed
com.xpn.xwiki.api.StatsServiceCompatibilityAspect: Class com.xpn.xwiki.api.StatsServiceCompatibilityAspect removed
com.xpn.xwiki.api.XWiki: Removed field ajc$interField$com_xpn_xwiki_api_XWikiCompatibilityAspect$util
com.xpn.xwiki.api.XWiki: Method 'public int add(int, int)' has been removed
com.xpn.xwiki.api.XWiki: Method 'public long add(long, long)' has been removed
com.xpn.xwiki.api.XWiki: Method 'public java.lang.String add(java.lang.String, java.lang.String)' has been removed
com.xpn.xwiki.api.XWiki: Method 'public com.xpn.xwiki.XWiki ajc$privFieldGet$com_xpn_xwiki_api_XWikiCompatibilityAspect$com_xpn_xwiki_api_XWiki$xwiki(com.xpn.xwiki.api.XWiki)' has been removed
com.xpn.xwiki.api.XWiki: Method 'public void ajc$privFieldSet$com_xpn_xwiki_api_XWikiCompatibilityAspect$com_xpn_xwiki_api_XWiki$xwiki(com.xpn.xwiki.api.XWiki, com.xpn.xwiki.XWiki)' has been removed
com.xpn.xwiki.api.XWiki: Method 'public com.xpn.xwiki.XWikiContext ajc$superDispatch$com_xpn_xwiki_api_XWiki$getXWikiContext()' has been removed
com.xpn.xwiki.api.XWiki: Method 'public java.lang.String clearAccents(java.lang.String)' has been removed
com.xpn.xwiki.api.XWiki: Method 'public java.lang.String clearName(java.lang.String)' has been removed
com.xpn.xwiki.api.XWiki: Method 'public int copyWikiWeb(java.lang.String, java.lang.String, java.lang.String, java.lang.String, boolean)' has been removed
com.xpn.xwiki.api.XWiki: Method 'public java.lang.String escapeText(java.lang.String)' has been removed
com.xpn.xwiki.api.XWiki: Method 'public java.lang.String escapeURL(java.lang.String)' has been removed
com.xpn.xwiki.api.XWiki: Method 'public java.lang.String generateRandomString(int)' has been removed
com.xpn.xwiki.api.XWiki: Method 'public java.util.List getArrayList()' has been removed
com.xpn.xwiki.api.XWiki: Method 'public java.util.Date getCurrentDate()' has been removed
com.xpn.xwiki.api.XWiki: Method 'public java.util.Date getDate()' has been removed
com.xpn.xwiki.api.XWiki: Method 'public java.util.Date getDate(long)' has been removed
com.xpn.xwiki.api.XWiki: Method 'public java.lang.String getDocLanguagePreference()' has been removed
com.xpn.xwiki.api.XWiki: Method 'public java.lang.String getFormEncoded(java.lang.String)' has been removed
com.xpn.xwiki.api.XWiki: Method 'public java.lang.String getHTMLArea(java.lang.String)' has been removed
com.xpn.xwiki.api.XWiki: Method 'public java.util.Map getHashMap()' has been removed
com.xpn.xwiki.api.XWiki: Method 'public java.lang.String getMessage(java.lang.String)' has been removed
com.xpn.xwiki.api.XWiki: Method 'public java.lang.String getNl()' has been removed
com.xpn.xwiki.api.XWiki: Method 'public com.xpn.xwiki.api.Object getNull()' has been removed
com.xpn.xwiki.api.XWiki: Method 'public java.util.Collection getRecentActions(java.lang.String, int)' has been removed
com.xpn.xwiki.api.XWiki: Method 'public int getTimeDelta(long)' has been removed
com.xpn.xwiki.api.XWiki: Method 'public java.util.Map getTreeMap()' has been removed
com.xpn.xwiki.api.XWiki: Method 'public java.lang.String getURLEncoded(java.lang.String)' has been removed
com.xpn.xwiki.api.XWiki: Method 'public java.lang.String getWebCopyright()' has been removed
com.xpn.xwiki.api.XWiki: Method 'public java.lang.String getWebPreference(java.lang.String)' has been removed
com.xpn.xwiki.api.XWiki: Method 'public java.lang.String getWebPreference(java.lang.String, java.lang.String)' has been removed
com.xpn.xwiki.api.XWiki: Method 'public int getWebPreferenceAsInt(java.lang.String)' has been removed
com.xpn.xwiki.api.XWiki: Method 'public int getWebPreferenceAsInt(java.lang.String, int)' has been removed
com.xpn.xwiki.api.XWiki: Method 'public long getWebPreferenceAsLong(java.lang.String)' has been removed
com.xpn.xwiki.api.XWiki: Method 'public long getWebPreferenceAsLong(java.lang.String, long)' has been removed
com.xpn.xwiki.api.XWiki: Method 'public java.lang.String getWebPreferenceFor(java.lang.String, java.lang.String)' has been removed
com.xpn.xwiki.api.XWiki: Method 'public java.lang.String getWebPreferenceFor(java.lang.String, java.lang.String, java.lang.String)' has been removed
com.xpn.xwiki.api.XWiki: Method 'public java.lang.String getXMLEncoded(java.lang.String)' has been removed
com.xpn.xwiki.api.XWiki: Method 'public boolean isVirtual()' has been removed
com.xpn.xwiki.api.XWiki: Method 'public void outputImage(java.awt.image.BufferedImage)' has been removed
com.xpn.xwiki.api.XWiki: Method 'public double parseDouble(java.lang.String)' has been removed
com.xpn.xwiki.api.XWiki: Method 'public float parseFloat(java.lang.String)' has been removed
com.xpn.xwiki.api.XWiki: Method 'public int parseInt(java.lang.String)' has been removed
com.xpn.xwiki.api.XWiki: Method 'public java.lang.Integer parseInteger(java.lang.String)' has been removed
com.xpn.xwiki.api.XWiki: Method 'public long parseLong(java.lang.String)' has been removed
com.xpn.xwiki.api.XWiki: Method 'public java.lang.String parseMessage()' has been removed
com.xpn.xwiki.api.XWiki: Method 'public java.lang.String parseMessage(java.lang.String)' has been removed
com.xpn.xwiki.api.XWiki: Method 'public java.lang.String printStrackTrace(java.lang.Throwable)' has been removed
com.xpn.xwiki.api.XWiki: Method 'public void sendMessage(java.lang.String, java.lang.String, java.lang.String)' has been removed
com.xpn.xwiki.api.XWiki: Method 'public void sendMessage(java.lang.String, java.lang.String[], java.lang.String)' has been removed
com.xpn.xwiki.api.XWiki: Method 'public java.util.List sort(java.util.List)' has been removed
com.xpn.xwiki.api.XWiki: Method 'public java.lang.String[] split(java.lang.String, java.lang.String)' has been removed
com.xpn.xwiki.api.XWiki: Method 'public java.lang.String sqlfilter(java.lang.String)' has been removed
com.xpn.xwiki.api.XWiki: Method 'public java.lang.Number toNumber(com.xpn.xwiki.api.Object)' has been removed
com.xpn.xwiki.api.XWikiCompatibilityAspect: Class com.xpn.xwiki.api.XWikiCompatibilityAspect removed
compatibility.com.xpn.xwiki.api.ApiCompatibilityAspect: Class compatibility.com.xpn.xwiki.api.ApiCompatibilityAspect removed
compatibility.com.xpn.xwiki.api.ContextCompatibilityAspect: Class compatibility.com.xpn.xwiki.api.ContextCompatibilityAspect removed
compatibility.com.xpn.xwiki.api.DocumentCompatibilityAspect: Class compatibility.com.xpn.xwiki.api.DocumentCompatibilityAspect removed
com.xpn.xwiki.plugin.lucene.IndexRebuilder: Method 'protected int addTranslationsOfDocument(com.xpn.xwiki.doc.XWikiDocument, com.xpn.xwiki.XWikiContext)' has been removed
com.xpn.xwiki.plugin.wikimanager.WikiManager: Removed field LOG
com.xpn.xwiki.plugin.wikimanager.WikiManager: Method 'public void importPackage(java.lang.String, java.lang.String, com.xpn.xwiki.XWikiContext)' has been removed
Tags:
Created by Sergiu Dumitriu on 2011/08/17
    

Get Connected