Wiki source code of Release Notes for XWiki 4.3

Last modified by Manuel Leduc on 2023/10/13

Show last authors
1 {{box cssClass="floatinginfobox" title="**Contents**"}}
2 {{toc/}}
3 {{/box}}
4
5 {{error}}
6 2 important bugs have been found in this version:
7
8 * The order of Panels is not guaranteed
9 * Panels from the main wiki can't be used in subwikis
10
11 Those bugs have been fixed in XWiki 4.3.1.
12 {{/error}}
13
14 {{warning}}
15 If you're upgrading from an older version and you use the new Distribution Wizard to upgrade your wiki pages you'll notice that it'll ask you to resolve conflicts on almost any pages that have been modified between your version and XWiki 4.3. This is because currently the Distribution Wizard doesn't know which version you have and thus asks you to perform the merge manually. This operation may take a long time (up to 20 minutes or so). Thus at the moment if you're upgrading from a previous version we recommend that you Cancel the Distribution Wizard and instead [[Import the new XAR>>xwiki:Documentation.AdminGuide.Upgrade]]. This problem is [[reported in this issue>>https://jira.xwiki.org/browse/XWIKI-8252]] and should be fixed in release 4.4.
16 {{/warning}}
17
18 {{warning}}
19 If you are migrating from an earlier version than 4.0, and your database contains statistics collected using a version earlier than 2.2, you will probably encounter an issue during our automated database migration. To avoid that issue, you will need to clean up your statistics by executing some SQL commands described in issue [[XWIKI-8129>>https://jira.xwiki.org/browse/XWIKI-8129]]. Be sure to apply these before attempting the migration. If your are in doubt, apply it, these could not hurt. If you don't, you will face duplicate IDs errors during the migration process, and it will fail, preventing you to run your wiki.
20 {{/warning}}
21
22 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.
23
24 This release brings several improvements in Workspaces, Extension Manager, Distribution Wizard, the REST API, new field pickers (Date, User and Groups), improved translation registration and new experimental Solr search.
25
26 = New and Noteworthy (since XWiki 4.2) =
27
28 [[Full list of issues fixed and Dashboard for 4.3>>https://jira.xwiki.org/secure/Dashboard.jspa?selectPageId=11198]].
29
30 == Default date picker ==
31
32 The date picker from [[AppWithinMinutes>>extensions:Extension.App Within Minutes Application]] is now the default picker for all [[XClass>>xwiki:Documentation.DevGuide.DataModel.WebHome]] properties of type Date. This means that you'll get a date picker when editing an object with a Date property even if you didn't use AppWithinMinutes to create the XClass.
33
34 {{image reference="[email protected]"/}}
35
36 If for some reason you don't want to use the new date picker then you can edit the XClass and uncheck "Use Date Picker" for the Date property.
37
38 == User and Group picker ==
39
40 We added a user and group picker that is used by default for all [[XClass>>Documentation.DevGuide.DataModel.WebHome]] properties of type "List of Users" and "List of Groups". When multiple selection is enabled, each selected user is added to the list above the picker. You can remove individual users from the list of selected users or you can clear the entire list.
41
42 {{image reference="[email protected]"/}}
43
44 In single selection mode whenever you select an user it overwrites the previously selected user.
45
46 {{image reference="[email protected]"/}}
47
48 The list of selected users is displayed in view mode in a similar way. For each user there is a link to their profile page.
49
50 {{image reference="[email protected]"/}}
51
52 The group picker behaves in the same way. The group alias is the name of the group document, the group name is the title of the group document while the group avatar is the first image attached to the group document.
53
54 {{image reference="[email protected]"/}}
55
56 The user and group picker can be configured to display a scope toggle that can be used to switch between local and global user/group suggestions.
57
58 {{image reference="[email protected]"/}}
59
60 You can check this if you edit a group from a subwiki (in a multiwiki environment).
61
62 {{image reference="[email protected]"/}}
63
64 == New 'Title' and 'Content' fields for App Within Minutes ==
65
66 We added two new field types to the field palette: Title and Content. They are very useful if you want to store some of your data in the title and/or the content of your application entries. All the rest of the field types store their values in object properties, i.e. in an object attached to the application entry. See the [[App Within Minutes documentation>>extensions:Extension.App Within Minutes Application||anchor="HFieldPalette"]] for more details.
67
68 {{image reference="[email protected]"/}}
69
70 == Workspace Templates ==
71
72 Similar to what admins were doing with the [[Wiki Manager Application>>extensions:Extension.Wiki Manager Application]], we noticed the need for the [[Workspace Application>>extensions:Extension.Workspace Application]] to allow users to choose what type of workspace they want to create.
73
74 {{image reference="[email protected]"/}}
75
76 Please see the current workaround for [[creating workspace templates>>https://jira.xwiki.org/browse/XWIKI-8285]] (as admin) until an easy UI becomes available.
77
78 == Experimental Solr based search engine ==
79
80 A new and experimental search engine based on [[Apache Solr>>http://lucene.apache.org/solr/]] is now available.
81
82 The new search UI offers advanced search features and results highlighting. Future versions will also include [[Faceted Search>>http://en.wikipedia.org/wiki/Faceted_search]].
83
84 {{image reference="[email protected]"/}}
85
86 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 add the ##search.solr.home## property in ##WEB-INF/xwiki.properties##.
87
88 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.
89
90 {{image reference="[email protected]"/}}
91
92 This new search engine is not enable by default, since Lucene is still the default one, but, if you wish to try it out, it can be enable by going to ##Administration > Applications > Search > Search engine to use## and selecting ##Solr (Experimental)##.
93
94 == Extension Manager improvements ==
95
96 {{warning}}
97 If you're migrating from a version older than 4.2 or without any properly installed UI extensions you will notice that the Applications panel is not visible by default. This is caused by [[this issue>>https://jira.xwiki.org/browse/XWIKI-8461]]. More specifically the XWiki Object Property for the Panels list in ##XWiki.XWikiPreferences## can't be merged in this situation and your old value is kept by default if you don't specifically choose to move to new version when getting the conflict resolution UI (Note that the conflict UI will wrongly indicate that there's no changes). You thus need to manually go the the Administration and add the ##Panels.Applications## name to the Panels list.
98 {{/warning}}
99
100 === UI ===
101
102 When you click on "Show details" to get more information about an extension, the extension manager tries to resolve all the dependencies of that extension by making requests to the configured remote extension repositories. These requests slow down considerably the time needed to display the extension details. We fixed this by resolving only the local dependencies at first and then making consecutive AJAX requests to resolve the remote dependencies.
103
104 {{image reference="[email protected]"/}}
105
106 The install and uninstall plan is now progressively displayed while it is being created. This is especially useful for the Distribution Wizard since you don't have to wait anymore for the install plan to be created without getting any feedback about its progress.
107
108 {{image reference="[email protected]"/}}
109
110 As you can see in the previous image, we also limited the height of the progress tab and the extension job log is automatically scrolled to the end while the job is running.
111
112 === Private repositories ===
113
114 Maven and XWiki repositories now support authentication. You can indicate a user and a password in ##xwiki.properties## file the following way:
115
116 {{code language="properties"}}
117 extension.repositories=privatemavenid:maven:http://host.com/private/maven/
118 extension.repositories.privatemavenid.auth.user=someuser
119 extension.repositories.privatemavenid.auth.password=password
120
121 extension.repositories=extensions.xwiki.org:xwiki:http://extensions.xwiki.org/xwiki/rest/
122 extension.repositories.extensions.xwiki.org.auth.user=someuser
123 extension.repositories.extensions.xwiki.org.auth.password=password
124 {{/code}}
125
126 == Distribution Wizard improvements ==
127
128 The welcome step now lists only the available steps. For instance, when you install XWiki for the first time you don't have any extensions to upgrade so the "Extensions" step is not available.
129
130 {{image reference="[email protected]"/}}
131
132 When a step is done we visually mark it.
133
134 {{image reference="[email protected]"/}}
135
136 == Miscellaneous ==
137
138 * XWiki's multiwiki feature (a.k.a "virtual mode") now works with the HSQLDB database
139 * It's now possible to configure the LDAP timeout. See ##xwiki.authentication.ldap.timeout## property in xwiki.cfg file.
140 * New available [[Rendering syntax>>rendering:Main.WebHome]]: [[APT>>http://maven.apache.org/doxia/references/apt-format.html]]
141 * Technical pages of the [[IRCBot Application>>extensions:Extension.IRC Bot Application]] are now hidden and the application now registers itself in the Application panel:(((
142 {{image reference="[email protected]"/}}
143 )))
144 * Search Admin UI improvements ({{jira style="enum" url="https://jira.xwiki.org"}}XWIKI-8408{{/jira}}):(((
145 {{image reference="[email protected]"/}}
146 )))
147 * Automatically register translations for the FAQ and IRCBot applications
148 * XWiki Enterprise Manager does not override QuickLinks panel anymore, made useless by the new Applications panel
149 * Important Bug Fixes:
150 ** Fixed failure to import Office documents when using Filesystem Attachments.
151 ** Fixed regression that caused "share by email" and "reset password" functions to fail to send any email.
152
153 See the [[full list of JIRA issues>>https://jira.xwiki.org/sr/jira.issueviews:searchrequest-printable/temp/SearchRequest.html?jqlQuery=project%20in%20(XCOMMONS,%20XRENDERING,%20XWIKI,%20XE,%20XEM)%20and%20status%20=%20Closed%20and%20resolution%20=%20Fixed%20and%20fixVersion%20in%20(%224.3-milestone-1%22,%20%224.3-milestone-2%22,%20%224.3-rc-1%22,%20%224.3%22)]] fixed in this release.
154
155 = For Developers =
156
157 == New Localization Module ==
158
159 A new localization module has been introduced to replace the old XWikiMessageTool.
160
161 See [[extensions:Extension.Localization Module]] for more details.
162
163 == REST API improvements ==
164
165 Some improvements have been done to the REST API in order to allow more powerful searches of the data stored in the wiki.
166
167 * Results can be ordered using the ##/wikis/{wikiName}/search## and ##/wikis/{wikiName}/spaces/{spaceName}/search## resources with the following parameters:
168 ** //orderField//: one of the XWiki document field, as specified in [[HQL Query Examples in Velocity>>xwiki:Documentation.DevGuide.Scripting.velocityHqlExamples.WebHome]]
169 ** //order//: ##asc## or ##desc##". By default ##asc## is used.
170
171 * Advanced search queries can be specified using ##/wikis/{wikiName}/query## resources with the following parameters:
172 ** //q//: the query to be executed (it depends on the query type)
173 ** //type//: ##hql##, ##xwql## or ##lucene##. Depending on the query type, the //q// parameter will contain a query matching the type
174 *** For ##hql## it's like a searchDocuments query, as shown in specified in [[HQL Query Examples in Velocity>>xwiki:Documentation.DevGuide.Scripting.velocityHqlExamples.WebHome]].
175 *** For ##xwql## the user is allowed to use XWQL syntax for short queries ([[XWiki Query Language Specification>>dev:Design.XWiki Query Language Specification]])
176 *** For ##lucene## it's a standard Lucene query handled by the Lucene plugin ([[Lucene Plugin>>extensions:Extension.Lucene Plugin]])
177 ** Standard parameters like //start//, //number// can be specified to control the number of the results to be returned.
178
179 * Multi-wiki Lucene search using the ##/wikis/query## resource with the following parameters:
180 ** //q//: the Lucene query handled by the Lucene plugin ([[Lucene Plugin>>extensions:Extension.Lucene Plugin]])
181 ** //wikis//: a comma separated list of wikis where to perform the search.
182
183 * XARs can be imported in Wikis by POSTing it to the /wikis/{wikiName}
184 * New wikis can be created using the /wikimanager resource. (This resource is only available with XWiki Enterprise Manager)
185
186 For more information see [[XWiki RESTful API>>xwiki:Documentation.UserGuide.Features.XWikiRESTfulAPI]]
187
188 In addition there was an XWiki REST API refactoring done with the introduction of a new ##xwiki-platform-rest-api## module containing all resource declarations. This is important for client and modules willing to use the REST API so that they can have all the information about resources using Java annotation. See [[XWiki RESTful API>>xwiki:Documentation.UserGuide.Features.XWikiRESTfulAPI]].
189
190 == Easy creation of new XClass property types ==
191
192 It's now possible to create your own [[XClass property types>>xwiki:Documentation.DevGuide.DataModel.WebHome||anchor="HXWikiClasses2CObjects2CandProperties"]] without having to patch XWiki's old core. [[Adding a new property type>>xwiki:Documentation.DevGuide.Tutorials.CreatingNewXClassPropertyTypes.WebHome]] is as easy as implementing a component. This means you can extend the [[class editor>>xwiki:Documentation.UserGuide.Features.PageEditing||anchor="HClasseseditingmode"]] and even the [[App Within Minutes>>extensions:Extension.App Within Minutes Application||anchor="HFieldPalette-1"]].
193
194 == Execution context property declarations ==
195
196 Execution context properties can now be associated with various metadata attributes. See [[the documentation on the execution context>>doc:xwiki:Documentation.DevGuide.Tutorials.SavingData.WebHome||anchor="HExecutionContext"]] for more information.
197
198 == New Scope property for wiki components and UI extensions ==
199
200 A scope can now be defined for [[wiki components>>extensions:Extension.WikiComponent Module]] and [[UI extensions>>extensions:Extension.UIExtension Module]], it allows to restrict for which wiki(s) or which user they will be available:
201
202 * Current Wiki, the component/UI extension will be available in the current wiki
203 * Global, the component/UI extension will be available in all the wikis (wiki farms)
204 * Current User, the component/UI extension will only be available for its author
205
206 == Deprecated and Retired projects ==
207
208 * The ##userdirectory## and ##usertools## plugins have been retired since they were unmaintained and mostly replaced by other features such as the Invitation module.
209
210 == Upgrades ==
211
212 The following dependencies have been upgraded:
213
214 * [[HSQLDB 2.2.9>>http://hsqldb.org/doc/2.0/changelist_2_0.txt]]
215 * [[mysql-connector-java 5.1.21>>http://dev.mysql.com/doc/refman/5.1/en/cj-news-5-1-x.html]]
216 * [[slf4j 1.7.2>>http://www.slf4j.org/news.html]]
217 * [[logback 1.0.7>>http://logback.qos.ch/news.html]]
218 * [[guava 13.0.1>>http://code.google.com/p/guava-libraries/wiki/Release13]]
219 * [[Lucene 3.6.1>>https://wiki.apache.org/lucene-java/Lucene3.6.1]]
220 * [[XStream 1.4.3>>http://xstream.codehaus.org/changes.html]]
221 * [[commons-io 2.4>>http://commons.apache.org/io/upgradeto2_4.html]]
222 * [[httpclient 4.2.2>>http://www.apache.org/dist/httpcomponents/httpclient/RELEASE_NOTES.txt]]
223 * [[commons-configuration 1.9>>http://commons.apache.org/configuration/changes-report.html#a1.9]]
224 * [[jcl-over-slf4j and log4j-over-slf4j 1.7.2>>http://www.slf4j.org/news.html]]
225 * [[Groovy 1.8.8>>http://jira.codehaus.org/secure/ReleaseNote.jspa?projectId=10242&version=18684]]
226 * [[JGroups 3.2.0.Final>>http://belaban.blogspot.fr/2012/10/jgroups-320final-released.html]]
227 * [[Xerces-J 2.10.0>>http://xerces.apache.org/xerces2-j/releases.html]]
228 * [[JavaMail 1.4.5>>http://www.oracle.com/technetwork/java/javamail/index-138643.html]]
229 * [[Infinispan 5.1.8>>https://issues.jboss.org/secure/IssueNavigator.jspa?reset=true&jqlQuery=project+%3D+ISPN+AND+fixVersion+in+%28%225.1.8.FINAL%22,%20%225.1.7.FINAL%22,%20%225.1.6.FINAL%22%29]]
230 * [[Hibernate Validator 4.3.0>>https://hibernate.onjira.com/secure/IssueNavigator.jspa?reset=true&jqlQuery=project+%3D+HV+AND+fixVersion+in+%28%224.3.0.Final%22%2C+%224.3.0.CR1%22%2C+%224.3.0.Beta1%22%2C+%224.3.0.Alpha1%22%29]]
231
232 == Miscellaneous ==
233
234 * New ##org.xwiki.rendering.block.CompositeBlock## introduce to allow passing several Blocks as one Block
235 * New ##$services.model.getEntityReferenceValue## method that returns the value configured for a specific entity type
236 * Many classes in the REST API Server module that were not meant to be part of the public API have been moved to internal packages. This was done to correct a mistake that was done when the REST API module was initially developed.
237 * Fixed a bug about incorrect results in multi-wiki lucene search in the REST API.
238 * Add a ##java.util.Locale## converter which allow:
239 ** using Locale in rendering macro parameter(s)
240 ** support Java method with Locale parameter(s) in Velocity. See [[Method Arguments Uberspector>>extensions:Extension.Velocity Module||anchor="HMethodArgumentsUberspector"]] for more details.
241 * Various String language based API of ##com.xpn.xwiki.XWiki## and ##com.xpn.xwiki.doc.XWikiDocument## classes are now deprecated for their newly introduced ##java.util.Locale## equivalents.
242 * Activity Stream UI and Color Theme UI have been moved to their own modules.
243
244 == Translations ==
245
246 The following translations have been updated:
247
248 {{language codes="fr, it, sv, da, de, pt_BR"/}}
249
250 = Tested Browsers & Databases =
251
252 Here's the list of browsers tested with this version (i.e. browsers that we've tested as working - Check the list of [[supported browsers>>dev:Community.BrowserSupportStrategy]]):
253
254 {{velocity}}
255 ## name = iexplorer, firefox, chrome, safari, opera
256 {{/velocity}}
257
258 {{browser name="iexplorer" version="8"/}}
259
260 {{browser name="iexplorer" version="9"/}}
261
262 {{browser name="firefox" version="16.0.2"/}}
263
264 {{browser name="firefox" version="17"/}}
265
266 {{browser name="chrome" version="23"/}}
267
268 Here's the list of databases tested with this version (i.e. databases that we've tested as working - Check the list of [[supported databases>>dev:Community.DatabaseSupportStrategy]]):
269
270 {{velocity}}
271 ## name = hsqldb, mysql, postgresql, oracle, opera
272 {{/velocity}}
273
274 {{database name="hsqldb" version="2.2.9"/}}
275
276 {{database name="mysql" version="5.1.54"/}}
277
278 {{database name="oracle" version="11.2.0.1.0"/}}
279
280 {{database name="postgresql" version="9.1.3"/}}
281
282 = Known issues =
283
284 * [[Bugs we know about>>https://jira.xwiki.org/secure/IssueNavigator.jspa?reset=true&jqlQuery=category+%3D+%22Top+Level+Projects%22+AND+issuetype+%3D+Bug+AND+resolution+%3D+Unresolved+ORDER+BY+updated+DESC]]
285
286 = Test Report =
287
288 You can check the [[manual test report>>TestReports.ManualTestReportXE43RC1]] to learn about what was tested and the results on various browsers.
289
290 = Backward Compatibility and Migration Notes =
291
292 == General Notes ==
293
294 {{warning}}
295 PLEASE, BACKUP YOUR DATABASE BEFORE STARTING YOUR WIKI.
296 AUTOMATED MIGRATION PROCEDURE TAKE PLACE AT STARTUP AND YOU MAY NEED TO START OVER IF YOU ENCOUNTER AN UNEXPECTED ISSUE.
297 {{/warning}}
298
299 You may also want to [[import the default wiki XAR>>Main.Download]] in order to benefit from all the improvements listed above.
300
301 {{warning}}
302 Always make sure you compare your ##xwiki.cfg## and ##xwiki.properties## files with the newest version since some configuration parameters were 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.
303 {{/warning}}
304
305 {{warning}}
306 If you are migrating from an earlier version than 4.0, and your database contains statistics collected using a version earlier than 2.2, you will probably encounter an issue during our automated database migration. To avoid that issue, you will need to clean up your statistics by executing some SQL commands described in issue [[XWIKI-8129>>https://jira.xwiki.org/browse/XWIKI-8129]]. Be sure to apply these before attempting the migration. If your are in doubt, apply it, these could not hurt. If you don't, you will face duplicate IDs errors during the migration process, and it will fail, preventing you to run your wiki.
307 {{/warning}}
308
309 {{warning}}
310 If you have encountered an issue with the migration, you may need to start over from a backup. Be careful that during the migration, two new tables have been created (in each xwiki database for a farm) and should be dropped when you restore a backup of a database coming from a version earlier than 4.x. These two tables are DATABASECHANGELOG and DATABASECHANGELOGLOCK. These should only be removed if you restore a pre-4.x database schema. Mixing an old database with these two tables will surely cause issue during schema updates (liquibase checksum failure).
311 {{/warning}}
312
313 == Issues specific to XWiki 4.3 ==
314
315 * Since the ##userdirectory## and ##usertools## have been retired you'll need to make sure that your ##xwiki.cfg## configuration files doesn't reference them anymore in the ##plugins## property.
316 * The methods ##setUrlPatternMatcher## and ##getUrlPatternMatcher## have been removed from the core class ##com.xpn.xwiki.XWiki##. The underlying ##URLPatternMatcher## could not really be used as a singleton instance and was causing irregular failures in the basic authentication method. Thus these methods cannot be meaningfully relied upon and have therefore been removed.
317 * When setting the value using ##setValue## (or ##setList##) on a list field in an XWiki object, the list will now be copied. To be able to update the list, you must call ##getValue## (or ##getList##) and update the returned list. This is due to {{jira style="enum" url="https://jira.xwiki.org"}}XWIKI-8398{{/jira}}.
318 * Make sure that when you upgrade to XWiki Enterprise 4.3 you also update the ##web.xml## file by replacing the line ##org.xwiki.rest.XWikiRestletJaxRsApplication## with ##org.xwiki.rest.internal.XWikiRestletJaxRsApplication##.
319
320 == API Breakages ==
321
322 The following APIs were modified since XWiki 4.2:
323
324 * [Young API] Introduce API to associate dependency status to the namespace:(((
325 {{code language="none"}}
326 org.xwiki.extension.InstalledExtension: Method 'public boolean isDependency(java.lang.String)' has been added to an interface
327 {{/code}}
328 )))
329 * [Young API] Introduce ExtensionRepositoryDescriptor as a replacement of ExtensionRepositoryId:(((
330 {{code language="none"}}
331 org.xwiki.extension.ExtensionManagerConfiguration: Method 'public java.util.Collection getExtensionRepositoryDescriptors()' has been added to an interface
332 org.xwiki.extension.repository.ExtensionRepository: Method 'public org.xwiki.extension.repository.ExtensionRepositoryDescriptor getDescriptor()' has been added to an interface
333 org.xwiki.extension.repository.ExtensionRepositoryFactory: Method 'public org.xwiki.extension.repository.ExtensionRepository createRepository(org.xwiki.extension.repository.ExtensionRepositoryDescriptor)' has been added to an interface
334 org.xwiki.extension.repository.ExtensionRepositoryManager: Method 'public org.xwiki.extension.repository.ExtensionRepository addRepository(org.xwiki.extension.repository.ExtensionRepositoryDescriptor)' has been added to an interface
335 org.xwiki.extension.repository.ExtensionRepositorySource: Method 'public java.util.Collection getExtensionRepositoryDescriptors()' has been added to an interface
336 {{/code}}
337 )))
338 * IRCBot is still a young API. Added a new initialize() method to support installing the IRC Bot application in a subwiki:(((
339 {{code}}
340 org.xwiki.ircbot.IRCBot: Method 'public void initialize(java.lang.String)' has been added to an interface
341 {{/code}}
342 )))
343 * WikiComponent is still a young API. Removed the method to implement XWIKI-8233 ("Allow wiki components to implement parameterized types"):(((
344 {{code}}
345 org.xwiki.component.wiki.WikiComponent: Method 'public org.xwiki.model.reference.DocumentReference getAuthorReference()' has been added to an interface
346 org.xwiki.component.wiki.WikiComponent: Method 'public java.util.Map getHandledMethods()' has been removed
347 org.xwiki.component.wiki.WikiComponent: Method 'public java.util.List getImplementedInterfaces()' has been removed
348 org.xwiki.component.wiki.WikiComponent: Method 'public java.lang.Class getRole()' has been removed
349 org.xwiki.component.wiki.WikiComponent: Method 'public java.lang.reflect.Type getRoleType()' has been added to an interface
350 org.xwiki.component.wiki.WikiComponent: Method 'public org.xwiki.component.wiki.WikiComponentScope getScope()' has been added to an interface
351 {{/code}}
352 )))
353 * WikiComponent is still a young API. Moved the class to the internal package:(((
354 {{code}}
355 org.xwiki.component.wiki.MethodOutputHandler: Class org.xwiki.component.wiki.MethodOutputHandler removed
356 org.xwiki.component.wiki.WikiComponentInvocationHandler: Class org.xwiki.component.wiki.WikiComponentInvocationHandler removed
357 {{/code}}
358 )))
359 * UIExtension is still a young API. Replaced the List of Block by a Block since Block can can now hold a list of Block:(((
360 {{code}}
361 org.xwiki.uiextension.UIExtension: Return type of method 'public java.util.List execute()' has been changed to org.xwiki.rendering.block.Block
362 org.xwiki.uiextension.UIExtension: Method 'public java.lang.String getId()' has been added to an interface
363 org.xwiki.uiextension.UIExtension: Method 'public java.lang.String getName()' has been removed
364 {{/code}}
365 )))
366 * 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:(((
367 {{code}}
368 com.xpn.xwiki.objects.ElementInterface: Method 'public boolean apply(com.xpn.xwiki.objects.ElementInterface, boolean)' has been added to an interface
369 {{/code}}
370 )))
371 * Elements 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:(((
372 {{code}}
373 com.xpn.xwiki.objects.ListProperty: Field list is now final
374 {{/code}}
375 )))
376 * Stored as Locale now and should have never been protected anyway:(((
377 {{code}}
378 com.xpn.xwiki.doc.XWikiDocument: Removed field language
379 {{/code}}
380 )))
381 * 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. The only place where getUrlPatternMatcher is used in core appears to be in XWikiAuthServiceImpl in processLogout. This method appears to fail occasionally because the urlPatternMatcher instance is reused.(((
382 {{code}}
383 com.xpn.xwiki.XWiki: Method 'public void setUrlPatternMatcher(org.securityfilter.filter.URLPatternMatcher)' has been removed
384 com.xpn.xwiki.XWiki: Method 'public org.securityfilter.filter.URLPatternMatcher getUrlPatternMatcher()' has been removed
385 {{/code}}
386 )))
387 * Added a method to allow schema update through liquibase before hibernate schema updates. This should not really break anything because all hibernate migration extends AbstractHibernateDataMigration which now implement a stub for this method.(((
388 {{code}}
389 com.xpn.xwiki.store.migration.hibernate.HibernateDataMigration: Method 'public java.lang.String getPreHibernateLiquibaseChangeLog()' has been added to an interface
390 {{/code}}
391 )))
392 * A new 'sendMessageFromTemplate' method was wrongly added before the 4.2 final release and then removed in 4.3 from master:(((
393 {{code}}
394 com.xpn.xwiki.plugin.mailsender.MailSender: Method 'public int sendMessageFromTemplate(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.util.Map)' has been removed
395 {{/code}}
396 )))
397 * Ignoring error on field version which has been moved from Page to PageSummary which is the superclass of Page:(((
398 {{code}}
399 org.xwiki.rest.model.jaxb.Page: Removed field version
400 {{/code}}
401 )))
402 * Ignoring error on REST DomainObjectFactory as it is internal code:(((
403 {{code}}
404 org.xwiki.rest.DomainObjectFactory: Class org.xwiki.rest.DomainObjectFactory removed
405 org.xwiki.rest.resources.BaseAttachmentsResource: Class org.xwiki.rest.resources.BaseAttachmentsResource removed
406 org.xwiki.rest.resources.BaseAttachmentsResource$AttachmentInfo: Class org.xwiki.rest.resources.BaseAttachmentsResource$AttachmentInfo removed
407 org.xwiki.rest.resources.BaseSearchResult: Class org.xwiki.rest.resources.BaseSearchResult removed
408 org.xwiki.rest.resources.BaseSearchResult$SearchScope: Class org.xwiki.rest.resources.BaseSearchResult$SearchScope removed
409 org.xwiki.rest.resources.BrowserAuthenticationResource: Class org.xwiki.rest.resources.BrowserAuthenticationResource removed
410 org.xwiki.rest.resources.ModificationsResource: Class org.xwiki.rest.resources.ModificationsResource removed
411 org.xwiki.rest.resources.RootResource: Class org.xwiki.rest.resources.RootResource removed
412 org.xwiki.rest.resources.SyntaxesResource: Class org.xwiki.rest.resources.SyntaxesResource removed
413 org.xwiki.rest.resources.attachments.AttachmentAtPageVersionResource: Class org.xwiki.rest.resources.attachments.AttachmentAtPageVersionResource removed
414 org.xwiki.rest.resources.attachments.AttachmentHistoryResource: Class org.xwiki.rest.resources.attachments.AttachmentHistoryResource removed
415 org.xwiki.rest.resources.attachments.AttachmentResource: Class org.xwiki.rest.resources.attachments.AttachmentResource removed
416 org.xwiki.rest.resources.attachments.AttachmentVersionResource: Class org.xwiki.rest.resources.attachments.AttachmentVersionResource removed
417 org.xwiki.rest.resources.attachments.AttachmentsAtPageVersionResource: Class org.xwiki.rest.resources.attachments.AttachmentsAtPageVersionResource removed
418 org.xwiki.rest.resources.attachments.AttachmentsResource: Class org.xwiki.rest.resources.attachments.AttachmentsResource removed
419 org.xwiki.rest.resources.classes.ClassPropertiesResource: Class org.xwiki.rest.resources.classes.ClassPropertiesResource removed
420 org.xwiki.rest.resources.classes.ClassPropertyResource: Class org.xwiki.rest.resources.classes.ClassPropertyResource removed
421 org.xwiki.rest.resources.classes.ClassResource: Class org.xwiki.rest.resources.classes.ClassResource removed
422 org.xwiki.rest.resources.classes.ClassesResource: Class org.xwiki.rest.resources.classes.ClassesResource removed
423 org.xwiki.rest.resources.comments.CommentResource: Class org.xwiki.rest.resources.comments.CommentResource removed
424 org.xwiki.rest.resources.comments.CommentVersionResource: Class org.xwiki.rest.resources.comments.CommentVersionResource removed
425 org.xwiki.rest.resources.comments.CommentsResource: Class org.xwiki.rest.resources.comments.CommentsResource removed
426 org.xwiki.rest.resources.comments.CommentsVersionResource: Class org.xwiki.rest.resources.comments.CommentsVersionResource removed
427 org.xwiki.rest.resources.objects.AllObjectsForClassNameResource: Class org.xwiki.rest.resources.objects.AllObjectsForClassNameResource removed
428 org.xwiki.rest.resources.objects.BaseObjectsResource: Class org.xwiki.rest.resources.objects.BaseObjectsResource removed
429 org.xwiki.rest.resources.objects.ObjectAtPageVersionResource: Class org.xwiki.rest.resources.objects.ObjectAtPageVersionResource removed
430 org.xwiki.rest.resources.objects.ObjectPropertiesAtPageVersionResource: Class org.xwiki.rest.resources.objects.ObjectPropertiesAtPageVersionResource removed
431 org.xwiki.rest.resources.objects.ObjectPropertiesResource: Class org.xwiki.rest.resources.objects.ObjectPropertiesResource removed
432 org.xwiki.rest.resources.objects.ObjectPropertyAtPageVersionResource: Class org.xwiki.rest.resources.objects.ObjectPropertyAtPageVersionResource removed
433 org.xwiki.rest.resources.objects.ObjectPropertyResource: Class org.xwiki.rest.resources.objects.ObjectPropertyResource removed
434 org.xwiki.rest.resources.objects.ObjectResource: Class org.xwiki.rest.resources.objects.ObjectResource removed
435 org.xwiki.rest.resources.objects.ObjectsAtPageVersionResource: Class org.xwiki.rest.resources.objects.ObjectsAtPageVersionResource removed
436 org.xwiki.rest.resources.objects.ObjectsForClassNameResource: Class org.xwiki.rest.resources.objects.ObjectsForClassNameResource removed
437 org.xwiki.rest.resources.objects.ObjectsResource: Class org.xwiki.rest.resources.objects.ObjectsResource removed
438 org.xwiki.rest.resources.pages.ModifiablePageResource: Class org.xwiki.rest.resources.pages.ModifiablePageResource removed
439 org.xwiki.rest.resources.pages.PageChildrenResource: Class org.xwiki.rest.resources.pages.PageChildrenResource removed
440 org.xwiki.rest.resources.pages.PageHistoryResource: Class org.xwiki.rest.resources.pages.PageHistoryResource removed
441 org.xwiki.rest.resources.pages.PageResource: Class org.xwiki.rest.resources.pages.PageResource removed
442 org.xwiki.rest.resources.pages.PageTagsResource: Class org.xwiki.rest.resources.pages.PageTagsResource removed
443 org.xwiki.rest.resources.pages.PageTranslationHistoryResource: Class org.xwiki.rest.resources.pages.PageTranslationHistoryResource removed
444 org.xwiki.rest.resources.pages.PageTranslationResource: Class org.xwiki.rest.resources.pages.PageTranslationResource removed
445 org.xwiki.rest.resources.pages.PageTranslationVersionResource: Class org.xwiki.rest.resources.pages.PageTranslationVersionResource removed
446 org.xwiki.rest.resources.pages.PageTranslationsResource: Class org.xwiki.rest.resources.pages.PageTranslationsResource removed
447 org.xwiki.rest.resources.pages.PageVersionResource: Class org.xwiki.rest.resources.pages.PageVersionResource removed
448 org.xwiki.rest.resources.pages.PagesResource: Class org.xwiki.rest.resources.pages.PagesResource removed
449 org.xwiki.rest.resources.spaces.SpaceAttachmentsResource: Class org.xwiki.rest.resources.spaces.SpaceAttachmentsResource removed
450 org.xwiki.rest.resources.spaces.SpaceResource: Class org.xwiki.rest.resources.spaces.SpaceResource removed
451 org.xwiki.rest.resources.spaces.SpaceSearchResource: Class org.xwiki.rest.resources.spaces.SpaceSearchResource removed
452 org.xwiki.rest.resources.spaces.SpacesResource: Class org.xwiki.rest.resources.spaces.SpacesResource removed
453 org.xwiki.rest.resources.tags.PagesForTagsResource: Class org.xwiki.rest.resources.tags.PagesForTagsResource removed
454 org.xwiki.rest.resources.tags.TagsResource: Class org.xwiki.rest.resources.tags.TagsResource removed
455 org.xwiki.rest.resources.wikis.WikiAttachmentsResource: Class org.xwiki.rest.resources.wikis.WikiAttachmentsResource removed
456 org.xwiki.rest.resources.wikis.WikiPagesResource: Class org.xwiki.rest.resources.wikis.WikiPagesResource removed
457 org.xwiki.rest.resources.wikis.WikiSearchResource: Class org.xwiki.rest.resources.wikis.WikiSearchResource removed
458 org.xwiki.rest.resources.wikis.WikisResource: Class org.xwiki.rest.resources.wikis.WikisResource removed
459 {{/code}}
460 )))
461 * Moved a lot of previously public API to internal packages. The initial implementation put everything in public packages which is wrong. This move is to correct the initial error, and leave in public packages only the classes that are really part of a public API. (See discussion: http://xwiki.markmail.org/thread/iqktyceut5bmw4rl )(((
462 {{code}}
463 org.xwiki.rest.exceptions.QueryExceptionMapper: Class org.xwiki.rest.exceptions.QueryExceptionMapper removed
464 org.xwiki.rest.exceptions.XWikiExceptionMapper: Class org.xwiki.rest.exceptions.XWikiExceptionMapper removed
465 org.xwiki.rest.ComponentsObjectFactory: Class org.xwiki.rest.ComponentsObjectFactory removed
466 org.xwiki.rest.Constants: Field ALLOWED_VALUES_ATTRIBUTE_NAME has been removed, but it was previously a constant
467 org.xwiki.rest.Constants: Field RELEASABLE_COMPONENT_REFERENCES has been removed, but it was previously a constant
468 org.xwiki.rest.Constants: Field XWIKI_COMPONENT_MANAGER has been removed, but it was previously a constant
469 org.xwiki.rest.RangeIterable: Class org.xwiki.rest.RangeIterable removed
470 org.xwiki.rest.Utils: Class org.xwiki.rest.Utils removed
471 org.xwiki.rest.XWikiAuthentication: Class org.xwiki.rest.XWikiAuthentication removed
472 org.xwiki.rest.XWikiJaxRsApplication: Class org.xwiki.rest.XWikiJaxRsApplication removed
473 org.xwiki.rest.XWikiRestletJaxRsApplication: Class org.xwiki.rest.XWikiRestletJaxRsApplication removed
474 org.xwiki.rest.XWikiRestletServlet: Class org.xwiki.rest.XWikiRestletServlet removed
475 org.xwiki.rest.XWikiSecretVerifier: Class org.xwiki.rest.XWikiSecretVerifier removed
476 org.xwiki.rest.XWikiSetupCleanupFilter: Class org.xwiki.rest.XWikiSetupCleanupFilter removed
477 org.xwiki.rest.representations.TextPlainReader: Class org.xwiki.rest.representations.TextPlainReader removed
478 org.xwiki.rest.representations.comments.FormUrlEncodedCommentReader: Class org.xwiki.rest.representations.comments.FormUrlEncodedCommentReader removed
479 org.xwiki.rest.representations.comments.TextPlainCommentReader: Class org.xwiki.rest.representations.comments.TextPlainCommentReader removed
480 org.xwiki.rest.representations.objects.FormUrlEncodedObjectReader: Class org.xwiki.rest.representations.objects.FormUrlEncodedObjectReader removed
481 org.xwiki.rest.representations.objects.FormUrlEncodedPropertyReader: Class org.xwiki.rest.representations.objects.FormUrlEncodedPropertyReader removed
482 org.xwiki.rest.representations.objects.TextPlainPropertyReader: Class org.xwiki.rest.representations.objects.TextPlainPropertyReader removed
483 org.xwiki.rest.representations.pages.FormUrlEncodedPageReader: Class org.xwiki.rest.representations.pages.FormUrlEncodedPageReader removed
484 org.xwiki.rest.representations.pages.TextPlainPageReader: Class org.xwiki.rest.representations.pages.TextPlainPageReader removed
485 org.xwiki.rest.representations.tags.FormUrlEncodedTagsReader: Class org.xwiki.rest.representations.tags.FormUrlEncodedTagsReader removed
486 org.xwiki.rest.representations.tags.TextPlainTagsReader: Class org.xwiki.rest.representations.tags.TextPlainTagsReader removed
487 {{/code}}
488 )))
489 * Not a breakage! This class has been moved to the xwiki-platform-rest-model where it logically belongs to:(((
490 {{code}}
491 org.xwiki.rest.Relations: Class org.xwiki.rest.Relations removed
492 {{/code}}
493 )))
494 * Not a breakage! The plugin has been moved to its own module.(((
495 {{code}}
496 com.xpn.xwiki.plugin.feed.FeedPlugin: Class com.xpn.xwiki.plugin.feed.FeedPlugin removed
497 com.xpn.xwiki.plugin.feed.FeedPlugin$EntriesComparator: Class com.xpn.xwiki.plugin.feed.FeedPlugin$EntriesComparator removed
498 com.xpn.xwiki.plugin.feed.FeedPlugin$SyndEntryComparator: Class com.xpn.xwiki.plugin.feed.FeedPlugin$SyndEntryComparator removed
499 com.xpn.xwiki.plugin.feed.FeedPluginApi: Class com.xpn.xwiki.plugin.feed.FeedPluginApi removed
500 com.xpn.xwiki.plugin.feed.SyndEntryDocumentSource: Class com.xpn.xwiki.plugin.feed.SyndEntryDocumentSource removed
501 com.xpn.xwiki.plugin.feed.SyndEntryDocumentSource$PropertySelector: Class com.xpn.xwiki.plugin.feed.SyndEntryDocumentSource$PropertySelector removed
502 com.xpn.xwiki.plugin.feed.SyndEntrySource: Class com.xpn.xwiki.plugin.feed.SyndEntrySource removed
503 com.xpn.xwiki.plugin.feed.SyndEntrySourceApi: Class com.xpn.xwiki.plugin.feed.SyndEntrySourceApi removed
504 com.xpn.xwiki.plugin.feed.UpdateThread: Class com.xpn.xwiki.plugin.feed.UpdateThread removed
505 com.xpn.xwiki.plugin.feed.XWikiFeedFetcher: Class com.xpn.xwiki.plugin.feed.XWikiFeedFetcher removed
506 com.xpn.xwiki.plugin.feed.XWikiFeedFetcher$CredentialSupplier: Class com.xpn.xwiki.plugin.feed.XWikiFeedFetcher$CredentialSupplier removed
507 {{/code}}
508 )))
509 * Module has been retired as it was unmaintained.(((
510 {{code}}
511 com.xpn.xwiki.plugin.userdirectory.Group: Class com.xpn.xwiki.plugin.userdirectory.Group removed
512 com.xpn.xwiki.plugin.userdirectory.UserDirectoryPlugin: Class com.xpn.xwiki.plugin.userdirectory.UserDirectoryPlugin removed
513 com.xpn.xwiki.plugin.userdirectory.UserDirectoryPluginAPI: Class com.xpn.xwiki.plugin.userdirectory.UserDirectoryPluginAPI removed
514 {{/code}}
515 )))
516 * Module has been retired as it was unmaintained.(((
517 {{code}}
518 com.xpn.xwiki.plugin.usertools.XWikiUserManagementTools: Class com.xpn.xwiki.plugin.usertools.XWikiUserManagementTools removed
519 com.xpn.xwiki.plugin.usertools.XWikiUserManagementToolsAPI: Class com.xpn.xwiki.plugin.usertools.XWikiUserManagementToolsAPI removed
520 com.xpn.xwiki.plugin.usertools.XWikiUserManagementToolsImpl: Class com.xpn.xwiki.plugin.usertools.XWikiUserManagementToolsImpl removed
521 {{/code}}
522 )))
523 * Added methods for creating workspaces and retrieving workspace templates. Vote mail: [[http://markmail.org/thread/gtxoszztc5lt7o4f]](((
524 {{code}}
525 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
526 org.xwiki.workspace.WorkspaceManager: Method 'public java.util.List getWorkspaceTemplates()' has been added to an interface
527 {{/code}}
528 )))

Get Connected