Version 3.5.7

Sun, Mar 28, 2021

Version 3.5.7

Released: March 28, 2021

Status: Stable

Changes

Backports

Ensure all tasks are properly configured. Added a check to the task manager app to ensure all defined tasks are properly configure in their respective queues.py modules.

Fixed the inverted names of the dynamic search task used during queue registration.

Updated the generic views to raise exceptions on object creation and edit during testing.

Updated the overloaded .save() method used for testing pass the original arguments to the super class call. Scrapping the arguments was hiding some errors during testing.

Added a test for communication with the locking backend when the app loads.

Added support for purging RedisLock backend locks. Prefix all locks in the RedisLock backend to avoid name clashing when using the same Redis database for multiple purposes.

Ensure the default timeout setting is used by all the backends.

Docker

Updated the Docker base image from [debian:10.7-slim]{.pre} to [debian:10.8-slim]{.pre}.

Updated the Docker Compose file to allow specifying a different database host as well as a different image tag for the Mayan, PostgreSQL and Redis containers.

Added the fuse package to the Docker image.

Updated the Docker Compose file to load an env file.

Added a default env_file with some examples uses.

LDAP

Updated the sample LDAP settings file to add note about package version pinning required by the use of the Buster Backports.

The package list for MAYAN_APT_INSTALLS for the LDAP setting file is now "gcc libldap2-dev/buster-backports libsasl2-dev python3-dev".

Logging

Ensure logging is available early. Moved the logging init to the logging app and moved the logging app to the top of the app list.

Metadata

The behavior of the bulk metadata edit was updated. Previously, a validation was raised when the metadata update checkbox was disabled for a required metadata. This was changed to not raise a validation error if the metadata already has a value which would comply with the original purpose of required metadata feature.

Make the metadata type id usage more explicit in formsets. Instead of just using a field named id, the metadata form now uses a more readable metadata_type_id name.

Migrations

Updated the file caching migration 0005 to have Django generate the SQL query for each respective backend. This solved an upgrade issue when using MySQL.

Task manager

Moved the task manager app to the top of the installed apps. This ensures all queues are created before any other app tries to use them. This fixes the sporadic upgrade error: celery.exceptions.QueueNotFound: "Queue 'default' missing from task_queues"

Added connectivity check for the Celery broker URL and the result backend settings.

Testing

Backport multiple test document types code. This makes it easier to create multiple test document types for the tests that use them.

Other

Removals

  • None

Issues closed