Release Notes for Cristal 0.12

Last modified by Manuel Leduc on 2024/11/25

This is the release notes for Cristal.

This release brings two new features. First, the ability to preview attachments from Cristal UI. And, the page history is now avaiable in page's extra tabs.

Note for translators: While there is currently no easy way to switch languages, we started extracting translatable text info a format that can be exploited by Weblate. You can already start translating a few translation keys.

Cristal is still under heavy development.

  • All APIs are subject to be changed without notice
  • A lot of features are subject to limitations that will be removed over time
  • See the Roadmap page to see what we plan to work on in the next releases

New and Noteworthy (since Cristal 0.10)

Full list of issues fixed and Dashboard for 0.12.

For Users

History View

 
It is now possible to see the history of a page in the new "History" tab, at the bottom of the page. Currently, this is only supported by the XWiki and GitHub backends.

Attachment preview

 
Is it now possible to preview attachments when clicking on an attachment link. A modal window opens with the following elements:

  • file name
  • uploader name
  • upload date
  • size
  • mimetype
  • when available, an attachment preview (e.g., for images and videos)
  • a download button

More details in the attachments tab

 
The attachments tab displays additional metadata: the size, the upload date, and the uploader.

For Admins

No changes!

For Developers

Page Revision Managers

 
Page Revision Managers have been introduced to support backend-specific logics to manage history on backends supporting versioning. The new history tab feature relies on them and any future backend with versioning support is expected to implement their own implementation.

File Preview

 
A file preview module was introduced, allowing developers to display the file size from bytes to a human-readable format (e.g., 512 Gb) with the FileSize component.

Additionally, a FilePreview component allows for the display of a file preview UI when the provided file mime type is supported. For now, only images and videos are supported.

User module

 
A user module was introduced. It provides a User Vue component allowing to provide a standardized way to display users in the UI.

Date

 
A date module was introduced, allowing developers to convert dates to localized strings with the DateService component, and a Date Vue component to display localized date in UI elements.

Model

 
A new set of model components was introduced:

  • model-api: provides the types of entities supported by Cristal (e.g., page reference, or attachment reference)
  • model-click-listener: provides the operations to listen to links in the DOM, parse those links to entity references, and to decide of the action to perform based on the link type (e.g., navigate to a new page, or open the file preview modal)
  • model-reference: parsers and serializers for entities
  • model-remote-url: parsers and serializers for backend remote url

Storage.getAttachment

 
The storage API now provides a method to retrieve a single attachment from its name and page reference.

Upgrades

The following runtime dependencies have been upgraded (they have a different release cycle than Cristal):

Security Issues

Security issues are not listed in issue lists or dashboards to avoid disclosing ways to use them, but they will appear automatically in them once they're disclosed. See the XWiki Security Policy for more details.

Known issues


Credits

France 2030 Logo

This project is being financed by the French State as part of the France 2030 program

Ce projet est financé par l’État Français dans le cadre de France 2030

The following people have contributed code to this release (sorted alphabetically):

  • Manuel Leduc
  • Marius Dumitru Florea
  • Pierre Jeanjean
  • Simpel
  • 一颗小土豆

Get Connected