Wiki source code of Release Notes for XWiki Enterprise 4.2 Milestone 1
Version 33.1 by Marius Dumitru Florea on 2012/07/18
Show last authors
author | version | line-number | content |
---|---|---|---|
1 | {{box cssClass="floatinginfobox" title="**Contents**"}} | ||
2 | {{toc/}} | ||
3 | {{/box}} | ||
4 | |||
5 | {{warning}} | ||
6 | This release is not finished yet, this is a work in progress | ||
7 | {{/warning}} | ||
8 | |||
9 | = New and Noteworthy (since XWiki Enterprise 4.1 version) = | ||
10 | |||
11 | == JIRA Macro == | ||
12 | |||
13 | A [[new JIRA Macro>>extensions:Extension.JIRA Macro]] is now part of the Platform but is not bundled by default (you'll need to install it with the Extension Manager). We previously had a [[Contributed JIRA Macro>>extensions:Extension.Contrib JIRA Macro]] but we decided that the JIRA macro was a good candidate to have in the Platform and thus supported by the XWiki Development Team. Compared to the older Contributed JIRA Macro, the new Macro has the following advantages: | ||
14 | |||
15 | * No Programming Rights required | ||
16 | * Supports issue ordering | ||
17 | * Supports ability to register new Styles, new Data Sources and new Field Displayers | ||
18 | * Displays closed issues as Striked-out | ||
19 | * Written in Java with automated tests | ||
20 | |||
21 | {{image reference="extensions:Extension.JIRA Macro@jiraMacroDefault.png"/}} | ||
22 | |||
23 | == Extension Manager improvements == | ||
24 | |||
25 | Main improvements: | ||
26 | |||
27 | * Starting with this version you can downgrade an extension. In other words, you can install an older version of an extension even if a newer version is currently installed. This doesn't apply to core extensions, which cannot be uninstalled, upgraded or downgraded individually. In order to downgrade an extension that is already installed you need to search for an older version. Currently this is possible only using the advanced search.((( | ||
28 | {{image reference="EM-extensionDowngradePlan.png"/}} | ||
29 | ))) | ||
30 | * From the main wiki of a wiki farm you now have the option to trigger extension jobs (install, uninstall, upgrade, downgrade, etc.) that target all the wikis. For instance, as you can see below, you can install an extension on the entire wiki farm:((( | ||
31 | {{image reference="EM-extensionGlobalInstall.png"/}} | ||
32 | ))) | ||
33 | * The log messages have been improved to include links to the affected documents or extensions as indicated in the following image~:((( | ||
34 | {{image reference="EM-extensionLogMessage"/}} | ||
35 | ))) | ||
36 | |||
37 | Other small improvements include: | ||
38 | |||
39 | * the progress tab is selected by default when you view the extension details if there is a job running (e.g. install in progress) for that extension | ||
40 | * when there is a merge conflict, the 'Show changes' button updates the changes asynchronously without reloading the entire page | ||
41 | * attachments of pages installed with the extension manager now have the right author set: the current user instead of the author from the XAR as it used to be | ||
42 | * the file size of attachments installed with the extension manager is now properly set | ||
43 | |||
44 | == Miscellaneous == | ||
45 | |||
46 | * Document attachments so far have been displayed in the order in which they are returned by the database, which most of the time happened to be the upload date. Starting with this version attachments are displayed ordered by their filename, which makes it easier to find an attachment, but support for selecting a different order (date, size, author...) will be added soon. | ||
47 | * It's now possible to use Velocity scripts in the Copyright field in the Administration. | ||
48 | * The XWiki Installer now fully works on Windows 7. The XWiki Data is now put in the ##%APPDATA%\XWiki Enterprise <version>\data## directory, while the binaries are installed in ##Program Files##. | ||
49 | * It is no longer allowed to use scripts in comments. This reduces the security risk from users that only have comment rights. | ||
50 | * Macro parameters may now contain macro syntax. Example: {{{ {{box title="{{info}}Hello!{{/info}}" }}Lorem ipsum ...{{/box}} }}} | ||
51 | * Improve OOB support for JBoss AS7: | ||
52 | ** Removed Struts Taglibs completely since we don't use them and some were defined but not made available, causing errors in deployments on JBoss AS7 ({{jira style="enum" url="http://jira.xwiki.org"}}XWIKI-7986{{/jira}}) | ||
53 | ** Fixed Logging conflict between JBoss AS and XWiki ({{jira style="enum" url="http://jira.xwiki.org"}}XWIKI-7987{{/jira}}) | ||
54 | |||
55 | == For Developers == | ||
56 | |||
57 | === New Git Module === | ||
58 | |||
59 | A new, optional (i.e. not installed by default), [[Git Module has been added>>extensions:Extension.Git Module]]. It allows to easily perform Git operations from within wiki pages. For example to count all commits for the past year and list all committers who's committed code during this period, you could write in a wiki page: | ||
60 | |||
61 | {{code language="java"}} | ||
62 | {{groovy}} | ||
63 | import org.apache.commons.io.* | ||
64 | import org.eclipse.jgit.api.* | ||
65 | import org.eclipse.jgit.lib.* | ||
66 | import org.eclipse.jgit.revwalk.* | ||
67 | import org.eclipse.jgit.storage.file.* | ||
68 | import org.gitective.core.* | ||
69 | import org.gitective.core.filter.commit.* | ||
70 | |||
71 | def service = services.get("git") | ||
72 | def commonsRepository = service.getRepository("git://github.com/xwiki/xwiki-commons.git", "xwiki-commons") | ||
73 | // Do a Git pull to get latest commits | ||
74 | new Git(commonsRepository).pull().call() | ||
75 | def finder = new CommitFinder(commonsRepository) | ||
76 | |||
77 | def dateFilter = new CommitterDateFilter(System.currentTimeMillis() - 365*24*60*60*1000L) | ||
78 | def countFilter = new CommitCountFilter() | ||
79 | def authorFilter = new AuthorSetFilter() | ||
80 | def filters = new AndCommitFilter() | ||
81 | filters.add(countFilter, authorFilter) | ||
82 | finder.setFilter(dateFilter) | ||
83 | finder.setMatcher(filters) | ||
84 | finder.find() | ||
85 | |||
86 | println "There have been ${countFilter.count} commits in the past year!" | ||
87 | println "" | ||
88 | |||
89 | println "The following committers have participated in those commits:" | ||
90 | authorFilter.getPersons().each() { | ||
91 | println "* ${it.name} (${it.emailAddress})" | ||
92 | } | ||
93 | {{/groovy}} | ||
94 | {{/code}} | ||
95 | |||
96 | === Miscellaneous === | ||
97 | |||
98 | * The transformation context have a "restricted" flag to indicate that macros and other transformations should not perform modifications to the database, expensive computations or other potentially harmful operations. Developers of macros and other rendering extensions should pay attention to this flag. | ||
99 | * The messageSender macro now accepts 3 parameters that allow you to customize it by overriding the default displayed visibility levels for a message (that a user can choose from), the default selected visibility level and the default value (in case of user or group visibility). More details on {{jira style="enum" url="http://jira.xwiki.org"}}XWIKI-7974{{/jira}}. | ||
100 | * The [[new experimental Security API that was first released in XWiki 4.0>>xwiki:ReleaseNotes.ReleaseNotesXWikiEnterprise40||anchor="HNewRightsImplementation28Experimental29"]] is now bundled by default in XWiki Enterprise. | ||
101 | |||
102 | == Upgrades == | ||
103 | |||
104 | The following dependencies have been upgraded: | ||
105 | |||
106 | * Infinispan 5.1.5 | ||
107 | * JGroups 3.1.0 | ||
108 | * Selenium 2.22 | ||
109 | * Tika 1.2 | ||
110 | |||
111 | = Test Report = | ||
112 | |||
113 | You can check the [[manual test report>>TestReports.ManualTestReportXE42M1]] to learn about what was tested and the results on various browsers. | ||
114 | |||
115 | == Tested Browsers == | ||
116 | |||
117 | 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]]): | ||
118 | |||
119 | {{browser name="firefox" version="13.0.1"/}} | ||
120 | |||
121 | == Tested Databases == | ||
122 | |||
123 | {{database name="hsqldb" version="2.2.8"/}} | ||
124 | |||
125 | = Known issues = | ||
126 | |||
127 | * [[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]] | ||
128 | |||
129 | = Upgrade Notes = | ||
130 | |||
131 | == Version-specific Upgrade Notes == | ||
132 | |||
133 | * The ##xwiki.work.dir## and ##xwiki.temp.dir## properties in the ##xwiki.cfg## configuration file are no longer taken into account. The XWiki work dir (now called XWiki Data Directory or XWiki Permanent Directory) is now configured either by setting the ##xwiki.data.dir## System property or by setting the ##xwiki.properties##'s ##environment.permanentDirectory## property. The temporary directory is not configurable within XWiki but can be configured through your Servlet Container (since XWiki uses the Servlet container's temporary directory). See also [[Configuring directories>>platform:AdminGuide.Configuration||anchor="HConfiguringDirectories"]]. | ||
134 | |||
135 | == General Upgrade Notes == | ||
136 | |||
137 | {{info}} | ||
138 | 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. | ||
139 | {{/info}} | ||
140 | |||
141 | You may also want to [[import the default wiki XAR>>Main.Download]] in order to benefit from all the improvements listed above. | ||
142 | |||
143 | {{warning}} | ||
144 | 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. | ||
145 | {{/warning}} | ||
146 | |||
147 | == Comments stored with a custom mapping or custom annotation class == | ||
148 | |||
149 | If you happened to use a custom mapping for storing ##XWiki.XWikiComments## objects in a separate table, you may have experienced problems with the migration ##R40001XWIKI7540##. Dealing with custom mappings is outside the scope of the migration so now, if such a custom mapping is detected, the migration is simply skipped. The migration is also skipped if you use a custom annotation class for your annotation objects, other than the default ##AnnotationCode.AnnotationClass##. | ||
150 | |||
151 | If you are in one of the two cases above and the migration is skipped, you will want to make sure that the ##Annotations## docextra tab is still visible. To make it visible, set ##Administration > Look & Feel > Page Elements > Document metadata visibility > Show document annotations## to ##Yes##. You will continue to use your custom annotations (in the Annotations tab) or custom mapped comments (in the Comments tab) as before, without them being merged into one Comments tab, as it happens by default in the latest versions. | ||
152 | |||
153 | Please see {{jira style="enum" url="http://jira.xwiki.org"}}XWIKI-8036{{/jira}} for more details. | ||
154 | |||
155 | == Custom displayers in the XWikiUsers class == | ||
156 | |||
157 | If you have added some custom displayers to new or existing fields in the ##XWiki.XWikiUsers## class, you need to check and make sure that they are written in 2.1 wiki syntax. This is required because the XWikiUsers document will now be forced to use the 2.1 wiki syntax, no matter what syntax you save it with. If your custom displayers are written in 1.0 syntax, for example, and the class document is in 2.1 syntax, they will not render. | ||
158 | |||
159 | == API Breakages == | ||
160 | |||
161 | The following APIs were modified since version 4.1: | ||
162 | |||
163 | {{todo/}} |