Version 30.4 by Vincent Massol on 2015/08/07

Hide last authors
Eduard Moraru 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
Vincent Massol 24.1 7 The focus of this release was on fixing issues introduced in 7.2 Milestone 1 with the new Nested Document/Nested Spaces features and to continue adding support for this feature in various existing features (using a tree for the Import UI instead of a list, new DB table to have performant Space queries, start of Nested Spaces support in the XWiki JS APIs, etc). Another major feature added was the new Script permission to allow forbidding Script execution to specific Users or Groups.
Eduard Moraru 1.1 8
Vincent Massol 24.1 9 = New and Noteworthy (since XWiki 7.2 Milestone 1) =
Eduard Moraru 1.1 10
Vincent Massol 24.2 11 [[Full list of issues fixed and Dashboard for 7.2>>http://jira.xwiki.org/secure/Dashboard.jspa?selectPageId=13390]].
Eduard Moraru 1.1 12
Eduard Moraru 11.2 13 == Script Right ==
14
15 The Script Right is now set to DENY by default, meaning that if you do not have it explicitly, you will not be able to execute the scripts that you write with your user account.
16
Vincent Massol 24.1 17 However, for backward-compatibility reasons, the standard XWiki Enterprise distribution comes with the Script Right being allowed for all users at the main wiki level, so that, unless you (as an Admin) explicitly revoke the right for some users or explicitly deny it, they will be able to execute the scripts they wrote, just like before.
Eduard Moraru 11.2 18
19 {{image reference="scriptRightsExplicitlyAllowedInXWikiPreferences.png"/}}
20
Vincent Massol 27.1 21 == Hiding of the Parent-Child Relationship ==
22
23 Following [[our decision to drop the Parent-Child relationship>>ReleaseNotesXWiki72M1||anchor="HNestedDocuments"]], it's now been turned off by default in favor of Nested Documents.
24
25 Note that it's possible to go back to the previous behavior, in which the Breadcrumb was following the Parent/Child relationship, by setting the ##core.hierarchyMode## property to ##parentchild## in the ##xwiki.properties## configuration file.
26
Vincent Massol 30.3 27 === New Breadcrumb ===
Vincent Massol 27.1 28
29 The Breadcrumb has been reworked to reflect the location of a Document in the reference hierarchy. For example for a Document "CEO" inside a Document "Boarding" inside a Document "Management" inside a Document "Staff" you would have the following Breadcrumb:
30
31 {{image reference="breadcrumb.png"/}}
32
Vincent Massol 30.2 33 === New Index Tree ===
Vincent Massol 27.1 34
Vincent Massol 30.4 35 The Index Tree is now using the [[reworked Document Tree Macro>>extensions:Extension.Document Tree Macro]] and is thus now honoring the Nested Document hierarchy. For example:
Vincent Massol 27.1 36
37 {{image reference="indextree.png"/}}
38
Vincent Massol 30.2 39 === Updated Edit Mode ===
Vincent Massol 27.1 40
41 In Edit mode, the ability to change the Parent has been removed by default since we're now honoring the Nested Document hierarchy. For example:
42
43 {{image reference="editmode.png"/}}
44
Eduard Moraru 1.1 45 == Miscellaneous ==
46
Vincent Massol 24.1 47 * Import UI move to new standard tree(((
Thomas Mortagne 20.1 48 {{image reference="import.png"/}}
Vincent Massol 24.1 49 )))
Thomas Mortagne 23.1 50 * The size of the Job status cache is now configurable. See ##job.statusCacheSize## property in ##xwiki.properties## files.
Vincent Massol 26.1 51 * The Spaces macro (which lists all Spaces) is now working fine when there are Nested Spaces (some links were failing).
52 * The LiveTable macro is now working fine when there are Nested Spaces (some links were failing).
Eduard Moraru 1.1 53
Vincent Massol 24.1 54 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+%3D+%227.2-milestone-2%22&tempMax=1000]] fixed in this release.
Eduard Moraru 1.1 55
56 = For Developers =
57
Thomas Mortagne 8.1 58 == New Space/XWikiSpace table ==
59
Vincent Massol 24.1 60 A [[new table dedicated to Spaces has been introduced>>platform:DevGuide.DatabaseSchema]], in order to have performant and scalable Space-related queries (like supporting getting paginated Space which is useful for the Document Tree macro for example).
Thomas Mortagne 8.1 61
Thomas Mortagne 7.2 62 == Queries improvement ==
Eduard Moraru 1.1 63
Thomas Mortagne 7.2 64 === Allow executing complete SELECT queries ===
Eduard Moraru 1.1 65
Vincent Massol 24.1 66 In HQL and XWQL it's now possible to execute full ##SELECT## queries without Programming Right as long as you follow some rules currently defined in ##com.xpn.xwiki.internal.store.hibernate.query.HqlQueryUtils##, which contains a list of the database field allowed in the SELECT clause. Namely:
67 * For the ##Document##/##XWikiDocument## table: ##fullName##, ##name##, ##space##, ##language##, ##defaultLanguage##, ##translation##, ##hidden##
68 * For the ##Space##/##XWikiSpace## table: ##reference##, ##name##, ##parent##, ##hidden##
Thomas Mortagne 7.2 69
Vincent Massol 24.1 70 This is also true for the Named Queries located in the ##queries.hbm.xml## file.
Thomas Mortagne 7.2 71
Vincent Massol 24.1 72 === New Secure Query ===
Thomas Mortagne 10.1 73
Vincent Massol 24.1 74 The right to execute or not some Query is now controlled by each ##org.xwiki.query.QueryExecutor##.
Thomas Mortagne 7.2 75
Vincent Massol 24.1 76 Anyone can ask the executor to check or ignore Right through the new ##org.xwiki.query.SecureQuery## extending ##org.xwiki.query.Query##:
Thomas Mortagne 7.2 77
Vincent Massol 24.1 78 * ##checkCurrentAuthor()##: indicate if the current author right should be checked
79 * ##checkCurrentUser()##: indicate if the result should be filtered based on current user Right (only implemented by SOLR right now)
Thomas Mortagne 7.2 80
Vincent Massol 9.3 81 == JS API Improvements ==
Vincent Massol 9.1 82
Vincent Massol 24.1 83 * It's now possible to create a Nested Spaces Reference using XWiki's Javascript API. For example:(((
Vincent Massol 9.1 84 {{code language="javascript"}}
Vincent Massol 9.2 85 // Construct a Nested Space reference
86 var reference = new XWiki.SpaceReference('wiki', ['space1', 'space2']);
87 expect(XWiki.Model.serialize(reference)).toEqual('wiki:space1.space2');
88 reference = new XWiki.DocumentReference('wiki', ['space1', 'space2'], 'page');
89 expect(XWiki.Model.serialize(reference)).toEqual('wiki:space1.space2.page');
90 // Construct a non-Nested Space reference
91 reference = new XWiki.SpaceReference('wiki', 'space');
92 expect(XWiki.Model.serialize(reference)).toEqual('wiki:space');
93 // Try passing non-valid space parameters
94 expect(function() {new XWiki.SpaceReference('wiki', [])}).toThrow('Missing mandatory space name or invalid type for: []');
95 expect(function() {new XWiki.SpaceReference('wiki', 12)}).toThrow('Missing mandatory space name or invalid type for: [12]');
Vincent Massol 9.1 96 {{/code}}
97 )))
Vincent Massol 9.2 98 * A new ##XWiki.EntityReference.equals()## method has been added. For example:(((
99 {{code language="javascript"}}
100 var reference1 = new XWiki.DocumentReference('wiki', ['space1', 'space2'], 'page');
101 var reference2 = new XWiki.DocumentReference('wiki', ['space1', 'space2'], 'page');
102 var reference3 = new XWiki.DocumentReference('wiki2', ['space1', 'space2'], 'page');
103 expect(reference1.equals(reference2)).toBe(true);
104 expect(reference1.equals(reference3)).toBe(false);
105 {{/code}}
106 )))
Thomas Mortagne 21.1 107 * A new ##XWiki.EntityReference.fromJSONObject(obejct)## has been added to create a Javascript ##XWiki.EntityReference## from a Java ##EntityReference## directly serialized as JSON:(((
108 {{code language="javascript"}}
109 var reference = XWiki.EntityReference.fromJSONObject(jsonText.evalJSON());
110 {{/code}}
111 )))
Vincent Massol 24.1 112 * A new ##XWiki.EntityReferenceTree## JS class has been added, which partially mimics the Java ##EntityReferenceTree## Class. It's still missing features though as it was introduced mostly to make it easier to manipulate a serialized Java ##EntityReferenceTree##.
Vincent Massol 9.1 113
Eduard Moraru 1.1 114 == Miscellaneous ==
115
Vincent Massol 24.1 116 * Custom displayers are now executed with the Rights of the user who wrote them (i.e. author of the class document or content author of the displayer document), and not the Rights of the user who wrote the script that uses them (i.e. current context document's content author). See [[XWIKI-12306>>http://jira.xwiki.org/browse/XWIKI-12306]] for more details.
Thomas Mortagne 14.1 117 * In the [[Active Install Extension>>extensions:Extension.Active Installs Server Application]], a new Velocity Macro has been introduced to compute the number of Active Installs having a specific Extension. Example usage:(((
Vincent Massol 13.1 118 {{code language="none"}}
119 {{include reference="ActiveInstalls.ExtensionCount"/}}
Eduard Moraru 1.1 120
Vincent Massol 13.1 121 {{velocity}}
122 #set ($extensionIds = [
123 'org.xwiki.contrib:xwiki-totem-application',
124 'jsimard:event-reporter-application',
125 'mouhb:likeapplication'
126 ])
127 |=Extension Id|=Count
128 #foreach($extensionId in $extensionIds)
129 #countActiveInstallsUsingExtension($extensionId $count)
130 |$extensionId|$count
131 #end
132 {{/velocity}}
133 {{/code}}
134 )))
Thomas Mortagne 17.1 135 * Better support of non-DOCUMENT ##EntityReferences## in ##DocumentReferenceConverter##. It now behaves like ##XWiki#getDocument(EntityReference)##
Vincent Massol 13.1 136
Vincent Massol 24.1 137 == Deprecated and Retired projects ==
138
139 * The [[OSCache-based Cache Extension>>extensions:Extension.Cache OSCache]] has been [[moved to ##xwiki-contrib##>>https://github.com/xwiki-contrib/xwiki-platform-cache-oscache]] since we've been using the Infinispan implementation for a while now and the XWiki Core developers don't intend to continue supporting the OSCache-based one (it can be maintained by the Community, by whoever's interested in supporting it).
140
141 == Upgrades ==
142
143 The following dependencies have been upgraded:
144
145 * [[Groovy 2.4.4>>http://jira.xwiki.org/browse/XCOMMONS-831]]
146 * [[Tika 1.9>>http://jira.xwiki.org/browse/XWIKI-12274]]
147 * [[JRuby 1.7.21>>http://jira.xwiki.org/browse/XWIKI-12344]]
148 * [[Jackson 2.6.0>>http://jira.xwiki.org/browse/XCOMMONS-833]]
149 * [[Hibernate Validator 4.3.2>>http://jira.xwiki.org/browse/XWIKI-12365]]
150
Eduard Moraru 1.1 151 = Translations =
152
153 The following translations have been updated:
154
155 {{language codes="none, none"/}}
156
157 = Tested Browsers & Databases =
158
159 {{include reference="TestReports.ManualTestReportTemplateSummary"/}}
160
161 = Performances tests compared to <last super stable version> =
162
163 <a summary of the comparison with latest super stable version>
164
165 More details on <link to the test report>.
166
167 = Known issues =
168
169 * [[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]]
170
171 = Backward Compatibility and Migration Notes =
172
173 == General Notes ==
174
175 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.
176
Vincent Massol 24.1 177 == Issues specific to XWiki 7.2 Milestone 2 ==
Eduard Moraru 1.1 178
179 <issues specific to the project>
180
181 == API Breakages ==
182
Vincent Massol 24.1 183 The following APIs were modified since XWiki 7.2 Milestone 1:
Eduard Moraru 1.1 184
185 {{code language="none"}}
186 <clirr output here>
187 {{/code}}

Get Connected