Version 4.0.13¶
Released: August 2, 2021
Status: Stable
Changes¶
Cabinets¶
The document cabinet list link was updated to require the same permission scheme as the view it references.
Documents¶
The document creation date time was enabled as a search field. The format of
the date and time search field follows the scheme
year-month-day hour:minute:seconds
.
Indexing¶
The document index instance list link was updated to require the same permission scheme as the view it references.
OCR¶
The OCR submit GUI and API views now track correctly the user initiating the action when committing the event.
The text of the OCR events was fixed.
Organizations¶
The organization URL and host settings were improved. Django’s HttpRequest
is now patched to make it easier to override the scheme and host of the
installation.
The organization setting used to set the REST API URL base path was fixed. API endpoints that generate an URL now take into account the setting.
Other¶
Checkout test updates.
Silence debug output of tests.
Speed up tests using document stubs.
Removals¶
None
Upgrade process¶
Docker Compose¶
Check the Docker upgrading chapter for the complete upgrade process.
Direct deployment¶
Upgrading from Mayan EDMS 3.5.x¶
Important
Supervisord must be upgraded to version 4.2.2. See troubleshooting section: After upgrade to version 4.1
Stop supervisord:
sudo systemctl stop supervisor
Make a backup of your supervisord file:
sudo cp /etc/supervisor/conf.d/mayan-edms.conf /etc/supervisor/conf.d/mayan-edms.conf.bck
Make a backup of your database:
Use the respective backup command for the database:
Upgrade to the latest pip version:
sudo --user=mayan /opt/mayan-edms/bin/pip install --upgrade pip
Remove deprecated requirements:
sudo --user=mayan curl https://gitlab.com/mayan-edms/mayan-edms/raw/master/removals.txt --output /tmp/removals.txt \ && sudo --user=mayan /opt/mayan-edms/bin/pip uninstall --requirement /tmp/removals.txt --yes
Update the Mayan EDMS Python package:
sudo --user=mayan /opt/mayan-edms/bin/pip install mayan-edms==4.4.5
the requirements will also be updated automatically.
Update the Redis configuration to serve at least 3 databases:
Replace:
databases ...
with:
databases 3
Restart Redis for the changes to take effect:
sudo systemctl restart redis
Edit the config file at
/opt/mayan-edms/media/config.yml
:Replace:
LOCK_MANAGER_BACKEND: ... LOCK_MANAGER_BACKEND_ARGUMENTS: ...
with:
LOCK_MANAGER_BACKEND: mayan.apps.lock_manager.backends.redis_lock.RedisLock LOCK_MANAGER_BACKEND_ARGUMENTS: {'redis_url':'redis://:mayanredispassword@<IP address of Redis server>:6379/2'}
Update the supervisord configuration file. Replace the environment variables values shown here with your respective settings. This step will refresh the supervisord configuration file with the new queues and the latest recommended layout:
sudo --user=mayan MAYAN_MEDIA_ROOT=/opt/mayan-edms/media/ \ /opt/mayan-edms/bin/mayan-edms.py platformtemplate supervisord | sudo sh -c "cat > /etc/supervisor/conf.d/mayan-edms.conf"
Edit the supervisord configuration file and update any setting specific to your installation:
sudo vi /etc/supervisor/conf.d/mayan-edms.conf
Migrate existing database schema and static media files with:
sudo --user=mayan MAYAN_MEDIA_ROOT=/opt/mayan-edms/media/ \ /opt/mayan-edms/bin/mayan-edms.py performupgrade
Start supervisord:
sudo systemctl start supervisor
Clear the browser cache to avoid loading old web assets.
The upgrade procedure is now complete.
Troubleshooting¶
If you observe the errors:
mayan.apps.file_caching.models.CachePartitionFile.DoesNotExist: CachePartitionFile matching query does not exist.
or:
FileNotFoundError: [Errno 2] No such file or directory: '/var/lib/mayan/document_file_storage/...
follow the solution outlined in the troubleshooting section: After upgrade to version 4.0
Backward incompatible changes¶
None
Issues closed¶
GitLab issue #966 Feature Request: Configurable sceme part of returned URIs (at least for the API)
GitLab issue #1002 Make mayan-edms work in a subdirectory