Add release notes

Signed-off-by: Roberto Rosario <roberto.rosario@mayan-edms.com>
This commit is contained in:
Roberto Rosario
2019-12-13 04:57:55 -04:00
parent 1201481ab4
commit 2f4dc2b837
3 changed files with 271 additions and 4 deletions

View File

@@ -1,5 +1,5 @@
3.3.5 (2019-XX-XX)
=================
3.3.5 (2019-12-13)
==================
- Pin django-timezone-field to version 3.1. GitLab issue #698.
Thanks to Rob de Canha-Knight (@rssfed23) for the report
and research.
@@ -7,7 +7,7 @@
Rob de Canha-Knight (@rssfed23) for the report and the research.
- Update instances of the word "weblink" to "web link".
- Unify the creation of the temporary config file used in tests.
- Update all 0001 setting migrations to not accept manually migrated
- Update all 0001 setting migrations to accept manually migrated
settings.
- Update TemplateField to concatenate existing help texts.
- Don't show the edit and delete links for resolved web links.
@@ -21,7 +21,7 @@
- Add BaseTransformationType metaclass in a way compatible with
Python 2 and Python 3.
- Remove Django DownloadView library. Implement downloads natively
using modified port of Django 2.2 FileResponse.
using a modified port of Django 2.2 FileResponse.
- Increase the role label field size from 64 to 128 characters.
- Increase the smart link label size from 96 to 128 characters.
- Increase the source label field size from 64 to 128 characters.

266
docs/releases/3.3.5.txt Normal file
View File

@@ -0,0 +1,266 @@
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/

View File

@@ -20,6 +20,7 @@ versions of the documentation contain the release notes for any later releases.
.. toctree::
:maxdepth: 1
3.3.5
3.3.4
3.3.3
3.3.2