What's new in eLabFTW 5.1

elabftw 5.1

Introduction

eLabFTW 5.1 has been released! This new version brings many new features, enhancements and a few bugfixes. This blog post highlights some of these changes, but the complete list of changes is available on the release page.

Important change

A breaking change has been introduced in APIv2:

  • /team_tags has moved to teams/{id}/tags. If you have scripts using /team_tags, replace it with teams/current/tags to maintain the same behaviour.

Video

A video has been produced, summarizing some of the features:

New features

Requesting action

A new button appeared in the toolbar, to request an action from another user:

request action

This opens up a modal window allowing you to select an action and a colleague. The available actions currently are:

  • Archive
  • Lock
  • Sign
  • Timestamp
request action modal

Once validated, the user will see the requested action when listing experiments and on their dashboard:

request action notification

Following the link or opening the targeted entry will display an action toolbar on top:

request action bar

Signature action

A completely new mechanism has been added in eLabFTW, something users were often asking about: signatures.

Now let’s be clear, it was previously possible to print a PDF with a signature block at the end of pages for handwritten signatures. And because all actions on the notebook are done with an authenticated account, this also counts as a signature. Leaving a comment or locking an entry can be interpreted as a signature, because this action could only have been done by that one human that has access to this user account.

But we wanted to push things further, and implemented a cryptographic signature feature. In order to get started with it, head to your Settings page (previously named User Control Panel), on Account tab (second tab). From here you can create a signature keys pair by providing a passphrase.

creating a signature key

Each time you sign an entry, this passphrase will be requested. To sign an entry, click the Signature icon from the toolbar:

signature modal window

You will be presented with a choice for the meaning of your signature. Currently we support:

  • Approval
  • Authorship
  • Responsability
  • Review
  • Safety

After providing your passphrase and executing the signature, an immutable comment will be added to the entry:

signature comment

Furthermore, a Signature Archive (a .zip file attached to the entry) will be saved as an attachment (with an “archived” state, so hidden from view unless you toggle the Show archived button).

signature archive

The main advantage of this approach is that the Signature Archive can be verified out-of-band, meaning it doesn’t require eLabFTW to verify that the signature is valid and has been done by a known user. On GNU/Linux, you can directly run the verify.sh script inside the Signature Archive, provided minisign is installed on your system: eLabFTW signatures are compatible with the minisign format.

You can read more about signatures on the documentation page.

Exclusive edit mode

Sometimes, working on an entry that is editable by several users can prove difficult because the most recent “Save” would overwrite other changes.

This is why there is a warning when an entry has recently been edited, so you know someone else is working on it.

eLabFTW 5.1 introduces a new concept: exclusive edit mode, which allows you to open an entry in edit mode and prevent anyone else from doing the same.

exclusive edit button

Clicking this button will open the entry in “Exclusive edit mode” and prevent colleagues from editing it.

Another user wishing to edit it could request access:

exclusive edit warning

Clicking this button will send a request action to the user:

exclusive edit request

Better import/export functions

The import and export actions have been seriously revamped.

In the Profile page you’ll find two new tabs:

new import and export tabs in profile

Import

The new import menu allows importing .eln or .csv files, as experiments, resources or experiments templates:

import menu

You may notice that .zip import is no longer possible. It was indeed dropped for several reasons, the main ones being maintenance cost and feature redundancy. Read this blog post to learn more about why it is sometimes necessary to drop features in a software project, for its benefit.

See dedicated Import documentation.

Export

import menu

The new Export menu has an important new feature: the export process is now asynchronous.

Previously, when you would request an export, your browser would make a request, and the file would be streamed to you, right up until the timeout, because web requests have a limited time to send data, after which the server closes the connection.

This worked alright for most cases, but once users started to have numerous long experiments, this export would take too long and users would end up with truncated archives.

This new Export page allows you to request an export, with several options, and then the export will work on its own, independant of a web request, and once the file is ready you can download it.

See dedicated Export documentation.

Onboarding emails

Admins can now define a “Welcome email” that new users will receive after validation of their account

Onboarding email

Sysadmins can also define different emails for new users and Admins! (see Communication tab of Sysconfig panel)

Full team import/export

The improvements on the .eln file format allow us to make a full export of an entire team, and import it in another instance very easily.

This can be done via command line with: bin/console teams:export (and teams:import). It will generate a .eln file that contains everything and can be imported fully into another instance: users get created, links between entries are kept, etc…

Batch actions for Admins

The Admin Panel gained a new tab that allows executing an action based on Categories, Status, Tags or Users. You first select the target(s):

Batch actions selection

and then you can execute actions such as Lock/Unlock, Archive or Delete, and set read or write permissions with a fine control:

Batch actions

New user banner

As an Admin, you can set a custom text that will be visible only to new users in your team, for a limited time (defaults to 15 days, modifiable). This feature is disabled by default. You can enable it and set a custom text from the first tab of the Admin Panel:

New user banner configuration

It will then appear like this, on all pages, and only for new users:

New user banner

Listing attachments

From your user profile, it is now possible to list all the attached files that you uploaded:

Listing user attachments

The interface allows you to sort them and filter them.

The Sysconfig panel will now display the number of uploaded files and their occupied storage space. It will also present a warning if some uploads are missing a hash value or a filesize value, along with the command to fix it.

Uploads statistics

New Sysconfig setting to prevent users from changing their identity

In many cases, the users are created with information provided by a central directory or identity provider. As such, allowing users from changing their identity (first name, last name, email address) is not wanted in these cases.

A new setting available in Sysconfig panel allow Sysadmins to disable the modification of these fields by Users (including Admins).

sysconfig setting to disallow users changing their identity

Miscellaneous

When duplicating an entry, you will be asked if you also wish to duplicate files:

duplicate with files modal window

Experiments templates can now have attachments that will be copied over upon experiment creation.

How to update (for Sysadmins)

Update like usual: see documentation.

If you’re looking for a more complete changelog, see the release page.

Conclusion

There are still many other changes that are not described here (see full changelog), so make sure to update as soon as possible!

Thanks to everyone who contributed directly or not to this release. Reporting issues on the bug tracker or in the chat is very valuable! Make sure to report any bug you might find, even the most minor one, it’s always appreciated!

To report a bug, select “Submit feedback” from the top right help menu:

report bug

The adventure continues!