Files
mayan-edms/docs/releases/3.2.9.txt
Roberto Rosario c9be1bccd2 Restructure documentation
Signed-off-by: Roberto Rosario <roberto.rosario@mayan-edms.com>
2019-11-29 14:25:11 -04:00

228 lines
6.4 KiB
Plaintext

Version 3.2.9
=============
Released: November 3, 2019
Changes
-------
Debugging
^^^^^^^^^
The colored log formatter was ported from the versions/next branch. The
color of the log output will be determined by the log level.
Extra logging was added to the IMAP source to help with import issues.
This relates to GitLab issue #682.
Dependencies
^^^^^^^^^^^^
The help message of the ``--context`` option of the ``platformtemplate``
command was fixed to say "YAML" instead of "JSON".
The Celery and Django Celery dependencies were moved to the task
manager app.
Some dependencies were updated to a new version:
- Update Django to version 1.11.25.
- Update PyYAML to version 5.1.2.
- Update celery to version 3.1.26.post2.
- Update django-celery to version 3.2.2.
- Update pathlib2 to version 2.3.5.
- Update whitenoise to version 4.1.4.
- Update Pillow to version 6.2.1.
Docker
^^^^^^
The Mayan EDMS launcher script at get.mayan-edms.com was updated to allow
configuring the wait delay after the PostgreSQL container is launched. The
environment variable for this is called ``DOCKER_POSTGRES_DELAY`` and
defaults to 10 seconds to preserve the existing behavior. This closes
GitLab issue #677.
A formatting error was fixed enabling again the use of the
MAYAN_GUNICORN_TIMEOUT Docker image setting. Closes GitLab issue #671.
Duplicates
^^^^^^^^^^
The duplicated document list view logic was improved and will not show
documents with trashed duplicates.
Mirroring
^^^^^^^^^
Mirrored document entries will now return 1 on their ``st_nlink`` attribute,
fixing access errors in some operating systems. Fixes GitLab issue #676.
Permissions
^^^^^^^^^^^
Instead of adding check to every API endpoint for authentication, the
permission was updated to return False to any permission check for
anonymous users. This change centralizes this check in a single place
and lowers the probability of error on non authenticated API access.
Settings
^^^^^^^^
To reduce config file incompatibilities between versions, the setting
namespaces will now include a version attribute. This attribute is
saved along with all the other settings when the ``config.yml`` is saved.
This version attribute will allow apps to read entries in older formats
instead of raising an error.
A new management command was added, this is the ``savesettings`` command.
This command does the same things as saving a setting from the user interface,
it will update the ``config.yml`` file or create it, if it doesn't exists.
Testing
^^^^^^^
Several improvements to the test system were ported from unreleased branches.
All the mocked object were moved to their own module called mocks.py for each
respective app.
Test were added to the platform app and improved for the dependencies app.
The mixins PermissionTestCaseMixin and SmartSettingTestCaseMixin were added
to better organize cache invalidation of both apps for tests.
User interface
^^^^^^^^^^^^^^
A message is now displayed when testing a mailing profile.
Granting the workflow view permission to at least on workflow will now enable
the workflow main menu workflow link.
Other changes
^^^^^^^^^^^^^
- Language translations update.
- Add makefile target to run all translations targets.
- Add makefile target to launch a production staging Docker image.
- Backport Docker composer makefile targets.
- Rename all instances of the IMAP server variable from mailbox to
server for clarity.
- Add book link in the about menu.
- Add unknown exception handling when checking for the latest
version.
Removals
--------
- None
Upgrading from a previous version
---------------------------------
If installed via Python's PIP
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Remove deprecated requirements::
sudo -u mayan curl https://gitlab.com/mayan-edms/mayan-edms/raw/master/removals.txt -o /tmp/removals.txt && sudo -u mayan /opt/mayan-edms/bin/pip uninstall -y -r /tmp/removals.txt
Type in the console::
sudo -u mayan /opt/mayan-edms/bin/pip install mayan-edms==3.2.9
the requirements will also be updated automatically.
Using Git
^^^^^^^^^
If you installed Mayan EDMS by cloning the Git repository issue the commands::
$ git reset --hard HEAD
$ git pull
otherwise download the compressed archived and uncompress it overriding the
existing installation.
Remove deprecated requirements::
$ pip uninstall -y -r removals.txt
Next upgrade/add the new requirements::
$ pip install --upgrade -r requirements.txt
Common steps
^^^^^^^^^^^^
Perform these steps after updating the code from either step above.
Make a backup of your supervisord file::
sudo cp /etc/supervisor/conf.d/mayan.conf /etc/supervisor/conf.d/mayan.conf.bck
Update the supervisord configuration file. Replace the environment
variables values show here with your respective settings. This step will refresh
the supervisord configuration file with the new queues and the latest
recommended layout::
sudo sh -c "MAYAN_DATABASE_ENGINE=django.db.backends.postgresql MAYAN_DATABASE_NAME=mayan \
MAYAN_DATABASE_PASSWORD=mayanuserpass MAYAN_DATABASE_USER=mayan \
MAYAN_DATABASE_HOST=127.0.0.1 MAYAN_MEDIA_ROOT=/opt/mayan-edms/media \
/opt/mayan-edms/bin/mayan-edms.py platformtemplate supervisord > /etc/supervisor/conf.d/mayan.conf"
Edit the supervisord configuration file and update any setting the template
generator missed::
sudo vi /etc/supervisor/conf.d/mayan.conf
Migrate existing database schema with::
sudo -u mayan MAYAN_DATABASE_ENGINE=django.db.backends.postgresql MAYAN_DATABASE_NAME=mayan \
MAYAN_DATABASE_PASSWORD=mayanuserpass MAYAN_DATABASE_USER=mayan \
MAYAN_DATABASE_HOST=127.0.0.1 MAYAN_MEDIA_ROOT=/opt/mayan-edms/media \
/opt/mayan-edms/bin/mayan-edms.py performupgrade
Add new static media::
sudo -u mayan MAYAN_MEDIA_ROOT=/opt/mayan-edms/media \
/opt/mayan-edms/bin/mayan-edms.py preparestatic --noinput
The upgrade procedure is now complete.
Backward incompatible changes
-----------------------------
- None
Bugs fixed or issues closed
---------------------------
- :gitlab-issue:`659` GitLab config: '.gitlab-ci.yml' does not specify the
exact version of all dependencies
- :gitlab-issue:`676` Access fuse mounted index via samba
- :gitlab-issue:`671` [Docker] MAYAN_GUNICORN_TIMEOUT timeout not passed
to worker
- :gitlab-issue:`677` Django start before PostgreSQL is up.
- :forum-topic:`1347` Workflow state action: perform a POST request
.. _PyPI: https://pypi.python.org/pypi/mayan-edms/