Version 29.1 by Thomas Mortagne on 2014/06/24

Hide last authors
Guillaume Delhumeau 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
Thomas Mortagne 29.1 7 This introduce new script APIs related to logging, security, rendering and continue the work on new Flamingo skin.
Guillaume Delhumeau 1.1 8
Guillaume Delhumeau 7.1 9 = New and Noteworthy (since XWiki 6.1 milestone 2) =
Guillaume Delhumeau 1.1 10
Guillaume Delhumeau 8.1 11 [[Full list of issues fixed and Dashboard for 6.1>>http://jira.xwiki.org/secure/Dashboard.jspa?selectPageId=12290]].
Guillaume Delhumeau 1.1 12
Guillaume Delhumeau 3.1 13 == Flamingo Skin ==
Guillaume Delhumeau 1.1 14
Guillaume Delhumeau 3.1 15 * The preview action has been implemented:(((
Guillaume Delhumeau 5.1 16 {{image reference="preview.png" width="60%"/}}
Guillaume Delhumeau 3.1 17 )))
Ecaterina Moraru (Valica) 15.1 18 * The user's avatar is now displayed in the main menu:(((
19 {{image reference="navbar.png" width="60%"/}}
20 )))
Ecaterina Moraru (Valica) 18.1 21 * 'Share by email' menu entry is moved from 'Page' submenu to 'More actions' submenu:(((
22 {{image reference="moreActions.png"/}}
23 )))
Ecaterina Moraru (Valica) 23.1 24 * Buttons have now gradients:(((
25 {{image reference="gradients.png"/}}
26 )))
Guillaume Delhumeau 20.1 27 * Annotations are back!(((
28 {{image reference="flamingo-annotations.png" width="60%"/}}
29 )))
Guillaume Delhumeau 6.1 30 * A lot of polishing have been made too, in order to have a skin usable in production.
Guillaume Delhumeau 1.1 31
Guillaume Delhumeau 7.1 32 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+%226.1-rc-1%22&tempMax=1000]] fixed in this release.
Guillaume Delhumeau 1.1 33
34 = For Developers =
35
Thomas Mortagne 9.1 36 == Log from a script ==
Guillaume Delhumeau 1.1 37
Thomas Mortagne 9.1 38 A new API to get a SLF4J Logger has been added to the ##logging## script service.
Guillaume Delhumeau 1.1 39
Thomas Mortagne 9.1 40 {{code language="velocity"}}
41 $services.logging.getLogger('My script').info('Hello {}', 'world')
42 {{/code}}
43
Denis Gervalle 12.1 44 == New contextual authorization manager role ==
45
46 A new role is now available to ease the replacement of the old Right Service (com.xpn.xwiki.user.api.XWikiRightService).
47 Compared to the old service, the component does not manage authentication which should have been ensured previously if needed. (No redirection to login is ever done)
48 The new component has a similar interface to the AuthorizationManager, but it take care of all external context aspects, like the currently executed macro block, the rendering context restrictions, the dropping of rights, etc...
49 This new role should be used from now on by any component that needs to check rights for the current user, in the current context.
50
51 == New security authorization script service ==
52
53 A new script service is now available to access the default AuthorizationManager and the ContextualAuthorizationManager.
54
55 Here is some sample:
56
57 {{code language="velocity"}}
58 #if ($services.security.authorization.hasAccess("edit"))
59 ... show some UI that require edit access on the current document by the current user ...
60 #end
Denis Gervalle 14.1 61 #if ($services.security.authorization.hasAccess("edit", "xwiki:Sandbox.TestPage1"))
Denis Gervalle 12.1 62 ... show some UI that require edit access on Sandbox.TestPage1 document by the current user ...
63 #end
Denis Gervalle 14.1 64 #if ($services.security.authorization.hasAccess("edit", "xwiki:XWiki.User1", "xwiki:Sandbox.TestPage1"))
Denis Gervalle 12.1 65 ... show some UI that require edit access on Sandbox.TestPage1 document by XWiki.User1 ...
66 #end
67 {{/code}}
68
69 {{code language="velocity"}}
70 $services.security.authorization.checkAccess("edit")
71 ... do some task that require edit access ...
72 {{/code}}
73
74 In this second sample, the macro will fail with an AccessDeniedException if the right is not allowed.
75
Clemens Robbenhaar 22.1 76 == Access to BlockMatchers from velocity scripts ==
77
78 To be able to use the ##Block.getBlocks(BlockMatcher, Block.Axes)## method on the rendering blocks in the documents XDOM from velocity, a converter has been introduced that maps string expressions to BlockMatcher objects. The current implementation only supports mapping to ClassBlockMatchers, and allows to get all blocks of a given type from the XDOM.
79
80 {{code language="velocity"}}
81 #foreach($headerBlock in $doc.getDocument().getXDOM().getBlocks("class:HeaderBlock", "DESCENDANT"))
82 ... do something with the header block ...
83 {{/code}}
84
Guillaume Delhumeau 1.1 85 == Upgrades ==
86
87 The following dependencies have been upgraded:
88
Thomas Mortagne 4.1 89 * [[commons-collections 4.0>>http://jira.xwiki.org/browse/XCOMMONS-605]]
90 * [[httpclient 4.3.4>>http://jira.xwiki.org/browse/XCOMMONS-606]]
91 * [[commons-beanutils 1.9.2>>http://jira.xwiki.org/browse/XCOMMONS-607]]
92 * [[reflections 0.9.9-RC2>>http://jira.xwiki.org/browse/XCOMMONS-608]]
Thomas Mortagne 10.1 93 * [[slf4j 1.7.7>>http://jira.xwiki.org/browse/XCOMMONS-609]]
Guillaume Delhumeau 1.1 94
95 == Miscellaneous ==
96
Vincent Massol 14.4 97 * The [[Mail Sender API>>extensions:Extension.Mail Sender API]] now allows to send Mails from a Template. This is achieved with 2 calls:
98 ** One for setting the Subject from the Template. The following will generate a ##MimeMessage## with the subject pre-filled. The value will be that of the ##subject## xproperty from an ##XWiki.Mail## xobject in the Document pointed to by the passed ##documentReference##:(((
Vincent Massol 11.1 99 {{code language="none"}}
Vincent Massol 18.2 100 #set ($message = $services.mailsender.createMessage("template", documentReference))
101 #set ($message = $services.mailsender.createMessage("template", documentReference, parameters))
Vincent Massol 11.1 102 {{/code}}
103 )))
Vincent Massol 14.4 104 ** One for setting the Body Part content from the Template:(((
Lyes BANDOU 14.2 105 {{code language="none"}}
106 $message.addPart("xwiki/template", $documentReference, {"velocityVariables" : { "var1" : "value1" }})
107 $message.addPart("xwiki/template", $documentReference, {"velocityVariables" : { "var1" : "value1" }, "attachments" : $attachments})
108 {{/code}}
109 )))
110
Guillaume Delhumeau 1.1 111 = Translations =
112
113 The following translations have been updated:
114
Thomas Mortagne 28.1 115 {{language codes="da, de, fr"/}}
Guillaume Delhumeau 1.1 116
117 = Tested Browsers & Databases =
118
Manuel Smeria 21.2 119 {{include reference="TestReports.ManualTestReportXWiki61RC1Summary"/}}
Guillaume Delhumeau 1.1 120
121 = Known issues =
122
123 * [[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]]
124
125 = Backward Compatibility and Migration Notes =
126
127 == General Notes ==
128
129 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.
130
Thomas Mortagne 28.1 131 == API Breakages ==
Guillaume Delhumeau 1.1 132
Thomas Mortagne 28.1 133 The following APIs were modified since XWiki 6.0:
Guillaume Delhumeau 1.1 134
Thomas Mortagne 28.1 135 * Young APIs
Guillaume Delhumeau 1.1 136
Thomas Mortagne 28.1 137 {{code language="none"}}
138 org.xwiki.activeinstalls.server.DataManager: Method 'public com.google.gson.JsonObject countInstalls(java.lang.String, java.lang.String, java.util.Map)' has been added to an interface
139 org.xwiki.activeinstalls.server.DataManager: Method 'public long getInstallCount(java.lang.String)' has been removed
140 org.xwiki.activeinstalls.server.DataManager: Method 'public com.google.gson.JsonObject searchInstalls(java.lang.String, java.lang.String, java.util.Map)' has been added to an interface
141 org.xwiki.activeinstalls.server.script.ActiveInstallsScriptService: Method 'public long getInstallCount(java.lang.String)' has been removed
142 {{/code}}
Guillaume Delhumeau 1.1 143
144 {{code language="none"}}
Thomas Mortagne 28.1 145 org.xwiki.crypto.store.CertificateStore: Class org.xwiki.crypto.store.CertificateStore removed
146 org.xwiki.crypto.store.CertificateStoreException: Class org.xwiki.crypto.store.CertificateStoreException removed
147 org.xwiki.crypto.store.KeyStore: Class org.xwiki.crypto.store.KeyStore removed
148 org.xwiki.crypto.store.KeyStoreException: Class org.xwiki.crypto.store.KeyStoreException removed
Guillaume Delhumeau 1.1 149 {{/code}}
Thomas Mortagne 28.1 150
151 * Not supposed to be public
152
153 {{code language="none"}}
154 com.xpn.xwiki.store.XWikiHibernateBaseStore: In method 'protected void createHibernateSequenceIfRequired(java.lang.String, org.hibernate.Session)' the number of arguments has changed
155 com.xpn.xwiki.render.XWikiMacrosMappingRenderer: Removed org.xwiki.observation.EventListener from the set of implemented interfaces
156 com.xpn.xwiki.render.XWikiMacrosMappingRenderer: Method 'public java.util.List getEvents()' has been removed
157 com.xpn.xwiki.render.XWikiMacrosMappingRenderer: Method 'public java.lang.String getName()' has been removed
158 com.xpn.xwiki.render.XWikiMacrosMappingRenderer: Method 'public void onEvent(org.xwiki.observation.event.Event, java.lang.Object, java.lang.Object)' has been removed
159 {{/code}}

Get Connected