267 lines
6.6 KiB
Plaintext
267 lines
6.6 KiB
Plaintext
Version 3.3.5
|
|
=============
|
|
|
|
Released: December 13, 2019
|
|
|
|
|
|
Changes
|
|
-------
|
|
|
|
|
|
Checkouts
|
|
^^^^^^^^^
|
|
|
|
The ID and URL of the checkout model was added the serializer. This adds
|
|
these two fields to the entries of the checkout list API view. This change
|
|
makes it easy to determine which checkout resource to delete to check in a
|
|
document.
|
|
|
|
|
|
Database
|
|
^^^^^^^^
|
|
|
|
The size of several fields was increased. These were:
|
|
role label field size from 64 to 128 characters, smart link label size from
|
|
96 to 128 characters, and the source label field size from 64 to 128
|
|
characters.
|
|
|
|
Migrations were added to all changes and these will me applied automatically
|
|
during upgrade.
|
|
|
|
|
|
Dependencies
|
|
^^^^^^^^^^^^
|
|
|
|
Versions of django-timezone-field and kombu were pinned to specific version
|
|
known to work correctly. This avoids two installations of Mayan EDMS to end
|
|
up with different versions of these two libraries.
|
|
|
|
|
|
Downloads
|
|
^^^^^^^^^
|
|
|
|
The library Django DownloadView was removed. The code to support all
|
|
downloads (document, version, keys, signatures) was been implement natively
|
|
using a modified port of Django 2.2 FileResponse.
|
|
|
|
|
|
Settings
|
|
^^^^^^^^
|
|
|
|
All initial setting migrations have been updated to accept manually migrated
|
|
settings too.
|
|
|
|
|
|
Templating
|
|
^^^^^^^^^^
|
|
|
|
The web link template field and the smart links fields were updated to use
|
|
the new TemplateField form field. This is the same field used in the
|
|
templating sandbox.
|
|
|
|
|
|
Testing
|
|
^^^^^^^
|
|
|
|
The of creating the temporary config file used in setting tests has been
|
|
unified. All setting tests create the test config file in a predictable way
|
|
now.
|
|
|
|
|
|
User interface
|
|
^^^^^^^^^^^^^^
|
|
|
|
Some remaining instances of the word "weblink" were renamed to "web link".
|
|
|
|
It was a Mayan EDMS anti-pattern to have the resolved web links and smart
|
|
links show their template edit and delete buttons. This has been rectified
|
|
in this version.
|
|
|
|
Missing link icons were added for several apps. Likewise some missing field
|
|
help texts were also added.
|
|
|
|
|
|
Other
|
|
^^^^^
|
|
|
|
The TemplateField field now shows the available variable in the help text
|
|
automatically. There is no need to modify the help text anymore.
|
|
|
|
The method to add the BaseTransformationTypemetaclass metaclass to the
|
|
BaseTransformation class, has been updated again to make it compatible with
|
|
Python 2 and Python 3.
|
|
|
|
|
|
Removals
|
|
--------
|
|
|
|
- Django download views library.
|
|
|
|
|
|
Upgrading process
|
|
-----------------
|
|
|
|
#. Stop supervisord::
|
|
|
|
sudo systemctl stop supervisor
|
|
|
|
|
|
Upgrading from Mayan EDMS 3.2.x
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
|
#. Install the Python 3 development OS package:
|
|
|
|
.. code-block:: bash
|
|
|
|
sudo apt-get install python3-dev
|
|
|
|
|
|
#. Update the virtualenv to use Python 3:
|
|
|
|
.. code-block:: bash
|
|
|
|
sudo -u mayan virtualenv --clear /opt/mayan-edms -p /usr/bin/python3
|
|
|
|
|
|
#. Create a home directory for the Mayan EDMS system user:
|
|
|
|
.. code-block:: bash
|
|
|
|
mkdir /home/mayan
|
|
|
|
|
|
#. Grant ownership to the Mayan EDMS system user:
|
|
|
|
.. code-block:: bash
|
|
|
|
chown mayan:mayan /home/mayan
|
|
|
|
#. Reinstall the Python client for PostgreSQL and Redis:
|
|
|
|
.. code-block:: bash
|
|
|
|
sudo -u mayan |MAYAN_PIP_BIN| install --no-use-pep517 psycopg2==|PYTHON_PSYCOPG2_VERSION| redis==|PYTHON_REDIS_VERSION|
|
|
|
|
.. note::
|
|
|
|
Platforms with the ARM CPU might also need additional requirements:
|
|
|
|
.. code-block:: bash
|
|
|
|
sudo -u mayan |MAYAN_PIP_BIN| install --no-use-pep517 psutil==|PYTHON_PSUTIL_VERSION|
|
|
|
|
|
|
#. Reinstall the Python client for RabbitMQ if you are using RabbitMQ as a broker:
|
|
|
|
.. code-block:: bash
|
|
|
|
sudo -u mayan |MAYAN_PIP_BIN| install --no-use-pep517 amqp==|PYTHON_AMQP_VERSION|
|
|
|
|
|
|
Upgrade steps from any previous version of Mayan EDMS
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
|
#. Remove deprecated requirements:
|
|
|
|
.. code-block:: bash
|
|
|
|
sudo -u mayan curl |SOURCE_CODE_REPOSITORY|raw/master/removals.txt -o /tmp/removals.txt \
|
|
&& sudo -u mayan |MAYAN_PIP_BIN| uninstall -y -r /tmp/removals.txt
|
|
|
|
|
|
#. Update the Mayan EDMS Python package:
|
|
|
|
.. code-block:: bash
|
|
|
|
sudo -u mayan |MAYAN_PIP_BIN| install mayan-edms==3.3.5
|
|
|
|
the requirements will also be updated automatically.
|
|
|
|
|
|
#. Make a backup of your supervisord file:
|
|
|
|
.. code-block:: bash
|
|
|
|
sudo cp |MAYAN_SUPERVISOR_CONF| |MAYAN_SUPERVISOR_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:
|
|
|
|
.. code-block:: bash
|
|
|
|
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=|MAYAN_MEDIA_ROOT| \
|
|
|MAYAN_BIN| platformtemplate supervisord | sudo sh -c "cat > |MAYAN_SUPERVISOR_CONF|"
|
|
|
|
or:
|
|
|
|
.. code-block:: bash
|
|
|
|
sudo -u mayan MAYAN_DATABASES=\"{'default':{'ENGINE':'django.db.backends.postgresql','NAME':'mayan','PASSWORD':'mayanuserpass','USER':'mayan','HOST':'127.0.0.1'}}\" \
|
|
MAYAN_MEDIA_ROOT=|MAYAN_MEDIA_ROOT| \
|
|
|MAYAN_BIN| platformtemplate supervisord | sudo sh -c "cat > |MAYAN_SUPERVISOR_CONF|"
|
|
|
|
|
|
#. Edit the supervisord configuration file and update any setting specific to your installation:
|
|
|
|
.. code-block:: bash
|
|
|
|
sudo vi |MAYAN_SUPERVISOR_CONF|
|
|
|
|
|
|
#. Migrate existing database schema with:
|
|
|
|
.. code-block:: bash
|
|
|
|
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=|MAYAN_MEDIA_ROOT| \
|
|
|MAYAN_BIN| performupgrade
|
|
|
|
or:
|
|
|
|
.. code-block:: bash
|
|
|
|
sudo -u mayan MAYAN_DATABASES="{'default':{'ENGINE':'django.db.backends.postgresql','NAME':'mayan','PASSWORD':'mayanuserpass','USER':'mayan','HOST':'127.0.0.1'}}" \
|
|
MAYAN_MEDIA_ROOT=|MAYAN_MEDIA_ROOT| \
|
|
|MAYAN_BIN| performupgrade
|
|
|
|
|
|
#. Add new static media:
|
|
|
|
.. code-block:: bash
|
|
|
|
sudo -u mayan MAYAN_MEDIA_ROOT=|MAYAN_MEDIA_ROOT| \
|
|
|MAYAN_BIN| preparestatic --noinput
|
|
|
|
|
|
#. Start supervisord:
|
|
|
|
.. code-block:: bash
|
|
|
|
sudo systemctl start supervisor
|
|
|
|
|
|
The upgrade procedure is now complete.
|
|
|
|
|
|
Backward incompatible changes
|
|
-----------------------------
|
|
|
|
- None
|
|
|
|
|
|
Bugs fixed or issues closed
|
|
---------------------------
|
|
|
|
- :gitlab-issue:`698` 3.3.3 install - ERROR: django-timezone-field 4.0 has requirement django>=2.2, but you'll have django 1.11.26 which is incompatible.
|
|
- :gitlab-issue:`699` 3.3.3 - TypeError: can't pickle memoryview objects
|
|
|
|
|
|
|
|
.. _PyPI: https://pypi.python.org/pypi/mayan-edms/
|