Wiki source code of Release Notes for XWiki 5.4

Last modified by Thomas Mortagne on 2023/10/13

Hide last authors
Thomas Mortagne 1.1 1 {{box cssClass="floatinginfobox" title="**Contents**"}}
2 {{toc/}}
3 {{/box}}
5 This is the release notes for [[XWiki Commons>>]], [[XWiki Rendering>>]], [[XWiki Platform>>]] and [[XWiki Enterprise>>]]. They share the same release notes as they are released together and have the same version.
7 This is an improvement and stability release for things started during the 5.x cycle.
Guillaume Delhumeau 21.1 9 {{error}}
10 We have discovered a regression in this version after it was released:
Thomas Mortagne 23.1 11 * [[Access denied to any page located on the main wiki and using the Activity Stream macro without the "wikis" parameter if the user doesn't have view rights on any sub wiki>>]].
Vincent Massol 21.2 12
13 This is fixed in XWiki 5.4.1.
Guillaume Delhumeau 21.1 14 {{/error}}
Thomas Mortagne 1.1 16 = New and Noteworthy (since XWiki 5.3) =
Thomas Mortagne 23.1 18 [[Full list of issues fixed and Dashboard for XWiki 5.4>>]].
Thomas Mortagne 1.1 19
20 == Solr Search Improvements ==
22 The search facets now support multiple selection. Moreover, selecting a facet value doesn't hide the rest of the values of that facet. You can still see the number of results matching that value. We also decided to display a facet even when it has only one value, so that the user understands that all the results have that value for the specified facet. The facet selection is now preserved when you perform a new search. You can reset the current facets from the header of the facet pane if you want.
24 {{image reference="searchFacetMultipleSelection.png"/}}
26 === Advanced Search Options Removed ===
28 We decided to remove the Advanced Search Options (i.e. the search filters) because they weren't visible enough (you had to notice the arrow at the end of the search input) and, most importantly, because most of these options were duplicated by search facets, creating confusion. We integrated into the facet column the filters that were not already present there. The query boost option is no longer available but you can achieve the same thing from the query input and we'll add later a query boost configuration in the search administration section.
30 Following this change, we aligned the search input to the left. The reason it was centered before is because we didn't want the advanced search pane to hide the start of the first search results.
32 The Result Type facet has the document type selected by default. This is consistent with the old Result Type filter from the Advanced Search Options which was set to include by default only documents in the search results.
34 === Improved File Type Facet ===
36 The File Type facet filters results based on the attachment file type. E.g. "documents that have attached images", "text attachments". File types are grouped by category. You can select both an entire category and a specific file type. Categories can be expanded and collapsed.
38 {{image reference="searchFileTypeFacet.png"/}}
40 === Improved File Size Facet ===
42 The File Size facet lets you filter the results based on the size (in bytes) of the attachments. You can new choose between 4 ranges:
44 * tiny (less than 10KB)
45 * small (between 10KB and 500KB)
46 * medium (between 500KB and 5MB)
47 * large (more than 5MB)
49 {{image reference="searchFileSizeFacet.png"/}}
51 === Debug Mode ===
53 You can enable search debug mode by adding ##&debug=true## to the search URL query string. See the [[Solr Search Application>>extensions:Extension.Solr Search Application]] for more details.
55 {{image reference="searchDebug.png" width="400"/}}
57 == WikiStream improvements ==
59 * added support for ##file:<path>## syntax in ##source## and ##target## properties {{image reference="wikistream-target.png"/}}
60 * instance input module is now able to generate generic revision events
61 * Confluence input module pass page content as it is when target does not support rendering events (instead of nothing)
63 == Distribution Wizard improvements ==
65 We changed the labels of the Skip and Cancel buttons from the Distribution Wizard steps. We hope this will remove some of the confusion around these two buttons. Additionally, we added a confirmation pop-up when the Never button (former Cancel) is clicked to prevent users from discarding the Distribution Wizard by mistake.
67 {{image reference="dw-welcomeStep.png"/}}
69 === No ##Upgrade Mode## anymore ===
71 The Upgrade Mode step has been removed. Instead, both upgrade modes are kind of enabled: you can upgrade your wikis when running the Distribution Wizard on the main wiki, from the Wikis step, but you can also run the Distribution Wizard on each of your wikis separately (like on the main wiki). As a consequence, upgrading the wikis in the Wikis step is now optional: you always get the Continue button. So it's up to you if you want to upgrade the default set of wiki pages on your wikis now or later by accessing each wiki.
73 {{image reference="dw-wikisStep.png"/}}
75 === New report step ===
77 A new last step has been introduce to display all the changes made to the wiki and give a chance to do some rollbacks.
79 {{image reference="dw-report.png"/}}
81 === Repair Previous UI ===
83 When repairing the previous UI, you can now enter a version that is not on the list by clicking on the pencil icon after the version list box. Moreover, the version list box should contain now all the available stable versions of the recommended UI.
85 {{image reference="dw-repairPreviousUI-editVersion"/}}
87 On the Wikis step, you can now repair the previous UI on all the available wikis.
89 {{image reference="dw-wikisStep-repairPreviousUI.png"/}}
91 == Activity Stream improvements ==
93 * The name of the wiki where the event has happened is displayed now, if the event concerns an other wiki than the current one.
94 * On the main wiki, Activity Stream now display events from every wikis where the current user has view right.
95 [[{{image reference="activity.png" width="35%"/}}>>attach:activity.png]]
97 == Miscellaneous ==
99 * Added support for creating and deleting wikis when using the [[H2 database>>]].
Vincent Massol 19.3 100 * Extension Manager XAR handler now compares attachment content (but does not merge them) and save them in the same version than the document itself
Thomas Mortagne 1.1 101 * Images that are copy-pasted as HTML in the WYSIWYG editor now work fine, thanks to the added support of the [[Data URI scheme>>]] in XWiki Syntax 2.1. The wiki syntax is:(((
102 {{code language="none"}}
103 image:data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABHNCSVQICAgIfAhkiAAAAO9JREFUOE+lUrsNwjAUdCyWIBXjIEokVoCejgkyQ2gYAIkSsQUrUIUxwrund5bjX4OlyPG9u3v22Z2rjM1uWEtpkq//PC/fCs35UoHi/WGL8mTrErVsAJGJHU2KagGzHUi3I8iP+0s1nInXjBSPSfI/n2/vGTNFJZOVCRkYltdGl1FMRqmHYL0FFM6MjnFXaxCwNJMOZAbW6JyVkI1cbwcD3T5MGBjZLQxi8Lw9kp5iFFikUYwZr2dNQzQT7EavsDFOwl2ErNuIh5kgaX1E0bEyMTiZAcA0WAa26GSL7CUaHjJJz1wyqWLpe6gS/yn8AD9tcjFN7/ajAAAAAElFTkSuQmCC
104 {{/code}}
105 )))
106 * The user and group pickers now take into account [[the User Scope specified when you create a new wiki>>extensions:Extension.Wiki Application||anchor="HCreateanewwiki"]]. If the current wiki supports only global users then the user picker will suggest global users. If the current wiki supports both local and global users then the user picker has a toggle that lets you choose whether to get local or global suggestions. The group picker behaves slightly different because you can have local groups even when only global users are allowed (to be able to setup various rights for the global users). Thus the group picker shows the scope toggle when you are in a subwiki that accepts global users, otherwise it suggests only local groups (from the current wiki, which can be the main wiki).
107 * Increased the size of the security cache to improve performances from 500 entries to 10000 entries. This setting could still be overwritten in the infinispan configuration of the cache named This new setting should be sufficient for most usages while the previous default were only valid for small single wiki.
Thomas Mortagne 24.1 108 * Improvement in the wiki descriptor pages. It is now consistent with our [[vertical forms standard>>Documentation.DevGuide.VerticalForms]].
Thomas Mortagne 1.1 109 [[{{image reference="descriptor-improvement1.png" width="35%"/}}>>attach:descriptor-improvement1.png]] [[{{image reference="descriptor-improvement2.png" width="35%"/}}>>attach:descriptor-improvement2.png]]
Vincent Massol 19.3 110 * When the user creates a new wiki, without a template, a message is displayed to explain to him that the Distribution Wizard will be started to initialize the newly created wiki.
Thomas Mortagne 1.1 111 [[{{image reference="create-a-wiki-dw.png" width="35%"/}}>>attach:create-a-wiki-dw.png]]
Vincent Massol 19.3 112 * When the user creates a new wiki from a template, an error is now displayed when an error happens:
Guillaume Delhumeau 18.1 113 [[{{image reference="wiki-template-error.png" width="35%"/}}>>attach:wiki-template-error.png]]
Vincent Massol 19.3 114 * A few changes that were applied on since a long time were not applied on git repository, this is now fixed.
Thomas Mortagne 1.1 115
Thomas Mortagne 23.1 116 See the [[full list of JIRA issues>>]] fixed in this release.
Thomas Mortagne 1.1 117
118 = For Developers =
120 == New APIs to manipulate XAR files ==
122 A new ##"xar"## ScriptService has been introduced with APIs to manipulate XAR files. It does not yet contains a lot of methods and new will be added as needed. See [[XAR Module extension>>extensions:Extension.XAR Module]] for more details.
124 == Miscellaneous ==
126 * Properties annotations (##@PropertyName##, ##@PropertyDescription##, etc.) are now now annotated with ##@Inherited## which make possible to define them in interfaces or abstracts for example
127 * It's now possible to use plugins installed as extension (only if installed or either main wiki or farm)
128 * It's now possible to specify a custom version for the distribution UI in the WAR pom.xml using ##xwiki.extension.distribution.ui.version## and ##xwiki.extension.distribution.wikiui.version##.
129 * New ##Document.getLocale()## API which should be used rather than the older ##Document.getLanguage()## which is now deprecated.
130 * It's now possible to organize the slf4j log as a tree, see [[Logging Module>>extensions:Extension.Logging Module||anchor="HLogtree"]].
131 * The ##XWiki.XWikiAdminGroup## and ##XWiki.XWikiAllGroup## pages have been moved from the ##xwiki-platform-administration-ui## module to the ##xwiki-enterprise-ui-admin-user## one.
132 * We added a new parameter to the [[Live Table Velocity macro>>extensions:Extension.Livetable Macro]] named 'selectedTags' which controls the list of tags that are selected initially in the tag cloud. You can still select different tags after the live table loads. With this new parameter you can have a permanent link to a live table that has the rows filtered initially by some tags:(((
133 {{code language="none"}}
134 ## /xwiki/bin/view/Demo/WebHome?tag=news&tag=science
135 #set ($options = {
136 'className': 'Demo.DemoClass',
137 ...
138 'tagCloud': true,
139 'selectedTags': $request.getParameterValues('tag'),
140 ...
141 })
142 {{/code}}
143 )))
144 * The module {{code}}xwiki-platform-wiki-rest{{/code}} replaces the old module {{code}}xwiki-platform-wiki-manager-rest{{/code}} in order to move {{code}}xwiki-platform-wiki-manager{{/code}} in {{code}}contrib{{/code}}, but the API is unchanged.
145 * Verbosity of the job is now configurable right from the ##org.xwiki.job.Request## object
146 * Log generator now generates BeginEvent/EndEvent variants based on marker informations
147 * The following ##java.lang.Class## methods are now allowed in Velocity by default: ##name, isArray, isAssignableFrom, isEnum, isInstance, isInterface, isLocalClass, isMemberClass, isPrimitive, isSynthetic##
148 * Default job status does not provide log tree anymore. Was making the API too complex. It can be created from the log queue very easily in Java and a helper method has been added in logging ScriptService to create one: {{code language="velocity"}}$services.logging.toLogTree($logs){{/code}}
149 * Various APIs have been added to help translate log. See [[Logging Module>>extensions:Extension.Logging Module||anchor="HTranslatelog"]] for more details
150 * It's now [[possible to add new Images Types when rendering in XHTML>>rendering:Main.Extending||anchor="HAddinganewImageType"]]
151 * Introduced ##org.xwiki.observation.AbstractEventListener##
152 * New model API and script service API to create a tree from a list of entity references. See [[Model Module>>extensions:Extension.Model Module]] for more details
153 * [[New option in the XAR plugin's ##format## mojo to add missing license headers>>dev:Community.XARPlugin||anchor="HFormatMojo"]]
154 * If you want to restrict the list of wikis that are searchable by default with Solr from the main wiki then you can define the following Velocity variable in a page that includes ##Main.SolrSearch##:(((
155 {{code language="none"}}
156 #set ($wikisSearchableFromMainWiki = ["xwiki", "platform", "enterprise", ..., "commons", "rendering"])
157 {{/code}}
158 )))
159 * {{code language="none"}}${{/code}}, {{code language="none"}}${{/code}}, {{code language="none"}}${{/code}} are deprecated now. Please use the corresponding {{code language="none"}}lastError{{/code}} function instead.
161 == Upgrades ==
163 The following dependencies have been upgraded:
Thomas Mortagne 23.1 165 * [[commons-compress 1.6>>]]
166 * [[commons-configuration 1.10>>]]
167 * [[commons-lang 3.2>>]]
168 * [[commons-net 3.3>>]]
169 * [[cssparser 0.9.11>>]]
170 * [[HSQLDB 2.3.1>>]]
Thomas Mortagne 1.1 171
172 = Translations =
174 The following translations have been updated:
176 {{language codes="de, es, fr, lv, nl, pt_BR, ru, sv"/}}
178 = Tested Browsers & Databases =
Manuel Smeria 20.2 180 {{include reference="TestReports.ManualTestReportXWiki54Summary"/}}
Thomas Mortagne 1.1 181
182 = Known issues =
Thomas Mortagne 23.1 184 * [[Bugs we know about>>]]
Thomas Mortagne 1.1 185
186 = Backward Compatibility and Migration Notes =
188 == General Notes ==
190 When upgrading make sure you compare your ##xwiki.cfg##, and ##web.xml## files with the newest version since some configuration parameters may have been modified or added. Note that you should add so that XWiki will attempt to automatically migrate your current database to the new schema. Make sure you backup your Database before doing anything.
Thomas Mortagne 16.1 192 == New Velocity uberspector ==
Thomas Mortagne 1.1 193
194 If you modified {{code language="properties"}} = runtime.introspector.uberspect.chainClasses = ...{{/code}} property in ##xwiki.propertes## file you should make sure to replace ##org.apache.velocity.util.introspection.SecureUberspector## with ##org.xwiki.velocity.introspection.SecureUberspector##.
196 == API Breakages ==
Thomas Mortagne 20.1 198 A few breaking changes has been done to WikiStream API which young and still in progress:
Thomas Mortagne 1.1 199
200 {{code language="none"}}
201 org.xwiki.wikistream.xar.input.XARInputProperties: Method 'public boolean isReferencesOnly()' has been removed
202 org.xwiki.wikistream.xar.input.XARInputProperties: Method 'public void setReferencesOnly(boolean)' has been removed
203 org.xwiki.wikistream.model.filter.WikiDocumentFilter: Field PARAMETER_REVISION has been removed, but it was previously a constant
204 org.xwiki.wikistream.model.filter.WikiObjectPropertyFilter: Parameter 2 of 'public void onWikiObjectProperty(java.lang.String, java.lang.String, org.xwiki.filter.FilterEventParameters)' has changed its type to java.lang.Object
205 {{/code}}

Get Connected