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.

In this version we've improved the Navigation panel by allowing pages to be excluded from the tree. We've added a new macro for Notifications that allows it to be embedded in other pages. We've also improved the History's Changes view by providing more navigation options between versions. We've continued to tweak the edit protection, added in the previous version, for some default extension pages (like Skin, Color Themes, Dashboard, Sandbox, etc.).

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

Full list of issues fixed and Dashboard for 10.4.

For Users

New Notifications Macro


It is now possible to list the notifications for the wiki by using the Notifications Macro. You can use it in any page or any dashboard. The goal is to be able to replace the Activity Stream which is going to be deprecated (too slow and missing some features).

Navigation Panel Configuration


The top level application pages are now excluded by default from the Navigation Panel. You can still access the corresponding applications from the Applications Panel. This allows the Navigation Panel to focus more on your own content pages. However, you can disable this filter (if you wish to see all the pages) or configure other page excludes from the Wiki Administration.

The "network" tab is back in the user profile


The "network" tab disappeared in XWiki 10.3 for technical reasons. Thanks to the new Notifications Macro, it comes back in XWiki 10.4. It's also better than before since it now allows dismissing events.

The goal of this tab is to display all the events performed by the users you are following.

Navigation in the changes view


Arrows have been added to easily navigate between changes of a document.

For Admins

No changes!

Miscellaneous

  • Customize message for denied access: It is now possible to customize the content displayed to the user when a denied access occurs, without modifying the skin, hence facilitating the upgrades. This customization can be brought by creating a page at XWiki.AccessDenied. It works in the same way as XWiki.DocumentDoesNotExist, XWiki.WikiDoesNotExist and XWiki.AttachmentDoesNotExist. See also the related documentation paragraph "Customizing error pages" that was added to the XWiki configuration guide.

For Developers

After document header extension point


It is now possible to inject some content after the document header, that is below the title / update info / actions block, by implementing the org.xwiki.platform.content.header.after UI Extension Point.

New XAR entry types


The following new XAR entry types have been added:

  • customizable

Document Tree Exclusions


The Document Tree macro has a new parameter named "exclusions" that allows you to exclude a list of nodes from the tree. For instance, in order to exclude the "XWiki" top level node you can use:

{{documentTree exclusions="document:xwiki:XWiki.WebHome" /}}

Check the documentation for more information.

The identity of the current user is now available in javascript


JavaScript developers can now get the reference of the current user thanks to the xwiki-meta module that you can use like this:

require(['xwiki-meta'], function (xm) {
  console.log('Hello: ' + XWiki.Model.serialize(xm.userReference));
 // Will display "Hello xwiki:XWiki.Admin" in the console
});

Upgrades

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

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 66Jira Tickets Marked as Fixed in the Release Notes + New and Noteworthy Features
Firefox30.pngMozilla Firefox 60Not Tested
Edge30.pngMicrosoft Edge 17Not 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.pngHyperSQL 2.4.0Not Tested
mysql.pngMySQL 5.7Jira Tickets Marked as Fixed in the Release Notes + New and Noteworthy Features
oracle.pngOracle 11.2
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.

API Breakages

The following APIs were modified since XWiki 10.3:

  • revapi bug
    • Violation type:
      java.method.removed
    • Code:
      ## Old:
      method javax.servlet.AsyncContext javax.servlet.ServletRequest::getAsyncContext() @ org.xwiki.wysiwyg.filter.MutableServletRequest
  • revapi bug
    • Violation type:
      java.method.returnTypeTypeParametersChanged
    • Code:
      ## Old:
      method java.util.Enumeration<java.lang.String> javax.servlet.ServletRequest::getAttributeNames() @ org.xwiki.wysiwyg.filter.MutableServletRequest

      ## New:
      method java.util.Enumeration javax.servlet.ServletRequest::getAttributeNames() @ org.xwiki.wysiwyg.filter.MutableServletRequest
  • revapi bug
    • Violation type:
      java.method.removed
    • Code:
      ## Old:
      method javax.servlet.DispatcherType javax.servlet.ServletRequest::getDispatcherType() @ org.xwiki.wysiwyg.filter.MutableServletRequest
  • revapi bug
    • Violation type:
      java.method.returnTypeTypeParametersChanged
    • Code:
      ## Old:
      method java.util.Enumeration<java.util.Locale> javax.servlet.ServletRequest::getLocales() @ org.xwiki.wysiwyg.filter.MutableServletRequest

      ## New:
      method java.util.Enumeration javax.servlet.ServletRequest::getLocales() @ org.xwiki.wysiwyg.filter.MutableServletRequest
  • revapi bug
    • Violation type:
      java.method.returnTypeTypeParametersChanged
    • Code:
      ## Old:
      method java.util.Map<java.lang.String, java.lang.String[]> javax.servlet.ServletRequest::getParameterMap() @ org.xwiki.wysiwyg.filter.MutableServletRequest

      ## New:
      method java.util.Map javax.servlet.ServletRequest::getParameterMap() @ org.xwiki.wysiwyg.filter.MutableServletRequest
  • revapi bug
    • Violation type:
      java.method.returnTypeTypeParametersChanged
    • Code:
      ## Old:
      method java.util.Enumeration<java.lang.String> javax.servlet.ServletRequest::getParameterNames() @ org.xwiki.wysiwyg.filter.MutableServletRequest

      ## New:
      method java.util.Enumeration javax.servlet.ServletRequest::getParameterNames() @ org.xwiki.wysiwyg.filter.MutableServletRequest
  • revapi bug
    • Violation type:
      java.method.removed
    • Code:
      ## Old:
      method javax.servlet.ServletContext javax.servlet.ServletRequest::getServletContext() @ org.xwiki.wysiwyg.filter.MutableServletRequest
  • revapi bug
    • Violation type:
      java.method.removed
    • Code:
      ## Old:
      method boolean javax.servlet.ServletRequest::isAsyncStarted() @ org.xwiki.wysiwyg.filter.MutableServletRequest
  • revapi bug
    • Violation type:
      java.method.removed
    • Code:
      ## Old:
      method boolean javax.servlet.ServletRequest::isAsyncSupported() @ org.xwiki.wysiwyg.filter.MutableServletRequest
  • revapi bug
    • Violation type:
      java.method.removed
    • Code:
      ## Old:
      method javax.servlet.AsyncContext javax.servlet.ServletRequest::startAsync() throws java.lang.IllegalStateException @ org.xwiki.wysiwyg.filter.MutableServletRequest
  • revapi bug
    • Violation type:
      java.method.removed
    • Code:
      ## Old:
      method javax.servlet.AsyncContext javax.servlet.ServletRequest::startAsync(javax.servlet.ServletRequest, javax.servlet.ServletResponse) throws java.lang.IllegalStateException @ org.xwiki.wysiwyg.filter.MutableServletRequest
  • Classes moved to the internal package as they were not supposed to be public
    • Violation type:
      java\.class\.removed
    • Code:
      ## Old:
      null
  • Class wrongly made public in previous releases! See
    • Violation type:
      java.class.removed
    • Code:
      ## Old:
      class org.xwiki.notifications.filters.watchlistbridge.WatchlistBridgeProvider
  • Young API
    • Violation type:
      java.method.returnTypeChanged
    • Code:
      ## Old:
      method boolean org.xwiki.notifications.filters.NotificationFilter::filterEvent(org.xwiki.eventstream.Event, org.xwiki.model.reference.DocumentReference, org.xwiki.notifications.NotificationFormat)

      ## New:
      method org.xwiki.notifications.filters.NotificationFilter.FilterPolicy org.xwiki.notifications.filters.NotificationFilter::filterEvent(org.xwiki.eventstream.Event, org.xwiki.model.reference.DocumentReference, org.xwiki.notifications.NotificationFormat)
  • Young API
    • Violation type:
      java.method.numberOfParametersChanged
    • Code:
      ## Old:
      method boolean org.xwiki.notifications.filters.NotificationFilter::filterEvent(org.xwiki.eventstream.Event, org.xwiki.model.reference.DocumentReference, org.xwiki.notifications.NotificationFormat)

      ## New:
      method org.xwiki.notifications.filters.NotificationFilter.FilterPolicy org.xwiki.notifications.filters.NotificationFilter::filterEvent(org.xwiki.eventstream.Event, org.xwiki.model.reference.DocumentReference, java.util.Collection<org.xwiki.notifications.filters.NotificationFilterPreference>, org.xwiki.notifications.NotificationFormat)
  • Young API
    • Violation type:
      java.method.returnTypeChanged
    • Code:
      ## Old:
      method boolean org.xwiki.notifications.filters.NotificationFilter::filterEvent(org.xwiki.eventstream.Event, org.xwiki.model.reference.DocumentReference, org.xwiki.notifications.NotificationFormat)

      ## New:
      method org.xwiki.notifications.filters.NotificationFilter.FilterPolicy org.xwiki.notifications.filters.NotificationFilter::filterEvent(org.xwiki.eventstream.Event, org.xwiki.model.reference.DocumentReference, java.util.Collection<org.xwiki.notifications.filters.NotificationFilterPreference>, org.xwiki.notifications.NotificationFormat)
  • Young API
    • Violation type:
      java.method.numberOfParametersChanged
    • Code:
      ## Old:
      method org.xwiki.notifications.filters.expression.ExpressionNode org.xwiki.notifications.filters.NotificationFilter::filterExpression(org.xwiki.model.reference.DocumentReference, org.xwiki.notifications.filters.NotificationFilterType, org.xwiki.notifications.NotificationFormat)

      ## New:
      method org.xwiki.notifications.filters.expression.ExpressionNode org.xwiki.notifications.filters.NotificationFilter::filterExpression(org.xwiki.model.reference.DocumentReference, java.util.Collection<org.xwiki.notifications.filters.NotificationFilterPreference>, org.xwiki.notifications.filters.NotificationFilterType, org.xwiki.notifications.NotificationFormat)
  • Young API
    • Violation type:
      java.method.numberOfParametersChanged
    • Code:
      ## Old:
      method org.xwiki.notifications.filters.expression.ExpressionNode org.xwiki.notifications.filters.NotificationFilter::filterExpression(org.xwiki.model.reference.DocumentReference, org.xwiki.notifications.preferences.NotificationPreference)

      ## New:
      method org.xwiki.notifications.filters.expression.ExpressionNode org.xwiki.notifications.filters.NotificationFilter::filterExpression(org.xwiki.model.reference.DocumentReference, java.util.Collection<org.xwiki.notifications.filters.NotificationFilterPreference>, org.xwiki.notifications.preferences.NotificationPreference)
  • Young API
    • Violation type:
      java.method.returnTypeChanged
    • Code:
      ## Old:
      method java.util.Set<org.xwiki.notifications.filters.NotificationFilter> org.xwiki.notifications.filters.NotificationFilterManager::getAllFilters(org.xwiki.model.reference.DocumentReference) throws org.xwiki.notifications.NotificationException

      ## New:
      method java.util.Collection<org.xwiki.notifications.filters.NotificationFilter> org.xwiki.notifications.filters.NotificationFilterManager::getAllFilters(org.xwiki.model.reference.DocumentReference) throws org.xwiki.notifications.NotificationException
  • Young API
    • Violation type:
      java.method.addedToInterface
    • Code:
      ## Old:
      null

      ## New:
      method java.util.Collection<org.xwiki.notifications.filters.NotificationFilter> org.xwiki.notifications.filters.NotificationFilterManager::getAllFilters(boolean) throws org.xwiki.notifications.NotificationException
  • Young API
    • Violation type:
      java.method.addedToInterface
    • Code:
      ## Old:
      null

      ## New:
      method java.util.stream.Stream<org.xwiki.notifications.filters.NotificationFilter> org.xwiki.notifications.filters.NotificationFilterManager::getEnabledFilters(java.util.Collection<org.xwiki.notifications.filters.NotificationFilter>, java.util.Map<java.lang.String, java.lang.Boolean>)
  • Young API
    • Violation type:
      java.method.returnTypeChanged
    • Code:
      ## Old:
      method java.util.Set<org.xwiki.notifications.filters.NotificationFilterPreference> org.xwiki.notifications.filters.NotificationFilterManager::getFilterPreferences(org.xwiki.model.reference.DocumentReference) throws org.xwiki.notifications.NotificationException

      ## New:
      method java.util.Collection<org.xwiki.notifications.filters.NotificationFilterPreference> org.xwiki.notifications.filters.NotificationFilterManager::getFilterPreferences(org.xwiki.model.reference.DocumentReference) throws org.xwiki.notifications.NotificationException
  • Young API
    • Violation type:
      java.method.parameterTypeChanged
    • Code:
      ## Old:
      parameter java.util.Set<org.xwiki.notifications.filters.NotificationFilterPreference> org.xwiki.notifications.filters.NotificationFilterManager::getFilterPreferences(===org.xwiki.model.reference.DocumentReference===, org.xwiki.notifications.filters.NotificationFilter) throws org.xwiki.notifications.NotificationException

      ## New:
      parameter java.util.stream.Stream<org.xwiki.notifications.filters.NotificationFilterPreference> org.xwiki.notifications.filters.NotificationFilterManager::getFilterPreferences(===java.util.Collection<org.xwiki.notifications.filters.NotificationFilterPreference>===, org.xwiki.notifications.filters.NotificationFilter)
  • Young API
    • Violation type:
      java.method.returnTypeChanged
    • Code:
      ## Old:
      method java.util.Set<org.xwiki.notifications.filters.NotificationFilterPreference> org.xwiki.notifications.filters.NotificationFilterManager::getFilterPreferences(org.xwiki.model.reference.DocumentReference, org.xwiki.notifications.filters.NotificationFilter) throws org.xwiki.notifications.NotificationException

      ## New:
      method java.util.stream.Stream<org.xwiki.notifications.filters.NotificationFilterPreference> org.xwiki.notifications.filters.NotificationFilterManager::getFilterPreferences(java.util.Collection<org.xwiki.notifications.filters.NotificationFilterPreference>, org.xwiki.notifications.filters.NotificationFilter)
  • Young API
    • Violation type:
      java.method.exception.checkedRemoved
    • Code:
      ## Old:
      method java.util.Set<org.xwiki.notifications.filters.NotificationFilterPreference> org.xwiki.notifications.filters.NotificationFilterManager::getFilterPreferences(org.xwiki.model.reference.DocumentReference, org.xwiki.notifications.filters.NotificationFilter) throws org.xwiki.notifications.NotificationException

      ## New:
      method java.util.stream.Stream<org.xwiki.notifications.filters.NotificationFilterPreference> org.xwiki.notifications.filters.NotificationFilterManager::getFilterPreferences(java.util.Collection<org.xwiki.notifications.filters.NotificationFilterPreference>, org.xwiki.notifications.filters.NotificationFilter)
  • Young API
    • Violation type:
      java.method.parameterTypeChanged
    • Code:
      ## Old:
      parameter java.util.Set<org.xwiki.notifications.filters.NotificationFilterPreference> org.xwiki.notifications.filters.NotificationFilterManager::getFilterPreferences(===org.xwiki.model.reference.DocumentReference===, org.xwiki.notifications.filters.NotificationFilter, org.xwiki.notifications.filters.NotificationFilterType) throws org.xwiki.notifications.NotificationException

      ## New:
      parameter java.util.stream.Stream<org.xwiki.notifications.filters.NotificationFilterPreference> org.xwiki.notifications.filters.NotificationFilterManager::getFilterPreferences(===java.util.Collection<org.xwiki.notifications.filters.NotificationFilterPreference>===, org.xwiki.notifications.filters.NotificationFilter, org.xwiki.notifications.filters.NotificationFilterType)
  • Young API
    • Violation type:
      java.method.returnTypeChanged
    • Code:
      ## Old:
      method java.util.Set<org.xwiki.notifications.filters.NotificationFilterPreference> org.xwiki.notifications.filters.NotificationFilterManager::getFilterPreferences(org.xwiki.model.reference.DocumentReference, org.xwiki.notifications.filters.NotificationFilter, org.xwiki.notifications.filters.NotificationFilterType) throws org.xwiki.notifications.NotificationException

      ## New:
      method java.util.stream.Stream<org.xwiki.notifications.filters.NotificationFilterPreference> org.xwiki.notifications.filters.NotificationFilterManager::getFilterPreferences(java.util.Collection<org.xwiki.notifications.filters.NotificationFilterPreference>, org.xwiki.notifications.filters.NotificationFilter, org.xwiki.notifications.filters.NotificationFilterType)
  • Young API
    • Violation type:
      java.method.exception.checkedRemoved
    • Code:
      ## Old:
      method java.util.Set<org.xwiki.notifications.filters.NotificationFilterPreference> org.xwiki.notifications.filters.NotificationFilterManager::getFilterPreferences(org.xwiki.model.reference.DocumentReference, org.xwiki.notifications.filters.NotificationFilter, org.xwiki.notifications.filters.NotificationFilterType) throws org.xwiki.notifications.NotificationException

      ## New:
      method java.util.stream.Stream<org.xwiki.notifications.filters.NotificationFilterPreference> org.xwiki.notifications.filters.NotificationFilterManager::getFilterPreferences(java.util.Collection<org.xwiki.notifications.filters.NotificationFilterPreference>, org.xwiki.notifications.filters.NotificationFilter, org.xwiki.notifications.filters.NotificationFilterType)
  • Young API
    • Violation type:
      java.method.parameterTypeChanged
    • Code:
      ## Old:
      parameter java.util.Set<org.xwiki.notifications.filters.NotificationFilterPreference> org.xwiki.notifications.filters.NotificationFilterManager::getFilterPreferences(===org.xwiki.model.reference.DocumentReference===, org.xwiki.notifications.filters.NotificationFilter, org.xwiki.notifications.filters.NotificationFilterType, org.xwiki.notifications.NotificationFormat) throws org.xwiki.notifications.NotificationException

      ## New:
      parameter java.util.stream.Stream<org.xwiki.notifications.filters.NotificationFilterPreference> org.xwiki.notifications.filters.NotificationFilterManager::getFilterPreferences(===java.util.Collection<org.xwiki.notifications.filters.NotificationFilterPreference>===, org.xwiki.notifications.filters.NotificationFilter, org.xwiki.notifications.filters.NotificationFilterType, org.xwiki.notifications.NotificationFormat)
  • Young API
    • Violation type:
      java.method.returnTypeChanged
    • Code:
      ## Old:
      method java.util.Set<org.xwiki.notifications.filters.NotificationFilterPreference> org.xwiki.notifications.filters.NotificationFilterManager::getFilterPreferences(org.xwiki.model.reference.DocumentReference, org.xwiki.notifications.filters.NotificationFilter, org.xwiki.notifications.filters.NotificationFilterType, org.xwiki.notifications.NotificationFormat) throws org.xwiki.notifications.NotificationException

      ## New:
      method java.util.stream.Stream<org.xwiki.notifications.filters.NotificationFilterPreference> org.xwiki.notifications.filters.NotificationFilterManager::getFilterPreferences(java.util.Collection<org.xwiki.notifications.filters.NotificationFilterPreference>, org.xwiki.notifications.filters.NotificationFilter, org.xwiki.notifications.filters.NotificationFilterType, org.xwiki.notifications.NotificationFormat)
  • Young API
    • Violation type:
      java.method.exception.checkedRemoved
    • Code:
      ## Old:
      method java.util.Set<org.xwiki.notifications.filters.NotificationFilterPreference> org.xwiki.notifications.filters.NotificationFilterManager::getFilterPreferences(org.xwiki.model.reference.DocumentReference, org.xwiki.notifications.filters.NotificationFilter, org.xwiki.notifications.filters.NotificationFilterType, org.xwiki.notifications.NotificationFormat) throws org.xwiki.notifications.NotificationException

      ## New:
      method java.util.stream.Stream<org.xwiki.notifications.filters.NotificationFilterPreference> org.xwiki.notifications.filters.NotificationFilterManager::getFilterPreferences(java.util.Collection<org.xwiki.notifications.filters.NotificationFilterPreference>, org.xwiki.notifications.filters.NotificationFilter, org.xwiki.notifications.filters.NotificationFilterType, org.xwiki.notifications.NotificationFormat)
  • Young API
    • Violation type:
      java.method.removed
    • Code:
      ## Old:
      method java.util.Set<org.xwiki.notifications.filters.NotificationFilter> org.xwiki.notifications.filters.NotificationFilterManager::getFilters(org.xwiki.model.reference.DocumentReference, org.xwiki.notifications.preferences.NotificationPreference) throws org.xwiki.notifications.NotificationException
  • Young API
    • Violation type:
      java.method.addedToInterface
    • Code:
      ## Old:
      null

      ## New:
      method java.util.stream.Stream<org.xwiki.notifications.filters.NotificationFilter> org.xwiki.notifications.filters.NotificationFilterManager::getFiltersRelatedToNotificationPreference(java.util.Collection<org.xwiki.notifications.filters.NotificationFilter>, org.xwiki.notifications.preferences.NotificationPreference)
  • Young API
    • Violation type:
      java.method.parameterTypeChanged
    • Code:
      ## Old:
      parameter java.util.Set<org.xwiki.notifications.filters.NotificationFilter> org.xwiki.notifications.filters.NotificationFilterManager::getToggleableFilters(===org.xwiki.model.reference.DocumentReference===) throws org.xwiki.notifications.NotificationException

      ## New:
      parameter java.util.stream.Stream<org.xwiki.notifications.filters.NotificationFilter> org.xwiki.notifications.filters.NotificationFilterManager::getToggleableFilters(===java.util.Collection<org.xwiki.notifications.filters.NotificationFilter>===)
  • Young API
    • Violation type:
      java.method.returnTypeChanged
    • Code:
      ## Old:
      method java.util.Set<org.xwiki.notifications.filters.NotificationFilter> org.xwiki.notifications.filters.NotificationFilterManager::getToggleableFilters(org.xwiki.model.reference.DocumentReference) throws org.xwiki.notifications.NotificationException

      ## New:
      method java.util.stream.Stream<org.xwiki.notifications.filters.NotificationFilter> org.xwiki.notifications.filters.NotificationFilterManager::getToggleableFilters(java.util.Collection<org.xwiki.notifications.filters.NotificationFilter>)
  • Young API
    • Violation type:
      java.method.exception.checkedRemoved
    • Code:
      ## Old:
      method java.util.Set<org.xwiki.notifications.filters.NotificationFilter> org.xwiki.notifications.filters.NotificationFilterManager::getToggleableFilters(org.xwiki.model.reference.DocumentReference) throws org.xwiki.notifications.NotificationException

      ## New:
      method java.util.stream.Stream<org.xwiki.notifications.filters.NotificationFilter> org.xwiki.notifications.filters.NotificationFilterManager::getToggleableFilters(java.util.Collection<org.xwiki.notifications.filters.NotificationFilter>)
  • Young API
    • Violation type:
      java.method.returnTypeChanged
    • Code:
      ## Old:
      method java.util.Set<org.xwiki.notifications.filters.NotificationFilter> org.xwiki.notifications.filters.script.NotificationFiltersScriptService::getFilters() throws org.xwiki.notifications.NotificationException

      ## New:
      method java.util.Collection<org.xwiki.notifications.filters.NotificationFilter> org.xwiki.notifications.filters.script.NotificationFiltersScriptService::getFilters() throws org.xwiki.notifications.NotificationException
  • Young API
    • Violation type:
      java.method.exception.checkedAdded
    • Code:
      ## Old:
      method boolean org.xwiki.notifications.filters.watch.WatchedEntityReference::isWatched(org.xwiki.model.reference.DocumentReference)

      ## New:
      method boolean org.xwiki.notifications.filters.watch.WatchedEntityReference::isWatched(org.xwiki.model.reference.DocumentReference) throws org.xwiki.notifications.NotificationException
  • Young API
    • Violation type:
      java.method.numberOfParametersChanged
    • Code:
      ## Old:
      method void org.xwiki.notifications.filters.watch.WatchedLocationReference::<init>(org.xwiki.model.reference.EntityReference, java.lang.String, org.xwiki.model.reference.EntityReferenceResolver<java.lang.String>, org.xwiki.notifications.filters.internal.scope.ScopeNotificationFilterLocationStateComputer)

      ## New:
      method void org.xwiki.notifications.filters.watch.WatchedLocationReference::<init>(org.xwiki.model.reference.EntityReference, java.lang.String, org.xwiki.model.reference.EntityReferenceResolver<java.lang.String>, org.xwiki.notifications.filters.internal.scope.ScopeNotificationFilterLocationStateComputer, org.xwiki.notifications.filters.NotificationFilterManager)
  • Young API
    • Violation type:
      java.method.exception.checkedAdded
    • Code:
      ## Old:
      method boolean org.xwiki.notifications.filters.watch.WatchedLocationReference::isWatched(org.xwiki.model.reference.DocumentReference)

      ## New:
      method boolean org.xwiki.notifications.filters.watch.WatchedLocationReference::isWatched(org.xwiki.model.reference.DocumentReference) throws org.xwiki.notifications.NotificationException
  • Young API
    • Violation type:
      java.method.numberOfParametersChanged
    • Code:
      ## Old:
      method void org.xwiki.notifications.filters.watch.WatchedUserReference::<init>(java.lang.String, org.xwiki.notifications.filters.internal.user.EventUserFilterPreferencesGetter)

      ## New:
      method void org.xwiki.notifications.filters.watch.WatchedUserReference::<init>(java.lang.String, org.xwiki.notifications.filters.internal.user.EventUserFilterPreferencesGetter, org.xwiki.notifications.filters.NotificationFilterManager)
  • Young API
    • Violation type:
      java.method.exception.checkedAdded
    • Code:
      ## Old:
      method boolean org.xwiki.notifications.filters.watch.WatchedUserReference::isWatched(org.xwiki.model.reference.DocumentReference)

      ## New:
      method boolean org.xwiki.notifications.filters.watch.WatchedUserReference::isWatched(org.xwiki.model.reference.DocumentReference) throws org.xwiki.notifications.NotificationException
  • Young API
    • Violation type:
      java.method.addedToInterface
    • Code:
      ## Old:
      null

      ## New:
      method java.util.Map<java.lang.String, java.lang.Boolean> org.xwiki.notifications.filters.NotificationFilterManager::getToggeableFilterActivations(org.xwiki.model.reference.DocumentReference) throws org.xwiki.notifications.NotificationException
  • Young API
    • Violation type:
      java.method.numberOfParametersChanged
    • Code:
      ## Old:
      method org.xwiki.notifications.filters.NotificationFilter.FilterPolicy org.xwiki.notifications.filters.NotificationFilter::filterEvent(org.xwiki.eventstream.Event, org.xwiki.model.reference.DocumentReference, org.xwiki.notifications.NotificationFormat)

      ## New:
      method org.xwiki.notifications.filters.NotificationFilter.FilterPolicy org.xwiki.notifications.filters.NotificationFilter::filterEvent(org.xwiki.eventstream.Event, org.xwiki.model.reference.DocumentReference, java.util.Collection<org.xwiki.notifications.filters.NotificationFilterPreference>, org.xwiki.notifications.NotificationFormat)
  • Young API
    • Violation type:
      java.method.addedToInterface
    • Code:
      ## Old:
      null

      ## New:
      method java.util.Collection<java.lang.String> org.xwiki.notifications.filters.watch.WatchedEntitiesManager::getWatchedUsers(org.xwiki.model.reference.DocumentReference) throws org.xwiki.notifications.NotificationException
  • Young API
    • Violation type:
      java.method.numberOfParametersChanged
    • Code:
      ## Old:
      method java.util.Set<org.xwiki.notifications.filters.NotificationFilter> org.xwiki.notifications.filters.NotificationFilterManager::getAllFilters(org.xwiki.model.reference.DocumentReference) throws org.xwiki.notifications.NotificationException

      ## New:
      method java.util.Collection<org.xwiki.notifications.filters.NotificationFilter> org.xwiki.notifications.filters.NotificationFilterManager::getAllFilters(org.xwiki.model.reference.DocumentReference, boolean) throws org.xwiki.notifications.NotificationException
  • Young API
    • Violation type:
      java.method.returnTypeChanged
    • Code:
      ## Old:
      method java.util.Set<org.xwiki.notifications.filters.NotificationFilter> org.xwiki.notifications.filters.NotificationFilterManager::getAllFilters(org.xwiki.model.reference.DocumentReference) throws org.xwiki.notifications.NotificationException

      ## New:
      method java.util.Collection<org.xwiki.notifications.filters.NotificationFilter> org.xwiki.notifications.filters.NotificationFilterManager::getAllFilters(org.xwiki.model.reference.DocumentReference, boolean) throws org.xwiki.notifications.NotificationException
  • Young API
    • Violation type:
      java.method.addedToInterface
    • Code:
      ## Old:
      null

      ## New:
      method void org.xwiki.notifications.filters.NotificationFilterManager::setStartDateForUser(org.xwiki.model.reference.DocumentReference, java.util.Date) throws org.xwiki.notifications.NotificationException
  • Young API
    • Violation type:
      java.method.addedToInterface
    • Code:
      ## Old:
      null

      ## New:
      method void org.xwiki.notifications.filters.NotificationFilterPreferenceProvider::setStartDateForUser(org.xwiki.model.reference.DocumentReference, java.util.Date) throws org.xwiki.notifications.NotificationException

Credits

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

Adel Atallah
Alex Cotiugă
Arun Pattni
Ecaterina Moraru (Valica)
Guillaume Delhumeau
Marius Dumitru Florea
Pascal BASTIEN
Stéphane Laurière
Thomas Mortagne
Vincent Massol
Vivek Iyer

Tags:
Created by Vincent Massol on 2018/05/18
   

Get Connected