Wiki source code of Release Notes for XWiki 4.3

Version 4.1 by Thomas Mortagne on 2012/11/22

Show last authors
1 {{box cssClass="floatinginfobox" title="**Contents**"}}
2 {{toc/}}
3 {{/box}}
4
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
7 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.
8
9 = New and Noteworthy (since XWiki 4.2) =
10
11 == Default date picker ==
12
13 The date picker from [[AppWithinMinutes>>extensions:Extension.App Within Minutes Application]] is now the default picker for all [[XClass>>platform:DevGuide.DataModel]] 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.
14
15 {{image reference="ReleaseNotesXWiki43M2@DatePicker.png"/}}
16
17 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.
18
19 == User and Group picker ==
20
21 We added a user and group picker that is used by default for all [[XClass>>platform:DevGuide.DataModel]] 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.
22
23 {{image reference="ReleaseNotesXWiki43M2@userPicker-editMultiple.png"/}}
24
25 In single selection mode whenever you select an user it overwrites the previously selected user.
26
27 {{image reference="ReleaseNotesXWiki43M2@userPicker-editSingle-objectEditor.png"/}}
28
29 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.
30
31 {{image reference="ReleaseNotesXWiki43M2@userPicker-viewMultiple.png"/}}
32
33 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.
34
35 {{image reference="ReleaseNotesXWiki43M2@groupPicker-editMultiple.png"/}}
36
37 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.
38
39 {{image reference="ReleaseNotesXWiki43M2@userPicker-scope.png"/}}
40
41 You can check this if you edit a group from a subwiki (in a multiwiki environment).
42
43 {{image reference="ReleaseNotesXWiki43M2@groupSheet-edit.png"/}}
44
45 == Workspace Templates ==
46
47 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.
48
49 {{image reference="ReleaseNotesXWiki43M1@workspaceTemplates.png"/}}
50
51 Please see the current workaround for [[creating workspace templates>>http://jira.xwiki.org/browse/XWIKI-8285]] (as admin) until an easy UI becomes available.
52
53 == Experimental Solr based search engine ==
54
55 A new and experimental search engine based on [[Apache Solr>>http://lucene.apache.org/solr/]] is now available.
56
57 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]].
58
59 {{image reference="ReleaseNotesXWiki43M2@solrSearchFilters.png"/}}
60
61 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##.
62
63 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.
64
65 {{image reference="ReleaseNotesXWiki43M2@solrSearchAdmin.png"/}}
66
67 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)##.
68
69 == Extension Manager improvements ==
70
71 {{error}}
72 If you're migrating from a version older than 4.2 or without any properly installed UI extensions you will notice that the Applications Panels is not visible by default. This is caused by [[this issue>>http://jira.xwiki.org/browse/XWIKI-8461]] which should be fixed in XWiki 4.4. 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. You thus need to manually go the the Administration and add the ##Panels.Applications## name to the Panels list.
73 {{/error}}
74
75 === UI ===
76
77 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.
78
79 {{image reference="ReleaseNotesXWiki43M1@EM-AsyncDependencyLoading.png"/}}
80
81 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.
82
83 {{image reference="ReleaseNotesXWiki43M1@EM-liveInstallPlan.png"/}}
84
85 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.
86
87 === Private repositories ===
88
89 Maven and XWiki repositories now support authentication. You can indicate a user and a password in ##xwiki.properties## file the following way:
90
91 {{code language="properties"}}
92 extension.repositories=privatemavenid:maven:http://host.com/private/maven/
93 extension.repositories.privatemavenid.auth.user=someuser
94 extension.repositories.privatemavenid.auth.user=password
95
96 extension.repositories=extensions.xwiki.org:xwiki:http://extensions.xwiki.org/xwiki/rest/
97 extension.repositories.extensions.xwiki.org.auth.user=someuser
98 extension.repositories.extensions.xwiki.org.auth.user=password
99 {{/code}}
100
101 == Distribution Wizard improvements ==
102
103 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.
104
105 {{image reference="ReleaseNotesXWiki43M1@DistributionWizard-emptyDatabase.png"/}}
106
107 When a step is done we visually mark it.
108
109 {{image reference="ReleaseNotesXWiki43M1@DistributionWizard-stepDone.png"/}}
110
111 == Miscellaneous ==
112
113 * XWiki's multiwiki feature (a.k.a "virtual mode") now works with the HSQLDB database
114 * It's now possible to configure the LDAP timeout. See ##xwiki.authentication.ldap.timeout## property in xwiki.cfg file.
115 * New available [[Rendering syntax>>rendering:Main.WebHome]]: [[APT>>http://maven.apache.org/doxia/references/apt-format.html]]
116 * Technical pages of the [[IRCBot Application>>extensions:Extension.IRC Bot Application]] are now hidden and the application now registers itself in the Application panel:(((
117 {{image reference="ReleaseNotesXWiki43M1@ircbotapp.png"/}}
118 )))
119 * Search Admin UI improvements ({{jira style="enum" url="http://jira.xwiki.org"}}XWIKI-8408{{/jira}}):(((
120 {{image reference="ReleaseNotesXWiki43M2@searchAdminUINew.png"/}}
121 )))
122 * Automatically register translations for the FAQ and IRCBot applications
123 * Important Bug Fixes:
124 ** Fixed failure to import Office documents when using Filesystem Attachments.
125 ** Fixed regression that caused "share by email" and "reset password" functions to fail to send any email.
126
127 See the [[full list of JIRA issues>>http://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.
128
129 = For Developers =
130
131 == New Localization Module ==
132
133 A new localization module has been introduced to replace the old XWikiMessageTool.
134
135 See [[extensions:Extension.Localization Module]] for more details.
136
137 == REST API improvements ==
138
139 Some improvements have been done to the REST API in order to allow more powerful searches of the data stored in the wiki.
140
141 * Results can be ordered using the ##/wikis/{wikiName}/search## and ##/wikis/{wikiName}/spaces/{spaceName}/search## resources with the following parameters:
142 ** //orderField//: one of the XWiki document field, as specified in [[HQL Query Examples in Velocity>>platform:DevGuide.velocityHqlExamples]]
143 ** //order//: ##asc## or ##desc##". By default ##asc## is used.
144
145 * Advanced search queries can be specified using ##/wikis/{wikiName}/query## resources with the following parameters:
146 ** //q//: the query to be executed (it depends on the query type)
147 ** //type//: ##hql##, ##xwql## or ##lucene##. Depending on the query type, the //q// parameter will contain a query matching the type
148 *** For ##hql## it's like a searchDocuments query, as shown in specified in [[HQL Query Examples in Velocity>>platform:DevGuide.velocityHqlExamples]].
149 *** For ##xwql## the user is allowed to use XWQL syntax for short queries ([[XWiki Query Language Specification>>dev:Design.XWiki Query Language Specification]])
150 *** For ##lucene## it's a standard Lucene query handled by the Lucene plugin ([[Lucene Plugin>>extensions:Extension.Lucene Plugin]])
151 ** Standard parameters like //start//, //number// can be specified to control the number of the results to be returned.
152
153 * Multi-wiki Lucene search using the ##/wikis/query## resource with the following parameters:
154 ** //q//: the Lucene query handled by the Lucene plugin ([[Lucene Plugin>>extensions:Extension.Lucene Plugin]])
155 ** //wikis//: a comma separated list of wikis where to perform the search.
156
157 * XARs can be imported in Wikis by POSTing it to the /wikis/{wikiName}
158 * New wikis can be created using the /wikimanager resource. (This resource is only available with XWiki Enterprise Manager)
159
160 For more information see [[XWiki RESTful API>>platform:Features.XWikiRESTfulAPI]]
161
162 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>>platform:Features.XWikiRESTfulAPI]].
163
164 == Execution context property declarations ==
165
166 Execution context properties can now be associated with various metadata attributes. See [[the documentation on the execution context>>doc:platform:DevGuide.SavingData||anchor="HExecutionContext"]] for more information.
167
168 == New Scope property for wiki components and UI extensions ==
169
170 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:
171
172 * Current Wiki, the component/UI extension will be available in the current wiki
173 * Global, the component/UI extension will be available in all the wikis (wiki farms)
174 * Current User, the component/UI extension will only be available for its author
175
176 == Deprecated and Retired projects ==
177
178 * The ##userdirectorty## and ##usertools## plugins have been retired since they were unmaintained and mostly replaced by other features such as the Invitation module.
179
180 == Upgrades ==
181
182 The following dependencies have been upgraded:
183
184 * [[HSQLDB 2.2.9>>http://hsqldb.org/doc/2.0/changelist_2_0.txt]]
185 * [[mysql-connector-java 5.1.21>>http://dev.mysql.com/doc/refman/5.1/en/cj-news-5-1-x.html]]
186 * [[slf4j 1.7.2>>http://www.slf4j.org/news.html]]
187 * logback [[1.0.7>>http://logback.qos.ch/news.html]]
188 * [[guava 13.0.1>>http://code.google.com/p/guava-libraries/wiki/Release13]]
189 * [[Lucene 3.6.1>>https://wiki.apache.org/lucene-java/Lucene3.6.1]]
190 * [[XStream 1.4.3>>http://xstream.codehaus.org/changes.html]]
191 * [[commons-io 2.4>>http://commons.apache.org/io/upgradeto2_4.html]]
192 * [[httpclient 4.2.2>>http://www.apache.org/dist/httpcomponents/httpclient/RELEASE_NOTES.txt]]
193 * [[commons-configuration 1.9>>http://commons.apache.org/configuration/changes-report.html#a1.9]]
194 * [[jcl-over-slf4j and log4j-over-slf4j 1.7.2>>http://www.slf4j.org/news.html]]
195 * Groovy [[1.8.7>>http://jira.codehaus.org/secure/ReleaseNote.jspa?projectId=10242&version=18317]] [[1.8.8>>http://jira.codehaus.org/secure/ReleaseNote.jspa?projectId=10242&version=18684]]
196 * [[JGroups 3.2.0.Final>>http://belaban.blogspot.fr/2012/10/jgroups-320final-released.html]]
197 * [[Xerces-J 2.10.0>>http://xerces.apache.org/xerces2-j/releases.html]]
198 * [[JavaMail 1.4.5>>http://www.oracle.com/technetwork/java/javamail/index-138643.html]]
199 * [[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]]
200 * [[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]]
201
202 == Miscellaneous ==
203
204 * New ##org.xwiki.rendering.block.CompositeBlock## introduce to allow passing several Blocks as one Block
205 * New ##$services.model.getEntityReferenceValue## method that returns the value configured for a specific entity type
206 * 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.
207 * Fixed a bug about incorrect results in multi-wiki lucene search in the REST API.
208 * Add a ##java.util.Locale## converter which allow:
209 ** using Locale in rendering macro parameter(s)
210 ** support Java method with Locale parameter(s) in Velocity. See [[Method Arguments Uberspector>>extensions:Extension.Velocity Module||anchor="HMethodArgumentsUberspector"]] for more details.
211 * 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.
212 * Activity Stream UI and Color Theme UI have been moved to their own modules.
213
214 == Translations ==
215
216 The following translations have been updated:
217
218 {{language codes="fr, sv, da, de, pt_BR"/}}
219
220 = Tested Browsers =
221
222 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]]):
223
224 {{velocity}}
225 ## name = iexplorer, firefox, chrome, safari, opera
226 {{/velocity}}
227
228 {{browser name="firefox" version="10.6.1"/}}
229
230 = Known issues =
231
232 * [[Bugs we know about>>http://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]]
233
234 = Test Report =
235
236 You can check the [[manual test report>>TestReports.WebHome#<anchor to test report>]] to learn about what was tested and the results on various browsers.
237
238 = Backward Compatibility and Migration Notes =
239
240 == General Notes ==
241
242 You may also want to [[import the default wiki XAR>>Main.Download]] in order to benefit from all the improvements listed above.
243
244 {{warning}}
245 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.
246 {{/warning}}
247
248 == Issues specific to XWiki 4.3 ==
249
250 * Since the ##userdirectorty## 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.
251 * 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.
252 * 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="http://jira.xwiki.org"}}XWIKI-8398{{/jira}}.
253
254 == API Breakages ==
255
256 The following APIs were modified since XWiki 4.2:
257
258 {{code language="none"}}
259 <clirr output here>
260 {{/code}}

Get Connected