Wiki Creation

During the wiki creation, Distribution Wizard is not triggered anymore. Instead, the whole wiki creation process has been moved into a job, and everything happens inside the Wiki Creation Wizard (with a progress bar and a logging area):

The Wiki Provisioning Step has been integrated into the job too.

When a wiki is created from a template, we now have a message in the logs that displays which document is copied.

Document Index Tree Finder

You can now easily find documents and attachments from the tree view of the Document Index.

Solr Search

We worked on making the search UI responsive on small screens. On mobile phones the list of search facets is now collapsed above the search results and the user can toggle it with a tap. We improved the way the search results of type Object and Object Property are displayed (check the result title and location / breadcrumb). We switched to using the icon themes for the search result icons and we also fixed some small spacing and alignment issues introduced by the migration from the old Colibri skin to the new Flamingo skin. Last but not least, we worked on refreshing the search UI without reloading the entire page when the user sorts the search results, uses the pagination or drills down the results using the search facets.

It's now possible to disable highlighting and faceting which are very slow tasks. Can be controlled directly from the search UI or from the Main.SolrSearchConfig document.

Nested Pages

It's now possible to create wiki pages inside other wiki pages. More specifically we've decided to drop the concept of Space in the UI (it's still there at the API/platform level) and instead, to replace it with the concept of Nested Pages.

We've also decided to drop the concept of Parent/Child relationship since it was too complex for end users to have 2 hierarchies: the Space/Page hierarchy and the Parent/Child hierarchy. The Parent/Child hierarchy also had limitations: you couldn't inherit page permissions for example. Thus the idea is to have a single hierarchy based on Nested Pages.

Advantages of Nested Pages:

The URL reflects the page hierarchy

Finer-grained control: Ability to set permissions at each level

Generally speaking, a nicer and simpler way to organize your content hierarchically

Moving and Deleting pages updates the hierarchy

Terminology:

Nested Page (a.k.a Non-Terminal Page): This is a wiki page that can have children pages. Technically a Nested Page is implemented as a Nested Space (i.e. a WebHome page).

Non-Nested Page (a.k.a Terminal Page): This a wiki page that cannot have children pages. Applications and script can create Terminal Pages. Advanced Users will also be able to create Terminal Pages from the UI. Standard Users will only be able to create Nested Pages.

Nested Space: A Space which has another Space as parent. As mentioned above, a Nested Page is technically implemented as a Nested Space. You will used the term Nested Space when speaking technically about XWiki APIs for example but when talking about UI you should favor using the term Nested Page instead.

We have worked a lot to minimize the retro-compatibility issues. However, some Extensions are not adapted for Nested Pages yet, and their execution is still sub-optimal. For the next releases, we plan to work on the adaptation of these Extensions.

Script right

A new Script Right has been added to allow controlling who has the right to write Scripts. Specifically anyone with Edit rights can edit a page and write a Script in it. However, when the page is rendered the script will only execute if the last author of the page has the Script right.

Example when the author of a script doesn't have the Script right:

The Script Right is set to DENY by default, meaning that if you do not have it explicitly, you will not be able to execute the scripts that you write with your user account.

However, for backward-compatibility reasons, the standard XWiki Enterprise distribution comes with the Script Right being allowed for all users at the main wiki level, so that, unless you (as an Admin) explicitly revoke the right for some users or explicitly deny it, they will be able to execute the scripts they wrote, just like before.

Flamingo

Following the introduction of the Nested Pages feature, we have changed a lot our default skin, Flamingo:

The top menu has been removed and replaced by a drawer menu that you can expand by clicking on the top right icon

The add menu has been relocated near the edit one

The L&F of the Add, Edit, and "More Actions" menus has been changed

A lot of actions have been moved to the "More Actions" menu

The page breadcrumb has suffered some changes:

it is now also displayed on the wiki home page

the wiki home page is now included when it is part of the current document's hierarchy, i.e. for children and descendants of the wiki home page. See XWIKI-12423 for more details.

the sub-wiki pretty name is included between the home icon and the local page path

The actions menus (edit, create, more actions) are now available from the rename, copy and delete actions.

The create, copy and rename page actions have been modified to support nested pages:

The source and target pages are displayed using the breadcrumb

The target page can be selected using a document tree picker

For advanced users there is also the option to specify the target page using some text input fields (location advanced edit mode). This is useful especially if you want to create/move the page under a parent that doesn't exist yet (you cannot use the tree picker in this case because the parent would not be available in the tree).

The delete action proposes to delete the children of the page.

The welcome message from the main wiki home page has been updated.

The "Spaces" widget from the wiki dashboard has been replaced with "Pages" which shows the hierarchy of nested pages from that wiki.

For non terminal pages, we have introduced a "Page Administration", where you will find settings that concern the page and its children (it's actually the old space administration behind the scene). But we have also introduced 2 sections for setting rights on these pages:

a section to set rights for the page only.

a section to set rights for the page and its children.

For terminal pages, nothing changes, you can change the access rights of the page in the "edit" menu. The only addition is a "Administer Parent" link in the "More actions" menu to administer the parent page (which again is the space administration behind the scene).

The create action has been re-looked (with the introduction of the "page type" field) and proposes to import an office document.

A new "children" viewer is now accessible in the "more actions" menu, along with the other viewers.

For Terminal Pages, a new "siblings" viewer is present, which replaces the old "space index" feature.

More Flamingo

Navigation bar

The user's avatar is now displayed between the search icon and the drawer icon:

Also, the search bar at the top of the screen has been improved a bit. When the user clicks on the search button, the search bar is opened and gets the focus. Then, when the users clicks in some other place, the search bar is closed, slowly.

Closed:

Open:

Menus

The "More Options" menu has been split and a new "Page Administration" menu has been introduced:

Delete

The delele UI now uses the 'title' and 'location' columns to list the children that may be affected by the delete action:

Drawer

In the Drawer (top right menu), the pages for which the user doesn't have permissions to access are not displayed anymore.

Breadcrumb

When the hierarchy of a Nested Pages is long, we do not display it entirely any more. Instead, we display a limited version, that the user can expand by clicking on the "ellipsis" character ('...'):

limited:

full:

Note that this behavior have also been added to all hierarchy breadcrumbs, including location of search results, etc...

The breadcrumb has now support for tree navigation. Each breadcrumb element has a drop down tree that shows the siblings and the children, helping you navigate easily around the wiki.

The breadcrumb tree navigation doesn't show the document translations any more when multilingual is disabled, because navigating to a document translation when multilingual is off doesn't have any effect: the default translation is displayed instead. You can still see the translations in the Page Index Tree though.

Notifications & Watchlist

A new menu has been added to the top bar, on the right: the "notifications" menu (represented by a bell). In the future, it will be the place where you can find notifications about some events happening on the wiki (personal message, a page has been modified, etc...).

In this menu, we have moved the Watchlist icons (watch this page, watch this wiki, etc...). These actions can be triggered with the new switch buttons.

The livetable of the WatchList macro have been updated to support Nested Pages.

Detailed Release Notes

If you wish to see the full details of all features and improvements you can check each release note.