Wiki source code of Release Notes for XWiki 5.3

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

Show last authors
1 {{box cssClass="floatinginfobox" title="**Contents**"}}
2 {{toc/}}
3 {{/box}}
4
5 This is the release notes for [[XWiki Commons>>http://commons.xwiki.org]], [[XWiki Rendering>>http://rendering.xwiki.org]], [[XWiki Platform>>http://platform.xwiki.org]] and [[XWiki Enterprise>>http://enterprise.xwiki.org]]. They share the same release notes as they are released together and have the same version.
6
7 <insert description of release here>
8
9 = New and Noteworthy (since XWiki 5.2.2) =
10
11 [[Full list of issues fixed and Dashboard for 5.3>>http://jira.xwiki.org/secure/Dashboard.jspa?selectPageId=11698]].
12
13 == Solr Search Improvements ==
14
15 === Search Results Display ===
16
17 We improved the way attachments, objects and object properties are displayed in the list of search results.
18
19 {{image reference="searchAttachmentSort.png"/}}
20
21 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.
22
23 {{image reference="searchObjectResult.png"/}}
24
25 For object results we now display the XClass name instead of the document title.
26
27 {{image reference="searchObjectPropertyResult.png"/}}
28
29 Object property results show the XClass name and the property name instead of the document title.
30
31 === Search Facets ===
32
33 We added a couple of new search facets and we improved the display of some of the existing ones. The search facets are now collapsed by default.
34
35 {{image reference="searchFacets.png"/}}
36
37 The Author and Creator facets now show the user full name, alias and avatar.
38
39 {{image reference="[email protected]"/}}
40
41 The wiki facet displays the wiki pretty name instead of the wiki identifier.
42
43 {{image reference="[email protected]"/}}
44
45 The language facet displays the full language name and country (when applicable) in the current locale.
46
47 {{image reference="searchLanguageFacet.png"/}}
48
49 As you can see there can be documents with no language set. We also added a hint to explain why this is possible.
50
51 {{image reference="[email protected]"/}}
52
53 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).
54
55 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.
56
57 {{image reference="[email protected]"/}}
58
59 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.
60
61 {{image reference="[email protected]"/}}
62
63 === RSS Feed ===
64
65 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.
66
67 See the [[Solr Search Application documentation>>extensions:Extension.Solr Search Application]] for details.
68
69 {{include reference="ReleaseNotesXWiki53M2" section="HWikiStreamimprovements"/}}
70
71 === Import large XARs ===
72
73 It's possible to enable the use of new [[WikiStream>>doc:extensions:Extension.Wiki Stream Module]] 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.
74
75 [[WikiStream>>doc:extensions:Extension.Wiki Stream Module]] is too young to be enabled by default and will require heavy testing. In the meantime you can try it by uncommenting {{code}}#xwiki.action.import.xar.usewikistream=1{{/code}} at the end of xwiki.cfg file.
76
77 {{include reference="ReleaseNotesXWiki53M2" section="HNewSyntaxGuide"/}}
78
79 {{include reference="ReleaseNotesXWiki53M2" section="HMulti-Wiki"/}}
80
81 == Miscellaneous ==
82
83 Changes regarding the multi-wiki support:
84
85 * 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)
86 * When a new wiki is created from the Add Wiki Wizard, its Activity Stream is now empty.
87 * 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.
88 * Deleted users do not appear anymore in the "Top Active Members" list in the wiki dashboard.
89
90 Other changes:
91
92 * The Statistics Application now has an entry point in the Applications Panel (only visible by Admins by default):(((
93 {{image reference="[email protected]"/}}
94 )))
95 * The Scheduler Application now has an entry point in the Applications Panel (only visible by Admins by default):(((
96 {{image reference="[email protected]"/}}
97 )))
98 * 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>>https://randomcoder.org/articles/jsessionid-considered-harmful]] and [[here>>http://java.dzone.com/articles/java-jsessionid-harmful]]).
99 * By default only results from XE instance pings and for non-snapshot versions are counted in [[Active Installs>>extensions:Extension.Active Installs Server Application]].
100 * Added new configuration parameter for the Link Checker: ##rendering.transformation.linkchecker.excludedReferencePatterns## (See [[Reference documentation>>extensions:Extension.Link Checker Transformation]]).
101 * Some XSS fixes.
102
103 See the [[full list of JIRA issues>>http://jira.xwiki.org/sr/jira.issueviews:searchrequest-printable/temp/SearchRequest.html?jqlQuery=project+in+%28XCOMMONS%2C+XRENDERING%2C+XWIKI%2C+XE%29+and+status+%3D+Closed+and+resolution+%3D+Fixed+and+fixVersion+in+%28%225.3-milestone-1%22%2C+%225.3-milestone-2%22%2C+%225.3-rc-1%22%2C+%225.3%22%29&tempMax=1000]] fixed in this release.
104
105 = For Developers =
106
107 {{include reference="ReleaseNotesXWiki53RC1" section="HSearchforDocumentsMatchingSpecificValuesinMultipleXObjectProperties"/}}
108
109 == Search for Documents Matching Specific Attachment Meta Data ==
110
111 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.
112
113 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:
114
115 {{code language="none"}}
116 object:Blog.BlogPostClass AND mimetype:"application/pdf" AND mistake
117
118 title:profile attdate:[NOW-3DAYS TO NOW] AND mimetype:image\/*
119
120 property.XWiki.TagClass.tags:"News" AND attsize:[50000 TO *]
121 {{/code}}
122
123 See [[Solr Schema Design>>design:Design.SolrSchema]] for the list of attachment fields that can be used in the Solr search query.
124
125 {{include reference="ReleaseNotesXWiki53M1" section="HDocumentReferenceLocalenowtakenintoaccountinXWiki23existsandXWiki23getDocument"/}}
126
127 {{include reference="ReleaseNotesXWiki53M1" section="HNewExtensionManagerAPIs"/}}
128
129 {{include reference="ReleaseNotesXWiki53M1" section="HXWikiEnterpriseArchetype"/}}
130
131 {{include reference="ReleaseNotesXWiki53M1" section="HXARpluginimprovements"/}}
132
133 {{include reference="ReleaseNotesXWiki53M1" section="HFoldEvents"/}}
134
135 {{include reference="ReleaseNotesXWiki53M2" section="HMulti-Wiki-1"/}}
136
137 == Deprecated and Retired projects ==
138
139 * Workspace has been moved to https://github.com/xwiki-contrib/xwiki-platform-workspace
140
141 == Upgrades ==
142
143 The following dependencies have been upgraded:
144
145 * [[Bouncy Castle Crypto package 1.49>>http://jira.xwiki.org/browse/XWIKI-9631]] (Warning: Not fully binary compatible)
146 * [[commons-fileupload 1.3>>http://jira.xwiki.org/browse/XCOMMONS-458]]
147 * [[cssparser 0.9.10>>http://jira.xwiki.org/browse/XCOMMONS-459]]
148 * [[Groovy 2.1.9>>http://jira.xwiki.org/browse/XWIKI-9603]]
149 * [[HttpClient 4.3>>http://jira.xwiki.org/browse/XCOMMONS-460]]
150 * [[Struts 1.3.10>>http://jira.xwiki.org/browse/XWIKI-9582]]
151 * [[XStream 1.4.5>>http://jira.xwiki.org/browse/XCOMMONS-462]]
152
153 == Miscellaneous ==
154
155 * [[Script Services implementations have been moved outside of the ##internal## package>>dev:Community.JavaCodeStyle||anchor="HPackagenames"]] in order for CLIRR to check them for backward incompatibilities and so that their API are made available in generated Javadoc.
156 * [[New Java API + a few new APIs in the Git module>>extensions:Extension.Git Module]]
157 * New {{code language="none"}}com.xpn.xwiki.doc.XWikiDocument#getDocumentReferenceWithLocale(){{/code}} method to get the real reference of the document to use in {{code language="none"}}com.xpn.xwiki.XWiki#getDocument(DocumentReference, XWikiContext){{/code}} for example
158 * You can now easily [[run functional tests using PhantomJS>>dev:Community.Testing||anchor="HSelenium2-basedFramework"]] by using ##-Dbrowser=*phantomjs##.
159
160 = Translations =
161
162 The following translations have been updated:
163
164 {{language codes="ca, da, de, es, fr, it, lv, nl, pt_BR, ru, sv, uk"/}}
165
166 = Tested Browsers & Databases =
167
168 {{include reference="TestReports.ManualTestReportXWiki53Summary"/}}
169
170 = Known issues =
171
172 * [[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]]
173
174 = Backward Compatibility and Migration Notes =
175
176 == General Notes ==
177
178 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.
179
180 == Solr Search Index ==
181
182 {{error}}
183 We made important changes to the [[Solr schema>>http://design.xwiki.org/xwiki/bin/view/Design/SolrSchema]] 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.
184 {{/error}}
185
186 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:
187
188 {{code language="none"}}
189 ## Before
190 #set ($classFullName = $searchResult.get('class'))
191 ##
192 ## Now
193 #set ($classFullName = $searchResult.get('class').get(0))
194 {{/code}}
195
196 == API Breakages ==
197
198 The following APIs were modified since XWiki 5.2.2:
199
200 * Requesting a dependency without indicating the namespace does not really make sense. This interface is not really supposed to be implemented anyway.
201
202 {{code language="none"}}
203 org.xwiki.extension.ExtensionManager: Method 'public org.xwiki.extension.Extension resolveExtension(org.xwiki.extension.ExtensionDependency, java.lang.String)' has been added to an interface
204 {{/code}}
205
206 * Needed to filter search by namespace. This interface is not really supposed to be implemented anyway.
207
208 {{code language="none"}}
209 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
210 {{/code}}
211
212 * Young API. Not supposed to be implemented from outside.
213
214 {{code language="none"}}
215 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
216 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
217 {{/code}}
218
219 * Young API. Not supposed to be implemented from outside.
220
221 {{code language="none"}}
222 org.xwiki.filter.FilterDescriptorManager: Method 'public java.lang.Object createCompositeFilter(java.lang.ClassLoader, java.lang.Object[])' has been added to an interface
223 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
224 {{/code}}
225
226 * Young API that has been refactored to introduce the new Resource module.
227
228 {{code language="none"}}
229 org.xwiki.url.AbstractXWikiURL: Class org.xwiki.url.AbstractXWikiURL removed
230 org.xwiki.url.URLCreationException: Class org.xwiki.url.URLCreationException removed
231 org.xwiki.url.UnsupportedURLException: Class org.xwiki.url.UnsupportedURLException removed
232 org.xwiki.url.XWikiEntityURL: Class org.xwiki.url.XWikiEntityURL removed
233 org.xwiki.url.XWikiURL: Class org.xwiki.url.XWikiURL removed
234 org.xwiki.url.XWikiURLFactory: Class org.xwiki.url.XWikiURLFactory removed
235 org.xwiki.url.XWikiURLManager: Class org.xwiki.url.XWikiURLManager removed
236 org.xwiki.url.XWikiURLSerializer: Class org.xwiki.url.XWikiURLSerializer removed
237 org.xwiki.url.XWikiURLType: Class org.xwiki.url.XWikiURLType removed
238 {{/code}}
239
240 * XWikiURL (now Resource) should only be in the Execution Context and not in the Request.
241
242 {{code language="none"}}
243 org.xwiki.container.servlet.ServletRequest: Method 'public org.xwiki.url.XWikiURL getURL()' has been removed
244 org.xwiki.container.servlet.ServletRequest: Method 'public void setXWikiURL(org.xwiki.url.XWikiURL)' has been removed
245 org.xwiki.container.portlet.PortletRequest: Method 'public org.xwiki.url.XWikiURL getURL()' has been removed
246 org.xwiki.container.portlet.PortletRequest: Method 'public void setXWikiURL(org.xwiki.url.XWikiURL)' has been removed
247 org.xwiki.container.Request: Field XWIKI_URL has been removed, but it was previously a constant
248 {{/code}}
249
250 * Lots of refactoring in WikiStream.
251
252 {{code language="none"}}
253 org.xwiki.wikistream.xml.input.source.SourceInputSource: Class org.xwiki.wikistream.xml.input.source.SourceInputSource removed
254 org.xwiki.wikistream.WikiStream: Class org.xwiki.wikistream.WikiStream removed
255 org.xwiki.wikistream.descriptor.DefaultWikiStreamBeanParameterDescriptor: Method 'public java.lang.reflect.Type getPropertyType()' has been removed
256 org.xwiki.wikistream.descriptor.WikiStreamPropertyDescriptor: Method 'public java.lang.reflect.Type getPropertyType()' has been removed
257 org.xwiki.wikistream.descriptor.WikiStreamPropertyDescriptor: Method 'public java.lang.reflect.Type getType()' has been added to an interface
258 org.xwiki.wikistream.filter.FarmFilter: Class org.xwiki.wikistream.filter.FarmFilter removed
259 org.xwiki.wikistream.filter.WikiAttachmentFilter: Class org.xwiki.wikistream.filter.WikiAttachmentFilter removed
260 org.xwiki.wikistream.filter.WikiClassFilter: Class org.xwiki.wikistream.filter.WikiClassFilter removed
261 org.xwiki.wikistream.filter.WikiClassPropertyFilter: Class org.xwiki.wikistream.filter.WikiClassPropertyFilter removed
262 org.xwiki.wikistream.filter.WikiDocumentFilter: Class org.xwiki.wikistream.filter.WikiDocumentFilter removed
263 org.xwiki.wikistream.filter.WikiFilter: Class org.xwiki.wikistream.filter.WikiFilter removed
264 org.xwiki.wikistream.filter.WikiObjectFilter: Class org.xwiki.wikistream.filter.WikiObjectFilter removed
265 org.xwiki.wikistream.filter.WikiObjectPropertyFilter: Class org.xwiki.wikistream.filter.WikiObjectPropertyFilter removed
266 org.xwiki.wikistream.filter.WikiSpaceFilter: Class org.xwiki.wikistream.filter.WikiSpaceFilter removed
267 org.xwiki.wikistream.input.BeanInputWikiStreamFactory: Removed org.xwiki.wikistream.WikiStream from the set of implemented interfaces
268 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
269 org.xwiki.wikistream.input.InputWikiStreamFactory: Removed org.xwiki.wikistream.WikiStream from the set of implemented interfaces
270 org.xwiki.wikistream.output.BeanOutputWikiStreamFactory: Removed org.xwiki.wikistream.WikiStream from the set of implemented interfaces
271 org.xwiki.wikistream.output.BeanOutputWikiStreamFactory: Method 'public org.xwiki.wikistream.output.OutputWikiStream creaOutputWikiStream(java.lang.Object)' has been removed
272 org.xwiki.wikistream.output.BeanOutputWikiStreamFactory: Method 'public org.xwiki.wikistream.internal.output.BeanOutputWikiStream createOutputWikiStream(java.lang.Object)' has been added to an interface
273 org.xwiki.wikistream.output.OutputWikiStreamFactory: Removed org.xwiki.wikistream.WikiStream from the set of implemented interfaces
274 org.xwiki.wikistream.output.OutputWikiStreamFactory: Method 'public org.xwiki.wikistream.output.OutputWikiStream creaOutputWikiStream(java.util.Map)' has been removed
275 org.xwiki.wikistream.output.OutputWikiStreamFactory: Method 'public org.xwiki.wikistream.output.OutputWikiStream createOutputWikiStream(java.util.Map)' has been added to an interface
276 org.xwiki.wikistream.type.WikiStreamType: Removed field XWIKI_XAR
277 org.xwiki.wikistream.instance.input.AbstractInstanceInputEventGenerator: Removed org.xwiki.wikistream.filter.FarmFilter from the set of implemented interfaces
278 org.xwiki.wikistream.instance.input.AbstractInstanceInputEventGenerator: Removed org.xwiki.wikistream.filter.WikiDocumentFilter from the set of implemented interfaces
279 org.xwiki.wikistream.instance.input.AbstractInstanceInputEventGenerator: Removed org.xwiki.wikistream.filter.WikiFilter from the set of implemented interfaces
280 org.xwiki.wikistream.instance.input.AbstractInstanceInputEventGenerator: Removed org.xwiki.wikistream.filter.WikiSpaceFilter from the set of implemented interfaces
281 org.xwiki.wikistream.instance.input.EntityEventGenerator: Method 'public org.xwiki.wikistream.descriptor.WikiStreamDescriptor getDescriptor()' has been added to an interface
282 org.xwiki.wikistream.instance.input.InstanceInputEventGenerator: Removed org.xwiki.wikistream.filter.FarmFilter from the set of implemented interfaces
283 org.xwiki.wikistream.instance.input.InstanceInputEventGenerator: Removed org.xwiki.wikistream.filter.WikiDocumentFilter from the set of implemented interfaces
284 org.xwiki.wikistream.instance.input.InstanceInputEventGenerator: Removed org.xwiki.wikistream.filter.WikiFilter from the set of implemented interfaces
285 org.xwiki.wikistream.instance.input.InstanceInputEventGenerator: Removed org.xwiki.wikistream.filter.WikiSpaceFilter from the set of implemented interfaces
286 org.xwiki.wikistream.instance.input.InstanceInputEventGenerator: Method 'public org.xwiki.wikistream.descriptor.WikiStreamDescriptor getDescriptor()' has been added to an interface
287 org.xwiki.wikistream.instance.input.InstanceInputEventGenerator: Method 'public java.util.Collection getFilterInterfaces()' has been added to an interface
288 org.xwiki.wikistream.instance.input.InstanceInputEventGenerator: Method 'public void setWikiDocumentParameters(java.lang.String, org.xwiki.filter.FilterEventParameters)' has been added to an interface
289 org.xwiki.wikistream.instance.input.InstanceInputEventGenerator: Method 'public void setWikiFarmParameters(org.xwiki.filter.FilterEventParameters)' has been added to an interface
290 org.xwiki.wikistream.instance.input.InstanceInputEventGenerator: Method 'public void setWikiParameters(java.lang.String, org.xwiki.filter.FilterEventParameters)' has been added to an interface
291 org.xwiki.wikistream.instance.input.InstanceInputEventGenerator: Method 'public void setWikiSpaceParameters(java.lang.String, org.xwiki.filter.FilterEventParameters)' has been added to an interface
292 org.xwiki.wikistream.instance.output.OutputInstanceWikiStreamFactory: Removed org.xwiki.wikistream.WikiStream from the set of implemented interfaces
293 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
294 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
295 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
296 org.xwiki.wikistream.script.WikiStreamScriptService: Method 'public org.xwiki.wikistream.input.InputWikiStream createInputWikiStream(org.xwiki.wikistream.type.WikiStreamType, java.util.Map)' has been removed
297 org.xwiki.wikistream.script.WikiStreamScriptService: Method 'public org.xwiki.wikistream.output.OutputWikiStream createOutputWikiStream(org.xwiki.wikistream.type.WikiStreamType, java.util.Map)' has been removed
298 {{/code}}

Get Connected