Release Notes for XWiki 9.11.8

Last modified by Ilie Andriuta on 2018/10/25

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

This is a bugfix release that covers important issues that we have discovered since 9.11.7 has been released.

New and Noteworthy (since XWiki 9.11.7)

Full list of issues fixed and Dashboard for 9.11.8.

All Changes

Tested Browsers & Databases

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

BrowserTests performed and results
Chrome30.pngGoogle Chrome 70Jira Tickets Marked as Fixed in the Release Notes
Firefox30.pngMozilla Firefox 62Not Tested
Edge30.pngMicrosoft Edge 17Not Tested
IE30.pngInternet Explorer 11Not Tested
Safari30.pngSafari 12Not Tested

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

DatabaseTests performed and results
hypersql.pngHyperSQL 2.4.0Not Tested
mysql.pngMySQL 5.7Not Tested
postgresql.pngPostgreSQL 10Jira Tickets Marked as Fixed in the Release Notes
oracle.pngOracle 11.2Not Tested

Known issues

Backward Compatibility and Migration Notes

General Notes

  • When upgrading make sure you compare and merge the following XWiki configuration files since some parameters may have been modified, removed or added:
    • xwiki.cfg
    • xwiki.properties
    • web.xml
    • hibernate.cfg.xml
  • Add xwiki.store.migration=1 in xwiki.cfg so that XWiki will attempt to automatically migrate your current database to any new schema. Make sure you backup your Database before doing anything.

API Breakages

The following APIs were modified since XWiki 9.11.7:

  • NotificationFilterPreference store did not scale
    • Violation type:
      java.method.addedToInterface
    • Code:
      ## Old:
      null

      ## New:
      method java.util.Set<java.lang.String> org.xwiki.notifications.filters.NotificationFilterPreference::getEventTypes()
  • NotificationFilterPreference store did not scale
    • Violation type:
      java.method.removed
    • Code:
      ## Old:
      method java.util.Set<org.xwiki.notifications.NotificationFormat> org.xwiki.notifications.filters.NotificationFilterPreference::getFilterFormats()
  • NotificationFilterPreference store did not scale
    • Violation type:
      java.method.removed
    • Code:
      ## Old:
      method java.lang.String org.xwiki.notifications.filters.NotificationFilterPreference::getFilterPreferenceName()
  • NotificationFilterPreference store did not scale
    • Violation type:
      java.method.addedToInterface
    • Code:
      ## Old:
      null

      ## New:
      method java.lang.String org.xwiki.notifications.filters.NotificationFilterPreference::getId()
  • NotificationFilterPreference store did not scale
    • Violation type:
      java.method.addedToInterface
    • Code:
      ## Old:
      null

      ## New:
      method java.util.Set<org.xwiki.notifications.NotificationFormat> org.xwiki.notifications.filters.NotificationFilterPreference::getNotificationFormats()
  • NotificationFilterPreference store did not scale
    • Violation type:
      java.method.addedToInterface
    • Code:
      ## Old:
      null

      ## New:
      method java.lang.String org.xwiki.notifications.filters.NotificationFilterPreference::getPage()
  • NotificationFilterPreference store did not scale
    • Violation type:
      java.method.addedToInterface
    • Code:
      ## Old:
      null

      ## New:
      method java.lang.String org.xwiki.notifications.filters.NotificationFilterPreference::getPageOnly()
  • NotificationFilterPreference store did not scale
    • Violation type:
      java.method.removed
    • Code:
      ## Old:
      method java.util.List<java.lang.String> org.xwiki.notifications.filters.NotificationFilterPreference::getProperties(org.xwiki.notifications.filters.NotificationFilterProperty)
  • NotificationFilterPreference store did not scale
    • Violation type:
      java.method.noLongerDefault
    • Code:
      ## Old:
      method java.util.Date org.xwiki.notifications.filters.NotificationFilterPreference::getStartingDate()

      ## New:
      method java.util.Date org.xwiki.notifications.filters.NotificationFilterPreference::getStartingDate()
  • NotificationFilterPreference store did not scale
    • Violation type:
      java.method.nowAbstract
    • Code:
      ## Old:
      method java.util.Date org.xwiki.notifications.filters.NotificationFilterPreference::getStartingDate()

      ## New:
      method java.util.Date org.xwiki.notifications.filters.NotificationFilterPreference::getStartingDate()
  • NotificationFilterPreference store did not scale
    • Violation type:
      java.method.addedToInterface
    • Code:
      ## Old:
      null

      ## New:
      method java.lang.String org.xwiki.notifications.filters.NotificationFilterPreference::getUser()
  • NotificationFilterPreference store did not scale
    • Violation type:
      java.method.addedToInterface
    • Code:
      ## Old:
      null

      ## New:
      method java.lang.String org.xwiki.notifications.filters.NotificationFilterPreference::getWiki()
  • NotificationFilterPreference store did not scale
    • Violation type:
      java.method.addedToInterface
    • Code:
      ## Old:
      null

      ## New:
      method void org.xwiki.notifications.filters.NotificationFilterPreference::setEnabled(boolean)
  • Young API
    • Violation type:
      java.method.addedToInterface
    • Code:
      ## Old:
      null

      ## New:
      method org.xwiki.notifications.filters.watch.AutomaticWatchMode org.xwiki.notifications.filters.watch.WatchedEntitiesConfiguration::getDefaultAutomaticWatchMode(org.xwiki.model.reference.WikiReference)
  • Not a break: the REST endpoint is the same.
    • Violation type:
      java.method.returnTypeChanged
    • Code:
      ## Old:
      method org.xwiki.notifications.rest.model.Notifications org.xwiki.notifications.rest.NotificationsResource::getNotifications(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String) throws java.lang.Exception

      ## New:
      method javax.ws.rs.core.Response org.xwiki.notifications.rest.NotificationsResource::getNotifications(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String) throws java.lang.Exception
  • Adding a REST API is actually not a breakage.
    • Violation type:
      java.method.addedToInterface
    • Code:
      ## Old:
      null

      ## New:
      method javax.ws.rs.core.Response org.xwiki.notifications.rest.NotificationsResource::postNotifications() throws java.lang.Exception

Credits

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

Adel Atallah
Ecaterina Moraru (Valica)
Eduard Moraru
Guillaume Delhumeau
Marius Dumitru Florea
Oana-Lavinia Florean
Simon Urli
Thomas Mortagne
Vincent Massol

Tags:
   

Get Connected