Last modified by Thomas Mortagne on 2017/03/24

<
From version < 42.2 >
edited by Eduard Moraru
on 2012/11/13
To version < 43.3 >
edited by Eduard Moraru
on 2012/11/13
>
Change comment: Summary

Summary

Details

Page properties
Content
... ... @@ -4,8 +4,10 @@
4 4  
5 5  This is the release notes for XWiki Platform, XWiki Enterprise and XWiki Enterprise Manager. They share the same release notes as they are released together and have the same version.
6 6  
7 -<insert description of release here>
7 +This is the second and last milestone of the XWiki 4.3 version ([[Roadmap>>xwiki:Main.Roadmap]]).
8 8  
9 +This release brings a new and experimental Solr Search engine, new default date/user/group pickers, a new localization module allowing applications to register translations, REST API improvements and various other developer improvements.
10 +
9 9  = New and Noteworthy (since XWiki 4.3 Milestone 1) =
10 10  
11 11  == Experimental Solr based search engine ==
... ... @@ -16,7 +16,7 @@
16 16  
17 17  {{image reference="solrSearchFilters.png"/}}
18 18  
19 -The new engine has it's own index, separate from the Lucene one, which is stored by default in the ##<permanent directory>/solr## folder. In the same folder you can also access Solr's configuration files together with the index's schema.xml which you can tweek to achieve better results. To change this folder's location, you can either pass the ##-Dsolr.solr.home## system property when you start the application container (tomcat/jetty/etc.) or you can set the ##search.solr.home## property in ##WEB-INF/xwiki.preferences##.
21 +The new engine has it's own index, separate from the Lucene one, which is stored by default in the ##<permanent directory>/solr## folder. In the same folder you can also access Solr's configuration files together with the index's schema.xml which you can tweak to achieve better results. To change this folder's location, you can either pass the ##-Dsolr.solr.home## system property when you start the application container (tomcat/jetty/etc.) or you can set the ##search.solr.home## property in ##WEB-INF/xwiki.preferences##.
20 20  
21 21  For now, indexing is done only __manually__ by using the Search Administration UI. Because of this, in order to get any search results, you have to go to ##Administration > Applications > Search## and index/reindex the wiki. Any changes in the content of the wiki will not be searchable until you manually reindex. This limitation will be removed in future versions, once the feature matures.
22 22  
... ... @@ -190,7 +190,6 @@
190 190  
191 191  * Many REST API module classes that were not meant to be public have been moved to internal package.(((
192 192  {{code language="none"}}
193 -org.xwiki.rest.model.jaxb.Page: Removed field version
194 194  org.xwiki.rest.ComponentsObjectFactory: Class org.xwiki.rest.ComponentsObjectFactory removed
195 195  org.xwiki.rest.Constants: Field ALLOWED_VALUES_ATTRIBUTE_NAME has been removed, but it was previously a constant
196 196  org.xwiki.rest.Constants: Field RELEASABLE_COMPONENT_REFERENCES has been removed, but it was previously a constant
... ... @@ -273,6 +273,12 @@
273 273  {{/code}}
274 274  )))
275 275  
277 +* The version field has been moved from Page to PageSummary which is the superclass of Page(((
278 +{{code language="none"}}
279 +org.xwiki.rest.model.jaxb.Page: Removed field version
280 +{{/code}}
281 +)))
282 +
276 276  * Added methods for creating workspaces and retrieving workspace templates.(((
277 277  {{code language="none"}}
278 278  org.xwiki.workspace.WorkspaceManager: Method 'public com.xpn.xwiki.plugin.wikimanager.doc.XWikiServer createWorkspace(java.lang.String, com.xpn.xwiki.plugin.wikimanager.doc.XWikiServer, java.lang.String)' has been added to an interface
... ... @@ -279,3 +279,97 @@
279 279  org.xwiki.workspace.WorkspaceManager: Method 'public java.util.List getWorkspaceTemplates()' has been added to an interface
280 280  {{/code}}
281 281  )))
289 +
290 +* The plugin has been moved to its own module. Not a breakage.(((
291 +{{code language="none"}}
292 +com.xpn.xwiki.plugin.feed.FeedPlugin: Class com.xpn.xwiki.plugin.feed.FeedPlugin removed
293 +com.xpn.xwiki.plugin.feed.FeedPlugin$EntriesComparator: Class com.xpn.xwiki.plugin.feed.FeedPlugin$EntriesComparator removed
294 +com.xpn.xwiki.plugin.feed.FeedPlugin$SyndEntryComparator: Class com.xpn.xwiki.plugin.feed.FeedPlugin$SyndEntryComparator removed
295 +com.xpn.xwiki.plugin.feed.FeedPluginApi: Class com.xpn.xwiki.plugin.feed.FeedPluginApi removed
296 +com.xpn.xwiki.plugin.feed.SyndEntryDocumentSource: Class com.xpn.xwiki.plugin.feed.SyndEntryDocumentSource removed
297 +com.xpn.xwiki.plugin.feed.SyndEntryDocumentSource$PropertySelector: Class com.xpn.xwiki.plugin.feed.SyndEntryDocumentSource$PropertySelector removed
298 +com.xpn.xwiki.plugin.feed.SyndEntrySource: Class com.xpn.xwiki.plugin.feed.SyndEntrySource removed
299 +com.xpn.xwiki.plugin.feed.SyndEntrySourceApi: Class com.xpn.xwiki.plugin.feed.SyndEntrySourceApi removed
300 +com.xpn.xwiki.plugin.feed.UpdateThread: Class com.xpn.xwiki.plugin.feed.UpdateThread removed
301 +com.xpn.xwiki.plugin.feed.XWikiFeedFetcher: Class com.xpn.xwiki.plugin.feed.XWikiFeedFetcher removed
302 +com.xpn.xwiki.plugin.feed.XWikiFeedFetcher$CredentialSupplier: Class com.xpn.xwiki.plugin.feed.XWikiFeedFetcher$CredentialSupplier removed
303 +{{/code}}
304 +)))
305 +
306 +* IRCBot is still a young API. Added a new initialize() method to support installing the IRC Bot application in a subwiki(((
307 +{{code language="none"}}
308 +org.xwiki.ircbot.IRCBot: Method 'public void initialize(java.lang.String)' has been added to an interface
309 +{{/code}}
310 +)))
311 +
312 +* WikiComponent is still a young API. Moved the class to the internal package(((
313 +{{code language="none"}}
314 +org.xwiki.component.wiki.MethodOutputHandler: Class org.xwiki.component.wiki.MethodOutputHandler removed
315 +org.xwiki.component.wiki.WikiComponentInvocationHandler: Class org.xwiki.component.wiki.WikiComponentInvocationHandler removed
316 +{{/code}}
317 +)))
318 +
319 +* WikiComponent is still a young API. Replaced the getRole() method with getRoleType() to implement XWIKI-8233, "Allow wiki components to implement parameterized types"(((
320 +{{code language="none"}}
321 +org.xwiki.component.wiki.WikiComponent: Method 'public java.lang.Class getRole()' has been removed
322 +org.xwiki.component.wiki.WikiComponent: Method 'public java.lang.reflect.Type getRoleType()' has been added to an interface
323 +{{/code}}
324 +)))
325 +
326 +* WikiComponent is still a young API. Removed some unnecessary methods(((
327 +{{code language="none"}}
328 +org.xwiki.component.wiki.WikiComponent: Method 'public java.util.Map getHandledMethods()' has been removed
329 +org.xwiki.component.wiki.WikiComponent: Method 'public java.util.List getImplementedInterfaces()' has been removed
330 +{{/code}}
331 +)))
332 +
333 +* WikiComponent is still a young API. Added this method to implement XWIKI-8234, "Allow wiki components to be registered at different levels (user / wiki / global)"(((
334 +{{code language="none"}}
335 +org.xwiki.component.wiki.WikiComponent: Method 'public org.xwiki.model.reference.DocumentReference getAuthorReference()' has been added to an interface
336 +org.xwiki.component.wiki.WikiComponent: Method 'public org.xwiki.component.wiki.WikiComponentScope getScope()' has been added to an interface
337 +{{/code}}
338 +)))
339 +
340 +* UIExtension is still a young API. Replaced the List of Block by a Block since Block can now hold a list of Block(((
341 +{{code language="none"}}
342 +org.xwiki.uiextension.UIExtension: Return type of method 'public java.util.List execute()' has been changed to org.xwiki.rendering.block.Block
343 +{{/code}}
344 +)))
345 +
346 +* UIExtension is still a young API. getName() has been renamed to getId()(((
347 +{{code language="none"}}
348 +org.xwiki.uiextension.UIExtension: Method 'public java.lang.String getId()' has been added to an interface
349 +org.xwiki.uiextension.UIExtension: Method 'public java.lang.String getName()' has been removed
350 +{{/code}}
351 +)))
352 +
353 +* Added a common method to all elements to set all the data from another element. Technically this does not really break anything because all elements are supposed to extends BaseElement(((
354 +{{code language="none"}}
355 +com.xpn.xwiki.objects.ElementInterface: Method 'public boolean apply(com.xpn.xwiki.objects.ElementInterface, boolean)' has been added to an interface
356 +{{/code}}
357 +)))
358 +
359 +* Elemenents must be added to the wrapping NotifyOnList to ensure that the property is marked 'dirty' when updated. To avoid that this mechanism is circumvented, the field is made final.(((
360 +{{code language="none"}}
361 +com.xpn.xwiki.objects.ListProperty: Field list is now final
362 +{{/code}}
363 +)))
364 +
365 +* Removed language field because the information is now stored as Locale instead of String and it should have never been protected anyway.(((
366 +{{code language="none"}}
367 +com.xpn.xwiki.doc.XWikiDocument: Removed field language
368 +{{/code}}
369 +)))
370 +
371 +* URLPatternMatcher instances cannot generally be reused (because the underlaying Perl5Matcher cannot be reused) on different strings and with different patterns and a new instance must be produced on demand. It is, thus, meaningless to set an instance. If there is any code relying on this method, it is broken already. Thus, we should remove this without going through deprecation. We might as well remove the getter.(((
372 +{{code language="none"}}
373 +com.xpn.xwiki.XWiki: Method 'public void setUrlPatternMatcher(org.securityfilter.filter.URLPatternMatcher)' has been removed
374 +com.xpn.xwiki.XWiki: Method 'public org.securityfilter.filter.URLPatternMatcher getUrlPatternMatcher()' has been removed
375 +{{/code}}
376 +)))
377 +
378 +* Removed unused field(((
379 +{{code language="none"}}
380 +com.xpn.xwiki.tool.backup.ImportMojo: Field MPNAME_DESCRIPTION has been removed, but it was previously a constant
381 +{{/code}}
382 +)))

Get Connected