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
Eduard Moraru 38.6 7 This milestone release brings an upgrade to Java 8 runtime, improvements to Extension Manager and Flavors, and a new Tips panel that replaces the old Quick Links panel.
Thomas Mortagne 1.1 8
Eduard Moraru 38.2 9 = New and Noteworthy (since XWiki 8.0) =
Thomas Mortagne 1.1 10
Thomas Mortagne 45.1 11 [[Full list of issues fixed and Dashboard for 8.1>>https://jira.xwiki.org/secure/Dashboard.jspa?selectPageId=13603]].
Thomas Mortagne 1.1 12
Vincent Massol 15.1 13 == Requires Java 8 ==
14
Vincent Massol 15.2 15 Java 8 is now required to run XWiki. If you use an earlier version of Java, you'll get an error while starting XWiki such as:
Vincent Massol 15.1 16
17 {{code language="none"}}
18 java.lang.reflect.InvocationTargetException
19 [...]
20 Caused by: java.lang.UnsupportedClassVersionError: org/xwiki/tools/jetty/listener/NotifyListener : Unsupported major.minor version 52.0
21 [...]
22 {{/code}}
23
Vincent Massol 5.1 24 == Active Installs ==
Thomas Mortagne 1.1 25
Vincent Massol 5.1 26 New widget displayed on the dashboard to see the number of Active Installs count per XWiki Cycle version:
Thomas Mortagne 1.1 27
Vincent Massol 5.1 28 {{image reference="versionspercycle.png"/}}
29
Vincent Massol 25.1 30 == Tips Panel ==
31
32 A new [[Tips Panel>>extensions:Extension.Help Application||anchor="HTipsPanel"]] has been added by default. Example:
33
34 {{image reference="tippanel-1.png"/}}
35
36 {{image reference="tippanel-2.png"/}}
37
Vincent Massol 26.1 38 == Sandbox Relocation ==
39
40 The Sandbox pages were previously accessible through a link in the Quick Links Panel. This link has been removed and instead a Sandbox entry has been added in the [[Applications Panel>>extensions:Extension.Panels Application||anchor="HApplicationPanel"]].
41
42 {{image reference="sandbox-appbar.png"/}}
43
44 In addition the message about the shortcut key to use the "Jump To Page" feature has been moved to the new Tips Panel.
45
46 Here's how the home page looks like now:
47
Vincent Massol 27.2 48 {{image reference="home.png" width="960px"/}}
Vincent Massol 26.1 49
Thomas Mortagne 29.1 50 == Extension Manager improvements ==
51
Thomas Mortagne 34.1 52 === Repair invalid extensions ===
Thomas Mortagne 29.1 53
Vincent Massol 40.3 54 The Extension Manager now tries to repair automatically any invalid dependency and also provides a "Repair" button to repair specific invalid extensions.
Thomas Mortagne 29.1 55
Thomas Mortagne 33.1 56 {{image reference="repair.png"/}}
57
58 {{image reference="repairplan.png"/}}
59
Thomas Mortagne 35.1 60 === Apply namespaces constraints in the UI ===
Thomas Mortagne 29.1 61
62 The namespaces constraints introduced in 8.0 are now taken into account in the UI which won't propose an option that will fail in the install plan.
63
64 === Move to farm ===
65
66 It's now possible to install on farm an extension installed in a subwiki directly from the UI.
67
Thomas Mortagne 33.1 68 {{image reference="installonfarm.png"/}}
69
Thomas Mortagne 29.1 70 === Dependency on root ===
71
72 When using Extension Manager from main wiki it's now allowed to install/upgrade an extension which require upgrading/install farm level dependency. It also automatically propose to install on farm a new dependency which indicate it as constraint. This will make easier to deal with extension have an API that have to be installed on root and a XAR extension UI that should usualy be install on a wiki.
73
74 It's still forbidden from subwiki in the standard UI (any script with programming right can enable it in the install request). That might change in the future but need to be discussed more.
75
76 === Managed dependencies ===
77
78 Extension Manager now support the concept of managed dependencies. It's pretty much the same thing that the {{code language="xml"}}<dependencyManagement>{{/code}} in Maven.
79
Thomas Mortagne 45.1 80 It still need to be supported in the Repository Application. See [[https://jira.xwiki.org/browse/XWIKI-13281]].
Thomas Mortagne 29.1 81
82 == Flavors improvements ==
83
Thomas Mortagne 40.1 84 * Known flavors are not validated anymore before ending up in the flavor picker of the Distribution Wizard. This speed up a lot the use case where you just want to install default XWiki Flavor or XE UI. See [[extensions:Extension.Flavor Module||anchor="HKnownflavors"]] for more details.
Thomas Mortagne 29.1 85 * Flavors are now also searched in the local repository. This makes easier to embedded flavors in a distribution for setups with no network access.
86
Thomas Mortagne 1.1 87 == Miscellaneous ==
88
Vincent Massol 19.1 89 * The ##xwiki.usedefaultweb## parameter from ##xwiki.cfg## has been removed. See below.
90 * The Annotations Application's Administration section has been updated to present the exception spaces as "locations", using the ##documentTree## macro. The behavior has not been changed.(((
Vincent Massol 27.2 91 {{image reference="annotationsAdminSection.png" width="960px"/}}
Eduard Moraru 11.1 92 )))
Thomas Mortagne 29.1 93 * Job module does not validate stored status at startup. This might improve a lot the startup time when there is a lot of status. Also there seems to still be use cases where XStream get lost in edge case when parsing, this was blocking the whole XWiki startup for a very long time.
Eduard Moraru 11.1 94
Thomas Mortagne 45.1 95 See the [[full list of JIRA issues>>https://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+%3D+%228.1-milestone-1%22&tempMax=1000]] fixed in this release.
Thomas Mortagne 1.1 96
97 = For Developers =
98
Marius Dumitru Florea 36.1 99 == Deferred JavaScript Module Dependency Loading ==
Thomas Mortagne 1.1 100
Marius Dumitru Florea 36.1 101 You can extend a feature provided by some JavaScript module without knowing where that module is loaded from (by RequireJS) with the following code:
Thomas Mortagne 1.1 102
Marius Dumitru Florea 36.1 103 {{code language="js"}}
104 require(['deferred!module'], function(modulePromise) {
105 modulePromise.done(function(module) {
106 // Do something with the module, if the module is loaded by someone else.
107 });
108 });
109 {{/code}}
110
111 This basically says to RequireJS: "let me know when this module is loaded by someone else" (someone else being an other script on the same page). You can read more about this on the [[Developer's Guide>>platform:DevGuide.JavaScriptAPI||anchor="HDeferredDependencyLoading"]].
112
Thomas Mortagne 1.1 113 == Upgrades ==
114
115 The following dependencies have been upgraded:
116
Thomas Mortagne 45.1 117 * [[JSqlParser 0.9.5>>https://jira.xwiki.org/browse/XWIKI-13215]]
118 * [[slf4j 1.7.20>>https://jira.xwiki.org/browse/XCOMMONS-938]]
119 * [[Jackson 2.7.3>>https://jira.xwiki.org/browse/XCOMMONS-940]]
120 * [[XStream 1.4.9>>https://jira.xwiki.org/browse/XCOMMONS-941]]
121 * [[GWT 2.7>>https://jira.xwiki.org/browse/XWIKI-13236]]
122 * [[jQuery 2.2.2>>https://jira.xwiki.org/browse/XWIKI-11095]]
123 * [[RequireJS 2.2>>https://jira.xwiki.org/browse/XWIKI-11095]]
124 * [[Infinispan 8.2.0>>https://jira.xwiki.org/browse/XWIKI-13264]]
125 * [[logback 1.1.7>>https://jira.xwiki.org/browse/XCOMMONS-953]]
Thomas Mortagne 1.1 126
127 == Miscellaneous ==
128
Vincent Massol 16.2 129 * IRC Bot Application has been moved to XWiki Contrib under the new extension id of ##org.xwiki.contrib:application-ircbot-ui##
130 * Selenium Application had been moved to XWiki Contrib under the new extension id of ##org.xwiki.contrib:application-selenium##
131 * FAQ Application has been moved to XWiki Contrib under the new extension id of ##org.xwiki.contrib:application-faq-ui##
Vincent Massol 40.2 132 * The XAR plugin now also verifies that Translation pages are using the ##plain/1.0## syntax (it checks pages having a Translation xobject in them).
Vincent Massol 37.1 133 * This Methods Arguments Velocity Uberspector [[now supports calling varargs methods>>extensions:Extension.Velocity Module||anchor="HMethodArgumentsUberspector"]].
Vincent Massol 38.1 134 * Starting With XWiki 8.1M1, the backward-compatibility tool we use is [[Revapi>>http://revapi.org/]]. We had to move away from CLIRR since it didn't support Java 8 constructs.
Thomas Mortagne 1.1 135
136 = Translations =
137
138 The following translations have been updated:
139
Eduard Moraru 36.2 140 {{language codes="ca, pt_BR"/}}
Thomas Mortagne 1.1 141
142 = Tested Browsers & Databases =
143
Manuel Smeria 43.1 144 {{include reference="TestReports.ManualTestReportSummaryXWiki81M1"/}}
Thomas Mortagne 1.1 145
Eduard Moraru 38.4 146 {{comment}}
147 Uncomment when actual performance test data is available.
148
Thomas Mortagne 1.1 149 = Performances tests compared to <last super stable version> =
150
151 <a summary of the comparison with latest super stable version>
152
153 More details on <link to the test report>.
154
Eduard Moraru 38.4 155 {{/comment}}
156
Thomas Mortagne 1.1 157 = Known issues =
158
Thomas Mortagne 45.1 159 * [[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]]
Thomas Mortagne 1.1 160
161 = Backward Compatibility and Migration Notes =
162
163 == General Notes ==
164
165 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.
166
Vincent Massol 19.1 167 == Issues specific to XWiki 8.1-milestone-1 ==
Thomas Mortagne 1.1 168
Vincent Massol 19.1 169 * The ##xwiki.usedefaultweb## parameter has been removed from ##xwii.cfg##. This parameter had not been working since XWiki 7.2-milestone-1; when we introduced Nested Pages we had to make a choice and we decided to support addressing top-level Nested Pages without having to have ##WebHome## in the URL (nor having to finish URLs with a trailing ##/##). For example, ##http:~/~/<server>/xwiki/bin/view/something## points to ##something.WebHome## by default since XWiki 7.2-milestone-1.
Marius Dumitru Florea 41.2 170 * Since we've modified content of the Quick Links Panel, the Distribution Wizard may detect a merge conflict if this panel was customized. In addition, the Quick Links panel may disappear after an upgrade to 8.1M1+. You can add it back from the administration UI if you want to keep it (e.g. if it has been customized).
Thomas Mortagne 1.1 171
172 == API Breakages ==
173
Eduard Moraru 38.2 174 The following APIs were modified since XWiki 8.0:
Thomas Mortagne 1.1 175
Vincent Massol 42.1 176 {{groovy}}
177 import groovy.json.*
Eduard Moraru 38.3 178
Vincent Massol 42.1 179 def jsonString = """{
180 "ignore": [
181 {
182 "code": "java.method.returnTypeTypeParametersChanged",
183 "old": "method java.util.List<? extends org.xwiki.extension.ExtensionDependency> org.xwiki.extension.AbstractExtension::getDependencies()",
184 "new": "method java.util.List<org.xwiki.extension.ExtensionDependency> org.xwiki.extension.AbstractExtension::getDependencies()",
185 "justification": "? return type makes signature more complex for nothing"
186 },
187 {
188 "code": "java.method.returnTypeTypeParametersChanged",
189 "old": "method java.util.Collection<? extends org.xwiki.extension.ExtensionDependency> org.xwiki.extension.Extension::getDependencies()",
190 "new": "method java.util.Collection<org.xwiki.extension.ExtensionDependency> org.xwiki.extension.Extension::getDependencies()",
191 "justification": "? return type makes signature more complex for nothing"
192 },
193 {
194 "code": "java.method.returnTypeTypeParametersChanged",
195 "old": "method java.util.Collection<? extends org.xwiki.extension.ExtensionDependency> org.xwiki.extension.wrap.WrappingExtension<E extends org.xwiki.extension.Extension>::getDependencies()",
196 "new": "method java.util.Collection<org.xwiki.extension.ExtensionDependency> org.xwiki.extension.wrap.WrappingExtension<E extends org.xwiki.extension.Extension>::getDependencies()",
197 "justification": "? return type makes signature more complex for nothing"
198 },
Thomas Mortagne 38.7 199
200
Vincent Massol 42.1 201 {
202 "code": "java.method.numberOfParametersChanged",
203 "old": "method void org.xwiki.rendering.wikimodel.xhtml.filter.XHTMLWhitespaceXMLFilter::<init>()",
204 "new": "method void org.xwiki.rendering.wikimodel.xhtml.filter.XHTMLWhitespaceXMLFilter::<init>(org.xml.sax.XMLReader)",
Vincent Massol 42.3 205 "justification": "Default constructor was removed by error (our Revapi check wasn't working and failed to break the build at the time) and has been put back in XWiki 8.1M2"
Vincent Massol 42.1 206 },
207 {
208 "code": "java.method.removed",
209 "old": "method void org.xwiki.rendering.wikimodel.xhtml.filter.XHTMLWhitespaceXMLFilter::<init>(org.xml.sax.XMLReader)",
Vincent Massol 42.3 210 "justification": "Default constructor was removed by error (our Revapi check wasn't working and failed to break the build at the time) and has been put back in XWiki 8.1M2"
Vincent Massol 42.1 211 }
212 ]
213 }"""
214
215 def jsonSlurper = new JsonSlurper()
216 def json = jsonSlurper.parseText(jsonString)
217
218 json.ignore.each() {
219 println "* {{{${it.justification}}}}"
220 println "** Violation type: {{code}}${it.code}{{/code}}"
Vincent Massol 42.2 221 println "** Old: {{code}}${it.old}{{/code}}"
Vincent Massol 42.1 222 if (it.new) {
Vincent Massol 42.2 223 println "** New: {{code}}${it.new}{{/code}}"
Vincent Massol 42.1 224 }
225 }
226 {{/groovy}}

Get Connected