Released: February 14, 2023
The interface of the library used for generating QRCodes changed and broke the OTP QRCode generation. The image interface was updated, a new test added, and the entire QRCode generation simplified to lower the changes of future regressions.
The Python Transifex client was remove and replace with the new Go based client. This client is OS dependent and needs to be installed manually when working with translations (https://github.com/transifex/cli).
An edge case was fixed where index levels with blank values would cause the empty index instance node clean up routine to incorrectly delete index instance nodes containing other document references, requiring a rebuild. A partial patch from a future index optimization was backported to enact the correct behavior.
The validation errors in the document metadata API were incorrectly causing HTTP 500 server errors. A custom REST API exception handler was added to workaround inconsistent validation exception behavior in the Django REST framework and ensure validation error raise a HTTP 400 error instead.
Remove deprecated management commands:
Backward incompatible changes¶
The cabinet create permission is now required to create parent as well as child cabinets. This change replaces requiring the edit permission to create child cabinets via the HTTP views.
A new permission was added to change the type of a document. When support for changing the type of a document was added, it was considered a property and controlled via the document property edit permission.
Since changing the type of a documents now causes a cascade of other changes, it was isolated as an individual class of event along with its own permission.
The new document change type permission is required for the document being changed and for the document type to which the document will be changed into.
Download files are now associated to a specific users and not to a parent object. Delete, download, and view permissions were added to allow users to share a download file.
The OCR backend code is now executed under a new method called
_execute to avoid subclasses not calling the super class.
The base backend class now prepares the image to be processed for OCR and passes the file object to the subclass.
In addition to the search system refactor, new search indexes were added. The search backend needs to be reindexed to ensure these new indexes are populated.
The default secret key value is now only used if the secret key file is not found not just if the secret key file is present but unreadable.
home_view setting was removed from the default Template context.
Template instances need to include their own context using the new
The Cabinet API serializer field named
parent, will be removed in version 5.0. Use the
parent_idinstead which is functionally identical.
indexwill be removed in version 5.0. Use fields
index_idwhich are functionally identical.
workflow_template_urlwill be removed in version 5.0. Use the
urlattribute of the
GitLab issue #1121 Index not adding Dokuments
GitLab issue #1128 Endpoint api/v4/documents/(?P<document_id>d+)/metadata/ not handling ValidationError exception (Returns 500 Internal Server Error instead)
GitLab issue #1134 Assigning a Cabinet to a Document that is part of an “No Cabinet” Index destroys the Index