Wiki source code of Release Notes for XWiki 5.3 Milestone 1
Version 27.3 by Vincent Massol on 2013/10/28
Show last authors
author | version | line-number | content |
---|---|---|---|
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 | 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. | ||
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 | |||
15 | * Some XSS fixes. | ||
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]]. | ||
17 | * When a new wiki is created from the Add Wiki Wizard, its Activity Stream is now empty. | ||
18 | |||
19 | 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. | ||
20 | |||
21 | = For Developers = | ||
22 | |||
23 | == DocumentReference Locale now taken into account in XWiki#exists and XWiki#getDocument == | ||
24 | |||
25 | 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. | ||
26 | |||
27 | ##XWiki#getDocument## has been modified accordingly too to be consistent so you don't need to go through ##XWikiDocument#getTranslatedDocument## anymore. | ||
28 | |||
29 | It also mean that you need to be careful of what Locale is in the DocumentReference with those APIs now. | ||
30 | |||
31 | == New Extension Manager APIs == | ||
32 | |||
33 | === Extension sub script services === | ||
34 | |||
35 | 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. | ||
36 | |||
37 | By default the following are provided: | ||
38 | |||
39 | * $services.extension.core (for core extensions APIs) | ||
40 | * $services.extension.local (for local extensions APIs) | ||
41 | * $services.extension.installed (for installed extensions APIs) | ||
42 | * $services.extension.xar (for XAR extension APIS) | ||
43 | |||
44 | === Search for installed extension in a specific namespace === | ||
45 | |||
46 | The following method has been added ##org.xwiki.extension.repository.InstalledExtensionRepository##: | ||
47 | |||
48 | {{code language="java"}} | ||
49 | /** | ||
50 | * Search installed extensions based of the provided pattern and only in the passed namespace. | ||
51 | * <p> | ||
52 | * The pattern is a simple character chain. | ||
53 | * | ||
54 | * @param pattern the pattern to search | ||
55 | * @param namespace the namespace where to search | ||
56 | * @param offset the offset from where to start returning search results | ||
57 | * @param nb the maximum number of search results to return | ||
58 | * @return the found extensions descriptors, empty list if nothing could be found | ||
59 | * @throws SearchException error when trying to search provided pattern | ||
60 | * @since 5.3M1 | ||
61 | */ | ||
62 | IterableResult<Extension> searchInstalledExtensions(String pattern, String namespace, int offset, int nb) throws SearchException; | ||
63 | {{/code}} | ||
64 | |||
65 | == XWiki Enterprise Archetype == | ||
66 | |||
67 | A new archetype is now available to easily create your own product based on XWiki Enterprise. To use: | ||
68 | |||
69 | {{code}} | ||
70 | mvn archetype:generate \ | ||
71 | -DarchetypeArtifactId=xwiki-enterprise-archetype \ | ||
72 | -DarchetypeGroupId=org.xwiki.enterprise \ | ||
73 | -DarchetypeVersion=5.3-milestone-1 | ||
74 | {{/code}} | ||
75 | |||
76 | == XAR plugin improvements == | ||
77 | |||
78 | The [[XAR plugin>>dev:Community.XARPlugin]] now provides the ability to change values in the XML pages. For example: | ||
79 | |||
80 | {{code}} | ||
81 | <plugin> | ||
82 | <groupId>org.xwiki.commons</groupId> | ||
83 | <artifactId>xwiki-commons-tool-xar-plugin</artifactId> | ||
84 | <configuration> | ||
85 | <transformations> | ||
86 | <transformation> | ||
87 | <file>Blog/WebHome.xml</file> | ||
88 | <xpath>/xwikidoc/object/property/itemsPerPage</xpath> | ||
89 | <value>100</value> | ||
90 | </transformation> | ||
91 | <transformation> | ||
92 | <artifact>org.xwiki.platform:xwiki-platform-administration-ui</artifact> | ||
93 | <file>XWiki/XWikiPreferences.xml</file> | ||
94 | <xpath>/xwikidoc/object/property/colorTheme</xpath> | ||
95 | <value>ColorThemes.Mint</value> | ||
96 | </transformation> | ||
97 | </transformations> | ||
98 | </configuration> | ||
99 | </plugin> | ||
100 | {{/code}} | ||
101 | |||
102 | == Fold Events == | ||
103 | |||
104 | 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. | ||
105 | |||
106 | More documentation available on the [[Observation Module>>extensions:Extension.Observation Module Local]] page. | ||
107 | |||
108 | == Miscellaneous == | ||
109 | |||
110 | * [[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. | ||
111 | |||
112 | == Upgrades == | ||
113 | |||
114 | The following dependencies have been upgraded: | ||
115 | |||
116 | * [[commons-fileupload 1.3>>http://jira.xwiki.org/browse/XCOMMONS-458]] | ||
117 | * [[cssparser 0.9.10>>http://jira.xwiki.org/browse/XCOMMONS-459]] | ||
118 | * [[XStream 1.4.5>>http://jira.xwiki.org/browse/XCOMMONS-462]] | ||
119 | * [[HttpClient 4.3>>http://jira.xwiki.org/browse/XCOMMONS-460]] | ||
120 | * [[Struts 1.3.10>>http://jira.xwiki.org/browse/XWIKI-9582]] | ||
121 | |||
122 | = Translations = | ||
123 | |||
124 | The following translations have been updated: | ||
125 | |||
126 | {{language codes="da, de, fr, it, lv, pt_BR"/}} | ||
127 | |||
128 | = Tested Browsers & Databases = | ||
129 | |||
130 | {{include reference="TestReports.ManualTestReportXWiki53M1Summary"/}} | ||
131 | |||
132 | = Known issues = | ||
133 | |||
134 | * [[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]] | ||
135 | |||
136 | = Backward Compatibility and Migration Notes = | ||
137 | |||
138 | == General Notes == | ||
139 | |||
140 | You may also want to [[import the default wiki XAR>>Main.Download]] in order to benefit from all the improvements listed above. | ||
141 | |||
142 | {{warning}} | ||
143 | 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. | ||
144 | {{/warning}} | ||
145 | |||
146 | == API Breakages == | ||
147 | |||
148 | The following APIs were modified since XWiki 5.2: | ||
149 | |||
150 | * Very young API. Never fully worked. | ||
151 | |||
152 | {{code language="none"}} | ||
153 | org.xwiki.xml.stax.SAXEventConsumer: Class org.xwiki.xml.stax.SAXEventConsumer removed | ||
154 | org.xwiki.xml.stax.SAXEventWriter: Removed org.xwiki.xml.stax.SAXEventConsumer from the list of superclasses | ||
155 | {{/code}} | ||
156 | |||
157 | * Requesting a dependency without indicating the namespace does not really make sense. This interface is not really supposed to be implemented anyway. | ||
158 | |||
159 | {{code language="none"}} | ||
160 | org.xwiki.extension.ExtensionManager: Method 'public org.xwiki.extension.Extension resolveExtension(org.xwiki.extension.ExtensionDependency, java.lang.String)' has been added to an interface | ||
161 | {{/code}} | ||
162 | |||
163 | * Needed to filter search by namespace. This interface is not really supposed to be implemented anyway. | ||
164 | |||
165 | {{code language="none"}} | ||
166 | 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 | ||
167 | {{/code}} | ||
168 | |||
169 | * Young API. | ||
170 | |||
171 | {{code language="none"}} | ||
172 | 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 | ||
173 | {{/code}} | ||
174 | |||
175 | * Young API that has been refactored to introduce the new Resource module. | ||
176 | |||
177 | {{code language="none"}} | ||
178 | org.xwiki.url.AbstractXWikiURL: Class org.xwiki.url.AbstractXWikiURL removed | ||
179 | org.xwiki.url.URLCreationException: Class org.xwiki.url.URLCreationException removed | ||
180 | org.xwiki.url.UnsupportedURLException: Class org.xwiki.url.UnsupportedURLException removed | ||
181 | org.xwiki.url.XWikiEntityURL: Class org.xwiki.url.XWikiEntityURL removed | ||
182 | org.xwiki.url.XWikiURL: Class org.xwiki.url.XWikiURL removed | ||
183 | org.xwiki.url.XWikiURLFactory: Class org.xwiki.url.XWikiURLFactory removed | ||
184 | org.xwiki.url.XWikiURLManager: Class org.xwiki.url.XWikiURLManager removed | ||
185 | org.xwiki.url.XWikiURLSerializer: Class org.xwiki.url.XWikiURLSerializer removed | ||
186 | org.xwiki.url.XWikiURLType: Class org.xwiki.url.XWikiURLType removed | ||
187 | {{/code}} | ||
188 | |||
189 | * XWikiURL (now Resource) should only be in the Execution Context and not in the Request. | ||
190 | |||
191 | {{code language="none"}} | ||
192 | org.xwiki.container.servlet.ServletRequest: Method 'public org.xwiki.url.XWikiURL getURL()' has been removed | ||
193 | org.xwiki.container.servlet.ServletRequest: Method 'public void setXWikiURL(org.xwiki.url.XWikiURL)' has been removed | ||
194 | org.xwiki.container.portlet.PortletRequest: Method 'public org.xwiki.url.XWikiURL getURL()' has been removed | ||
195 | org.xwiki.container.portlet.PortletRequest: Method 'public void setXWikiURL(org.xwiki.url.XWikiURL)' has been removed | ||
196 | org.xwiki.container.Request: Field XWIKI_URL has been removed, but it was previously a constant | ||
197 | {{/code}} |