Last modified by Thomas Mortagne on 2017/03/24

Show last authors
1 {{box cssClass="floatinginfobox" title="**Contents**"}}
2 {{toc/}}
3 {{/box}}
4
5 This is the first and hopefully final release candidate of the 4.1 release cycle ([[Roadmap>>Main.Roadmap]]). Being a release candidate, this release is sparse on new features, concentrating instead on stabilization of the features brought in [[Milestone 1>>ReleaseNotesXWikiEnterprise41M1]] and [[Milestone 2>>ReleaseNotesXWikiEnterprise41M2]].
6
7 = New and Noteworthy (since XWiki Enterprise 4.1 Milestone 2) =
8
9 == Extension Manager improvements ==
10
11 The merge conflict resolution UI is now displaying all document changes as if you are comparing two versions from a document's history.
12
13 {{image reference="EM-mergeConflict.png"/}}
14
15 == For developers ==
16
17 === Diff module ===
18
19 A new diff/merge module has been added to make easier to deal with diff and merge both from component and scripts. See [[Diff module >>extensions:Extension.Diff Module]] for details.
20
21 == Bug fixes and improvements ==
22
23 * The activity macro no longer allows sending messages. That functionality has been extracted into a reusable macro called messageSender. See {{jira style="enum" notes="false" url="https://jira.xwiki.org"}}XWIKI-7679{{/jira}} and {{jira style="enum" notes="false" url="https://jira.xwiki.org"}}XWIKI-7875{{/jira}} for more details.
24 * The Windows Installer should now work fine on Windows 7. The issue is that on Windows 7 the "Program Files" directory is now read only and since XWiki wanted to write in it it was causing startup issues. We've temporarily solved this in 4.1 by installing XWiki at the root of the ##C:## drive for all Windows versions. This will be [[properly fixed in XWiki 4.2M1>>https://jira.xwiki.org/browse/XE-1051]].
25
26 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%2C+XEM%29+and+status+%3D+Closed+and+resolution+%3D+Fixed+and+fixVersion+%3D+%224.1-rc-1%22&tempMax=1000]] fixed in this release.
27
28 == Upgrades ==
29
30 No dependencies were upgraded in 4.1-rc-1
31
32 == Translations ==
33
34 image:da.png Danish translation has been added.
35
36 = Test Report =
37
38 You can check the [[manual test report>>TestReports.ManualTestReportXE41RC1]] to learn about what was tested and the results on various browsers.
39
40 == Tested Browsers ==
41
42 Here's the list of browsers tested with this version (i.e. browsers that we've tested as working - Check the list of [[supported browsers>>dev:Community.BrowserSupportStrategy]]):
43
44 {{browser name='firefox' version= '13.0.1'/}}
45
46 == Tested using the following Databases ==
47
48 For the list of supported databases please click [[here>>http://dev.xwiki.org/xwiki/bin/view/Community/DatabaseSupportStrategy]].
49
50 {{database name="hsqldb" version="2.2.8"/}}
51
52 = Known issues =
53
54 * [[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]]
55
56 = Upgrade Notes =
57
58 == Version-specific Upgrade Notes ==
59
60 No major changes were made in this version so upgrading should be smooth. Please review release notes for all versions newer than the version you are upgrading from.
61
62 == General Upgrade Notes ==
63
64 {{info}}
65 If you're running in a multiwiki setup you'll also need to define the property //xwiki.store.migration.databases// in your //xwiki.cfg// file if you want to explicitly name some databases to be migrated as the default is now to migrate all databases. Database that are not migrated could not be accessed.
66 {{/info}}
67
68 You may also want to [[import the default wiki XAR>>Main.Download]] in order to benefit from all the improvements listed above.
69
70 {{warning}}
71 Always make sure you compare your ##xwiki.cfg## and ##xwiki.properties## files with the newest version since some configuration parameters were 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.
72 {{/warning}}
73
74 == API Breakages ==
75
76 The following APIs were modified since version 4.0:
77
78 * Breakage in Query module done to support adding several Filters to a Query:(((
79 {{code language="none"}}
80 org.xwiki.query.QueryFilter: Method 'public java.util.List filterResults(java.util.List)' has been added to an interface
81 {{/code}}
82 )))
83 * This method should have been internal from the beginning:(((
84 {{code language="none"}}
85 org.xwiki.environment.EnvironmentConfiguration: Class org.xwiki.environment.EnvironmentConfiguration removed
86 {{/code}}
87 )))
88 * The Job module is new and is still considered a "young API":(((
89 {{code language="none"}}
90 org.xwiki.job.AbstractJob: Changed type of field status from org.xwiki.job.internal.DefaultJobStatus to org.xwiki.job.internal.AbstractJobStatus
91 org.xwiki.job.AbstractJob: Return type of method 'protected org.xwiki.job.internal.DefaultJobStatus createNewStatus(org.xwiki.job.Request)' has been changed to org.xwiki.job.internal.AbstractJobStatus
92 org.xwiki.job.AbstractJob: Method 'protected java.lang.String getId()' has been removed
93 org.xwiki.job.AbstractRequest: Return type of method 'public java.lang.String getId()' has been changed to java.util.List
94 org.xwiki.job.Job: Method 'public void join()' has been added to an interface
95 org.xwiki.job.Job: Method 'public boolean join(long, java.util.concurrent.TimeUnit)' has been added to an interface
96 org.xwiki.job.JobManager: Method 'public org.xwiki.job.event.status.JobStatus getJobStatus(java.util.List)' has been added to an interface
97 org.xwiki.job.Request: Return type of method 'public java.lang.String getId()' has been changed to java.util.List
98 org.xwiki.job.event.JobEvent: Return type of method 'public java.lang.String getJobId()' has been changed to java.util.List
99 org.xwiki.job.event.JobFinishedEvent: Return type of method 'public java.lang.String getJobId()' has been changed to java.util.List
100 org.xwiki.job.event.JobStartedEvent: Return type of method 'public java.lang.String getJobId()' has been changed to java.util.List
101 org.xwiki.job.event.status.JobStatus: Method 'public java.util.Date getEndDate()' has been added to an interface
102 org.xwiki.job.event.status.JobStatus: Method 'public java.util.Date getStartDate()' has been added to an interface
103 {{/code}}
104 )))
105 * The Extension module is relatively new and is still undergoing some API tuning:(((
106 {{code language="none"}}
107 org.xwiki.extension.job.plan.ExtensionPlan: Return type of method 'public java.util.Collection getTree()' has been changed to org.xwiki.extension.job.plan.ExtensionPlanTree
108 org.xwiki.extension.version.VersionConstraint: Method 'public boolean isCompatible(org.xwiki.extension.version.Version)' has been added to an interface
109 {{/code}}
110 )))
111 * This class was added in 3.2M2 by error in a user-public package. It's been moved again in the internal package as it should have been. We don't expect many users to be affected by this:(((
112 {{code language="none"}}
113 com.xpn.xwiki.doc.merge.MergeUtils: Class com.xpn.xwiki.doc.merge.MergeUtils removed
114 {{/code}}
115 )))
116 * In 2.2M1 we refactored BaseCollection to add getXClass() but we forgot to add it to the ObjectInterface interface. Even though this could break user we think it's very limited since nobody should implement directly ObjectInterface; instead everyone should extend BaseClass or BaseCollection:(((
117 {{code language="none"}}
118 com.xpn.xwiki.objects.ObjectInterface: Method 'public com.xpn.xwiki.objects.classes.BaseClass getXClass(com.xpn.xwiki.XWikiContext)' has been added to an interface
119 {{/code}}
120 )))
121 * The Autotag plugin has been extracted from the oldcore module and is now a module on its own so the following are not real breakages:(((
122 {{code language="none"}}
123 com.xpn.xwiki.plugin.autotag.AutoTagPlugin: Class com.xpn.xwiki.plugin.autotag.AutoTagPlugin removed
124 com.xpn.xwiki.plugin.autotag.AutoTagPluginAPI: Class com.xpn.xwiki.plugin.autotag.AutoTagPluginAPI removed
125 com.xpn.xwiki.plugin.autotag.FrenchStemmer: Class com.xpn.xwiki.plugin.autotag.FrenchStemmer removed
126 com.xpn.xwiki.plugin.autotag.Tag: Class com.xpn.xwiki.plugin.autotag.Tag removed
127 com.xpn.xwiki.plugin.autotag.TagCloud: Class com.xpn.xwiki.plugin.autotag.TagCloud removed
128 {{/code}}
129 )))
130 * The WYSIWYG Diff and Sync plugins have been extracted into their own modules so the following are not real breakages:(((
131 {{code language="none"}}
132 org.xwiki.gwt.wysiwyg.client.Images: Method 'public com.google.gwt.resources.client.ImageResource sync()' has been removed
133 org.xwiki.gwt.wysiwyg.client.Strings: Method 'public java.lang.String sync()' has been removed
134 org.xwiki.gwt.wysiwyg.client.diff.AddDelta: Class org.xwiki.gwt.wysiwyg.client.diff.AddDelta removed
135 org.xwiki.gwt.wysiwyg.client.diff.ChangeDelta: Class org.xwiki.gwt.wysiwyg.client.diff.ChangeDelta removed
136 org.xwiki.gwt.wysiwyg.client.diff.Chunk: Class org.xwiki.gwt.wysiwyg.client.diff.Chunk removed
137 org.xwiki.gwt.wysiwyg.client.diff.DeleteDelta: Class org.xwiki.gwt.wysiwyg.client.diff.DeleteDelta removed
138 org.xwiki.gwt.wysiwyg.client.diff.Delta: Class org.xwiki.gwt.wysiwyg.client.diff.Delta removed
139 org.xwiki.gwt.wysiwyg.client.diff.Diff: Class org.xwiki.gwt.wysiwyg.client.diff.Diff removed
140 org.xwiki.gwt.wysiwyg.client.diff.DiffAlgorithm: Class org.xwiki.gwt.wysiwyg.client.diff.DiffAlgorithm removed
141 org.xwiki.gwt.wysiwyg.client.diff.DiffException: Class org.xwiki.gwt.wysiwyg.client.diff.DiffException removed
142 org.xwiki.gwt.wysiwyg.client.diff.DifferentiationFailedException: Class org.xwiki.gwt.wysiwyg.client.diff.DifferentiationFailedException removed
143 org.xwiki.gwt.wysiwyg.client.diff.PatchFailedException: Class org.xwiki.gwt.wysiwyg.client.diff.PatchFailedException removed
144 org.xwiki.gwt.wysiwyg.client.diff.Revision: Class org.xwiki.gwt.wysiwyg.client.diff.Revision removed
145 org.xwiki.gwt.wysiwyg.client.diff.RevisionVisitor: Class org.xwiki.gwt.wysiwyg.client.diff.RevisionVisitor removed
146 org.xwiki.gwt.wysiwyg.client.diff.SimpleDiff: Class org.xwiki.gwt.wysiwyg.client.diff.SimpleDiff removed
147 org.xwiki.gwt.wysiwyg.client.diff.ToString: Class org.xwiki.gwt.wysiwyg.client.diff.ToString removed
148 org.xwiki.gwt.wysiwyg.client.diff.myers.DiffNode: Class org.xwiki.gwt.wysiwyg.client.diff.myers.DiffNode removed
149 org.xwiki.gwt.wysiwyg.client.diff.myers.MyersDiff: Class org.xwiki.gwt.wysiwyg.client.diff.myers.MyersDiff removed
150 org.xwiki.gwt.wysiwyg.client.diff.myers.PathNode: Class org.xwiki.gwt.wysiwyg.client.diff.myers.PathNode removed
151 org.xwiki.gwt.wysiwyg.client.diff.myers.Snake: Class org.xwiki.gwt.wysiwyg.client.diff.myers.Snake removed
152 org.xwiki.gwt.wysiwyg.client.plugin.sync.SyncPlugin: Class org.xwiki.gwt.wysiwyg.client.plugin.sync.SyncPlugin removed
153 org.xwiki.gwt.wysiwyg.client.plugin.sync.SyncPluginFactory: Class org.xwiki.gwt.wysiwyg.client.plugin.sync.SyncPluginFactory removed
154 org.xwiki.gwt.wysiwyg.client.plugin.sync.SyncResult: Class org.xwiki.gwt.wysiwyg.client.plugin.sync.SyncResult removed
155 org.xwiki.gwt.wysiwyg.client.plugin.sync.SyncService: Class org.xwiki.gwt.wysiwyg.client.plugin.sync.SyncService removed
156 org.xwiki.gwt.wysiwyg.client.plugin.sync.SyncServiceAsync: Class org.xwiki.gwt.wysiwyg.client.plugin.sync.SyncServiceAsync removed
157 org.xwiki.gwt.wysiwyg.client.plugin.sync.SyncStatus: Class org.xwiki.gwt.wysiwyg.client.plugin.sync.SyncStatus removed
158 org.xwiki.gwt.wysiwyg.client.plugin.sync.SyncTools: Class org.xwiki.gwt.wysiwyg.client.plugin.sync.SyncTools removed
159 org.xwiki.wysiwyg.server.plugin.sync.SyncEngine: Class org.xwiki.wysiwyg.server.plugin.sync.SyncEngine removed
160 org.xwiki.wysiwyg.server.plugin.sync.SyncException: Class org.xwiki.wysiwyg.server.plugin.sync.SyncException removed
161 {{/code}}
162 )))

Get Connected