InvenioRDM v10.0¶
2022-10-10
Short-term support (STS) release
We're happy to announce the release of InvenioRDM v10.0. The release is a short-term support release which is maintained until v11.0.
Try it¶
What's new?¶
In addition to the many bugs fixed, this release introduces custom fields both for records and communities, back-office administration panel with support for OAI sets management and the support of OpenSearch.
Custom Fields¶
You can now add custom fields to bibliographic records and communities data models. InvenioRDM supports a wide variety of field types and UI widgets: you can find the full list in the custom fields and the UI widgets documentation pages.
You can also extend the default components or implement your owns. To get more information, refer to the custom fields development section in the documentation.
Fields in the upload form¶
Below, an example of the upload form with custom fields related to software. You can test them out in the demo site upload form.
Community settings page¶
Custom fields will be displayed at the bottom of the community's settings page.
When a community field is required, it will be also displayed in the form to create a new community.
Administration panel¶
The new administration panel provides a modern, clean and easy to use interface. It allows to manage the repository's settings from the web interface without requiring technical knowledge. It also allows customising existing views or adding new ones.
This release comes with the first new OAI-PMH administration view, which allows to manage or create OAI-PMH sets.
Some OAI-PMH sets are automatically created when a new community is added. These system created sets are blocked from edition in the administration view to preserve the data sets integrity.
Resource based views¶
The newly added Invenio-Administration module allows to add new administration views with a minimal implementation. A developer can easily create a new view for any of the resources REST APIs available in InvenioRDM.
Customisable views¶
The administration views are fully customisable, using Jinja templates and React components. You can read the full documentation to discover how to create and customise the administration views.
OpenSearch¶
With the change of license of Elasticsearch, announced by Elastic, its usage in InvenioRDM is deprecated. That's why, starting with this release, InvenioRDM now supports OpenSearch v1 and v2 and it is also the default for new instances of InvenioRDM.
While Elasticsearch v7 is still supported, Elasticsearch v6 support has been removed. However, Elasticsearch support will be removed in a future version of InvenioRDM.
We recommend migrating directly to OpenSearch v2, OpenSearch v1 end of life is rapidly approaching. See the upgrade guide for more information.
You can read more on how to setup an OpenSearch cluster in the official documentation. Invenio Helm Charts have been updated adding support for OpenSearch, but the configuration will setup a demo cluster and it should not be used in production. OpenSearch provides official Helm charts suitable for production environments.
Changes¶
Breaking changes¶
- Elasticsearch 6 support has been removed. If you are using InvenioRDM with Elasticsearch 6, you can migrate to Elasticsearch 7 or directly to OpenSearch. See the upgrade guide for more information.
- The configuration variable
INVENIO_SEARCH_ELASTIC_HOSTS
has been deprecated (but non-breaking) and it will be removed in the following releases. Please change its name toINVENIO_SEARCH_HOSTS
. This variable is most probably also used in your deployment environments. - The following changes should not affect the majority of the users. We recommend to verify if any usage can be found in customisations or modules:
- In Invenio-Indexer, the param
es_bulk_kwargs
in the classRecordIndexer
has been renamed tosearch_bulk_kwargs
. The methodrecord_to_index
andschema_to_index
now return only the index and not a tuple with index and doc type. The configuration variableINDEXER_DEFAULT_DOC_TYPE
is now removed. - In Invenio-Records-Rest, the method
check_elasticsearch
have been renamed tocheck_search
. - In Invenio-Records, the class
ElasticsearchDumper
has been renamed toSearchDumper
. - in Invenio-Records-Resources, the func and params
es_preference
have been renamed tosearch_preference
. - In Invenio-Records-Permissions, the classes
SuperUser
andAdminUser
have been removed. Make sure that you are not importing them in any of your Python modules or customisations. The permissions to delete records and to manage OAI-PMH sets were wrongly granted to the actionadmin-access
(AdminUser
). The deletion of records has been replaced by thesuperuser-access
action and the management of OAI-PMH is now allowed to users who can access the new administration panel.
- In Invenio-Indexer, the param
Minor changes¶
Strict search mappings
Search mappings have been made strict, which means that no unknown fields will be accepted. Before, no errors were being thrown. If you had custom record dumpers you might need to add custom fields and rebuild the indices. See the upgrade guide for more information.
Deposit form publish modal warning text customization
The warning text shown in the modal during the publish/submit-for-review action can now be extended via the APP_RDM_DEPOSIT_FORM_PUBLISH_MODAL_EXTRA
config variable. You can pass text or html there and the result will look like the following:
Deprecations¶
With InvenioRDM v10.0, support to Elasticsearch v7 is now deprecated and it will be removed in a future release.
Limitations¶
With this release, communities custom fields are not displayed in the community profile page, but they are searchable. This feature will be implemented in one of the following releases.
Upgrading to v10.0¶
We support upgrading from v9.1 to v10 Please see the upgrade notice.
Maintenance policy¶
InvenioRDM v10.0 is a short-term support (STS) release which is supported until InvenioRDM v11.0. See our Maintenance Policy.
If you plan to deploy InvenioRDM as a production service, please use InvenioRDM v9.1 Long-Term Support (LTS) Release.
Requirements¶
InvenioRDM v10.0 supports:
- Python 3.7, 3.8 and 3.9
- PostgreSQL 10+
- Elasticsearch v7 / OpenSearch v1 and v2
Questions?¶
If you have questions related to these release notes, don't hesitate to jump on our chat and ask questions: Getting help
Credit¶
The development work in this release was done by:
- CERN: Alex, Javier, Jenny, Karolina, Lars, Manuel, Nicola, Nicolas, Pablo G., Pablo P., Zacharias
- Northwestern University: Guillaume
- TU Graz: Christoph, David, Mojib
- TU Wien: Max
- Uni Bamberg: Christina
- Uni Münster: Werner