Changes for page Release Notes for XWiki 4.3 Milestone 2
Last modified by Thomas Mortagne on 2017/03/24
Change comment:
Summary
Summary
-
Page properties (1 modified, 0 added, 0 removed)
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 - <insertdescriptionofrelease 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 twe ek 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 +)))