Release Notes for XWiki 5.3

Version 4.18 by Marius Dumitru Florea on 2013/12/13

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.

<insert description of release here>

New and Noteworthy (since XWiki 5.2.2)

Full list of issues fixed and Dashboard for 5.3.

Solr Search Improvements

Search Results Display

We improved the way attachments, objects and object properties are displayed in the list of search results.

searchAttachmentSort.png

Attachment search results are now displayed in the same way attacments are displayed in the Attachments bottom tab from any wiki page. We also added support for sorting attachment search results based on the file name, file size, uploader and upload date.

searchObjectResult.png

For object results we now display the XClass name instead of the document title.

searchObjectPropertyResult.png

Object property results show the XClass name and the property name instead of the document title.

Search Facets

The display of some of the search facets has been improved. The Author and Creator facets now show the user full name, alias and avatar.

search-userFacet.png

The wiki facet displays the wiki pretty name instead of the wiki identifier.

search-wikiFacet.png

The language facet displays the full language name and country (when applicable) in the current locale.

search-languageFacet.png

The number of displayed facet values is limited to 5 by default but you can see the rest of the values by clicking on the link following the facet values (each click will show 5 more values).

The date facets (last modification date and creation date) have been improved to display a list of predefined date intervals, with the possibility to specify a custom date interval.

search-dateFacet.png

When selected, the date facet displays the end points of the date interval. If you specify only the start/end date then the interval will include all dates after/before the specified date.

search-dateFacet-selected.png

RSS Feed

We added a RSS feed for Solr search results. You can find the link on the default search page after the list of results. The feed provides the most recent results that match the current search query and filters. It contains the same type of information that was included in the Lucene search RSS feed.

See the Solr Search Application documentation for details.

WikiStream improvements

Allow exporting Large Wikis by default

The WikiStream module is now used by default in the standard export action, thus allowing exporting wikis with lots of content.

Note that you can still put back the old implementation in case you find a problem by setting xwiki.action.export.xar.usewikistream=0 at the end of your xwiki.cfg file.

New WikiStream application

A new generic UI has been introduced to manipulate WikiStream modules easily. See XWiki Platform - WikiStream - UI for more details.

Script service improvements

  • added a properties converter for WikiStreamType to make easier to manipulate it from Velocity
  • made APIs asynchronous

Confluence XML input module for WikiStream

A new WikiStream input module has been added to parse Confluence backup packages.

New XHTML based Confluence syntax

Since 4.0 Confluence moved to a XHTML based syntax for page content. So in order to import recent version of Confluences a parser for this syntax had to be written first.

Import large XARs

It's possible to enable the use of new WikiStream framework in standard import action (used in the standard import UI for example). Among other things it allows importing a wiki XAR of pretty much any size.

WikiStream is too young to be enabled by default and will require heavy testing. In the meantime you can try it by uncommenting #xwiki.action.import.xar.usewikistream=1 at the end of xwiki.cfg file.

New Syntax Guide

The Syntax Guide has been completely rewritten to better support growing number of syntaxes and make it easier to add documentation other syntaxes. For now it includes xwiki/1.0, xwiki/2.0 and xwiki/2.1.

helpui221.png

helpui222.png

Multi-Wiki

  • The "create wiki" wizard now offers the ability to create a new wiki template:

    wizard-new-template.png

  • It is also possible to select the "user scope" of the new wiki. The user scope determines if local or global users are enabled, or both:

    wizard-user-scope.png

  • When the user creates a wiki from a template, a new step is displayed in the wizard, while the system is provisioning the wiki:

    wizard-provisioning.png

  • The "users" section in the administration of a (sub)wiki gives the opportunity to change the user scope setting, and the membership type too:

    admin-wiki-users.png

  • In the "wikis" section of the administration of the main wiki, the created templates are displayed:

    admin-wiki-template.png

  • It is also possible to edit wikis directly from the wiki index.
  • All the documentation is available on the application page.

Miscellaneous

Changes regarding the multi-wiki support:

  • When creating an empty wiki you now get the Distribution Wizard even when ALLINONE upgrade is selected (this used to disable the Distribution Wizard on subwikis)
  • When a new wiki is created from the Add Wiki Wizard, its Activity Stream is now empty.
  • If you want to change the wiki owner or the prettyname of the wiki, you cannot go to the "Wiki" section of the Wiki Administration anymore since it's been removed for the moment due to some technical issue. Instead, go to the Wiki Index and then click on the "edit" action corresponding to the wiki for which to update the settings.
  • Deleted users do not appear anymore in the "Top Active Members" list in the wiki dashboard.

Other changes:

  • The Statistics Application now has an entry point in the Applications Panel (only visible by Admins by default):

    statsentry.png

  • The Scheduler Application now has an entry point in the Applications Panel (only visible by Admins by default):

    schedulerentry.png

  • We're now officially not supporting saving Servlet Session in URL (a.k.a URL Rewriting). This means that if you want to remain logged on in XWiki you need to enable cookies (See why jsessionid are considered harmful here and here).
  • By default only results from XE instance pings and for non-snapshot versions are counted in Active Installs.
  • Added new configuration parameter for the Link Checker: rendering.transformation.linkchecker.excludedReferencePatterns (See Reference documentation).
  • Some XSS fixes.

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

For Developers

Search for Documents Matching Specific Values in Multiple XObject Properties

Unlike a relational database, the Solr index has a single 'table'. So normally you index just one type of entity. Still, in XWiki you can search for documents, attachments, objects and object properties (see the 'Result Type' advanced search option). This is possible because we use a 'type' column in the index. So basically we index multiple types of entities, and we use the 'type' column to determine the type of entity an index row corresponds to. The entities are related though (the documents have objects and attachments, the objects have properties) and so you often need to put constraints on different entity types when performing a search (e.g. search for documents that have an object of a specific type with a property that matches a given value). In a relational database when you have the information spread in multiple places (tables) you do joins. Solr supports joins but the query syntax is complex and not as powerful as the SQL version. Plus, each join means index X index where X is the cartesian product, which can be expensive if the index is very large.

In this version we removed the need to perform joins when searching for documents matching specific values in multiple XObject properties. We achieved this by indexing XObject data on the document rows also. Of course, this means the index will have redundant information (XObject data is duplicated on document and object rows), but we believe this is not a problem and the increase in the Solr index size pays off when you take into the accout the search speed and the simplified query syntax.

Here's a short summary of what we implemented:

  • We're using an encoding scheme similar to the URL-encoding to support special characters in the Solr index field names. We didn't use directly the URL-encoding because '+' (plus) and '%' (percent) have special meaning in Solr query syntax. Also, we didn't want to encode Unicode letters.
    E.g. "Somé Spâce.Bob's Claß" is encoded as "Somé$20Spâce.Bob$27s$20Claß"
  • We wanted to be able to extract the class and property reference from a field name in order to display the location where the search text has been found. We couldn't use the default class / property reference serialization syntax because '\' and '^' have special meaning in the Solr query syntax. So we implemented a simple serialization syntax that uses only '.' as entity separator and the dot is escaped by repeating it.
    E.g. "wiki:Some\.Space.My\.Class^color" is serialized as "wiki.Some..Space.My..Class.color"
  • We added the following fields to a document's index:
    • object : all types of objects found on the indexed document, e.g. ['Blog.BlogPostClass', 'XWiki.TagClass']
    • object.Space.Class : collects the values from all the properties of Space.Class objects found on the indexed document
    • property.Space.Class.propName : indexes the values of Space.Class^propName (multiple values if there are multiple objects of type Space.Class)
  • object.* and property.* are multilingual fields so they are indexed in multiple languages. We added support for dynamic aliases (for dynamic fields) so we can write:
    object:Blog.BlogPostClass AND property.Blog.BlogPostClass.title:text AND object.XWiki.TagClass:news

    and it will be expanded into

    object:Blog.BlogPostClass AND
    (property.Blog.BlogPostClass.title_en:text OR property.Blog.BlogPostClass.title_fr:text OR ...) AND
    (object.XWiki.TagClass_en:news OR object.XWiki.TagClass_fr:news OR ...)

    Note that Solr doesn't support dynamic fields as default fields, i.e. as fields that are matched when you search for free text (without field:value in the query). This is not a problem for the search results, as dynamic fields like object.* and property.* are copied and aggregated in objcontent which is a default field. The issue is that we can't know what is exactly the XClass property that was matched by a free text search, we just know that the text was found inside an object.

  • We also added support for indexing non-string XObject properties based on their type. This means Boolean, Number (int, long, float, double) and Date properties are now correctly indexed (on document rows) and we can write something like:
    property.Blog.BlogPostClass.publishDate:[NOW-1MONTH TO NOW]

Faceting and Sorting on Object Properties

We added support for faceting and sorting on XObject properties. See the Solr Search Query API for details.

See also the Solr schema design for the full list of fields that can be used in search queries.

Search for Documents Matching Specific Attachment Meta Data

Another important search use case is to find documents matching specific attachment meta data. For instance, you could be looking for a blog post that has a PDF file attached. Or you may be searching for a wiki page where you recently uploaded an image. Finding the documents tagged with 'News' and which have large attachments is another example.

Previously, we were indexing attachment data on separate index rows. As with XObjects, you had to use joins in the Solr search syntax in order to match both document and attachment rows in the search index. Starting with this version we index attachment data on document rows also. Obviously this means the attachment data is now duplicated but we think the increase of the index size is worth the improved search speed and the simplified query syntax:

object:Blog.BlogPostClass AND mimetype:"application/pdf" AND mistake

title:profile attdate:[NOW-3DAYS TO NOW] AND mimetype:image\/*

property.XWiki.TagClass.tags:"News" AND attsize:[50000 TO *]

See Solr Schema Design for the list of attachment fields that can be used in the Solr search query.

DocumentReference Locale now taken into account in XWiki#exists and XWiki#getDocument

You can now use XWiki#exist method to check for some translation existence too, before that the only way was to either load the XWikiDocument or write your own XWQL or HQL query.

XWiki#getDocument has been modified accordingly too to be consistent so you don't need to go through XWikiDocument#getTranslatedDocument anymore.

It also mean that you need to be careful of what Locale is in the DocumentReference with those APIs now.

New Extension Manager APIs

Extension sub script services

The extension service now expose an extension point for extension related script service so that it's used as entry point for all of them.

By default the following are provided:

  • $services.extension.core (for core extensions APIs)
  • $services.extension.local (for local extensions APIs)
  • $services.extension.installed (for installed extensions APIs)
  • $services.extension.xar (for XAR extension APIS)

Search for installed extension in a specific namespace

The following method has been added org.xwiki.extension.repository.InstalledExtensionRepository:

    /**
     * Search installed extensions based of the provided pattern and only in the passed namespace.
     * <p>
     * The pattern is a simple character chain.
     *
     * @param pattern the pattern to search
     * @param namespace the namespace where to search
     * @param offset the offset from where to start returning search results
     * @param nb the maximum number of search results to return
     * @return the found extensions descriptors, empty list if nothing could be found
     * @throws SearchException error when trying to search provided pattern
     * @since 5.3M1
     */

    IterableResult<Extension> searchInstalledExtensions(String pattern, String namespace, int offset, int nb) throws SearchException;

XWiki Enterprise Archetype

A new archetype is now available to easily create your own product based on XWiki Enterprise. To use:

mvn archetype:generate \
 -DarchetypeArtifactId=xwiki-enterprise-archetype \
 -DarchetypeGroupId=org.xwiki.enterprise \
 -DarchetypeVersion=5.3-milestone-1

XAR plugin improvements

The XAR plugin now provides the ability to change values in the XML pages. For example:

<plugin>
 <groupId>org.xwiki.commons</groupId>
 <artifactId>xwiki-commons-tool-xar-plugin</artifactId>
 <configuration>
   <transformations>
     <transformation>
       <file>Blog/WebHome.xml</file>
       <xpath>/xwikidoc/object/property/itemsPerPage</xpath>
       <value>100</value>
     </transformation>
     <transformation>
       <artifact>org.xwiki.platform:xwiki-platform-administration-ui</artifact>
       <file>XWiki/XWikiPreferences.xml</file>
       <xpath>/xwikidoc/object/property/colorTheme</xpath>
       <value>ColorThemes.Mint</value>
     </transformation>
   </transformations>
 </configuration>
</plugin>

Fold Events

A new kind of event is now available. An event tagged as "Fold" can be sent by a task that generates some events during its execution. Then, these generated events can be seen as children of the main task. In addition, the Activity Stream will not record these child events.

More documentation available on the Observation Module page.

Multi-Wiki

  • The modules xwiki-platform-wiki-manager and wiki-platform-workspaces are now replaced by the module xwiki-platform-wiki, that now manages how (sub)wikis are created and how users can access to them.

Deprecated and Retired projects

Upgrades

The following dependencies have been upgraded:

Miscellaneous

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:

BrowserStatus
Chrome30.pngGoogle Chrome 31Jira Tickets Marked as Fixed in the Release Notes
Firefox30.pngMozilla Firefox 26Not Tested
IE30.pngInternet Explorer 8Not Tested
IE30.pngInternet Explorer 9Not Tested

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

DatabaseStatus
hypersql.pngHyperSQL 2.3.0Jira Tickets Marked as Fixed in the Release Notes
mysql.pngMySQL 5.6.10Not Tested
oracle.pngOracle 11.2Not Tested
postgresql.pngPostgreSQL 9.2.4Not 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.

Solr Search Index

We made important changes to the Solr schema in this release and unfortunately we don't have support for automatic Solr search index migration at this point. If you upgrade from XWiki 4.3 Milestone 2 or greater then you have to delete the 'solr' folder from the configured permanent directory of your XWiki instance. The Solr index will be recreated automatically and the entire wiki/farm will be re-indexed after a server restart.

The following index fields are now multiValued: class, filename, mimetype and attcontent. The reason is because these fields are now used also on document index rows, and a document can have multiple XObjects and multiple attachments. This is a consequence of the fact that we now index XObject and attachment data on document rows to avoid the need for using joins in the Solr query syntax when matching documents with specific XObjects and attachments. You'll have to update your code like this:

## Before
#set ($classFullName = $searchResult.get('class'))
##
## Now
#set ($classFullName = $searchResult.get('class').get(0))

API Breakages

The following APIs were modified since XWiki 5.2.2:

  • Requesting a dependency without indicating the namespace does not really make sense. This interface is not really supposed to be implemented anyway.
org.xwiki.extension.ExtensionManager: Method 'public org.xwiki.extension.Extension resolveExtension(org.xwiki.extension.ExtensionDependency, java.lang.String)' has been added to an interface
  • Needed to filter search by namespace. This interface is not really supposed to be implemented anyway.
org.xwiki.extension.repository.InstalledExtensionRepository: Method 'public org.xwiki.extension.repository.result.IterableResult searchInstalledExtensions(java.lang.String, java.lang.String, int, int)' has been added to an interface
  • Young API. Not supposed to be implemented from outside.
org.xwiki.filter.xml.parser.XMLParserFactory: Method 'public javax.xml.stream.XMLEventWriter createXMLEventWriter(java.lang.Object, org.xwiki.filter.xml.XMLConfiguration)' has been added to an interface
org.xwiki.filter.xml.serializer.XMLSerializerFactory: Method 'public java.lang.Object createSerializer(java.lang.Class[], javax.xml.transform.Result, org.xwiki.filter.xml.XMLConfiguration)' has been added to an interface
  • Young API. Not supposed to be implemented from outside.
org.xwiki.filter.FilterDescriptorManager: Method 'public java.lang.Object createCompositeFilter(java.lang.ClassLoader, java.lang.Object[])' has been added to an interface
org.xwiki.filter.FilterDescriptorManager: Method 'public java.lang.Object createFilterProxy(java.lang.Object, java.lang.ClassLoader, java.lang.Class[])' has been added to an interface
  • Young API that has been refactored to introduce the new Resource module.
org.xwiki.url.AbstractXWikiURL: Class org.xwiki.url.AbstractXWikiURL removed
org.xwiki.url.URLCreationException: Class org.xwiki.url.URLCreationException removed
org.xwiki.url.UnsupportedURLException: Class org.xwiki.url.UnsupportedURLException removed
org.xwiki.url.XWikiEntityURL: Class org.xwiki.url.XWikiEntityURL removed
org.xwiki.url.XWikiURL: Class org.xwiki.url.XWikiURL removed
org.xwiki.url.XWikiURLFactory: Class org.xwiki.url.XWikiURLFactory removed
org.xwiki.url.XWikiURLManager: Class org.xwiki.url.XWikiURLManager removed
org.xwiki.url.XWikiURLSerializer: Class org.xwiki.url.XWikiURLSerializer removed
org.xwiki.url.XWikiURLType: Class org.xwiki.url.XWikiURLType removed
  • XWikiURL (now Resource) should only be in the Execution Context and not in the Request.
org.xwiki.container.servlet.ServletRequest: Method 'public org.xwiki.url.XWikiURL getURL()' has been removed
org.xwiki.container.servlet.ServletRequest: Method 'public void setXWikiURL(org.xwiki.url.XWikiURL)' has been removed
org.xwiki.container.portlet.PortletRequest: Method 'public org.xwiki.url.XWikiURL getURL()' has been removed
org.xwiki.container.portlet.PortletRequest: Method 'public void setXWikiURL(org.xwiki.url.XWikiURL)' has been removed
org.xwiki.container.Request: Field XWIKI_URL has been removed, but it was previously a constant
  • Lots of refactoring in WikiStream.
org.xwiki.wikistream.xml.input.source.SourceInputSource: Class org.xwiki.wikistream.xml.input.source.SourceInputSource removed
org.xwiki.wikistream.WikiStream: Class org.xwiki.wikistream.WikiStream removed
org.xwiki.wikistream.descriptor.DefaultWikiStreamBeanParameterDescriptor: Method 'public java.lang.reflect.Type getPropertyType()' has been removed
org.xwiki.wikistream.descriptor.WikiStreamPropertyDescriptor: Method 'public java.lang.reflect.Type getPropertyType()' has been removed
org.xwiki.wikistream.descriptor.WikiStreamPropertyDescriptor: Method 'public java.lang.reflect.Type getType()' has been added to an interface
org.xwiki.wikistream.filter.FarmFilter: Class org.xwiki.wikistream.filter.FarmFilter removed
org.xwiki.wikistream.filter.WikiAttachmentFilter: Class org.xwiki.wikistream.filter.WikiAttachmentFilter removed
org.xwiki.wikistream.filter.WikiClassFilter: Class org.xwiki.wikistream.filter.WikiClassFilter removed
org.xwiki.wikistream.filter.WikiClassPropertyFilter: Class org.xwiki.wikistream.filter.WikiClassPropertyFilter removed
org.xwiki.wikistream.filter.WikiDocumentFilter: Class org.xwiki.wikistream.filter.WikiDocumentFilter removed
org.xwiki.wikistream.filter.WikiFilter: Class org.xwiki.wikistream.filter.WikiFilter removed
org.xwiki.wikistream.filter.WikiObjectFilter: Class org.xwiki.wikistream.filter.WikiObjectFilter removed
org.xwiki.wikistream.filter.WikiObjectPropertyFilter: Class org.xwiki.wikistream.filter.WikiObjectPropertyFilter removed
org.xwiki.wikistream.filter.WikiSpaceFilter: Class org.xwiki.wikistream.filter.WikiSpaceFilter removed
org.xwiki.wikistream.input.BeanInputWikiStreamFactory: Removed org.xwiki.wikistream.WikiStream from the set of implemented interfaces
org.xwiki.wikistream.input.BeanInputWikiStreamFactory: Return type of method 'public org.xwiki.wikistream.input.InputWikiStream createInputWikiStream(java.lang.Object)' has been changed to org.xwiki.wikistream.internal.input.BeanInputWikiStream
org.xwiki.wikistream.input.InputWikiStreamFactory: Removed org.xwiki.wikistream.WikiStream from the set of implemented interfaces
org.xwiki.wikistream.output.BeanOutputWikiStreamFactory: Removed org.xwiki.wikistream.WikiStream from the set of implemented interfaces
org.xwiki.wikistream.output.BeanOutputWikiStreamFactory: Method 'public org.xwiki.wikistream.output.OutputWikiStream creaOutputWikiStream(java.lang.Object)' has been removed
org.xwiki.wikistream.output.BeanOutputWikiStreamFactory: Method 'public org.xwiki.wikistream.internal.output.BeanOutputWikiStream createOutputWikiStream(java.lang.Object)' has been added to an interface
org.xwiki.wikistream.output.OutputWikiStreamFactory: Removed org.xwiki.wikistream.WikiStream from the set of implemented interfaces
org.xwiki.wikistream.output.OutputWikiStreamFactory: Method 'public org.xwiki.wikistream.output.OutputWikiStream creaOutputWikiStream(java.util.Map)' has been removed
org.xwiki.wikistream.output.OutputWikiStreamFactory: Method 'public org.xwiki.wikistream.output.OutputWikiStream createOutputWikiStream(java.util.Map)' has been added to an interface
org.xwiki.wikistream.type.WikiStreamType: Removed field XWIKI_XAR
org.xwiki.wikistream.instance.input.AbstractInstanceInputEventGenerator: Removed org.xwiki.wikistream.filter.FarmFilter from the set of implemented interfaces
org.xwiki.wikistream.instance.input.AbstractInstanceInputEventGenerator: Removed org.xwiki.wikistream.filter.WikiDocumentFilter from the set of implemented interfaces
org.xwiki.wikistream.instance.input.AbstractInstanceInputEventGenerator: Removed org.xwiki.wikistream.filter.WikiFilter from the set of implemented interfaces
org.xwiki.wikistream.instance.input.AbstractInstanceInputEventGenerator: Removed org.xwiki.wikistream.filter.WikiSpaceFilter from the set of implemented interfaces
org.xwiki.wikistream.instance.input.EntityEventGenerator: Method 'public org.xwiki.wikistream.descriptor.WikiStreamDescriptor getDescriptor()' has been added to an interface
org.xwiki.wikistream.instance.input.InstanceInputEventGenerator: Removed org.xwiki.wikistream.filter.FarmFilter from the set of implemented interfaces
org.xwiki.wikistream.instance.input.InstanceInputEventGenerator: Removed org.xwiki.wikistream.filter.WikiDocumentFilter from the set of implemented interfaces
org.xwiki.wikistream.instance.input.InstanceInputEventGenerator: Removed org.xwiki.wikistream.filter.WikiFilter from the set of implemented interfaces
org.xwiki.wikistream.instance.input.InstanceInputEventGenerator: Removed org.xwiki.wikistream.filter.WikiSpaceFilter from the set of implemented interfaces
org.xwiki.wikistream.instance.input.InstanceInputEventGenerator: Method 'public org.xwiki.wikistream.descriptor.WikiStreamDescriptor getDescriptor()' has been added to an interface
org.xwiki.wikistream.instance.input.InstanceInputEventGenerator: Method 'public java.util.Collection getFilterInterfaces()' has been added to an interface
org.xwiki.wikistream.instance.input.InstanceInputEventGenerator: Method 'public void setWikiDocumentParameters(java.lang.String, org.xwiki.filter.FilterEventParameters)' has been added to an interface
org.xwiki.wikistream.instance.input.InstanceInputEventGenerator: Method 'public void setWikiFarmParameters(org.xwiki.filter.FilterEventParameters)' has been added to an interface
org.xwiki.wikistream.instance.input.InstanceInputEventGenerator: Method 'public void setWikiParameters(java.lang.String, org.xwiki.filter.FilterEventParameters)' has been added to an interface
org.xwiki.wikistream.instance.input.InstanceInputEventGenerator: Method 'public void setWikiSpaceParameters(java.lang.String, org.xwiki.filter.FilterEventParameters)' has been added to an interface
org.xwiki.wikistream.instance.output.OutputInstanceWikiStreamFactory: Removed org.xwiki.wikistream.WikiStream from the set of implemented interfaces
org.xwiki.wikistream.instance.script.InstanceWikiStreamScriptService: Method 'public void export(org.xwiki.wikistream.type.WikiStreamType, org.xwiki.wikistream.instance.internal.input.InstanceInputProperties, java.util.Map)' has been removed
org.xwiki.wikistream.instance.script.InstanceWikiStreamScriptService: Return type of method 'public org.xwiki.wikistream.instance.internal.input.InstanceInputProperties newInstanceInputProperties()' has been changed to org.xwiki.wikistream.instance.input.InstanceInputProperties
org.xwiki.wikistream.script.WikiStreamScriptService: Method 'public void convert(org.xwiki.wikistream.type.WikiStreamType, java.util.Map, org.xwiki.wikistream.type.WikiStreamType, java.util.Map)' has been removed
org.xwiki.wikistream.script.WikiStreamScriptService: Method 'public org.xwiki.wikistream.input.InputWikiStream createInputWikiStream(org.xwiki.wikistream.type.WikiStreamType, java.util.Map)' has been removed
org.xwiki.wikistream.script.WikiStreamScriptService: Method 'public org.xwiki.wikistream.output.OutputWikiStream createOutputWikiStream(org.xwiki.wikistream.type.WikiStreamType, java.util.Map)' has been removed
Tags:
   

Get Connected