We are pleased to announce the release of vantage6 version 4.0. We named it after Cotopaxi, one of the highest active volcanoes in the world at 5,897m in the beautiful country of Ecuador.
Photo by Simon Berger on Unsplash
The name Cotopaxi means “Neck of the moon” and refers to the moon-crescent shape of the crater. Its glacier is one of the glaciers closest to the equator starting at an altitude of around 5,000m.
Now, what’s new in this new version of vantage6? It’s not one large new feature that has been added this time, but rather several medium-sized features that center around improving the user experience for both researchers and algorithm developers.
User experience
Improving the user experience is currently our primary focus, mostly through the introduction of new user interfaces. These user interfaces will provide researchers with clear workflows to create analyses and track their progress, and to view which algorithms are available for their use. In version 4.0, the infrastructure is extended so that the information that these user interfaces need can be retrieved easily. For instance, nodes now share some metadata such as database labels and types on startup, which makes it easier for users in a user interface to select the appropriate database as they don’t need to know the labels by heart. Also, mismatches in databases between different nodes can thus be more easily detected by users, which enables them to warn the relevant project manager or node administrator.
Second, the performance of the server responses has been improved by limiting the abundance of information that is returned and by using pagination by default. This should speed up the time to load pages in a user interface as well as the time in which the client interfaces receive a response.
Another major feature is the introduction of a complete permission scope at collaboration level. This allows you to create a user that is able to manage an entire collaboration, e.g. by creating users for any organization in the collaboration or by adding new organizations to a collaboration, without the need to have permissions at a global level.
The node administrator tasks have also been simplified somewhat: when a new node is created, the node automatically retrieves some configuration information from the server so that the node administrator does not have to enter it manually. Also, nodes are now automatically started in exactly the same version as the server which increases the reliability of vantage6.
Algorithm development
There are a lot of changes for algorithm development, most notably in a new package `vantage6-algorithm-tools`, which is split off from the `vantage6-client` package. The new package contains a new algorithm client as well as a new mock client to test the algorithm client, and also features decorators that make your algorithm function profile more versatile. More information on this can be found in the guide to migrate your algorithm to v4.
Future proof
We also made several changes where we felt that a better interface for users was possible. The largest change is that the `result` entity has been split into `result` and `run`. Previously, a `result` included a lot of details on an algorithm run, such as the input and when it was started and finished - and, of course, the actual result of the algorithm run. Now, `result` fetches *only* the result of the run, and all other details are left to the `run` entity.
Apart from all the immediately visible changes, a lot of background changes have been made for vantage6 v4.0. This includes better validation of user requests together with clearer error messages, better permissions checks, harmonization of client interfaces, and, importantly, solutions to a few security vulnerabilities.
Further reading
You can read the full release notes for vantage6 version 4.0 in the documentation at https://docs.vantage6.ai/en/main/release_notes.html.