Release Notes for XWiki 10.2

Last modified by Guillaume Delhumeau on 2018/08/13

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 release has a fresh look thanks to its new default color theme. A new Figure macro is available for content creators to add illustrations along with optional captions. Renaming and moving standard pages is now discouraged with a warning message that should prevent editors from breaking XWiki.

This release contains a bug that can affect the scalability of the service. Until the proper fix, it is highly recommended to make sure that the "autowatch" feature of the notifications is turned off. Note that starting with XWiki 10.7 (10.7RC1 to be precise), "autowatch" is turned off by default.
 
You can do that by adding in the xwiki.properties file the following lines:

# Disable autowatch until the following issue is fixed:
# https://jira.xwiki.org/browse/XWIKI-15445
xwiki.plugin.watchlist.automaticwatch=none

New and Noteworthy (since XWiki 10.1)

Full list of issues fixed and Dashboard for 10.2.

For Users

New default Color Theme

 
We wanted to refresh the default color theme (Charcoal) for the XWiki Standard 10.x cycle and the community voted for the Iceberg theme, which is our new default theme. We kept a professional / clean look and feel and opted for blue as our main color. The purpose of the default color theme is to cover as many use cases as possible, so if you want to spice up your instance try one of our community contributed color themes

Minor changes do not generate notifications anymore

 
A new filter has been created, to hide events about minor changes. This filter can be disabled, but is enabled by default.

Rename/Move protection

 
As with the delete action, if you try to rename a page that belongs to an installed extension you will now get a warning suggesting you to uninstall the extension instead and asking you to explicitly select the standard pages you want to rename.

Note that the displayed message text is currently the same one as for delete but that will be fixed in the next version.

Figure Macro

 
A new Figure Macro was created to be able to add illustrations (images, tables, code, graphs, etc) along with optional captions.

Example:

...
{{figure}}
[[image:macaque.jpg||alt="Macaque in the trees"]]

{{figureCaption}}A cheeky macaque, Lower Kintaganban River, Borneo. Original by [[Richard Clark>>http://www.flickr.com/photos/rclark/]]{{/figureCaption}}
{{/figure}}
...

For Admins

Default Notifications

 
In the global settings, administrators can select which applications and/or event types should be enabled by default for all users. The user can then override the default settings, but if he/she doesn't set anything, the preferences of the wiki where he/she belongs to are applied.

The inheritance is "Main Wiki preferences < Current Wiki preferences < User preferences".

Miscellaneous

  • Distribution Wizard configuration: It's now possible to control from the xwiki.properties file if the Distribution Wizard should be automated or interactive and which Flavor to install/upgrade on main or sub wikis. See DistributionWizard for more details.

For Developers

REST API now supports the use of minor revision for page changes

 
Add ?minorRevision=true to your REST calls and the page will be updated with minor revision. See the whole documentation for the REST API.

Jobs improvements

 

  • A framework has been introduced to make easier to write jobs UI with question/answer support. You can see more details in the Job Module documentation.
  • AbstractJobStatus now implement CancellableJobStatus interface which allow generic code to control jobs that can be canceled
  • it's now possible to get the time left before a job question timeout using newJobStatus#getQuestionTimeLeft method

Translation fallback

 
It's now possible to pass a list of keys to test one by one until one is found. See Scripting for more details.

Miscellaneous

  • FigureBlock & FigureCaptionBlock: New Rendering Blocks were added: FigureBlock and FigureCaptionBlock. For example those blocks are generated by the Figure Macro.

  • Export menu extension point: It's now possible to inject a new button in the export menu. Checkout the documentation for more details.

  • Inject extension features: It's possible to dynamically inject additional features to an extension when downloaded from a repository or a core extension. See Virtual extensions for more details.

Upgrades

The following runtime dependencies have been upgraded (they have a different release cycle than XWiki Commons, XWiki Rendering and XWiki Platform):

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 Chrome 65Not Tested
Firefox30.pngMozilla Firefox 59Not Tested
Edge30.pngMicrosoft Edge 16Jira Tickets Marked as Fixed in the Release Notes + New and Noteworthy Features
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.pngMySQL 5.7Not Tested
oracle.pngOracle 11.2Jira Tickets Marked as Fixed in the Release Notes + New and Noteworthy Features
postgresql.pngPostgreSQL 10Not Tested

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 10.2

API Breakages

The following APIs were modified since XWiki 10.1:

  • We decided to drop the tex/1.0 syntax in favor of the latex/1.0 one available in XWiki Contrib
    • Violation type:
      java.class.removed
    • Code:
      ## Old:
      class org.xwiki.rendering.wikimodel.tex.TexSerializer.DocumentContext
  • No breakage. Just moved commons stuff in an abtract class.
    • Violation type:
      java.class.nonFinalClassInheritsFromNewClass
    • Code:
      ## Old:
      class org.xwiki.rendering.block.ExpandedMacroBlock

      ## New:
      class org.xwiki.rendering.block.ExpandedMacroBlock
  • Not a breakage in this context
    • Violation type:
      java.field.serialVersionUIDUnchanged
    • Code:
      ## Old:
      field org.xwiki.refactoring.job.CreateRequest.serialVersionUID

      ## New:
      field org.xwiki.refactoring.job.CreateRequest.serialVersionUID
  • Not a breakage in this context
    • Violation type:
      java.field.serialVersionUIDUnchanged
    • Code:
      ## Old:
      field org.xwiki.refactoring.job.EntityRequest.serialVersionUID

      ## New:
      field org.xwiki.refactoring.job.EntityRequest.serialVersionUID
  • Not a breakage in this context
    • Violation type:
      java.field.serialVersionUIDUnchanged
    • Code:
      ## Old:
      field org.xwiki.refactoring.job.MoveRequest.serialVersionUID

      ## New:
      field org.xwiki.refactoring.job.MoveRequest.serialVersionUID
  • Not a breakage in this context
    • Violation type:
      java.field.serialVersionUIDUnchanged
    • Code:
      ## Old:
      field org.xwiki.refactoring.job.RestoreRequest.serialVersionUID

      ## New:
      field org.xwiki.refactoring.job.RestoreRequest.serialVersionUID
  • Not a breakage in this context
    • Violation type:
      java.field.serialVersionUIDUnchanged
    • Code:
      ## Old:
      field org.xwiki.platform.wiki.creationjob.WikiCreationRequest.serialVersionUID

      ## New:
      field org.xwiki.platform.wiki.creationjob.WikiCreationRequest.serialVersionUID
  • Not a breakage in this context
    • Violation type:
      java.annotation.attributeValueChanged
    • Code:
      ## Old:
      class org.xwiki.rest.model.jaxb.JobRequest

      ## New:
      class org.xwiki.rest.model.jaxb.JobRequest
  • Not a breakage in this context
    • Violation type:
      java.annotation.attributeValueChanged
    • Code:
      ## Old:
      class org.xwiki.rest.model.jaxb.JobStatus

      ## New:
      class org.xwiki.rest.model.jaxb.JobStatus
  • Young API
    • Violation type:
      java.method.numberOfParametersChanged
    • Code:
      ## Old:
      method java.util.List<org.xwiki.notifications.CompositeEvent> org.xwiki.notifications.sources.NotificationManager::getEvents(java.lang.String, boolean, int) throws org.xwiki.notifications.NotificationException

      ## New:
      method java.util.List<org.xwiki.notifications.CompositeEvent> org.xwiki.notifications.sources.NotificationManager::getEvents(java.lang.String, int) throws org.xwiki.notifications.NotificationException
  • Young API
    • Violation type:
      java.method.parameterTypeChanged
    • Code:
      ## Old:
      parameter java.util.List<org.xwiki.notifications.CompositeEvent> org.xwiki.notifications.sources.NotificationManager::getEvents(java.lang.String, ===boolean===, int, java.util.Date, java.util.Date, java.util.List<java.lang.String>) throws org.xwiki.notifications.NotificationException

      ## New:
      parameter java.util.List<org.xwiki.notifications.CompositeEvent> org.xwiki.notifications.sources.NotificationManager::getEvents(java.lang.String, ===org.xwiki.notifications.NotificationFormat===, int, java.util.Date, java.util.Date, java.util.List<java.lang.String>) throws org.xwiki.notifications.NotificationException
  • Young API
    • Violation type:
      java.method.numberOfParametersChanged
    • Code:
      ## Old:
      method java.util.List<org.xwiki.notifications.CompositeEvent> org.xwiki.notifications.sources.NotificationManager::getEvents(java.lang.String, boolean, int, java.util.Date, java.util.List<java.lang.String>) throws org.xwiki.notifications.NotificationException

      ## New:
      method java.util.List<org.xwiki.notifications.CompositeEvent> org.xwiki.notifications.sources.NotificationManager::getEvents(java.lang.String, int, java.util.Date, java.util.List<java.lang.String>) throws org.xwiki.notifications.NotificationException
  • Young API
    • Violation type:
      java.method.numberOfParametersChanged
    • Code:
      ## Old:
      method java.util.List<org.xwiki.notifications.CompositeEvent> org.xwiki.notifications.sources.NotificationManager::getEvents(java.lang.String, org.xwiki.notifications.NotificationFormat, boolean, int, java.util.Date, java.util.Date, java.util.List<java.lang.String>) throws org.xwiki.notifications.NotificationException

      ## New:
      method java.util.List<org.xwiki.notifications.CompositeEvent> org.xwiki.notifications.sources.NotificationManager::getEvents(java.lang.String, int, java.util.Date, java.util.Date, java.util.List<java.lang.String>) throws org.xwiki.notifications.NotificationException
  • Young API
    • Violation type:
      java.method.numberOfParametersChanged
    • Code:
      ## Old:
      method long org.xwiki.notifications.sources.NotificationManager::getEventsCount(java.lang.String, boolean, int) throws org.xwiki.notifications.NotificationException

      ## New:
      method long org.xwiki.notifications.sources.NotificationManager::getEventsCount(java.lang.String, int) throws org.xwiki.notifications.NotificationException
  • Young API
    • Violation type:
      java.method.numberOfParametersChanged
    • Code:
      ## Old:
      method java.util.List<org.xwiki.notifications.CompositeEvent> org.xwiki.notifications.sources.script.NotificationSourcesScriptService::getEvents(boolean, int) throws org.xwiki.notifications.NotificationException

      ## New:
      method java.util.List<org.xwiki.notifications.CompositeEvent> org.xwiki.notifications.sources.script.NotificationSourcesScriptService::getEvents(int) throws org.xwiki.notifications.NotificationException
  • Young API
    • Violation type:
      java.method.numberOfParametersChanged
    • Code:
      ## Old:
      method java.util.List<org.xwiki.notifications.CompositeEvent> org.xwiki.notifications.sources.script.NotificationSourcesScriptService::getEvents(boolean, int, java.util.Date, java.lang.String[]) throws org.xwiki.notifications.NotificationException

      ## New:
      method java.util.List<org.xwiki.notifications.CompositeEvent> org.xwiki.notifications.sources.script.NotificationSourcesScriptService::getEvents(int, java.util.Date, java.lang.String[]) throws org.xwiki.notifications.NotificationException
  • Young API
    • Violation type:
      java.method.numberOfParametersChanged
    • Code:
      ## Old:
      method java.util.List<org.xwiki.notifications.CompositeEvent> org.xwiki.notifications.sources.script.NotificationSourcesScriptService::getEvents(boolean, int, java.util.Date, java.util.List<java.lang.String>) throws org.xwiki.notifications.NotificationException

      ## New:
      method java.util.List<org.xwiki.notifications.CompositeEvent> org.xwiki.notifications.sources.script.NotificationSourcesScriptService::getEvents(int, java.util.Date, java.util.List<java.lang.String>) throws org.xwiki.notifications.NotificationException
  • Young API
    • Violation type:
      java.method.numberOfParametersChanged
    • Code:
      ## Old:
      method long org.xwiki.notifications.sources.script.NotificationSourcesScriptService::getEventsCount(boolean, int) throws org.xwiki.notifications.NotificationException

      ## New:
      method long org.xwiki.notifications.sources.script.NotificationSourcesScriptService::getEventsCount(int) throws org.xwiki.notifications.NotificationException
  • Young API
    • Violation type:
      java.method.parameterTypeChanged
    • Code:
      ## Old:
      parameter java.lang.String org.xwiki.notifications.notifiers.script.NotificationNotifiersScriptService::getFeed(===int===, boolean) throws org.xwiki.notifications.NotificationException

      ## New:
      parameter java.lang.String org.xwiki.notifications.notifiers.script.NotificationNotifiersScriptService::getFeed(===java.lang.String===, int) throws org.xwiki.notifications.NotificationException
  • Young API
    • Violation type:
      java.method.parameterTypeChanged
    • Code:
      ## Old:
      parameter java.lang.String org.xwiki.notifications.notifiers.script.NotificationNotifiersScriptService::getFeed(int, ===boolean===) throws org.xwiki.notifications.NotificationException

      ## New:
      parameter java.lang.String org.xwiki.notifications.notifiers.script.NotificationNotifiersScriptService::getFeed(java.lang.String, ===int===) throws org.xwiki.notifications.NotificationException
  • Young API
    • Violation type:
      java.method.numberOfParametersChanged
    • Code:
      ## Old:
      method java.lang.String org.xwiki.notifications.notifiers.script.NotificationNotifiersScriptService::getFeed(java.lang.String, int, boolean) throws org.xwiki.notifications.NotificationException

      ## New:
      method java.lang.String org.xwiki.notifications.notifiers.script.NotificationNotifiersScriptService::getFeed(int) throws org.xwiki.notifications.NotificationException
  • Young API
    • Violation type:
      java.method.addedToInterface
    • Code:
      ## Old:
      null

      ## New:
      method java.util.List<org.xwiki.notifications.preferences.NotificationPreference> org.xwiki.notifications.preferences.NotificationPreferenceManager::getAllPreferences(org.xwiki.model.reference.WikiReference) throws org.xwiki.notifications.NotificationException
  • Young API
    • Violation type:
      java.method.addedToInterface
    • Code:
      ## Old:
      null

      ## New:
      method java.util.List<org.xwiki.notifications.preferences.NotificationPreference> org.xwiki.notifications.preferences.NotificationPreferenceProvider::getPreferencesForWiki(org.xwiki.model.reference.WikiReference) throws org.xwiki.notifications.NotificationException
  • Young API
    • Violation type:
      java.field.removed
    • Code:
      ## Old:
      field javax.mail.internet.MimeMessage.cachedContent @ org.xwiki.mail.ExtendedMimeMessage
  • Young API
    • Violation type:
      java.method.returnTypeTypeParametersChanged
    • Code:
      ## Old:
      method java.util.Enumeration<java.lang.String> javax.mail.internet.MimeMessage::getAllHeaderLines() throws javax.mail.MessagingException @ org.xwiki.mail.ExtendedMimeMessage

      ## New:
      method java.util.Enumeration javax.mail.internet.MimeMessage::getAllHeaderLines() throws javax.mail.MessagingException @ org.xwiki.mail.ExtendedMimeMessage
  • Young API
    • Violation type:
      java.method.returnTypeTypeParametersChanged
    • Code:
      ## Old:
      method java.util.Enumeration<javax.mail.Header> javax.mail.internet.MimeMessage::getAllHeaders() throws javax.mail.MessagingException @ org.xwiki.mail.ExtendedMimeMessage

      ## New:
      method java.util.Enumeration javax.mail.internet.MimeMessage::getAllHeaders() throws javax.mail.MessagingException @ org.xwiki.mail.ExtendedMimeMessage
  • Young API
    • Violation type:
      java.method.returnTypeTypeParametersChanged
    • Code:
      ## Old:
      method java.util.Enumeration<java.lang.String> javax.mail.internet.MimeMessage::getMatchingHeaderLines(java.lang.String[]) throws javax.mail.MessagingException @ org.xwiki.mail.ExtendedMimeMessage

      ## New:
      method java.util.Enumeration javax.mail.internet.MimeMessage::getMatchingHeaderLines(java.lang.String[]) throws javax.mail.MessagingException @ org.xwiki.mail.ExtendedMimeMessage
  • Young API
    • Violation type:
      java.method.returnTypeTypeParametersChanged
    • Code:
      ## Old:
      method java.util.Enumeration<javax.mail.Header> javax.mail.internet.MimeMessage::getMatchingHeaders(java.lang.String[]) throws javax.mail.MessagingException @ org.xwiki.mail.ExtendedMimeMessage

      ## New:
      method java.util.Enumeration javax.mail.internet.MimeMessage::getMatchingHeaders(java.lang.String[]) throws javax.mail.MessagingException @ org.xwiki.mail.ExtendedMimeMessage
  • Young API
    • Violation type:
      java.method.returnTypeTypeParametersChanged
    • Code:
      ## Old:
      method java.util.Enumeration<java.lang.String> javax.mail.internet.MimeMessage::getNonMatchingHeaderLines(java.lang.String[]) throws javax.mail.MessagingException @ org.xwiki.mail.ExtendedMimeMessage

      ## New:
      method java.util.Enumeration javax.mail.internet.MimeMessage::getNonMatchingHeaderLines(java.lang.String[]) throws javax.mail.MessagingException @ org.xwiki.mail.ExtendedMimeMessage
  • Young API
    • Violation type:
      java.method.returnTypeTypeParametersChanged
    • Code:
      ## Old:
      method java.util.Enumeration<javax.mail.Header> javax.mail.internet.MimeMessage::getNonMatchingHeaders(java.lang.String[]) throws javax.mail.MessagingException @ org.xwiki.mail.ExtendedMimeMessage

      ## New:
      method java.util.Enumeration javax.mail.internet.MimeMessage::getNonMatchingHeaders(java.lang.String[]) throws javax.mail.MessagingException @ org.xwiki.mail.ExtendedMimeMessage
  • Young API
    • Violation type:
      java.method.removed
    • Code:
      ## Old:
      method javax.mail.Session javax.mail.Message::getSession() @ org.xwiki.mail.ExtendedMimeMessage
  • Young API
    • Violation type:
      java.method.removed
    • Code:
      ## Old:
      method javax.mail.Message javax.mail.internet.MimeMessage::reply(boolean, boolean) throws javax.mail.MessagingException @ org.xwiki.mail.ExtendedMimeMessage
  • Young API
    • Violation type:
      java.method.removed
    • Code:
      ## Old:
      method void javax.mail.internet.MimeMessage::setFrom(java.lang.String) throws javax.mail.MessagingException @ org.xwiki.mail.ExtendedMimeMessage
  • Young API
    • Violation type:
      java.field.removed
    • Code:
      ## Old:
      field javax.mail.internet.MimeMessage.cachedContent @ org.xwiki.mail.script.ScriptMimeMessage
  • Young API
    • Violation type:
      java.method.returnTypeTypeParametersChanged
    • Code:
      ## Old:
      method java.util.Enumeration<java.lang.String> javax.mail.internet.MimeMessage::getAllHeaderLines() throws javax.mail.MessagingException @ org.xwiki.mail.script.ScriptMimeMessage

      ## New:
      method java.util.Enumeration javax.mail.internet.MimeMessage::getAllHeaderLines() throws javax.mail.MessagingException @ org.xwiki.mail.script.ScriptMimeMessage
  • Young API
    • Violation type:
      java.method.returnTypeTypeParametersChanged
    • Code:
      ## Old:
      method java.util.Enumeration<javax.mail.Header> javax.mail.internet.MimeMessage::getAllHeaders() throws javax.mail.MessagingException @ org.xwiki.mail.script.ScriptMimeMessage

      ## New:
      method java.util.Enumeration javax.mail.internet.MimeMessage::getAllHeaders() throws javax.mail.MessagingException @ org.xwiki.mail.script.ScriptMimeMessage
  • Young API
    • Violation type:
      java.method.returnTypeTypeParametersChanged
    • Code:
      ## Old:
      method java.util.Enumeration<java.lang.String> javax.mail.internet.MimeMessage::getMatchingHeaderLines(java.lang.String[]) throws javax.mail.MessagingException @ org.xwiki.mail.script.ScriptMimeMessage

      ## New:
      method java.util.Enumeration javax.mail.internet.MimeMessage::getMatchingHeaderLines(java.lang.String[]) throws javax.mail.MessagingException @ org.xwiki.mail.script.ScriptMimeMessage
  • Young API
    • Violation type:
      java.method.returnTypeTypeParametersChanged
    • Code:
      ## Old:
      method java.util.Enumeration<javax.mail.Header> javax.mail.internet.MimeMessage::getMatchingHeaders(java.lang.String[]) throws javax.mail.MessagingException @ org.xwiki.mail.script.ScriptMimeMessage

      ## New:
      method java.util.Enumeration javax.mail.internet.MimeMessage::getMatchingHeaders(java.lang.String[]) throws javax.mail.MessagingException @ org.xwiki.mail.script.ScriptMimeMessage
  • Young API
    • Violation type:
      java.method.returnTypeTypeParametersChanged
    • Code:
      ## Old:
      method java.util.Enumeration<java.lang.String> javax.mail.internet.MimeMessage::getNonMatchingHeaderLines(java.lang.String[]) throws javax.mail.MessagingException @ org.xwiki.mail.script.ScriptMimeMessage

      ## New:
      method java.util.Enumeration javax.mail.internet.MimeMessage::getNonMatchingHeaderLines(java.lang.String[]) throws javax.mail.MessagingException @ org.xwiki.mail.script.ScriptMimeMessage
  • Young API
    • Violation type:
      java.method.returnTypeTypeParametersChanged
    • Code:
      ## Old:
      method java.util.Enumeration<javax.mail.Header> javax.mail.internet.MimeMessage::getNonMatchingHeaders(java.lang.String[]) throws javax.mail.MessagingException @ org.xwiki.mail.script.ScriptMimeMessage

      ## New:
      method java.util.Enumeration javax.mail.internet.MimeMessage::getNonMatchingHeaders(java.lang.String[]) throws javax.mail.MessagingException @ org.xwiki.mail.script.ScriptMimeMessage
  • Young API
    • Violation type:
      java.method.removed
    • Code:
      ## Old:
      method javax.mail.Session javax.mail.Message::getSession() @ org.xwiki.mail.script.ScriptMimeMessage
  • Young API
    • Violation type:
      java.method.removed
    • Code:
      ## Old:
      method javax.mail.Message javax.mail.internet.MimeMessage::reply(boolean, boolean) throws javax.mail.MessagingException @ org.xwiki.mail.script.ScriptMimeMessage
  • Young API
    • Violation type:
      java.method.removed
    • Code:
      ## Old:
      method void javax.mail.internet.MimeMessage::setFrom(java.lang.String) throws javax.mail.MessagingException @ org.xwiki.mail.script.ScriptMimeMessage
  • Young API
    • Violation type:
      java.method.returnTypeChanged
    • Code:
      ## Old:
      method org.xwiki.model.reference.DocumentReference org.xwiki.notifications.preferences.TargetableNotificationPreference::getTarget()

      ## New:
      method org.xwiki.model.reference.EntityReference org.xwiki.notifications.preferences.TargetableNotificationPreference::getTarget()
  • Young API
    • Violation type:
      java.method.parameterTypeChanged
    • Code:
      ## Old:
      parameter void org.xwiki.notifications.preferences.TargetableNotificationPreferenceBuilder::setTarget(===org.xwiki.model.reference.DocumentReference===)

      ## New:
      parameter void org.xwiki.notifications.preferences.TargetableNotificationPreferenceBuilder::setTarget(===org.xwiki.model.reference.EntityReference===)
  • Young API
    • Violation type:
      java.method.exception.checkedAdded
    • Code:
      ## Old:
      method void org.xwiki.notifications.preferences.script.NotificationPreferenceScriptService::saveNotificationPreferences(java.lang.String, org.xwiki.model.reference.DocumentReference) throws org.xwiki.notifications.NotificationException

      ## New:
      method void org.xwiki.notifications.preferences.script.NotificationPreferenceScriptService::saveNotificationPreferences(java.lang.String, org.xwiki.model.reference.DocumentReference) throws org.xwiki.notifications.NotificationException, org.xwiki.security.authorization.AccessDeniedException
  • Adding an optional parameter to REST action, not a real breakage
    • Violation type:
      java.annotation.added
    • Code:
      ## Old:
      parameter javax.ws.rs.core.Response org.xwiki.rest.resources.objects.ObjectPropertyResource::updateObjectProperty(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.Integer, java.lang.String, ===org.xwiki.rest.model.jaxb.Property===) throws org.xwiki.rest.XWikiRestException

      ## New:
      parameter javax.ws.rs.core.Response org.xwiki.rest.resources.objects.ObjectPropertyResource::updateObjectProperty(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.Integer, java.lang.String, ===java.lang.Boolean===, org.xwiki.rest.model.jaxb.Property) throws org.xwiki.rest.XWikiRestException
  • Adding an optional parameter to REST action, not a real breakage
    • Violation type:
      java.method.numberOfParametersChanged
    • Code:
      ## Old:
      method javax.ws.rs.core.Response org.xwiki.rest.resources.objects.ObjectPropertyResource::updateObjectProperty(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.Integer, java.lang.String, org.xwiki.rest.model.jaxb.Property) throws org.xwiki.rest.XWikiRestException

      ## New:
      method javax.ws.rs.core.Response org.xwiki.rest.resources.objects.ObjectPropertyResource::updateObjectProperty(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.Integer, java.lang.String, java.lang.Boolean, org.xwiki.rest.model.jaxb.Property) throws org.xwiki.rest.XWikiRestException
  • Adding an optional parameter to REST action, not a real breakage
    • Violation type:
      java.annotation.added
    • Code:
      ## Old:
      parameter javax.ws.rs.core.Response org.xwiki.rest.resources.objects.ObjectResource::updateObject(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.Integer, ===org.xwiki.rest.model.jaxb.Object===) throws org.xwiki.rest.XWikiRestException

      ## New:
      parameter javax.ws.rs.core.Response org.xwiki.rest.resources.objects.ObjectResource::updateObject(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.Integer, ===java.lang.Boolean===, org.xwiki.rest.model.jaxb.Object) throws org.xwiki.rest.XWikiRestException
  • Adding an optional parameter to REST action, not a real breakage
    • Violation type:
      java.method.numberOfParametersChanged
    • Code:
      ## Old:
      method javax.ws.rs.core.Response org.xwiki.rest.resources.objects.ObjectResource::updateObject(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.Integer, org.xwiki.rest.model.jaxb.Object) throws org.xwiki.rest.XWikiRestException

      ## New:
      method javax.ws.rs.core.Response org.xwiki.rest.resources.objects.ObjectResource::updateObject(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.Integer, java.lang.Boolean, org.xwiki.rest.model.jaxb.Object) throws org.xwiki.rest.XWikiRestException
  • Adding an optional parameter to REST action, not a real breakage
    • Violation type:
      java.annotation.added
    • Code:
      ## Old:
      parameter javax.ws.rs.core.Response org.xwiki.rest.resources.pages.PageResource::putPage(java.lang.String, java.lang.String, java.lang.String, ===org.xwiki.rest.model.jaxb.Page===) throws org.xwiki.rest.XWikiRestException

      ## New:
      parameter javax.ws.rs.core.Response org.xwiki.rest.resources.pages.PageResource::putPage(java.lang.String, java.lang.String, java.lang.String, ===java.lang.Boolean===, org.xwiki.rest.model.jaxb.Page) throws org.xwiki.rest.XWikiRestException
  • Adding an optional parameter to REST action, not a real breakage
    • Violation type:
      java.method.numberOfParametersChanged
    • Code:
      ## Old:
      method javax.ws.rs.core.Response org.xwiki.rest.resources.pages.PageResource::putPage(java.lang.String, java.lang.String, java.lang.String, org.xwiki.rest.model.jaxb.Page) throws org.xwiki.rest.XWikiRestException

      ## New:
      method javax.ws.rs.core.Response org.xwiki.rest.resources.pages.PageResource::putPage(java.lang.String, java.lang.String, java.lang.String, java.lang.Boolean, org.xwiki.rest.model.jaxb.Page) throws org.xwiki.rest.XWikiRestException
  • Adding an optional parameter to REST action, not a real breakage
    • Violation type:
      java.annotation.added
    • Code:
      ## Old:
      parameter javax.ws.rs.core.Response org.xwiki.rest.resources.pages.PageTranslationResource::putPageTranslation(java.lang.String, java.lang.String, java.lang.String, java.lang.String, ===org.xwiki.rest.model.jaxb.Page===) throws org.xwiki.rest.XWikiRestException

      ## New:
      parameter javax.ws.rs.core.Response org.xwiki.rest.resources.pages.PageTranslationResource::putPageTranslation(java.lang.String, java.lang.String, java.lang.String, java.lang.String, ===java.lang.Boolean===, org.xwiki.rest.model.jaxb.Page) throws org.xwiki.rest.XWikiRestException
  • Adding an optional parameter to REST action, not a real breakage
    • Violation type:
      java.method.numberOfParametersChanged
    • Code:
      ## Old:
      method javax.ws.rs.core.Response org.xwiki.rest.resources.pages.PageTranslationResource::putPageTranslation(java.lang.String, java.lang.String, java.lang.String, java.lang.String, org.xwiki.rest.model.jaxb.Page) throws org.xwiki.rest.XWikiRestException

      ## New:
      method javax.ws.rs.core.Response org.xwiki.rest.resources.pages.PageTranslationResource::putPageTranslation(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.Boolean, org.xwiki.rest.model.jaxb.Page) throws org.xwiki.rest.XWikiRestException
  • Adding an optional parameter to REST action, not a real breakage
    • Violation type:
      java.annotation.added
    • Code:
      ## Old:
      parameter javax.ws.rs.core.Response org.xwiki.rest.resources.pages.PageTagsResource::setTags(java.lang.String, java.lang.String, java.lang.String, ===org.xwiki.rest.model.jaxb.Tags===) throws org.xwiki.rest.XWikiRestException

      ## New:
      parameter javax.ws.rs.core.Response org.xwiki.rest.resources.pages.PageTagsResource::setTags(java.lang.String, java.lang.String, java.lang.String, ===java.lang.Boolean===, org.xwiki.rest.model.jaxb.Tags) throws org.xwiki.rest.XWikiRestException
  • Adding an optional parameter to REST action, not a real breakage
    • Violation type:
      java.method.numberOfParametersChanged
    • Code:
      ## Old:
      method javax.ws.rs.core.Response org.xwiki.rest.resources.pages.PageTagsResource::setTags(java.lang.String, java.lang.String, java.lang.String, org.xwiki.rest.model.jaxb.Tags) throws org.xwiki.rest.XWikiRestException

      ## New:
      method javax.ws.rs.core.Response org.xwiki.rest.resources.pages.PageTagsResource::setTags(java.lang.String, java.lang.String, java.lang.String, java.lang.Boolean, org.xwiki.rest.model.jaxb.Tags) throws org.xwiki.rest.XWikiRestException
  • Adding an optional parameter to REST action, not a real breakage
    • Violation type:
      java.annotation.added
    • Code:
      ## Old:
      parameter javax.ws.rs.core.Response org.xwiki.rest.resources.objects.ObjectsResource::addObject(java.lang.String, java.lang.String, java.lang.String, ===org.xwiki.rest.model.jaxb.Object===) throws org.xwiki.rest.XWikiRestException

      ## New:
      parameter javax.ws.rs.core.Response org.xwiki.rest.resources.objects.ObjectsResource::addObject(java.lang.String, java.lang.String, java.lang.String, ===java.lang.Boolean===, org.xwiki.rest.model.jaxb.Object) throws org.xwiki.rest.XWikiRestException
  • Adding an optional parameter to REST action, not a real breakage
    • Violation type:
      java.method.numberOfParametersChanged
    • Code:
      ## Old:
      method javax.ws.rs.core.Response org.xwiki.rest.resources.objects.ObjectsResource::addObject(java.lang.String, java.lang.String, java.lang.String, org.xwiki.rest.model.jaxb.Object) throws org.xwiki.rest.XWikiRestException

      ## New:
      method javax.ws.rs.core.Response org.xwiki.rest.resources.objects.ObjectsResource::addObject(java.lang.String, java.lang.String, java.lang.String, java.lang.Boolean, org.xwiki.rest.model.jaxb.Object) throws org.xwiki.rest.XWikiRestException

Credits

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

  • Alex Cotiugă
  • Arun Pattni
  • Clément Aubin
  • Ecaterina Moraru (Valica)
  • Eduard Moraru
  • Enigmatrix
  • Guillaume Delhumeau
  • Marius Dumitru Florea
  • Thomas Mortagne
  • Vincent Massol
Tags:
   

Get Connected