Version 24.1 by Marius Dumitru Florea on 2015/01/15

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 release brings many improvements to the Mail Application and its API, including support for mail throttling. A new 'Wikis' category is available in the administration that groups together sections with wiki-related configuration options. Other smaller improvements (23) and a few bug fixes (15) complete this release. Would be great if you can give it a try and report whatever issues you may find so that we can fix them before the 6.4 final release.
8
9 = New and Noteworthy (since XWiki 6.4-milestone-3) =
10
11 [[Full list of issues fixed and Dashboard for 6.4>>http://jira.xwiki.org/secure/Dashboard.jspa?selectPageId=12791]].
12
13 == Mail Sender API Improvements ==
14
15 * You can now specify the delay to wait between each mail being sent, in milliseconds. This is done to support mail throttling and not be considered a spammer by mail servers. For example if you wish to wait 10 seconds (if not specified the default is 8 seconds, which is 450 mails per hour), set the following in your ##xwiki.properties##:(((
16 {{code language="none"}}
17 mail.sender.sendWaitTime = 10000
18 {{/code}}
19
20 The configuration parameter can also be changed from the [[Mail Admin UI>>extensions:Extension.Mail Application]]:
21
22 {{image reference="sendmailwait.png"/}}
23 )))
24 * We now save both an error summary and a full error description when a mail fails to be sent when using the Database Mail Listener. This allows to see the full stack trace of the problem to more easily debug it.(((
25 {{image reference="sendmailerror.png"/}}
26 )))
27 * The Mail Type is now displayed in the [[Mail Sender Status Admin UI>>extensions:Extension.Mail Application]]:(((
28 {{image reference="mailtype.png"/}}
29 )))
30 * The ##MailResult.isSent()## API has been renamed to ##MailResult.isProcessed()## to avoid thinking that it'll return true if all mails have been sent successfully. What it does is simply return true when all mails have been processed, whether they've been sent successfully or not.
31 * A new scripting API has been added to set the mail type:(((
32 {{code language="none"}}
33 $message.setType("Some type")
34 {{/code}}
35 )))
36 * In the [[Mail Sender Status Admin UI>>extensions:Extension.Mail Application]] we now only display mails sent by the current wiki unless we're on the main wiki.
37 * The [[Mail Application>>extensions:Extension.Mail Application]] doesn't require Programming Rights for installation anymore.
38 * Account Validation email results are now saved and visible in the [[Mail Application>>extensions:Extension.Mail Application]].
39 * Some new [[Mail Sender Storage script services>>extensions:Extension.Mail Sender Storage]] have been added: ability to delete mail statuses for a single mail and for a whole batch, and ability to load mail statuses with criteria.
40
41 == Wikis ==
42
43 * A "Wikis" category has been created in the administration, where the configuration have been moved and split in different sections:(((
44 |=Left menu|=Right menu
45 |{{image reference="AdminWikis.png"/}}|{{image reference="AdminWikis2.png"/}}
46 )))
47
48 == Extension Manager incompatible exceptions ==
49
50 When trying to install an incompatible extension (i.e. you are running XWiki 6.2.4 and want to install FAQ Application 6.3), you are now displayed a proper error instead of having to read through the install log to understand what went wrong, and you are instructed to use the ##Description > Stable Versions## section to manually (for now) find a compatible version of the extension that you want to install.
51
52 {{image reference="incompatibleExtensionError.png"/}}
53
54 == Miscellaneous ==
55
56 * A click to the Document Index does not lead to an other space anymore.
57 * [[extensions:Extension.Tag Cloud Macro]] has now a new parameter (spaces) to display a tag cloud from multiple spaces.
58
59 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.4-rc-1%22&tempMax=1000]] fixed in this release.
60
61 = For Developers =
62
63 == Miscellaneous ==
64
65 * You can now control in which order the sections added via the [[ConfigurableClass>>extensions:Extension.Administration Application||anchor="HFieldsyoucandefine"]] are displayed in the administration.
66 * New APIs to generate unescaped display user name:
67 ** ##com.xpn.xwiki.XWiki#getPlainUserName(DocumentReference userReference, XWikiContext context)##
68 ** ##com.xpn.xwiki.XWiki#getUserName(DocumentReference userReference, String format, boolean link, boolean escapeXML, XWikiContext context)##
69 ** ##com.xpn.xwiki.api.XWiki#getPlainUserName(DocumentReference userReference)##
70 * New script oriented APIs to get document author/contentAuthor/creator as ##DocumentReference##
71
72 = Translations =
73
74 The following translations have been updated:
75
76 {{language codes="fr"/}}
77
78 = Tested Browsers & Databases =
79
80 {{include reference="TestReports.ManualTestReportTemplateSummary"/}}
81
82 = Known issues =
83
84 * [[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]]
85
86 = Backward Compatibility and Migration Notes =
87
88 == General Notes ==
89
90 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.
91
92 == API Breakages ==
93
94 The following APIs were modified since XWiki 6.3:
95
96 * It's very unlikely that this class is implemented by anything else and it does not make much sense to not have this method, since this is not really a cache behind it but a Map that keep engines forever it may create a memory leak on a big farm running for a long time(((
97 {{code language="none"}}
98 org.xwiki.velocity.VelocityFactory: Method 'public org.xwiki.velocity.VelocityEngine removeVelocityEngine(java.lang.String)' has been added to an interface
99 {{/code}}
100 )))
101
102 * This shouldn't be a backward incompatible change since it's a method addition on an Annotation.(((
103 {{code language="none"}}
104 org.xwiki.component.annotation.Component: Method 'public boolean staticRegistration()' has been added to an interface
105 {{/code}}
106 )))
107
108 * Does not make much sense allowing to register a JMX bean and not to unregister it.(((
109 {{code language="none"}}
110 org.xwiki.management.JMXBeanRegistration: Method 'public void unregisterMBean(java.lang.String)' has been added to an interface
111 {{/code}}
112 )))
113
114 * Young API, this method needs to be available for consistency with the getMainWikiDescriptor/Id pair of methods(((
115 {{code language="none"}}
116 org.xwiki.wiki.descriptor.WikiDescriptorManager: Method 'public org.xwiki.wiki.descriptor.WikiDescriptor getCurrentWikiDescriptor()' has been added to an interface
117 {{/code}}
118 )))
119
120 * WYSIWYG's MacroService API was not previously considering a multiwiki environment.(((
121 {{code language="none"}}
122 org.xwiki.gwt.wysiwyg.client.plugin.macro.MacroService: Method 'public org.xwiki.gwt.wysiwyg.client.plugin.macro.MacroDescriptor getMacroDescriptor(java.lang.String, java.lang.String, java.lang.String)' has been added to an interface
123 org.xwiki.gwt.wysiwyg.client.plugin.macro.MacroService: Method 'public java.util.List getMacroDescriptors(java.lang.String, java.lang.String)' has been added to an interface
124 org.xwiki.gwt.wysiwyg.client.plugin.macro.MacroServiceAsync: Method 'public void getMacroDescriptor(java.lang.String, java.lang.String, java.lang.String, com.google.gwt.user.client.rpc.AsyncCallback)' has been added to an interface
125 org.xwiki.gwt.wysiwyg.client.plugin.macro.MacroServiceAsync: Method 'public void getMacroDescriptors(java.lang.String, java.lang.String, com.google.gwt.user.client.rpc.AsyncCallback)' has been added to an interface
126 {{/code}}
127 )))
128
129 * Add new methods to the Icon Set Module(((
130 {{code language="none"}}
131 org.xwiki.icon.IconManager: Method 'public java.util.List getIconNames()' has been added to an interface
132 org.xwiki.icon.IconManager: Method 'public java.util.List getIconNames(java.lang.String)' has been added to an interface
133 org.xwiki.icon.IconSetManager: Method 'public java.util.List getIconSetNames()' has been added to an interface
134 {{/code}}
135 )))
136
137 * LESS refactoring.(((
138 {{code language="none"}}
139 org.xwiki.lesscss.LessCompilerScriptService: Method 'public boolean clearCacheFromFileSystemSkin(java.lang.String)' has been removed
140 org.xwiki.lesscss.LessCompilerScriptService: Return type of method 'public org.xwiki.lesscss.ColorTheme getColorThemeFromSkinFile(java.lang.String)' has been changed to org.xwiki.lesscss.colortheme.ColorTheme
141 org.xwiki.lesscss.LessCompilerScriptService: Return type of method 'public org.xwiki.lesscss.ColorTheme getColorThemeFromSkinFile(java.lang.String, java.lang.String)' has been changed to org.xwiki.lesscss.colortheme.ColorTheme
142 org.xwiki.lesscss.ColorTheme: Class org.xwiki.lesscss.ColorTheme removed
143 org.xwiki.lesscss.ColorThemeCache: Class org.xwiki.lesscss.ColorThemeCache removed
144 org.xwiki.lesscss.LESSCache: Class org.xwiki.lesscss.LESSCache removed
145 org.xwiki.lesscss.LESSColorThemeConverter: Class org.xwiki.lesscss.LESSColorThemeConverter removed
146 org.xwiki.lesscss.LESSCompiler: Class org.xwiki.lesscss.LESSCompiler removed
147 org.xwiki.lesscss.LESSCompilerException: Class org.xwiki.lesscss.LESSCompilerException removed
148 org.xwiki.lesscss.LESSSkinFileCache: Class org.xwiki.lesscss.LESSSkinFileCache removed
149 org.xwiki.lesscss.LESSSkinFileCompiler: Class org.xwiki.lesscss.LESSSkinFileCompiler removed
150 {{/code}}
151 )))
152
153 * Lots of refactoring on the new Mail module, which is a young API(((
154 {{code language="none"}}
155 org.xwiki.mail.MailResultListener: Class org.xwiki.mail.MailResultListener removed
156 org.xwiki.mail.MailSender: Method 'public void send(javax.mail.internet.MimeMessage, javax.mail.Session)' has been removed
157 org.xwiki.mail.MailSender: Parameter 1 of 'public void sendAsynchronously(javax.mail.internet.MimeMessage, javax.mail.Session, org.xwiki.mail.MailResultListener)' has changed its type to java.lang.Iterable
158 org.xwiki.mail.MailSender: Parameter 3 of 'public void sendAsynchronously(javax.mail.internet.MimeMessage, javax.mail.Session, org.xwiki.mail.MailResultListener)' has changed its type to org.xwiki.mail.MailListener
159 org.xwiki.mail.MailSender: Return type of method 'public void sendAsynchronously(javax.mail.internet.MimeMessage, javax.mail.Session, org.xwiki.mail.MailResultListener)' has been changed to org.xwiki.mail.MailResult
160 org.xwiki.mail.MailSender: Method 'public void waitTillSent(long)' has been removed
161 org.xwiki.mail.MailSenderConfiguration: Method 'public java.util.List getBCCAddresses()' has been added to an interface
162 org.xwiki.mail.MailSenderConfiguration: Method 'public java.lang.String getScriptServicePermissionCheckerHint()' has been added to an interface
163 org.xwiki.mail.MailSenderConfiguration: Method 'public long getSendWaitTime()' has been added to an interface
164 org.xwiki.mail.script.MimeMessageWrapper: In method 'public MimeMessageWrapper(org.xwiki.mail.internal.ExtendedMimeMessage, javax.mail.Session, org.xwiki.mail.MailSender, org.xwiki.context.Execution, org.xwiki.component.manager.ComponentManager)' the number of arguments has changed
165 org.xwiki.mail.script.MimeMessageWrapper: Accessibility of method 'public MimeMessageWrapper(org.xwiki.mail.internal.ExtendedMimeMessage, javax.mail.Session, org.xwiki.mail.MailSender, org.xwiki.context.Execution, org.xwiki.component.manager.ComponentManager)' has been decreased from public to package
166 org.xwiki.mail.script.MimeMessageWrapper: Method 'public java.util.concurrent.BlockingQueue getErrors()' has been removed
167 org.xwiki.mail.script.MimeMessageWrapper: Method 'public void send()' has been removed
168 org.xwiki.mail.script.MimeMessageWrapper: Method 'public void sendAsynchronously()' has been removed
169 org.xwiki.mail.script.MimeMessageWrapper: Method 'public void waitTillSent(long)' has been removed
170 {{/code}}
171 )))
172
173 * Switched to the generics-aware commons-collections4.(((
174 {{code language="none"}}
175 com.xpn.xwiki.monitor.api.MonitorPlugin: Return type of method 'public org.apache.commons.collections.buffer.CircularFifoBuffer getLastTimerData()' has been changed to org.apache.commons.collections4.queue.CircularFifoQueue
176 com.xpn.xwiki.monitor.api.MonitorPlugin: Return type of method 'public org.apache.commons.collections.buffer.CircularFifoBuffer getLastUnfinishedTimerData()' has been changed to org.apache.commons.collections4.queue.CircularFifoQueue
177 {{/code}}
178 )))

Get Connected