Version 24.1 by Marius Dumitru Florea on 2015/12/16

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 This is our last stabilization branch for the XWiki 7.x Cycle. It brings polishing and stabilization for the Nested Pages feature and the changes in UI that resulted from it. It also introduce a new API to indicate how long a cache entry to stay in the cache (since it was inserted in the cache).
8
9 = New and Noteworthy (since XWiki 7.4 Milestone 1) =
10
11 [[Full list of issues fixed and Dashboard for 7.4>>http://jira.xwiki.org/secure/Dashboard.jspa?selectPageId=13590]].
12
13 == Support for template hierarchies ==
14
15 When creating a new document from template, if the template has descendent documents under its path, those documents will also be copied over to the new document's location, preserving the hierarchy, as it was under the template document.
16
17 The save operation will display progress and if it was a Save&View operation, the form will be disabled until the operation is complete.
18
19 More details on the [[documentation page on document templates>>extensions:Extension.Administration Application||anchor="HUsingahierarchyofNestedDocumentsastemplate"]].
20
21 {{image reference="savingNewDocumentWithTemplateHierarchy.png" width="50%"/}}
22
23 == Database Search ==
24
25 The [[Database Search>>extensions:Extension.Search Application||anchor="HDatabaseSearch"]] UI has been modified to support nested pages.
26
27 {{image reference="databaseSearch.png"/}}
28
29 == Miscellaneous ==
30
31 * The "annotations" button in the "More Actions" menu has been moved in the same menu but with other actions and renamed "Annotate".(((
32 {{image reference="Annotate.png"/}}
33 )))
34 * The Create Page UI allows you to view and change the location of the new page (that is going to be created) even when you [[open directly the URL of a new page>>platform:Features.DocumentLifecycle||anchor="HByenteringdirectlytheURLofthenewpage"]].
35
36 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.4-milestone-2%22&tempMax=1000]] fixed in this release.
37
38 = For Developers =
39
40 == New lifespan LRU Cache setup ==
41
42 It's now possible to define the maximum time to live since the entry is put in the cache. It used to be possible to set it only since the last time the value was used.
43
44 {{code language="java"}}
45 // Configure cache eviction policy
46 LRUEvictionConfiguration lru = new LRUEvictionConfiguration();
47 // Set maximum size of the cache as 1000 entries
48 lru.setMaxEntries(1000);
49 // Set the maximum time to live since when the entry is used to 1 hour
50 lru.setMaxIdle(3600)
51 // Set the maximum time to live since when the entry is put in the cache to 1 hour
52 lru.setLifespan(3600)
53 {{/code}}
54
55 [[Cache Macro>>extensions:Extension.Cache Macro]] and [[Rendering Cache>>platform:AdminGuide.Performances||anchor="HRenderingcache"]] are now based on this behavior.
56
57 == VFS API ==
58
59 {{warning}}
60 Right now the [[VFS API works as Guest only>>http://jira.xwiki.org/browse/XWIKI-12912]], meaning that you'll only be able to access archives that are viewable by Guest users in your wiki.
61 {{/warning}}
62
63 Replacement of the [[Zip Explorer Plugin>>extensions:Extension.ZIP Explorer Plugin]]. API to access the content of archives files (zip, jar, gzip, tar, etc) located as attachments in wiki pages or elsewhere (external URLs, file system, et).
64
65 In addition a new [[Velocity Tool>>extensions:Extension.Velocity Module||anchor="HVelocityTools"]] was added in order to be able to use a portion of the NIO2 API from Velocity: ##niotool##.
66
67 See [[VFS API>>extensions:Extension.VFS API]] and [[VFS Tree Macro>>extensions:Extension.VFS Tree Macro]] for more details. Some API examples:
68
69 {{code language="velocity"}}
70 {{velocity}}
71 ## Get the URL to access the content of a file inside a zip:
72 [[link to file in zip>>$services.vfs.url("attach:Sandbox.WebHome@vma.txt.zip/vma.txt")]]
73
74 ## Display inline an image from a zip attached to a wiki page:
75 [[image:path:$services.vfs.url("attach:Sandbox.WebHome@test.zip/test.png")]]
76
77 ## Read the content of a file inside a zip attached to a page:
78 $stringtool.toString($niotool.readAllBytes("attach:Sandbox.WebHome@vma.txt.zip/vma.txt"), "utf-8")
79
80 ## List all entries inside a zip attached to a page:
81 #set ($dirStream = $niotool.newDirectoryStream("attach:Sandbox.WebHome@vma.txt.zip/"))
82 #foreach ($entry in $dirStream)
83 * {{{$entry}}} - $niotool.isDirectory($entry)
84 #end
85 {{/velocity}}
86
87 {{vfsTree root="attach:Sandbox.WebHome@vma.txt.zip/"/}}
88 {{/code}}
89
90 Example of using the ##vfsTree## Macro:
91
92 {{code language="none"}}
93 {{vfsTree root="attach:Sandbox.WebHome@vma.txt.zip/"/}}
94 {{/code}}
95
96 Results in:
97
98 {{image reference="vfstree.png"/}}
99
100 == Miscellaneous ==
101
102 * [[WebJars URL format>>extensions:Extension.WebJars Integration||anchor="HURLFormat"]] now supports a ##wiki## query string parameter to specify the wiki in which the webjars resource is available. For example: {{code language="none"}}/xwiki/webjars/AjaxQ/0.0.2/ajaxq.js?wiki=mywiki{{/code}}
103 * The default link behaviour can be disabled for a tree node, when you use the [[Tree Widget>>extensions:Extension.Tree Widget]], by using the 'jstree-no-link' CSS class on the node anchor, which can be set from the node JSON:(((
104 {{code language="none"}}
105 {
106 ... (node JSON) ...
107 'a_attr': {
108 'class': 'jstree-no-link',
109 'href': 'some/url'
110 }
111 }
112 {{/code}}
113 )))
114 * The ##$regextool## [[Velocity Tool>>extensions:Extension.Velocity Module||anchor="HVelocityTools"]] has a new method:(((
115 {{code language="java"}}
116 /**
117 * @param content the content to parse
118 * @param regex the regular expression to look for in the passed content
119 * @return an empty list if the passed regular expression doesn't match the content, several {@link RegexResult}
120 * objects containing the matched position and matched content for all capturing groups and sub-groups
121 * otherwise
122 */
123 public List<List<RegexResult>> findAll(String content, String regex)
124 {{/code}}
125
126 We had to add a new method because the existing ##RegexTool#find(String, String)## returns information about only the first capturing group. Here's a test to show how the new method works:
127
128 {{code language="java"}}
129 @Test
130 public void findAll()
131 {
132 RegexTool tool = new RegexTool();
133 List<List<RegexResult>> result =
134 tool.findAll("one :two three (:four) five :six seven=:eight", ":(\\w+) (\\w+)");
135
136 Assert.assertEquals(2, result.size());
137 Assert.assertEquals(":two three", result.get(0).get(0).getGroup());
138 Assert.assertEquals(":six seven", result.get(1).get(0).getGroup());
139
140 Assert.assertEquals(3, result.get(0).size());
141 Assert.assertEquals("two", result.get(0).get(1).getGroup());
142 Assert.assertEquals("three", result.get(0).get(2).getGroup());
143
144 Assert.assertEquals(3, result.get(1).size());
145 Assert.assertEquals("six", result.get(1).get(1).getGroup());
146 Assert.assertEquals("seven", result.get(1).get(2).getGroup());
147 }
148 {{/code}}
149 )))
150
151 == Deprecated and Retired projects ==
152
153 * XML-RPC module have been moved to https://github.com/xwiki-contrib/xwiki-platform-xmlrpc
154
155 == Upgrades ==
156
157 The following dependencies have been upgraded:
158
159 * [[Batik 1.8>>http://jira.xwiki.org/browse/XWIKI-12904]]
160 * [[FOP 2.0>>http://jira.xwiki.org/browse/XWIKI-12871]]
161 * [[Jackson 2.6.4>>http://jira.xwiki.org/browse/XCOMMONS-893]]
162 * [[guava 19>>http://jira.xwiki.org/browse/XCOMMONS-894]]
163 * [[Less4j 1.15.4>>http://jira.xwiki.org/browse/XWIKI-12905]]
164
165 = Translations =
166
167 The following translations have been updated:
168
169 {{language codes="de, fr, zh"/}}
170
171 = Tested Browsers & Databases =
172
173 {{warning}}
174 The QA Tests are executed after the release has been done. Thus, they are being prepared now and will be published soon.
175 {{/warning}}
176
177 {{comment}}
178 TODO: uncomment and update with proper link when the report is ready.
179 {{include reference="TestReports.ManualTestReportTemplateSummary"/}}
180 {{/comment}}
181
182 = Known issues =
183
184 * [[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]]
185
186 = Backward Compatibility and Migration Notes =
187
188 == General Notes ==
189
190 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.
191
192 == API Breakages ==
193
194 The following APIs were modified since <project> <version - 1>:
195
196 {{code language="none"}}
197 <clirr output here>
198 {{/code}}

Get Connected