Version 26.1 by Marius Dumitru Florea on 2013/10/28

Hide last authors
Thomas Mortagne 1.1 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
Marius Dumitru Florea 26.1 7 This is more a developer oriented release with new Extension Manager APIs, an XWiki Enterprise Maven Archetype, XAR plugin improvements and fold observation events but it also has a number of bug fixes (36) and improvements (22) that the users will appreciate.
Thomas Mortagne 1.1 8
9 = New and Noteworthy (since XWiki 5.2) =
10
11 [[Full list of issues fixed and Dashboard for 5.3>>http://jira.xwiki.org/secure/Dashboard.jspa?selectPageId=11698]].
12
13 == Miscellaneous ==
14
Vincent Massol 18.1 15 * Some XSS fixes.
Marius Dumitru Florea 25.2 16 * By default only results from XE instance pings and for non-snapshot versions are counted in [[Active Installs>>extensions:Extension.Active Installs Server Application]].
Thomas Mortagne 1.1 17
18 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%2C+XEM%29+and+status+%3D+Closed+and+resolution+%3D+Fixed+and+fixVersion+%3D+%22<version>%22&tempMax=1000]] fixed in this release.
19
20 = For Developers =
21
Thomas Mortagne 7.1 22 == DocumentReference Locale now taken into account in XWiki#exists and XWiki#getDocument ==
Thomas Mortagne 1.1 23
Vincent Massol 9.1 24 You can now use ##XWiki#exist## method to check for some translation existence too, before that the only way was to either load the XWikiDocument or write your own XWQL or HQL query.
Thomas Mortagne 1.1 25
Vincent Massol 9.1 26 ##XWiki#getDocument## has been modified accordingly too to be consistent so you don't need to go through ##XWikiDocument#getTranslatedDocument## anymore.
Thomas Mortagne 7.1 27
28 It also mean that you need to be careful of what Locale is in the DocumentReference with those APIs now.
29
Manuel Smeria 19.2 30 == New Extension Manager APIs ==
Thomas Mortagne 15.1 31
Manuel Smeria 19.2 32 === Extension sub script services ===
Thomas Mortagne 15.1 33
34 The ##extension## service now expose an extension point for extension related script service so that it's used as entry point for all of them.
35
36 By default the following are provided:
Manuel Smeria 19.2 37
Thomas Mortagne 15.1 38 * $services.extension.core (for core extensions APIs)
39 * $services.extension.local (for local extensions APIs)
40 * $services.extension.installed (for installed extensions APIs)
41 * $services.extension.xar (for XAR extension APIS)
42
Manuel Smeria 19.2 43 === Search for installed extension in a specific namespace ===
Thomas Mortagne 16.1 44
45 The following method has been added ##org.xwiki.extension.repository.InstalledExtensionRepository##:
46
47 {{code language="java"}}
48 /**
49 * Search installed extensions based of the provided pattern and only in the passed namespace.
50 * <p>
51 * The pattern is a simple character chain.
52 *
53 * @param pattern the pattern to search
54 * @param namespace the namespace where to search
55 * @param offset the offset from where to start returning search results
56 * @param nb the maximum number of search results to return
57 * @return the found extensions descriptors, empty list if nothing could be found
58 * @throws SearchException error when trying to search provided pattern
59 * @since 5.3M1
60 */
Thomas Mortagne 17.1 61 IterableResult<Extension> searchInstalledExtensions(String pattern, String namespace, int offset, int nb) throws SearchException;
Thomas Mortagne 16.1 62 {{/code}}
63
Vincent Massol 9.1 64 == XWiki Enterprise Archetype ==
65
66 A new archetype is now available to easily create your own product based on XWiki Enterprise. To use:
67
68 {{code}}
69 mvn archetype:generate \
70 -DarchetypeArtifactId=xwiki-enterprise-archetype \
71 -DarchetypeGroupId=org.xwiki.enterprise \
72 -DarchetypeVersion=5.3-milestone-1
73 {{/code}}
74
Vincent Massol 10.1 75 == XAR plugin improvements ==
76
77 The XAR plugin now provides the ability to change values in the XML pages. For example:
78
79 {{code}}
80 <plugin>
81 <groupId>org.xwiki.commons</groupId>
82 <artifactId>xwiki-commons-tool-xar-plugin</artifactId>
83 <configuration>
84 <transformations>
85 <transformation>
86 <file>Blog/WebHome.xml</file>
87 <xpath>/xwikidoc/object/property/itemsPerPage</xpath>
88 <value>100</value>
89 </transformation>
90 <transformation>
91 <artifact>org.xwiki.platform:xwiki-platform-administration-ui</artifact>
92 <file>XWiki/XWikiPreferences.xml</file>
93 <xpath>/xwikidoc/object/property/colorTheme</xpath>
94 <value>ColorThemes.Mint</value>
95 </transformation>
96 </transformations>
97 </configuration>
98 </plugin>
99 {{/code}}
100
Guillaume Delhumeau 23.1 101 == Fold Events ==
102
103 A new kind of event is now available. An event tagged as "Fold" can be sent by a task that generates some events during its execution. Then, these generated events can be seen as children of the main task. In addition, the [[Activity Stream>>extensions:Extension.Activity Stream Plugin]] will not record these child events.
104
105 More documentation available on the [[Observation Module>>extensions:Extension.Observation Module Local]] page.
106
Vincent Massol 11.1 107 == Miscellaneous ==
108
109 * [[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.
110
Thomas Mortagne 1.1 111 == Upgrades ==
112
113 The following dependencies have been upgraded:
114
115 * [[commons-fileupload 1.3>>http://jira.xwiki.org/browse/XCOMMONS-458]]
Thomas Mortagne 2.1 116 * [[cssparser 0.9.10>>http://jira.xwiki.org/browse/XCOMMONS-459]]
Thomas Mortagne 3.1 117 * [[XStream 1.4.5>>http://jira.xwiki.org/browse/XCOMMONS-462]]
Thomas Mortagne 13.1 118 * [[HttpClient 4.3>>http://jira.xwiki.org/browse/XCOMMONS-460]]
Vincent Massol 19.1 119 * [[Struts 1.3.10>>http://jira.xwiki.org/browse/XWIKI-9582]]
Thomas Mortagne 1.1 120
121 = Translations =
122
123 The following translations have been updated:
124
Marius Dumitru Florea 24.1 125 {{language codes="da, de, fr, it, lv, pt_BR"/}}
Thomas Mortagne 1.1 126
127 = Tested Browsers & Databases =
128
Manuel Smeria 19.2 129 {{include reference="TestReports.ManualTestReportXWiki53M1Summary"/}}
Thomas Mortagne 1.1 130
131 = Known issues =
132
133 * [[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]]
134
135 = Backward Compatibility and Migration Notes =
136
137 == General Notes ==
138
139 You may also want to [[import the default wiki XAR>>Main.Download]] in order to benefit from all the improvements listed above.
140
141 {{warning}}
142 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.
143 {{/warning}}
144
145 == API Breakages ==
146
Marius Dumitru Florea 25.1 147 The following APIs were modified since XWiki 5.2:
Thomas Mortagne 1.1 148
Marius Dumitru Florea 25.1 149 * Very young API. Never fully worked.
150
Thomas Mortagne 1.1 151 {{code language="none"}}
Marius Dumitru Florea 25.1 152 org.xwiki.xml.stax.SAXEventConsumer: Class org.xwiki.xml.stax.SAXEventConsumer removed
153 org.xwiki.xml.stax.SAXEventWriter: Removed org.xwiki.xml.stax.SAXEventConsumer from the list of superclasses
Thomas Mortagne 1.1 154 {{/code}}
Marius Dumitru Florea 25.1 155
156 * Requesting a dependency without indicating the namespace does not really make sense. This interface is not really supposed to be implemented anyway.
157
158 {{code language="none"}}
159 org.xwiki.extension.ExtensionManager: Method 'public org.xwiki.extension.Extension resolveExtension(org.xwiki.extension.ExtensionDependency, java.lang.String)' has been added to an interface
160 {{/code}}
161
162 * Needed to filter search by namespace. This interface is not really supposed to be implemented anyway.
163
164 {{code language="none"}}
165 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
166 {{/code}}
167
168 * Young API.
169
170 {{code language="none"}}
171 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
172 {{/code}}
173
174 * Young API that has been refactored to introduce the new Resource module.
175
176 {{code language="none"}}
177 org.xwiki.url.AbstractXWikiURL: Class org.xwiki.url.AbstractXWikiURL removed
178 org.xwiki.url.URLCreationException: Class org.xwiki.url.URLCreationException removed
179 org.xwiki.url.UnsupportedURLException: Class org.xwiki.url.UnsupportedURLException removed
180 org.xwiki.url.XWikiEntityURL: Class org.xwiki.url.XWikiEntityURL removed
181 org.xwiki.url.XWikiURL: Class org.xwiki.url.XWikiURL removed
182 org.xwiki.url.XWikiURLFactory: Class org.xwiki.url.XWikiURLFactory removed
183 org.xwiki.url.XWikiURLManager: Class org.xwiki.url.XWikiURLManager removed
184 org.xwiki.url.XWikiURLSerializer: Class org.xwiki.url.XWikiURLSerializer removed
185 org.xwiki.url.XWikiURLType: Class org.xwiki.url.XWikiURLType removed
186 {{/code}}
187
188 * XWikiURL (now Resource) should only be in the Execution Context and not in the Request.
189
190 {{code language="none"}}
191 org.xwiki.container.servlet.ServletRequest: Method 'public org.xwiki.url.XWikiURL getURL()' has been removed
192 org.xwiki.container.servlet.ServletRequest: Method 'public void setXWikiURL(org.xwiki.url.XWikiURL)' has been removed
193 org.xwiki.container.portlet.PortletRequest: Method 'public org.xwiki.url.XWikiURL getURL()' has been removed
194 org.xwiki.container.portlet.PortletRequest: Method 'public void setXWikiURL(org.xwiki.url.XWikiURL)' has been removed
195 org.xwiki.container.Request: Field XWIKI_URL has been removed, but it was previously a constant
196 {{/code}}

Get Connected