Compare commits
1 Commits
hotfix
...
feature/mu
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
82099c2f1b |
@@ -6,6 +6,5 @@ db.sqlite*
|
||||
docker
|
||||
!docker/etc
|
||||
!docker/entrypoint.sh
|
||||
!docker/version
|
||||
./.*
|
||||
docs
|
||||
|
||||
1
.gitignore
vendored
1
.gitignore
vendored
@@ -27,6 +27,5 @@ static_collected/
|
||||
/misc/mayan.geany
|
||||
/mayan/media/static/
|
||||
/venv/
|
||||
/venv3/
|
||||
/whoosh_index/
|
||||
node_modules/
|
||||
|
||||
167
.gitlab-ci.yml
167
.gitlab-ci.yml
@@ -1,15 +1,9 @@
|
||||
stages:
|
||||
- test
|
||||
- build_python
|
||||
- build_docker
|
||||
- build_documentation
|
||||
- push_python
|
||||
- push_docker
|
||||
- push_documentation
|
||||
- deploy
|
||||
- build
|
||||
|
||||
job_docker_build:
|
||||
stage: build_docker
|
||||
job_docker_master:
|
||||
stage: build
|
||||
image: docker:latest
|
||||
services:
|
||||
- docker:dind
|
||||
@@ -17,40 +11,13 @@ job_docker_build:
|
||||
- docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY
|
||||
script:
|
||||
- docker build --pull -t "$CI_REGISTRY_IMAGE" -f docker/Dockerfile .
|
||||
- VERSION=`cat docker/version`
|
||||
- docker tag "$CI_REGISTRY_IMAGE" "$CI_REGISTRY_IMAGE:$VERSION"
|
||||
- docker run --rm "$CI_REGISTRY_IMAGE:$VERSION" run-tests
|
||||
- docker push "$CI_REGISTRY_IMAGE:$VERSION"
|
||||
- docker push "$CI_REGISTRY_IMAGE:latest"
|
||||
- docker tag "$CI_REGISTRY_IMAGE:$VERSION" registry-1.docker.io/mayanedms/mayanedms:"$VERSION"
|
||||
- docker tag "$CI_REGISTRY_IMAGE:$VERSION" registry-1.docker.io/mayanedms/mayanedms:latest
|
||||
- docker logout
|
||||
- docker run --rm "$CI_REGISTRY_IMAGE" run-tests
|
||||
- docker push "$CI_REGISTRY_IMAGE"
|
||||
only:
|
||||
- releases/all
|
||||
- releases/docker
|
||||
- master
|
||||
|
||||
job_docker_push:
|
||||
stage: push_docker
|
||||
image: docker:latest
|
||||
services:
|
||||
- docker:dind
|
||||
before_script:
|
||||
- docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY
|
||||
script:
|
||||
- VERSION=`cat docker/version`
|
||||
- docker pull "$CI_REGISTRY_IMAGE:$VERSION"
|
||||
- docker tag "$CI_REGISTRY_IMAGE:$VERSION" registry-1.docker.io/mayanedms/mayanedms:"$VERSION"
|
||||
- docker tag "$CI_REGISTRY_IMAGE:$VERSION" registry-1.docker.io/mayanedms/mayanedms:latest
|
||||
- docker logout
|
||||
- docker login -u "$DOCKER_HUB_USERNAME" -p "$DOCKER_HUB_PASSWORD" https://registry-1.docker.io
|
||||
- docker push registry-1.docker.io/mayanedms/mayanedms:"$VERSION"
|
||||
- docker push registry-1.docker.io/mayanedms/mayanedms:latest
|
||||
only:
|
||||
- releases/all
|
||||
- releases/docker
|
||||
|
||||
job_docker_nightly:
|
||||
stage: build_docker
|
||||
job_docker_other:
|
||||
stage: build
|
||||
image: docker:latest
|
||||
services:
|
||||
- docker:dind
|
||||
@@ -60,83 +27,8 @@ job_docker_nightly:
|
||||
- docker build --pull -t "$CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG" -f docker/Dockerfile .
|
||||
- docker run --rm "$CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG" run-tests
|
||||
- docker push "$CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG"
|
||||
only:
|
||||
- nightly
|
||||
- staging
|
||||
|
||||
job_documentation_build:
|
||||
stage: build_documentation
|
||||
image: ubuntu:18.04
|
||||
artifacts:
|
||||
expire_in: 1 hr
|
||||
paths:
|
||||
- docs
|
||||
before_script:
|
||||
- apt-get -qq update
|
||||
- apt-get install -qq locales make python-pip enchant
|
||||
- echo "LC_ALL=\"en_US.UTF-8\"" >> /etc/default/locale
|
||||
- locale-gen en_US.UTF-8
|
||||
- update-locale LANG=en_US.UTF-8
|
||||
- export LC_ALL=en_US.UTF-8
|
||||
script:
|
||||
- pip install -r requirements/documentation.txt
|
||||
- cd docs
|
||||
- make html
|
||||
only:
|
||||
- releases/all
|
||||
- releases/documentation
|
||||
|
||||
job_documentation_push:
|
||||
stage: push_documentation
|
||||
image: ubuntu:18.04
|
||||
before_script:
|
||||
- mkdir -p ~/.ssh
|
||||
- chmod 700 ~/.ssh
|
||||
- echo "$DOCUMENTATION_SSH_KNOWN_HOSTS" > ~/.ssh/known_hosts
|
||||
- chmod 644 ~/.ssh/known_hosts
|
||||
- 'which ssh-agent || ( apt-get update -y && apt-get install openssh-client rsync -y )'
|
||||
- eval $(ssh-agent -s)
|
||||
- echo "$DOCUMENTATION_SSH_PRIVATE_KEY" | tr -d '\r' | ssh-add - > /dev/null
|
||||
script:
|
||||
- rsync -avzP --progress -e ssh docs/_build/html/* mayandocs@docs.mayan-edms.com:/home/rosarior/webapps/mayan_docs
|
||||
only:
|
||||
- releases/all
|
||||
- releases/documentation
|
||||
|
||||
job_build_python:
|
||||
stage: build_python
|
||||
image: ubuntu:18.04
|
||||
artifacts:
|
||||
expire_in: 1 hr
|
||||
paths:
|
||||
- dist
|
||||
before_script:
|
||||
- apt-get -qq update
|
||||
- apt-get install -qq locales make python-pip
|
||||
script:
|
||||
- echo "LC_ALL=\"en_US.UTF-8\"" >> /etc/default/locale
|
||||
- locale-gen en_US.UTF-8
|
||||
- update-locale LANG=en_US.UTF-8
|
||||
- export LC_ALL=en_US.UTF-8
|
||||
- pip install -r requirements/build.txt
|
||||
- make wheel
|
||||
only:
|
||||
- releases/all
|
||||
- releases/python
|
||||
|
||||
job_push_python:
|
||||
stage: push_python
|
||||
image: ubuntu:18.04
|
||||
before_script:
|
||||
- apt-get -qq update
|
||||
- apt-get install -qq python-pip
|
||||
script:
|
||||
- pip install -r requirements/build.txt
|
||||
- echo "$PYPIRC" > ~/.pypirc
|
||||
- twine upload dist/* -r pypi
|
||||
only:
|
||||
- releases/all
|
||||
- releases/python
|
||||
except:
|
||||
- master
|
||||
|
||||
.test_base: &test_base
|
||||
stage: test
|
||||
@@ -152,15 +44,8 @@ job_push_python:
|
||||
- locale-gen en_US.UTF-8
|
||||
- update-locale LANG=en_US.UTF-8
|
||||
- export LC_ALL=en_US.UTF-8
|
||||
- apt-get install -qq curl gcc ghostscript gpgv gnupg graphviz libfuse2 libjpeg-dev libmagic1 libpng-dev libtiff-dev poppler-utils libreoffice poppler-utils python-dev python-pip tesseract-ocr tesseract-ocr-deu
|
||||
- apt-get install -qq curl gcc ghostscript gpgv gnupg graphviz libjpeg-dev libmagic1 libpng-dev libtiff-dev poppler-utils libreoffice poppler-utils python-dev python-pip tesseract-ocr tesseract-ocr-deu
|
||||
- pip install -r requirements/testing.txt
|
||||
only:
|
||||
- releases/all
|
||||
- releases/docker
|
||||
- releases/python
|
||||
- master
|
||||
- staging
|
||||
- nightly
|
||||
|
||||
test-mysql:
|
||||
<<: *test_base
|
||||
@@ -195,33 +80,3 @@ test-sqlite:
|
||||
<<: *test_base
|
||||
script:
|
||||
- python manage.py test --mayan-apps --settings=mayan.settings.testing.gitlab-ci --nomigrations
|
||||
|
||||
deploy_demo:
|
||||
environment:
|
||||
name: demo
|
||||
stage: deploy
|
||||
before_script:
|
||||
- mkdir -p ~/.ssh
|
||||
- echo "${DEMO_SSH_KNOWN_HOST}" > ~/.ssh/known_hosts
|
||||
- chmod 644 ~/.ssh/known_hosts
|
||||
- echo "${DEMO_PRIVATE_KEY}" > ~/.ssh/id_rsa
|
||||
- chmod 600 ~/.ssh/id_rsa
|
||||
script:
|
||||
- scp contrib/scripts/install/docker.sh root@$DEMO_IP_ADDRESS:~
|
||||
- ssh root@$DEMO_IP_ADDRESS "DELETE_VOLUMES=true ./docker.sh"
|
||||
when: manual
|
||||
|
||||
deploy_staging:
|
||||
environment:
|
||||
name: staging
|
||||
stage: deploy
|
||||
before_script:
|
||||
- mkdir -p ~/.ssh
|
||||
- echo "${STAGING_SSH_KNOWN_HOST}" > ~/.ssh/known_hosts
|
||||
- chmod 644 ~/.ssh/known_hosts
|
||||
- echo "${STAGING_PRIVATE_KEY}" > ~/.ssh/id_rsa
|
||||
- chmod 600 ~/.ssh/id_rsa
|
||||
script:
|
||||
- scp contrib/scripts/install/docker.sh root@$STAGING_IP_ADDRESS:~
|
||||
- ssh root@$STAGING_IP_ADDRESS "DOCKER_MAYAN_IMAGE=registry.gitlab.com/mayan-edms/mayan-edms:staging ./docker.sh"
|
||||
when: manual
|
||||
|
||||
@@ -127,12 +127,6 @@ source_lang = en
|
||||
source_file = mayan/apps/mirroring/locale/en/LC_MESSAGES/django.po
|
||||
type = PO
|
||||
|
||||
[mayan-edms.mimetype-2-0]
|
||||
file_filter = mayan/apps/mimetype/locale/<lang>/LC_MESSAGES/django.po
|
||||
source_lang = en
|
||||
source_file = mayan/apps/mimetype/locale/en/LC_MESSAGES/django.po
|
||||
type = PO
|
||||
|
||||
[mayan-edms.motd-2-0]
|
||||
file_filter = mayan/apps/motd/locale/<lang>/LC_MESSAGES/django.po
|
||||
source_lang = en
|
||||
|
||||
@@ -23,7 +23,7 @@ with deployments, webservers, cloud providers, etc.
|
||||
Code
|
||||
----
|
||||
|
||||
1. Complete and mail, or scan and email the corresponding Contributor Assignment Agreement: [Mayan EDMS Individual Contributor Assignment Agreement](https://docs.mayan-edms.com/topics/caa_individual.rst) or [Mayan EDMS Entity Contributor Assignment Agreement](https://docs.mayan-edms.com/topics/topics/caa_entity.rst).
|
||||
1. Complete and mail, or scan and email the corresponding Contributor Assignment Agreement: [Mayan EDMS Individual Contributor Assignment Agreement](http://mayan.readthedocs.io/en/latest/topics/caa_individual.rst) or [Mayan EDMS Entity Contributor Assignment Agreement](http://mayan.readthedocs.io/en/latest/topics/caa_entity.rst).
|
||||
1. Fork [the repository](http://gitlab.com/mayan-edms/mayan-edms).
|
||||
1. Choose the version for which you want to develop. The code is divided in the
|
||||
following branches:
|
||||
@@ -75,5 +75,5 @@ translation. Language teams that don't see activity for a while are deleted.
|
||||
|
||||
Code style
|
||||
----------
|
||||
- Refer to the [Development](https://docs.mayan-edms.com/topics/development.html)
|
||||
- Refer to the [Development](http://mayan.readthedocs.io/en/latest/topics/development.html)
|
||||
chapter for information and examples of the code style.
|
||||
|
||||
947
HISTORY.rst
947
HISTORY.rst
File diff suppressed because it is too large
Load Diff
@@ -1,60 +0,0 @@
|
||||
1.1.1 (2015-05-21)
|
||||
==================
|
||||
|
||||
- Update to Django 1.6.11
|
||||
- Fix make_dist.sh script
|
||||
- Add test for issue #163
|
||||
- Activate tests for the sources app
|
||||
- Removal of the registration app
|
||||
- New simplified official project description
|
||||
- Improvements to the index admin interface
|
||||
- Removal of installation statistics gathering
|
||||
- Remove unused folder tag
|
||||
- Fix usage of ugettext to ugettext_lazy
|
||||
- Increase size of the lock name field
|
||||
- New style documentation
|
||||
|
||||
|
||||
1.1 (2015-02-10)
|
||||
================
|
||||
- Uses Celery for background tasks
|
||||
- Removal of the splash screen
|
||||
- Adds a home view with common function buttons
|
||||
- Support for sending and receiving documents via email
|
||||
- Removed custom logging app in favor of django-actvity-stream
|
||||
- Adds watch folders
|
||||
- Includes Vagrant file for unified development and testing environments
|
||||
- Per user locale profile (language and timezone)
|
||||
- Includes news document workflow app
|
||||
- Optional and required metadata types
|
||||
- Improved testings. Automated tests against SQLite, MySQL, PostgreSQL
|
||||
- Many new REST API endpoints added
|
||||
- Simplified text messages
|
||||
- Improved method for custom settings
|
||||
- Addition of CORS support to the REST API
|
||||
- Per document language setting instead of per installation language setting
|
||||
- Metadata validation and parsing support
|
||||
- Start of code updates towards Python 3 support
|
||||
- Simplified UI
|
||||
- Stable PDF previews generation
|
||||
- More technical documentation
|
||||
|
||||
|
||||
1.0 (2014-08-27)
|
||||
================
|
||||
- New home @ https://github.com/mayan-edms/mayan-edms
|
||||
- Updated to use Django 1.6
|
||||
- Translation updates
|
||||
- Custom model properties removal
|
||||
- Source code improvements
|
||||
- Removal of included 3rd party modules
|
||||
- Automatic testing and code coverage check
|
||||
- Update of required modules and libraries versions
|
||||
- Database connection leaks fixes
|
||||
- Support for deletion of detached signatures
|
||||
- Removal of Fabric based installations script
|
||||
- Pluggable OCR backends
|
||||
- OCR improvements
|
||||
- License change, Mayan EDMS in now licensed under the Apache 2.0 License
|
||||
- PyPI package, Mayan EDMS in now available on PyPI: https://pypi.python.org/pypi/mayan-edms/
|
||||
- New REST API
|
||||
435
HISTORY_2_x.rst
435
HISTORY_2_x.rst
@@ -1,435 +0,0 @@
|
||||
2.7.3 (2017-09-11)
|
||||
==================
|
||||
- Fix task manager queue list view. Thanks to LeVon Smoker for
|
||||
the report.
|
||||
- Fix resolved link class URL mangling when the keep_query argument is
|
||||
used. Thanks to Nick Douma (LordGaav) for the report and diagnostic
|
||||
information. Fixes source navigation on the document upload wizard.
|
||||
|
||||
2.7.2 (2017-09-06)
|
||||
==================
|
||||
- Fix new mailer creation view. GitLab issue #431.
|
||||
Thanks to Robert Schöftner (@robert.schoeftner) for the
|
||||
report and the solution.
|
||||
- Consolidate intial document created event and the first
|
||||
document properties edited events. Preserve the user that
|
||||
initially creates the document. GitLab issue #433. Thanks
|
||||
to Jesaja Everling (@jeverling) for the report.
|
||||
- Sort the list of root cabinets. Thanks to Thomas Plotkowiak
|
||||
for the request.
|
||||
- Sort the list of a document's cabinets.
|
||||
- Display a document's cabinet list in italics. GitLab issue #435.
|
||||
Thanks to LeVon Smoker for the request.
|
||||
- Install mock by default to allow easier testing of deployed
|
||||
instances.
|
||||
|
||||
2.7.1 (2017-09-03)
|
||||
==================
|
||||
- Support unicode in URL querystring. GitLab issue #423.
|
||||
Thanks to Gustavo Teixeira (@gsteixei) for the find.
|
||||
- Import errors during initialization are only ignored
|
||||
if they are cause by a missing local.py. Thanks to
|
||||
MacRobb Simpson for the report and solution.
|
||||
- Make sure the local.py created used unicode for strings
|
||||
by default. GitLab issue #424. Thanks to Gustavo Teixeira
|
||||
(@gsteixei) for the find.
|
||||
|
||||
2.7 (2017-08-30)
|
||||
================
|
||||
- Add workaround for PDF with IndirectObject as the
|
||||
rotation value. GitHub #261.
|
||||
- Add ACL list link with icon and use it for the document facet menu.
|
||||
- Fix mailing app permissions labels.
|
||||
- Add ACLs link and ACLs permissions to the mailer profile model.
|
||||
- Improve mailer URL regex.
|
||||
- Add ordering support to the SourceColumn class. GitLab issue #417.
|
||||
- Shows the cabinets in the document list. GitLab #417 @corneliusludmann
|
||||
- Add workaround for pycountry versions without the bibliographical key.
|
||||
GitHub issue #250.
|
||||
- Skip UUID migration on Oracle backends. GitHub issue #251.
|
||||
- Allow changing the output format, DPI of the pdftoppm command, and
|
||||
the output format of the converter via the CONVERTER_GRAPHICS_BACKEND_CONFIG
|
||||
setting. GitHub issues #256 #257 GitLab issue #416.
|
||||
- Add support for workflow triggers.
|
||||
- Add support for workflow actions.
|
||||
- Add support for rendering workflows.
|
||||
- Add support for unbinding sub menus.
|
||||
- Fix mailing profile test view.
|
||||
- Disregard the last 3 dots that mark the end of the YAML document.
|
||||
- Add support for multiple dashboards.
|
||||
- Add support for removing dashboard widgets.
|
||||
- Convert document version view to item list view.
|
||||
- Add support for browsing individual document versions.
|
||||
- Add support for dropdown menus to the item list view template.
|
||||
- Add support for preserving the file extension when downloading a document
|
||||
version. GitLab #415.
|
||||
- Split OCR app into OCR and parsing.
|
||||
- Remove Folders app.
|
||||
- Use the literal 'System' instead of the target name when
|
||||
the action user in unknown.
|
||||
- Remove the view to submit all document for OCR.
|
||||
- When changing document types, don't delete the old metadata that is
|
||||
also found in the new document type. GitLab issue #421.
|
||||
- Add tag attach and tag remove events.
|
||||
- Change the permission needed to attach and remove tags.
|
||||
- Add HTTP POST workflow state action.
|
||||
- Add access control grant workflow state action.
|
||||
- Beta Python 3 support.
|
||||
|
||||
2.6.4 (2017-07-26)
|
||||
==================
|
||||
- Add missing replacements of reverse to resolve_url.
|
||||
|
||||
2.6.3 (2017-07-25)
|
||||
==================
|
||||
- Add makefile target to launch a PostgreSQL container.
|
||||
- Use resolve_url instead of redirect to resolve the post login URL.
|
||||
- Make the intialsetup and performupgrade management tasks work
|
||||
with signals to allow customization from 3rd party apps.
|
||||
- PEP8 cleanups.
|
||||
- Add tag_ids keyword argument to the Source.handle_upload
|
||||
model method. GitLab issue #413.
|
||||
- Add overflow wrapping so wrap long titles in Firefox too.
|
||||
- Makes Roles searchable. GitLab issue #402.
|
||||
- Add line numbers to the debug and production loggers.
|
||||
Add date and time to the production logger.
|
||||
- Add support for generating setup.py from a template. GitLab
|
||||
#149 #200.
|
||||
- Add fade in animation to document images.
|
||||
|
||||
2.6.2 (2017-07-19)
|
||||
==================
|
||||
- Fix deprecation warning to prepare upgrade to Django 1.11 and 2.0.
|
||||
- Fix document page zoom.
|
||||
- Add support to run tests against a MySQL, Postgres or Oracle container.
|
||||
- Improve tag widget customization by moving the markup to its own template.
|
||||
- Fix document page widget appearance in the document page list view.
|
||||
- Make document version order deterministic.
|
||||
- Allow total page number instrospection of encrypted PDF with non ASCII user properties. GitLab issue #411.
|
||||
- Oracle database compatibility update in the cabinets app. GitHub #258.
|
||||
|
||||
2.6.1 (2017-07-18)
|
||||
==================
|
||||
- Fix issue when editing or removing metadata from multiple documents.
|
||||
|
||||
2.6 (2017-07-18)
|
||||
================
|
||||
- Fix HTML mark up in window title. GitLab #397.
|
||||
- Add support for emailing documents to a recipient list. GitLab #396.
|
||||
- Backport metadata widget changes from @Macrobb. GitLab #377.
|
||||
- Make users and group searchable.
|
||||
- Add support for logging errors during in production mode.
|
||||
Add COMMON_PRODUCTION_ERROR_LOG_PATH to control path of log file.
|
||||
Defaults to mayan/error.log.
|
||||
- Add support logging request exceptions.
|
||||
- Add document list item view.
|
||||
- Sort setting by namespace label and by global name second.
|
||||
- Sort indexes by label.
|
||||
- Fix cabinets permission and access control checking.
|
||||
- The permission to add or remove documents to cabinets now applies to documents too.
|
||||
- Equalize dashboard widgets heights.
|
||||
- Switch the order of the DEFAULT_AUTHENTICATION_CLASSES of DRF. GitLab #400.
|
||||
- Backport document's version list view permission.
|
||||
- Improve code to unbind menu entries.
|
||||
- Renamed the document type permission namespace from "Document setup" to "Document types".
|
||||
- Add support for granting the document type edit, document type delete, and document type view
|
||||
permissions to individual document type instances.
|
||||
- Improved tests by testing for accesses.
|
||||
- Increase the size of the mailing profile label field to 128 characters.
|
||||
|
||||
2.5.2 (2017-07-08)
|
||||
==================
|
||||
- Improve new document creation signal handling.
|
||||
Fixes issue with duplicate scanning at upload.
|
||||
|
||||
2.5.1 (2017-07-08)
|
||||
==================
|
||||
- Update release target due to changes in PyPI.
|
||||
|
||||
2.5 (2017-07-07)
|
||||
================
|
||||
- Add view to download a document's OCR text. GitLab #215
|
||||
- Add user configurable mailer. GitLab #286.
|
||||
- Use Toasts library for screen messages.
|
||||
- Reduce verbosity of some debug messages.
|
||||
- Add new lineart transformation.
|
||||
- Fix SANE source resolution field.
|
||||
- About and Profile menu reorganization.
|
||||
- PDF compatibility improvements.
|
||||
- Office document coversion improvements.
|
||||
- New metadata type setup UI.
|
||||
- Duplicated document scan support.
|
||||
- "Remember me" login support.
|
||||
- Forgotten password restore via email.
|
||||
- Document cache disabling.
|
||||
- Translation improvements.
|
||||
- Image loading improvements.
|
||||
- Lower JavaScript memory utilization.
|
||||
- HTML reponsive layout improvements.
|
||||
- Make document deletion a background task.
|
||||
- Unicode handling improvements.
|
||||
- Python3 compatilibyt improvements.
|
||||
- New screen messages using Toastr.
|
||||
|
||||
2.4 (2017-06-23)
|
||||
================
|
||||
- Add Django-mathfilters.
|
||||
- Improve render of documents with no pages.
|
||||
- Add SANE scanner document source.
|
||||
- Added PDF orientation detection. GitLab issue #387.
|
||||
- Fix repeated permission list API URL. GitLab issue #389.
|
||||
- Fix role creation API endpoint not returning id. GitLab issue #390.
|
||||
- Make tags, metadata types and cabinets searchable via the dynamic search API. GitLab issue #344.
|
||||
- Add support for updating configuration options from environment variables.
|
||||
- Add purgelocks management command. GitLab issue #221.
|
||||
- Fix index rebuilding for multi value first levels. GitLab issue #391.
|
||||
- Truncate views titles via the APPEARANCE_MAXIMUM_TITLE_LENGTH setting. GitLab issue #217.
|
||||
- Add background task manager app. GitLab issue #132.
|
||||
- Add link to show a document's OCR errors. GitLab issue #291.
|
||||
|
||||
2.3 (2017-06-08)
|
||||
================
|
||||
- Allow for bigger indexing expression templates.
|
||||
- Auto select checkbox when updating metadata values. GitLab issue #371.
|
||||
- Added support for passing the options allow-other and allow-root to the
|
||||
FUSE index mirror. GitLab issue #385
|
||||
- Add support for check for the latest released version of Mayan from the
|
||||
About menu.
|
||||
- Support for rebuilding specific indexes. GitLab issue #372.
|
||||
- Rewrite document indexing code to be faster and use less locking.
|
||||
- Use a predefined file path for the file lock.
|
||||
- Catch documents with not document version when displaying their thumbnails.
|
||||
- Document page navigation fix when using Mayan as a sub URL app.
|
||||
- Add support for indexing on workflow state changes.
|
||||
- Add search model list API endpoint.
|
||||
|
||||
2.2 (2017-04-26)
|
||||
================
|
||||
- Remove the installation app (GitLab #301).
|
||||
- Add support for document page search
|
||||
- Remove recent searches feature
|
||||
- Remove dependency on the django-filetransfer library
|
||||
- Fix height calculation in resize transformation
|
||||
- Improve upgrade instructions
|
||||
- New image caching pipeline
|
||||
- New drop down menus for the documents, folders and tags app as well as for
|
||||
the user links.
|
||||
- New Dashboard view
|
||||
- Moved licenses to their own module in every app
|
||||
- Update project to work with Django 1.10.4.
|
||||
- Tags are alphabetically ordered by label (GitLab #342).
|
||||
- Stop loading theme fonts from the web (GitLab #343).
|
||||
- Add support for attaching multiple tags (GitLab #307).
|
||||
- Integrate the Cabinets app.
|
||||
|
||||
2.1.11 (2017-03-14)
|
||||
===================
|
||||
- Added a quick rename serializer to the document type API serializer.
|
||||
- Added per document type, workflow list API view.
|
||||
- Mayan EDMS was adopted a version 1.1 of the Linux Foundation Developer Certificate of Origin.
|
||||
- Added the detail url of a permission in the permission serializer.
|
||||
- Added endpoints for the ACL app API.
|
||||
- Implemented document workflows transition ACLs. GitLab issue #321.
|
||||
- Add document comments API endpoints. GitHub issue #249.
|
||||
- Add support for overriding the Celery class.
|
||||
- Changed the document upload view in source app to not use the HTTP referer
|
||||
URL blindly, but instead recompose the URL using known view name. Needed
|
||||
when integrating Mayan EDMS into other app via using iframes.
|
||||
- Addes size field to the document version serializer.
|
||||
- Removed the serializer from the deleted document restore API endpoint.
|
||||
- Added support for adding or editing document types to smart links via the
|
||||
API.
|
||||
|
||||
2.1.10 (2017-02-13)
|
||||
===================
|
||||
- Update Makefile to use twine for releases.
|
||||
- Add Makefile target to make test releases.
|
||||
|
||||
2.1.9 (2017-02-13)
|
||||
==================
|
||||
- Update make file to Workaround long standing pypa wheel bug #99
|
||||
|
||||
2.1.8 (2017-02-12)
|
||||
==================
|
||||
- Fixes in the trashed document API endpoints.
|
||||
- Improved tags API PUT and PATCH endpoints.
|
||||
- Bulk document adding when creating and editing tags.
|
||||
- The version of django-mptt is preserved in case mayan-cabinets is installed.
|
||||
- Add Django GPG API endpoints for singing keys.
|
||||
- Add API endpoints for the document states (workflows) app.
|
||||
- Add API endpoints for the messsage of the day (MOTD) app.
|
||||
- Add Smart link API endpoints.
|
||||
- Add writable versions of the Document and Document Type serializers (GitLab issues #348 and #349).
|
||||
- Close GitLab issue #310 "Metadata's lookup with chinese messages when new document"
|
||||
|
||||
2.1.7 (2017-02-01)
|
||||
==================
|
||||
- Improved user management API endpoints.
|
||||
- Improved permissions API endpoints.
|
||||
- Improvements in the API tests of a few apps.
|
||||
- Addition Content type list API view to the common app.
|
||||
- Add API endpoints to the events app.
|
||||
- Enable the parser and validation fields of the metadata serializer.
|
||||
|
||||
2.1.6 (2016-11-23)
|
||||
==================
|
||||
- Fix variable name typo in the rotation transformation class.
|
||||
- Update translations
|
||||
|
||||
2.1.5 (2016-11-08)
|
||||
==================
|
||||
- Backport resize transformation math operation fix (GitLab #319).
|
||||
- Update Pillow to 3.1.2 (Security fix).
|
||||
- Backport zoom transformation performance improvement (GitLab #334).
|
||||
- Backport trash can navigation link resolution fix (GitLab #331).
|
||||
- Improve documentation regarding the use of GPG version 1 (GitLab #333).
|
||||
- Fix ACL create view HTML response type. (GitLab #335).
|
||||
- Expland staging folder and watch folder explanation.
|
||||
|
||||
2.1.4 (2016-10-28)
|
||||
==================
|
||||
- Add missing link to the 2.1.3 release notes in the index file.
|
||||
- Improve TempfileCheckMixin.
|
||||
- Fix statistics namespace list display view.
|
||||
- Fix events list display view.
|
||||
- Update required Django version to 1.8.15.
|
||||
- Update required python-gnupg version to 0.3.9.
|
||||
- Improved orphaned temporary files test mixin.
|
||||
- Re-enable and improve GitLab CI MySQL testing.
|
||||
- Improved GPG handling.
|
||||
- New GPG backend system.
|
||||
- Minor documentation updates.
|
||||
|
||||
2.1.3 (2016-06-29)
|
||||
==================
|
||||
- Add help message when initialsetup migration phase fails. Relates to GitLab issue #296.
|
||||
- Start using self.setdout instead of print as per documentation.
|
||||
- Fix GitLab issue #295, "When editing a user the top bar jumps to the name of the user".
|
||||
- Normalize handling of temporary file and directory creation.
|
||||
- Fix GitLab issue #309, "Temp files quickly filling-up my /tmp (1GB tmpfs)".
|
||||
- Explicitly check for residual temporary files in tests.
|
||||
- Add missing temporary file cleanup for office documents.
|
||||
- Fix file descriptor leak in the document signature download test.
|
||||
|
||||
2.1.2 (2016-05-20)
|
||||
==================
|
||||
- Sort document languages and user profile locale language lists. GitLab issue #292.
|
||||
- Fix metadata lookup for {{ users }} and {{ group }}. Fixes GitLab #290.
|
||||
- Add Makefile for common development tasks
|
||||
|
||||
2.1.1 (2016-05-17)
|
||||
==================
|
||||
- Fix navigation issue that make it impossible to add new sources. GitLab issue #288.
|
||||
- The Tesseract OCR backend now reports if the requested language file is missing. GitLab issue #289.
|
||||
- Ensure the automatic default index is created after the default document type.
|
||||
|
||||
2.1 (2016-05-14)
|
||||
================
|
||||
- Upgrade to use Django 1.8.13. Issue #246.
|
||||
- Upgrade requirements.
|
||||
- Remove remaining references to Django's User model. GitLab issue #225
|
||||
- Rename 'Content' search box to 'OCR'.
|
||||
- Remove included login required middleware using django-stronghold instead (http://mikegrouchy.com/django-stronghold/).
|
||||
- Improve generation of success and error messages for class based views.
|
||||
- Remove ownership concept from folders.
|
||||
- Replace strip_spaces middleware with the spaceless template tag. GitLab issue #255
|
||||
- Deselect the update checkbox for optional metadata by default.
|
||||
- Silence all Django 1.8 model import warnings.
|
||||
- Implement per document type document creation permission. Closes GitLab issue #232.
|
||||
- Add icons to the document face menu links.
|
||||
- Increase icon to text spacing to 3px.
|
||||
- Make document type delete time period optional.
|
||||
- Fixed date locale handling in document properties, checkout and user detail views.
|
||||
- Add new permission: checkout details view.
|
||||
- Add HTML5 upload widget. Issue #162.
|
||||
- Add Message of the Day app. Issue #222
|
||||
- Update Document model's uuid field to use Django's native UUIDField class.
|
||||
- Add new split view index navigation
|
||||
- Newly uploaded documents appear in the Recent document list of the user.
|
||||
- Document indexes now have ACL support.
|
||||
- Remove the document index setup permission.
|
||||
- Status messages now display the object class on which they operate not just the word "Object".
|
||||
- More tests added.
|
||||
- Handle unicode filenames in staging folders.
|
||||
- Add staging file deletion permission.
|
||||
- New document_signature_view permission.
|
||||
- Add support for signing documents.
|
||||
- Instead of multiple keyservers only one keyserver is now supported.
|
||||
- Replace document type selection widget with an opened selection list.
|
||||
- Add mailing documentation chapter.
|
||||
- Add roadmap documentation chapter.
|
||||
- API updates.
|
||||
|
||||
|
||||
2.0.2 (2016-02-09)
|
||||
==================
|
||||
- Install testing dependencies when installing development dependencies.
|
||||
- Fix GitLab issue #250 "Empty optional lookup metadata trigger validation error".
|
||||
- Fix OCR API test.
|
||||
- Move metadata form value validation to .clean() method.
|
||||
- Only extract validation error messages from ValidationError exception instances.
|
||||
- Don't store empty metadata value if the update checkbox is not checked.
|
||||
- Add 2 second delay to document version tests to workaround MySQL limitation.
|
||||
- Strip HTML tags from the browser title.
|
||||
- Remove Docker and Docker Compose files.
|
||||
|
||||
|
||||
2.0.1 (2016-01-22)
|
||||
==================
|
||||
- Fix GitLab issue #243, "System allows a user to skip entering values for a required metadata field while uploading a new document"
|
||||
- Fix GitLab issue #245, "Add multiple metadata not possible"
|
||||
- Updated Vagrantfile to provision a production box too.
|
||||
|
||||
|
||||
2.0 (2015-12-04)
|
||||
================
|
||||
- New source homepage: https://gitlab.com/mayan-edms/mayan-edms
|
||||
- Update to Django 1.7
|
||||
- New Bootstrap Frontend UI
|
||||
- Easier theming and rebranding
|
||||
- Improved page navigation interface
|
||||
- Menu reorganization
|
||||
- Removal of famfam icon set
|
||||
- Improved document preview generation
|
||||
- Document submission for OCR changed to POST
|
||||
- New YAML based settings system
|
||||
- Removal of auto admin creation as separate app
|
||||
- Removal of dependencies
|
||||
- ACL system refactor
|
||||
- Object access control inheritance
|
||||
- Removal of anonymous user support
|
||||
- Metadata validators refactor
|
||||
- Trash can support
|
||||
- Retention policies
|
||||
- Support for sharing indexes as FUSE filesystems
|
||||
- Clickable preview images titles
|
||||
- Removal of eval
|
||||
- Smarter OCR, per page parsing or OCR fallback
|
||||
- Improve failure tolerance (not all Operational Errors are critical now)
|
||||
- RGB tags
|
||||
- Default document type and default document source
|
||||
- Link unbinding
|
||||
- Statistics refactor
|
||||
- Apps merge
|
||||
- New signals
|
||||
- Test improvements
|
||||
- Indexes recalculation after document creation too
|
||||
- Upgrade command
|
||||
- OCR data moved to ocr app from documents app
|
||||
- New internal document creation workflow return a document stub
|
||||
- Auto console debug logging during development and info during production
|
||||
- New class based and menu based navigation system
|
||||
- New class based transformations
|
||||
- Usage of Font Awesome icons set
|
||||
- Management command to remove obsolete permissions: `purgepermissions`
|
||||
- Normalization of 'title' and 'name' fields to 'label'
|
||||
- Improved API, now at version 1
|
||||
- Invert page title/project name order in browser title
|
||||
- Django's class based views pagination
|
||||
- Reduction of text strings
|
||||
- Removal of the CombinedSource class
|
||||
- Removal of default class ACLs
|
||||
- Removal of the ImageMagick and GraphicsMagick converter backends
|
||||
- Remove support for applying roles to new users automatically
|
||||
- Removal of the DOCUMENT_RESTRICTIONS_OVERRIDE permission
|
||||
- Removed the page_label field
|
||||
2
LICENSE
2
LICENSE
@@ -1,4 +1,4 @@
|
||||
Copyright 2011-2018 Roberto Rosario
|
||||
Copyright 2011-2015 Roberto Rosario
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
include README.md LICENSE HISTORY.rst mayan/LICENSE
|
||||
recursive-include mayan/apps *.txt *.html *.css *.ico *.png *.jpg *.js *.po *.mo *.ttf *.woff *.woff2 *.gif *.eot *.svg *.doc *.pdf *.tiff *.sig *.asc *.gpg *.zip *.tar *.gz *.bz2 package.json
|
||||
recursive-include mayan/apps *.txt *.html *.css *.ico *.png *.jpg *.js *.po *.mo *.ttf *.woff *.woff2 *.gif *.eot *.svg *.doc *.pdf *.tiff *.sig *.asc *.gpg *.zip package.json
|
||||
global-exclude mayan/settings/local.py mayan/settings/travis/* mayan/media/*
|
||||
|
||||
34
Makefile
34
Makefile
@@ -67,10 +67,10 @@ clean-pyc:
|
||||
# Testing
|
||||
|
||||
test:
|
||||
./manage.py test $(MODULE) --settings=mayan.settings.testing.development --nomigrations $(ARGUMENTS)
|
||||
./manage.py test $(MODULE) --settings=mayan.settings.testing.development --nomigrations
|
||||
|
||||
test-all:
|
||||
./manage.py test --mayan-apps --settings=mayan.settings.testing.development --nomigrations $(ARGUMENTS)
|
||||
./manage.py test --mayan-apps --settings=mayan.settings.testing.development --nomigrations
|
||||
|
||||
test-launch-postgres:
|
||||
@docker rm -f test-postgres || true
|
||||
@@ -133,22 +133,19 @@ test-with-oracle-all: test-launch-oracle
|
||||
docs-serve:
|
||||
cd docs;make livehtml
|
||||
|
||||
docs-spellcheck:
|
||||
|
||||
sphinx-build -b spelling -d docs/_build/ docs docs/_build/spelling
|
||||
|
||||
# Translations
|
||||
|
||||
translations-make:
|
||||
translations_make:
|
||||
contrib/scripts/process_messages.py -m
|
||||
|
||||
translations-compile:
|
||||
translations_compile:
|
||||
contrib/scripts/process_messages.py -c
|
||||
|
||||
translations-push:
|
||||
translations_push:
|
||||
tx push -s
|
||||
|
||||
translations-pull:
|
||||
translations_pull:
|
||||
tx pull -f
|
||||
|
||||
|
||||
@@ -158,13 +155,6 @@ generate-setup:
|
||||
|
||||
# Releases
|
||||
|
||||
increase-version:
|
||||
@VERSION=`grep "__version__ =" mayan/__init__.py| cut -d\' -f 2|./increase_version.py - $(PART)`; \
|
||||
BUILD=`echo $$VERSION|awk '{split($$VERSION,a,"."); printf("0x%02d%02d%02d\n", a[1],a[2], a[3])}'`; \
|
||||
sed -i -e "s/__build__ = 0x[0-9]*/__build__ = $${BUILD}/g" mayan/__init__.py; \
|
||||
sed -i -e "s/__version__ = '[0-9\.]*'/__version__ = '$${VERSION}'/g" mayan/__init__.py; \
|
||||
echo $$VERSION > docker/version
|
||||
make generate-setup
|
||||
|
||||
test-release: clean wheel
|
||||
twine upload dist/* -r testpypi
|
||||
@@ -196,13 +186,12 @@ release-test-via-docker-ubuntu:
|
||||
|
||||
release-via-docker-ubuntu:
|
||||
docker run --rm --name mayan_release -v $(HOME):/host_home:ro -v `pwd`:/host_source -w /source ubuntu:16.04 /bin/bash -c "\
|
||||
apt-get update && \
|
||||
apt-get -y install locales && \
|
||||
echo "LC_ALL=\"en_US.UTF-8\"" >> /etc/default/locale && \
|
||||
locale-gen en_US.UTF-8 && \
|
||||
update-locale LANG=en_US.UTF-8 && \
|
||||
export LC_ALL=en_US.UTF-8 && \
|
||||
cp -r /host_source/* . && \
|
||||
apt-get update && \
|
||||
apt-get install make python-pip -y && \
|
||||
pip install -r requirements/build.txt && \
|
||||
cp -r /host_home/.pypirc ~/.pypirc && \
|
||||
@@ -315,14 +304,15 @@ find-gitignores:
|
||||
|
||||
build:
|
||||
docker rm -f mayan-edms-build || true && \
|
||||
docker run --rm --name mayan-edms-build -v $(HOME):/host_home:ro -v `pwd`:/host_source -w /source python:2-slim sh -c "\
|
||||
docker run --rm --name mayan-edms-build -v $(HOME):/host_home:ro -v `pwd`:/host_source -w /source python:2-alpine3.7 /bin/busybox sh -c "\
|
||||
rm /host_source/dist -R || true && \
|
||||
mkdir /host_source/dist || true && \
|
||||
export LC_ALL=C.UTF-8 && \
|
||||
export LC_ALL=en_US.UTF-8 && \
|
||||
cp -r /host_source/* . && \
|
||||
apt-get update && \
|
||||
apt-get install -y make && \
|
||||
apk update && \
|
||||
apk add make && \
|
||||
pip install -r requirements/build.txt && \
|
||||
cp -r /host_home/.pypirc ~/.pypirc && \
|
||||
make wheel && \
|
||||
cp dist/* /host_source/dist/"
|
||||
|
||||
|
||||
12
README.md
12
README.md
@@ -50,7 +50,7 @@ The easiest way to use Mayan EDMS is by using the official
|
||||
and working before attempting to install Mayan EDMS.
|
||||
|
||||
For the complete set of installation instructions visit the Mayan EDMS documentation
|
||||
at: https://docs.mayan-edms.com/topics/installation.html
|
||||
at: http://mayan.readthedocs.io/en/latest/topics/installation.html
|
||||
|
||||
<h2 align="center">Hardware requirements</h2>
|
||||
|
||||
@@ -61,12 +61,14 @@ at: https://docs.mayan-edms.com/topics/installation.html
|
||||
|
||||
|
||||
- [Homepage](http://www.mayan-edms.com)
|
||||
- [Documentation](https://docs.mayan-edms.com)
|
||||
- [Wiki](https://wiki.mayan-edms.com/)
|
||||
- [Videos](https://www.youtube.com/channel/UCJOOXHP1MJ9lVA7d8ZTlHPw)
|
||||
- [Documentation](http://mayan.readthedocs.io/en/stable/)
|
||||
- [Paid support](http://www.mayan-edms.com/providers/)
|
||||
- [Roadmap](https://gitlab.com/mayan-edms/mayan-edms/wikis/roadmap)
|
||||
- [Contributing](https://gitlab.com/mayan-edms/mayan-edms/blob/master/CONTRIBUTING.md)
|
||||
- [Forum](https://forum.mayan-edms.com/)
|
||||
- [Community forum](https://groups.google.com/forum/#!forum/mayan-edms)
|
||||
- [Community forum archive](http://mayan-edms.1003.x6.nabble.com/)
|
||||
- [Source code, issues, bugs](https://gitlab.com/mayan-edms/mayan-edms)
|
||||
- [Plug-ins, other related projects](https://gitlab.com/mayan-edms/)
|
||||
- [Translations](https://www.transifex.com/rosarior/mayan-edms/)
|
||||
- [Videos](https://www.youtube.com/channel/UCJOOXHP1MJ9lVA7d8ZTlHPw)
|
||||
|
||||
|
||||
12
README.rst
12
README.rst
@@ -21,7 +21,7 @@ Make sure Docker is properly installed and working before attempting to install
|
||||
Mayan EDMS.
|
||||
|
||||
For the complete set of installation instructions visit the Mayan EDMS documentation
|
||||
at: https://docs.mayan-edms.com/topics/installation.html
|
||||
at: http://mayan.readthedocs.io/en/latest/topics/installation.html
|
||||
|
||||
.. _Docker: https://www.docker.com/
|
||||
|
||||
@@ -34,14 +34,16 @@ Hardware requirements
|
||||
Important links
|
||||
|
||||
- `Homepage <http://www.mayan-edms.com>`__
|
||||
- `Documentation <https://docs.mayan-edms.com>`__
|
||||
- `Wiki <https://wiki.mayan-edms.com>`__
|
||||
- `Videos <https://www.youtube.com/channel/UCJOOXHP1MJ9lVA7d8ZTlHPw>`__
|
||||
- `Documentation <http://mayan.readthedocs.io/en/stable/>`__
|
||||
- `Paid support <http://www.mayan-edms.com/providers/>`__
|
||||
- `Roadmap <https://gitlab.com/mayan-edms/mayan-edms/wikis/roadmap>`__
|
||||
- `Contributing <https://gitlab.com/mayan-edms/mayan-edms/blob/master/CONTRIBUTING.md>`__
|
||||
- `Forum <https://forum.mayan-edms.com>`__
|
||||
- `Community forum <https://groups.google.com/forum/#!forum/mayan-edms>`__
|
||||
- `Community forum archive <http://mayan-edms.1003.x6.nabble.com/>`__
|
||||
- `Source code, issues, bugs <https://gitlab.com/mayan-edms/mayan-edms>`__
|
||||
- `Plug-ins, other related projects <https://gitlab.com/mayan-edms/>`__
|
||||
- `Translations <https://www.transifex.com/rosarior/mayan-edms/>`__
|
||||
- `Videos <https://www.youtube.com/channel/UCJOOXHP1MJ9lVA7d8ZTlHPw>`__
|
||||
|
||||
|
||||
.. |pypi| image:: http://img.shields.io/pypi/v/mayan-edms.svg
|
||||
|
||||
@@ -1,14 +0,0 @@
|
||||
from __future__ import unicode_literals
|
||||
|
||||
__title__ = 'Mayan EDMS'
|
||||
__version__ = '{{ version }}'
|
||||
__build__ = {{ build }}
|
||||
__build_string__ = '{{ build_string }}'
|
||||
__django_version__ = '1.11'
|
||||
__author__ = 'Roberto Rosario'
|
||||
__author_email__ = 'roberto.rosario@mayan-edms.com'
|
||||
__description__ = 'Free Open Source Electronic Document Management System'
|
||||
__license__ = 'Apache 2.0'
|
||||
__copyright_short__ = '2011-2018 Roberto Rosario'
|
||||
__copyright__ = '{} {}'.format('Copyright', __copyright_short__)
|
||||
__website__ = 'https://www.mayan-edms.com'
|
||||
@@ -3,6 +3,6 @@
|
||||
apt-get update
|
||||
apt-get install -y --no-install-recommends tesseract-ocr-deu
|
||||
|
||||
$MAYAN_PIP_BIN install -r $DOCKER_ROOT/requirements-testing.txt
|
||||
pip install -r $DOCKER_ROOT/requirements-testing.txt
|
||||
|
||||
$MAYAN_BIN test --mayan-apps --settings=mayan.settings.testing
|
||||
mayan-edms.py test --mayan-apps --settings=mayan.settings.testing
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,131 +0,0 @@
|
||||
#!/bin/sh
|
||||
set -e
|
||||
|
||||
# This script is meant for quick & easy install via:
|
||||
# $ curl -fsSL get.mayan-edms.com -o get-mayan-edms.sh
|
||||
# $ sh get-mayan-edms.sh
|
||||
#
|
||||
# NOTE: Make sure to verify the contents of the script
|
||||
# you downloaded matches the contents of docker.sh
|
||||
# located at https://gitlab.com/mayan-edms/mayan-edms/blob/master/contrib/scripts/install/docker.sh
|
||||
# before executing.
|
||||
|
||||
: ${VERBOSE:=true}
|
||||
: ${INSTALL_DOCKER:=false}
|
||||
: ${DELETE_VOLUMES:=false}
|
||||
: ${DATABASE_USER:=mayan}
|
||||
: ${DATABASE_NAME:=mayan}
|
||||
: ${DATABASE_PASSWORD:=mayanuserpass}
|
||||
: ${DOCKER_POSTGRES_IMAGE:=postgres:9.5}
|
||||
: ${DOCKER_POSTGRES_CONTAINER:=mayan-edms-postgres}
|
||||
: ${DOCKER_POSTGRES_VOLUME:=/docker-volumes/mayan-edms/postgres}
|
||||
: ${DOCKER_POSTGRES_PORT:=5432}
|
||||
: ${DOCKER_MAYAN_IMAGE:=mayanedms/mayanedms:latest}
|
||||
: ${DOCKER_MAYAN_CONTAINER:=mayan-edms}
|
||||
: ${DOCKER_MAYAN_VOLUME:=/docker-volumes/mayan-edms/media}
|
||||
|
||||
cat << EOF
|
||||
|
||||
███╗ ███╗ █████╗ ██╗ ██╗ █████╗ ███╗ ██╗
|
||||
████╗ ████║██╔══██╗╚██╗ ██╔╝██╔══██╗████╗ ██║
|
||||
██╔████╔██║███████║ ╚████╔╝ ███████║██╔██╗ ██║
|
||||
██║╚██╔╝██║██╔══██║ ╚██╔╝ ██╔══██║██║╚██╗██║
|
||||
██║ ╚═╝ ██║██║ ██║ ██║ ██║ ██║██║ ╚████║
|
||||
╚═╝ ╚═╝╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝╚═╝ ╚═══╝
|
||||
Docker deploy script
|
||||
|
||||
NOTE: Make sure to verify the contents of this script
|
||||
matches the contents of docker.sh located at https://gitlab.com/mayan-edms/mayan-edms/blob/master/contrib/scripts/install/docker.sh before executing.
|
||||
|
||||
EOF
|
||||
|
||||
if [ "$VERBOSE" = true ]; then
|
||||
echo "Variable values to be used:"
|
||||
echo "---------------------------"
|
||||
echo "INSTALL_DOCKER: $INSTALL_DOCKER"
|
||||
echo "DELETE_VOLUMES: $DELETE_VOLUMES"
|
||||
echo "DATABASE_USER: $DATABASE_USER"
|
||||
echo "DATABASE_NAME: $DATABASE_NAME"
|
||||
echo "DATABASE_PASSWORD: $DATABASE_PASSWORD"
|
||||
echo "DOCKER_POSTGRES_IMAGE: $DOCKER_POSTGRES_IMAGE"
|
||||
echo "DOCKER_POSTGRES_CONTAINER: $DOCKER_POSTGRES_CONTAINER"
|
||||
echo "DOCKER_POSTGRES_VOLUME: $DOCKER_POSTGRES_VOLUME"
|
||||
echo "DOCKER_POSTGRES_PORT: $DOCKER_POSTGRES_PORT"
|
||||
echo "DOCKER_MAYAN_IMAGE: $DOCKER_MAYAN_IMAGE"
|
||||
echo "DOCKER_MAYAN_CONTAINER: $DOCKER_MAYAN_CONTAINER"
|
||||
echo "DOCKER_MAYAN_VOLUME: $DOCKER_MAYAN_VOLUME"
|
||||
echo "\nStarting in 10 seconds."
|
||||
sleep 10
|
||||
fi
|
||||
|
||||
if [ "$INSTALL_DOCKER" = true ]; then
|
||||
echo -n "* Installing Docker..."
|
||||
curl -fsSL get.docker.com -o get-docker.sh >/dev/null
|
||||
sh get-docker.sh >/dev/null 2>&1
|
||||
rm get-docker.sh
|
||||
echo "Done"
|
||||
fi
|
||||
|
||||
if [ -z `which docker` ]; then
|
||||
echo "Docker is not installed. Rerun this script with the variable INSTALL_DOCKER set to true."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo -n "* Removing existing Mayan EDMS and PostgreSQL containers (no data will be lost)..."
|
||||
true || docker stop $DOCKER_MAYAN_CONTAINER >/dev/null 2>&1
|
||||
true || docker rm $DOCKER_MAYAN_CONTAINER >/dev/null 2>&1
|
||||
true || docker stop $DOCKER_POSTGRES_CONTAINER >/dev/null 2>&1
|
||||
true || docker rm $DOCKER_POSTGRES_CONTAINER >/dev/null 2>&1
|
||||
echo "Done"
|
||||
|
||||
if [ "$DELETE_VOLUMES" = true ]; then
|
||||
echo -n "* Deleting Docker volumes in 5 seconds (warning: this delete all document data)..."
|
||||
sleep 5
|
||||
true || rm DOCKER_MAYAN_VOLUME -Rf
|
||||
true || rm DOCKER_POSTGRES_VOLUME -Rf
|
||||
echo "Done"
|
||||
fi
|
||||
|
||||
echo -n "* Pulling (downloading) the Mayan EDMS Docker image..."
|
||||
docker pull $DOCKER_MAYAN_IMAGE >/dev/null
|
||||
echo "Done"
|
||||
|
||||
echo -n "* Pulling (downloading) the PostgreSQL Docker image..."
|
||||
docker pull $DOCKER_POSTGRES_IMAGE > /dev/null
|
||||
echo "Done"
|
||||
|
||||
echo -n "* Deploying the PostgreSQL container..."
|
||||
docker run -d \
|
||||
--name $DOCKER_POSTGRES_CONTAINER \
|
||||
--restart=always \
|
||||
-p $DOCKER_POSTGRES_PORT:5432 \
|
||||
-e POSTGRES_USER=$DATABASE_USER \
|
||||
-e POSTGRES_DB=$DATABASE_NAME \
|
||||
-e POSTGRES_PASSWORD=$DATABASE_PASSWORD \
|
||||
-v $DOCKER_POSTGRES_VOLUME:/var/lib/postgresql/data \
|
||||
$DOCKER_POSTGRES_IMAGE >/dev/null
|
||||
echo "Done"
|
||||
|
||||
echo -n "* Waiting for the PostgreSQL container to be ready (10 seconds)..."
|
||||
sleep 10
|
||||
echo "Done"
|
||||
|
||||
echo -n "* Deploying Mayan EDMS container..."
|
||||
docker run -d \
|
||||
--name $DOCKER_MAYAN_CONTAINER \
|
||||
--restart=always \
|
||||
-p 80:8000 \
|
||||
-e MAYAN_DATABASE_ENGINE=django.db.backends.postgresql \
|
||||
-e MAYAN_DATABASE_HOST=172.17.0.1 \
|
||||
-e MAYAN_DATABASE_NAME=$DATABASE_NAME \
|
||||
-e MAYAN_DATABASE_PASSWORD=$DATABASE_PASSWORD \
|
||||
-e MAYAN_DATABASE_USER=$DATABASE_USER \
|
||||
-e MAYAN_DATABASE_PORT=$DOCKER_POSTGRES_PORT \
|
||||
-e MAYAN_DATABASE_CONN_MAX_AGE=60 \
|
||||
-v $DOCKER_MAYAN_VOLUME:/var/lib/mayan \
|
||||
$DOCKER_MAYAN_IMAGE >/dev/null
|
||||
echo "Done"
|
||||
|
||||
echo -n "* Waiting for the Mayan EDMS container to be ready (might take a few minutes)..."
|
||||
while ! curl --output /dev/null --silent --head --fail http://localhost:80; do sleep 1 && echo -n .; done;
|
||||
echo "Done"
|
||||
@@ -1,7 +1,4 @@
|
||||
#!/usr/bin/env python
|
||||
|
||||
from __future__ import print_function
|
||||
|
||||
import os
|
||||
import optparse
|
||||
|
||||
@@ -13,15 +10,15 @@ APP_LIST = (
|
||||
'converter', 'django_gpg', 'document_comments', 'document_indexing',
|
||||
'document_parsing', 'document_signatures', 'document_states', 'documents',
|
||||
'dynamic_search', 'events', 'linking', 'lock_manager', 'mayan_statistics',
|
||||
'mailer', 'metadata', 'mimetype', 'mirroring', 'motd', 'navigation', 'ocr',
|
||||
'permissions','rest_api', 'smart_settings', 'sources', 'storage', 'tags',
|
||||
'task_manager', 'user_management'
|
||||
'mailer', 'metadata', 'mirroring', 'motd', 'navigation', 'ocr', 'permissions',
|
||||
'rest_api', 'smart_settings', 'sources', 'storage', 'tags', 'task_manager',
|
||||
'user_management'
|
||||
)
|
||||
|
||||
LANGUAGE_LIST = (
|
||||
'ar', 'bg', 'bs_BA', 'cs', 'da_DK', 'de_DE', 'en', 'es', 'el', 'fa', 'fr',
|
||||
'hu', 'id', 'it', 'nl_NL', 'pl', 'pt', 'pt_BR', 'ro_RO', 'ru', 'sl_SI',
|
||||
'tr_TR', 'vi_VN', 'zh',
|
||||
'ar', 'bg', 'bs_BA', 'da', 'de_DE', 'en', 'es', 'fa', 'fr', 'hu', 'id',
|
||||
'it', 'nl_NL', 'pl', 'pt', 'pt_BR', 'ro_RO', 'ru', 'sl_SI', 'tr_TR',
|
||||
'vi_VN', 'zh_CN',
|
||||
)
|
||||
|
||||
makemessages = sh.Command('django-admin.py')
|
||||
@@ -41,29 +38,29 @@ BASE_DIR = os.path.abspath(
|
||||
|
||||
def process(command, app_list, language_list):
|
||||
if command == makemessages:
|
||||
print('Making messages')
|
||||
print 'Making messages'
|
||||
elif command == compilemessages:
|
||||
print('Compiling messages')
|
||||
print 'Compiling messages'
|
||||
elif command == pull_translations:
|
||||
print('Pulling translation files')
|
||||
print 'Pulling translation files'
|
||||
elif command == push_translations:
|
||||
print('Pushing translation files')
|
||||
print 'Pushing translation files'
|
||||
|
||||
if command in [compilemessages, makemessages]:
|
||||
for app in app_list:
|
||||
print('Processing app: %s...' % app)
|
||||
print 'Processing app: %s...' % app
|
||||
app_path = os.path.join(BASE_DIR, 'apps', app)
|
||||
os.chdir(app_path)
|
||||
for lang in language_list:
|
||||
print('Doing language: %s' % lang)
|
||||
print 'Doing language: %s' % lang
|
||||
command(locale=lang)
|
||||
elif command == pull_translations:
|
||||
for lang in language_list:
|
||||
print('Doing language: %s' % lang)
|
||||
print 'Doing language: %s' % lang
|
||||
command('-f', '-l', lang)
|
||||
elif command == push_translations:
|
||||
for lang in language_list:
|
||||
print('Doing language: %s' % lang)
|
||||
print 'Doing language: %s' % lang
|
||||
command('-s', '-l', lang)
|
||||
|
||||
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
#!/usr/bin/env python
|
||||
|
||||
from __future__ import print_function
|
||||
|
||||
import os
|
||||
|
||||
BASE_PATH = 'mayan/apps'
|
||||
@@ -9,7 +7,7 @@ BASE_PATH = 'mayan/apps'
|
||||
|
||||
def print_views_summary(module_filename):
|
||||
with open(module_filename) as file_object:
|
||||
print(' module:', module_filename)
|
||||
print ' module:', module_filename
|
||||
count_class_based_views = 0
|
||||
count_function_based_views = 0
|
||||
for line in file_object:
|
||||
@@ -19,20 +17,20 @@ def print_views_summary(module_filename):
|
||||
if line.startswith('def') and 'request' in line:
|
||||
count_function_based_views += 1
|
||||
|
||||
print(' class based views: {}'.format(count_class_based_views))
|
||||
print(' function based views: {}'.format(count_function_based_views))
|
||||
print ' class based views: {}'.format(count_class_based_views)
|
||||
print ' function based views: {}'.format(count_function_based_views)
|
||||
return count_class_based_views, count_function_based_views
|
||||
|
||||
|
||||
def print_tests_summary(module_filename):
|
||||
with open(module_filename) as file_object:
|
||||
print(' module:', module_filename)
|
||||
print ' module:', module_filename
|
||||
count_tests = 0
|
||||
for line in file_object:
|
||||
if line.startswith(' def test'):
|
||||
count_tests += 1
|
||||
|
||||
print(' tests: {}'.format(count_tests))
|
||||
print ' tests: {}'.format(count_tests)
|
||||
return count_tests
|
||||
|
||||
|
||||
@@ -49,10 +47,10 @@ if __name__ == '__main__':
|
||||
for app_name in sorted(os.listdir(BASE_PATH)):
|
||||
if app_name != '__init__.py':
|
||||
count_totals['Apps'] += 1
|
||||
print('\n\nApp name: {}'.format(app_name))
|
||||
print '\n\nApp name: {}'.format(app_name)
|
||||
app_path = os.path.join(BASE_PATH, app_name)
|
||||
|
||||
print('\n Views')
|
||||
print '\n Views'
|
||||
try:
|
||||
module_filename = os.path.join(app_path, 'views.py')
|
||||
count_class_based_views, count_function_based_views = print_views_summary(module_filename=module_filename)
|
||||
@@ -71,9 +69,9 @@ if __name__ == '__main__':
|
||||
count_totals['Function based views'] += count_function_based_views
|
||||
except OSError:
|
||||
# No views directory, skip app
|
||||
print(' No views')
|
||||
print ' No views'
|
||||
|
||||
print('\n API Views')
|
||||
print '\n API Views'
|
||||
try:
|
||||
module_filename = os.path.join(app_path, 'api_views.py')
|
||||
count_class_based_views, count_function_based_views = print_views_summary(module_filename=module_filename)
|
||||
@@ -82,9 +80,9 @@ if __name__ == '__main__':
|
||||
|
||||
except IOError:
|
||||
# No API views directory, skip app
|
||||
print(' No API views')
|
||||
print ' No API views'
|
||||
|
||||
print('\n Tests')
|
||||
print '\n Tests'
|
||||
module_path = os.path.join(app_path, 'tests')
|
||||
try:
|
||||
for module_name in os.listdir(module_path):
|
||||
@@ -96,10 +94,10 @@ if __name__ == '__main__':
|
||||
|
||||
except OSError:
|
||||
# No tests directory, skip app
|
||||
print(' No tests')
|
||||
print ' No tests'
|
||||
|
||||
print('-' * 10)
|
||||
print '-' * 10
|
||||
|
||||
print('Totals:')
|
||||
print 'Totals:'
|
||||
for key, value in count_totals.items():
|
||||
print(' {}: {}'.format(key, value))
|
||||
print ' {}: {}'.format(key, value)
|
||||
|
||||
@@ -11,8 +11,7 @@ MAINTAINER Roberto Rosario "roberto.rosario@mayan-edms.com"
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
ENV PYTHONUNBUFFERED 1
|
||||
ENV LC_ALL C.UTF-8
|
||||
ENV PROJECT_INSTALL_DIR=/opt/mayan-edms
|
||||
ENV PYTHON_PIP=${PROJECT_INSTALL_DIR}/bin/pip
|
||||
ENV PROJECT_INSTALL_DIR=/usr/local/lib/python2.7/dist-packages/mayan
|
||||
|
||||
ARG APT_PROXY
|
||||
# Package caching
|
||||
@@ -28,7 +27,6 @@ apt-get install -y --no-install-recommends \
|
||||
gnupg1 \
|
||||
graphviz \
|
||||
libffi-dev \
|
||||
libfuse2 \
|
||||
libjpeg-dev \
|
||||
libmagic1 \
|
||||
default-libmysqlclient-dev \
|
||||
@@ -38,16 +36,14 @@ apt-get install -y --no-install-recommends \
|
||||
libtiff-dev \
|
||||
poppler-utils \
|
||||
python-dev \
|
||||
python-pip \
|
||||
python-setuptools \
|
||||
python-virtualenv \
|
||||
python-wheel \
|
||||
redis-server \
|
||||
sane-utils \
|
||||
sudo \
|
||||
supervisor \
|
||||
tesseract-ocr \
|
||||
zlib1g-dev \
|
||||
libssl-dev \
|
||||
&& \
|
||||
apt-get clean autoclean && \
|
||||
apt-get autoremove --purge -y && \
|
||||
@@ -58,6 +54,9 @@ rm -f /var/cache/apt/archives/*.deb
|
||||
ADD https://raw.githubusercontent.com/guilhem/apt-get-install/master/apt-get-install /usr/bin/
|
||||
RUN chmod +x /usr/bin/apt-get-install
|
||||
|
||||
# Install Python clients for PostgreSQL, REDIS, librabbitmq
|
||||
RUN pip install psycopg2==2.7.3.2 redis==2.10.6 mysql-python==1.2.5 librabbitmq==1.6.1
|
||||
|
||||
RUN adduser mayan --disabled-password --disabled-login --no-create-home --gecos ""
|
||||
|
||||
# Pillow can't find zlib or libjpeg on aarch64 (ODROID C2)
|
||||
@@ -68,19 +67,11 @@ ln -s /usr/lib/aarch64-linux-gnu/libjpeg.so /usr/lib/ \
|
||||
|
||||
# Pillow can't find zlib or libjpeg on armv7l (ODROID HC1)
|
||||
RUN if [ "$(uname -m)" = "armv7l" ]; then \
|
||||
apt-get install libssl-dev -y && \
|
||||
ln -s /usr/lib/arm-linux-gnueabihf/libz.so /usr/lib/ && \
|
||||
ln -s /usr/lib/arm-linux-gnueabihf/libjpeg.so /usr/lib/ \
|
||||
; fi
|
||||
|
||||
# Discard data when Redis runs out of memory
|
||||
RUN echo "maxmemory-policy allkeys-lru" >> /etc/redis/redis.conf
|
||||
|
||||
# Disable saving the Redis database
|
||||
RUN echo "save \"\"" >> /etc/redis/redis.conf
|
||||
|
||||
# Only provision 1 database
|
||||
RUN echo "databases 1" >> /etc/redis/redis.conf
|
||||
|
||||
#####################
|
||||
# Build image start #
|
||||
#####################
|
||||
@@ -113,11 +104,7 @@ RUN chmod 777 dist -R
|
||||
|
||||
FROM BASE_IMAGE
|
||||
|
||||
RUN mkdir -p /opt
|
||||
|
||||
RUN python /usr/lib/python2.7/dist-packages/virtualenv.py $PROJECT_INSTALL_DIR
|
||||
|
||||
WORKDIR $PROJECT_INSTALL_DIR
|
||||
WORKDIR /root/
|
||||
|
||||
COPY --from=BUILDER_IMAGE /code/dist/*.whl .
|
||||
|
||||
@@ -125,20 +112,18 @@ COPY --from=BUILDER_IMAGE /code/contrib/scripts/docker/run-tests.sh .
|
||||
|
||||
COPY --from=BUILDER_IMAGE /code/requirements/testing-base.txt requirements-testing.txt
|
||||
|
||||
COPY --from=BUILDER_IMAGE /code/docker/version .
|
||||
# Install build Mayan EDMS
|
||||
RUN pip install *.whl && \
|
||||
rm *.whl
|
||||
|
||||
# Setup supervisor
|
||||
COPY docker/etc/supervisor/mayan.conf /etc/supervisor/conf.d
|
||||
|
||||
# Fix ownership
|
||||
RUN chown -R mayan:mayan $PROJECT_INSTALL_DIR
|
||||
|
||||
# Install build Mayan EDMS
|
||||
RUN sudo -u mayan $PYTHON_PIP install --no-cache-dir --no-use-pep517 *.whl && \
|
||||
rm *.whl
|
||||
|
||||
# Install Python clients for librabbitmq, MySQL, PostgreSQL, REDIS
|
||||
RUN sudo -u mayan $PYTHON_PIP install --no-cache-dir --no-use-pep517 librabbitmq==1.6.1 mysql-python==1.2.5 psycopg2==2.7.3.2 redis==2.10.6
|
||||
|
||||
# Setup supervisor
|
||||
COPY docker/etc/supervisor/mayan.conf /etc/supervisor/conf.d
|
||||
# Allow flanker to autogenerate its PLY files
|
||||
RUN chown -R mayan:mayan /usr/local/lib/python2.7/dist-packages/flanker/
|
||||
|
||||
RUN mkdir /var/lib/mayan
|
||||
VOLUME ["/var/lib/mayan"]
|
||||
|
||||
@@ -177,12 +177,7 @@ The complete command line would then be:
|
||||
$ docker run -d --name mayan-edms --restart=always -p 80:80 -v mayan_data:/var/lib/mayan -v /opt/scanned_files:/srv/watch_folder mayanedms/mayanedms:2.7.3
|
||||
```
|
||||
|
||||
Now create a watch folder in Mayan EDMS using the path `/srv/watch_folder` and
|
||||
the documents from the host folder `/opt/scanned_files` will be automatically
|
||||
available. Use the same procedure to mount host folders to be used as staging
|
||||
folders. In this example `/srv/watch_folder` was as the container directory,
|
||||
but any path can be used as long as it is not an already existing path or a
|
||||
path used by any other program.
|
||||
Now create a watch folder in Mayan EDMS using the path `/srv/watch_folder` and the documents from the host folder `/opt/scanned_files` will be automatically available. Use the same procedure to mount host folders to be used as staging folderes. In this example `/srv/watch_folder` was as the container directory, but any path can be used as long as it is not an already existing path or a path used by any other program.
|
||||
|
||||
|
||||
## Performing backups
|
||||
@@ -371,7 +366,7 @@ from .base import *
|
||||
SECRET_KEY = '< keep your random secret key >'
|
||||
```
|
||||
|
||||
This is necessary because version 2.2 included experimental support for Postgres as a database backend. Now that Postgres support has been made standard, the custom configuration lines that version 2.2 added to the `local.py` file are not necesary and need to be removed to avoid configuration conflicts.
|
||||
This is necesary because version 2.2 included experimental support for Postgres as a database backend. Now that Postgres support has been made standard, the custom configuration lines that version 2.2 added to the `local.py` file are not necesary and need to be removed to avoid configuration conflicts.
|
||||
|
||||
Save the file and launch a container using the new version.
|
||||
|
||||
|
||||
@@ -366,7 +366,7 @@ from .base import *
|
||||
SECRET_KEY = '< keep your random secret key >'
|
||||
```
|
||||
|
||||
This is necessary because version 2.2 included experimental support for Postgres as a database backend. Now that Postgres support has been made standard, the custom configuration lines that version 2.2 added to the `local.py` file are not necesary and need to be removed to avoid configuration conflicts.
|
||||
This is necesary because version 2.2 included experimental support for Postgres as a database backend. Now that Postgres support has been made standard, the custom configuration lines that version 2.2 added to the `local.py` file are not necesary and need to be removed to avoid configuration conflicts.
|
||||
|
||||
Save the file and launch a container using the new version.
|
||||
|
||||
|
||||
@@ -61,7 +61,7 @@ services:
|
||||
environment:
|
||||
MAYAN_BROKER_URL: amqp://mayan:mayan@broker:5672/mayan
|
||||
MAYAN_CELERY_RESULT_BACKEND: redis://results:6379/0
|
||||
MAYAN_DATABASE_ENGINE: django.db.backends.postgresql
|
||||
MAYAN_DATABASE_DRIVER: django.db.backends.postgres
|
||||
MAYAN_DATABASE_HOST: db
|
||||
MAYAN_DATABASE_NAME: mayan
|
||||
MAYAN_DATABASE_PASSWORD: mayan-password
|
||||
|
||||
@@ -47,7 +47,7 @@ services:
|
||||
environment:
|
||||
MAYAN_BROKER_URL: amqp://mayan:mayan@broker:5672/mayan
|
||||
MAYAN_CELERY_RESULT_BACKEND: redis://results:6379/0
|
||||
MAYAN_DATABASE_ENGINE: django.db.backends.postgresql
|
||||
MAYAN_DATABASE_DRIVER: django.db.backends.postgres
|
||||
MAYAN_DATABASE_HOST: db
|
||||
MAYAN_DATABASE_NAME: mayan
|
||||
MAYAN_DATABASE_PASSWORD: mayan-password
|
||||
|
||||
@@ -2,51 +2,22 @@
|
||||
|
||||
set -e
|
||||
echo "mayan: starting entrypoint.sh"
|
||||
INSTALL_FLAG=/var/lib/mayan/system/SECRET_KEY
|
||||
CONCURRENCY_ARGUMENT=--concurrency=
|
||||
export DOCKER_ROOT=/opt/mayan-edms
|
||||
INSTALL_FLAG=/var/lib/mayan/media/system/SECRET_KEY
|
||||
export DOCKER_ROOT=/root
|
||||
|
||||
export MAYAN_DEFAULT_BROKER_URL=redis://127.0.0.1:6379/0
|
||||
export MAYAN_DEFAULT_CELERY_RESULT_BACKEND=redis://127.0.0.1:6379/0
|
||||
|
||||
export MAYAN_ALLOWED_HOSTS='["*"]'
|
||||
export MAYAN_BIN=/opt/mayan-edms/bin/mayan-edms.py
|
||||
export MAYAN_ALLOWED_HOSTS=*
|
||||
export MAYAN_BIN=/usr/local/lib/python2.7/dist-packages/mayan/bin/mayan-edms.py
|
||||
export MAYAN_BROKER_URL=${MAYAN_BROKER_URL:-${MAYAN_DEFAULT_BROKER_URL}}
|
||||
export MAYAN_CELERY_RESULT_BACKEND=${MAYAN_CELERY_RESULT_BACKEND:-${MAYAN_DEFAULT_CELERY_RESULT_BACKEND}}
|
||||
export MAYAN_INSTALL_DIR=/opt/mayan-edms
|
||||
export MAYAN_PYTHON_BIN_DIR=/opt/mayan-edms/bin/
|
||||
export MAYAN_GUNICORN_WORKERS=${MAYAN_GUNICORN_WORKERS:-2}
|
||||
export MAYAN_INSTALL_DIR=/usr/local/lib/python2.7/dist-packages/mayan
|
||||
export MAYAN_PYTHON_DIR=/usr/local/bin
|
||||
export MAYAN_MEDIA_ROOT=/var/lib/mayan
|
||||
export MAYAN_SETTINGS_MODULE=${MAYAN_SETTINGS_MODULE:-mayan.settings.production}
|
||||
|
||||
export MAYAN_GUNICORN_BIN=${MAYAN_PYTHON_BIN_DIR}gunicorn
|
||||
export MAYAN_GUNICORN_WORKERS=${MAYAN_GUNICORN_WORKERS:-2}
|
||||
export MAYAN_PIP_BIN=${MAYAN_PYTHON_BIN_DIR}pip
|
||||
|
||||
MAYAN_WORKER_FAST_CONCURRENCY=${MAYAN_WORKER_FAST_CONCURRENCY:-1}
|
||||
MAYAN_WORKER_MEDIUM_CONCURRENCY=${MAYAN_WORKER_MEDIUM_CONCURRENCY:-1}
|
||||
MAYAN_WORKER_SLOW_CONCURRENCY=${MAYAN_WORKER_SLOW_CONCURRENCY:-1}
|
||||
|
||||
if [ "$MAYAN_WORKER_FAST_CONCURRENCY" -eq 0 ]; then
|
||||
MAYAN_WORKER_FAST_CONCURRENCY=
|
||||
else
|
||||
MAYAN_WORKER_FAST_CONCURRENCY="${CONCURRENCY_ARGUMENT}${MAYAN_WORKER_FAST_CONCURRENCY}"
|
||||
fi
|
||||
export MAYAN_WORKER_FAST_CONCURRENCY
|
||||
|
||||
if [ "$MAYAN_WORKER_MEDIUM_CONCURRENCY" -eq 0 ]; then
|
||||
MAYAN_WORKER_MEDIUM_CONCURRENCY=
|
||||
else
|
||||
MAYAN_WORKER_MEDIUM_CONCURRENCY="${CONCURRENCY_ARGUMENT}${MAYAN_WORKER_MEDIUM_CONCURRENCY}"
|
||||
fi
|
||||
export MAYAN_WORKER_MEDIUM_CONCURRENCY
|
||||
|
||||
if [ "$MAYAN_WORKER_SLOW_CONCURRENCY" -eq 0 ]; then
|
||||
MAYAN_WORKER_SLOW_CONCURRENCY=
|
||||
else
|
||||
MAYAN_WORKER_SLOW_CONCURRENCY="${CONCURRENCY_ARGUMENT}${MAYAN_WORKER_SLOW_CONCURRENCY}"
|
||||
fi
|
||||
export MAYAN_WORKER_SLOW_CONCURRENCY
|
||||
|
||||
export CELERY_ALWAYS_EAGER=False
|
||||
export PYTHONPATH=$PYTHONPATH:$MAYAN_MEDIA_ROOT
|
||||
|
||||
@@ -54,14 +25,14 @@ chown mayan:mayan /var/lib/mayan -R
|
||||
|
||||
initialize() {
|
||||
echo "mayan: initialize()"
|
||||
su mayan -c "${MAYAN_BIN} initialsetup --force"
|
||||
su mayan -c "${MAYAN_BIN} collectstatic --noinput --clear"
|
||||
su mayan -c "mayan-edms.py initialsetup --force"
|
||||
su mayan -c "mayan-edms.py collectstatic --noinput --clear"
|
||||
}
|
||||
|
||||
upgrade() {
|
||||
echo "mayan: upgrade()"
|
||||
su mayan -c "${MAYAN_BIN} performupgrade"
|
||||
su mayan -c "${MAYAN_BIN} collectstatic --noinput --clear"
|
||||
su mayan -c "mayan-edms.py performupgrade"
|
||||
su mayan -c "mayan-edms.py collectstatic --noinput --clear"
|
||||
}
|
||||
|
||||
start() {
|
||||
@@ -80,7 +51,7 @@ os_package_installs() {
|
||||
pip_installs() {
|
||||
echo "mayan: pip_installs()"
|
||||
if [ "${MAYAN_PIP_INSTALLS}" ]; then
|
||||
$MAYAN_PIP_BIN install $MAYAN_PIP_INSTALLS
|
||||
pip install $MAYAN_PIP_INSTALLS
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
[program:mayan-gunicorn]
|
||||
autorestart = false
|
||||
autostart = true
|
||||
command = /bin/bash -c "${MAYAN_GUNICORN_BIN} -w ${MAYAN_GUNICORN_WORKERS} mayan.wsgi --max-requests 500 --max-requests-jitter 50 --worker-class gevent --bind 0.0.0.0:8000 --env DJANGO_SETTINGS_MODULE=${MAYAN_SETTINGS_MODULE}" --timeout 120
|
||||
command = /bin/bash -c "cd ${MAYAN_PYTHON_DIR}; gunicorn -w ${MAYAN_GUNICORN_WORKERS} mayan.wsgi --max-requests 500 --max-requests-jitter 50 --worker-class gevent --bind 0.0.0.0:8000 --env DJANGO_SETTINGS_MODULE=${MAYAN_SETTINGS_MODULE}"
|
||||
redirect_stderr = true
|
||||
stderr_logfile = /dev/fd/2
|
||||
stderr_logfile_maxbytes = 0
|
||||
@@ -22,7 +22,7 @@ user = root
|
||||
[program:mayan-worker-fast]
|
||||
autorestart = false
|
||||
autostart = true
|
||||
command = nice -n 1 /bin/bash -c "${MAYAN_BIN} celery --settings=${MAYAN_SETTINGS_MODULE} worker -Ofair -l ERROR -Q converter,sources_fast -n mayan-worker-fast.%%h ${MAYAN_WORKER_FAST_CONCURRENCY}"
|
||||
command = nice -n 1 /bin/bash -c "cd ${MAYAN_PYTHON_DIR}; python ${MAYAN_BIN} celery --settings=${MAYAN_SETTINGS_MODULE} worker -Ofair -l ERROR -Q converter -n mayan-worker-fast.%%h --concurrency=1"
|
||||
killasgroup = true
|
||||
numprocs = 1
|
||||
priority = 998
|
||||
@@ -37,7 +37,7 @@ user = mayan
|
||||
[program:mayan-worker-medium]
|
||||
autorestart = false
|
||||
autostart = true
|
||||
command = nice -n 18 /bin/bash -c "${MAYAN_BIN} celery --settings=${MAYAN_SETTINGS_MODULE} worker -Ofair -l ERROR -Q checkouts_periodic,documents_periodic,indexing,metadata,sources,sources_periodic,uploads,documents -n mayan-worker-medium.%%h ${MAYAN_WORKER_MEDIUM_CONCURRENCY}"
|
||||
command = nice -n 18 /bin/bash -c "cd ${MAYAN_PYTHON_DIR}; python ${MAYAN_BIN} celery --settings=${MAYAN_SETTINGS_MODULE} worker -Ofair -l ERROR -Q checkouts_periodic,documents_periodic,indexing,metadata,sources,sources_periodic,uploads,documents -n mayan-worker-medium.%%h --concurrency=1"
|
||||
killasgroup = true
|
||||
numprocs = 1
|
||||
priority = 998
|
||||
@@ -52,7 +52,7 @@ user = mayan
|
||||
[program:mayan-worker-slow]
|
||||
autorestart = false
|
||||
autostart = true
|
||||
command = nice -n 19 /bin/bash -c "${MAYAN_BIN} celery --settings=${MAYAN_SETTINGS_MODULE} worker -Ofair -l ERROR -Q mailing,tools,statistics,parsing,ocr -n mayan-worker-slow.%%h ${MAYAN_WORKER_SLOW_CONCURRENCY}"
|
||||
command = nice -n 19 /bin/bash -c "cd ${MAYAN_PYTHON_DIR}; python ${MAYAN_BIN} celery --settings=${MAYAN_SETTINGS_MODULE} worker -Ofair -l ERROR -Q mailing,tools,statistics,parsing,ocr -n mayan-worker-slow.%%h --concurrency=1"
|
||||
killasgroup = true
|
||||
numprocs = 1
|
||||
priority = 998
|
||||
@@ -67,7 +67,7 @@ user = mayan
|
||||
[program:mayan-celery-beat]
|
||||
autorestart = false
|
||||
autostart = true
|
||||
command = nice -n 1 /bin/bash -c "${MAYAN_BIN} celery --settings=${MAYAN_SETTINGS_MODULE} beat --pidfile= -l ERROR"
|
||||
command = nice -n 1 /bin/bash -c "cd ${MAYAN_PYTHON_DIR}; python ${MAYAN_BIN} celery --settings=${MAYAN_SETTINGS_MODULE} beat --pidfile= -l ERROR"
|
||||
killasgroup = true
|
||||
numprocs = 1
|
||||
priority = 998
|
||||
|
||||
@@ -14,8 +14,6 @@ services:
|
||||
POSTGRES_DB: mayan
|
||||
POSTGRES_PASSWORD: mayan-password
|
||||
POSTGRES_USER: mayan
|
||||
volumes:
|
||||
- db:/var/lib/postgresql/data
|
||||
|
||||
app:
|
||||
image: mayanedms/mayanedms:latest
|
||||
@@ -27,6 +25,6 @@ services:
|
||||
MAYAN_DATABASE_NAME: mayan
|
||||
MAYAN_DATABASE_PASSWORD: mayan-password
|
||||
MAYAN_DATABASE_USER: mayan
|
||||
MAYAN_DATABASE_CONN_MAX_AGE: 60
|
||||
volumes:
|
||||
- app:/var/lib/mayan
|
||||
|
||||
|
||||
@@ -1 +1 @@
|
||||
3.1.10
|
||||
3.0rc1
|
||||
|
||||
@@ -1,102 +0,0 @@
|
||||
***
|
||||
API
|
||||
***
|
||||
|
||||
Mayan EDMS provides an HTTP REST Application Program Interface (or API). This
|
||||
API allows integration with 3rd party software using simple HTTP requests.
|
||||
|
||||
Several API authentication methods are provides: **Session**, **Token**,
|
||||
and **HTTP Basic**.
|
||||
|
||||
The URL for the API can be found via the :menuselection:`Tools --> REST API
|
||||
menu. The API is also self-documenting. The live API documentation can be
|
||||
found in the :menuselection:`Tools --> API Documentation (Swagger)` menu for
|
||||
the Swagger version and in the
|
||||
:menuselection:`Tools --> API Documentation (ReDoc)` menu for the ReDoc version.
|
||||
|
||||
The are a few ways to structure REST APIs. In the case of Mayan EDMS, API
|
||||
endpoints are structured by resource type. Examples:
|
||||
|
||||
* /cabinets - To view or create new cabinets
|
||||
* /cabinets/<id> - To view the details, edit, or delete an existing cabinet.
|
||||
* /cabinets/<id>/documents - To view, add, or remove documents from an existing
|
||||
cabinet.
|
||||
* /cabinets/<id>/documents/<id> - To view, add, or remove one document from an
|
||||
existing cabinet.
|
||||
|
||||
The API supports the HTTP verbs: **GET**, **POST**, **PUT**, **PATCH**,
|
||||
and **DELETE**.
|
||||
|
||||
|
||||
Example use
|
||||
===========
|
||||
|
||||
Install Python Requests (http://docs.python-requests.org/en/master/)::
|
||||
|
||||
pip install requests
|
||||
|
||||
Get a list of document types::
|
||||
|
||||
import requests
|
||||
|
||||
requests.get('http://127.0.0.1:8000/api/document_types/', auth=('username', 'password')).json()
|
||||
|
||||
{u'count': 1,
|
||||
u'next': None,
|
||||
u'previous': None,
|
||||
u'results': [{u'delete_time_period': 30,
|
||||
u'delete_time_unit': u'days',
|
||||
u'documents_count': 12,
|
||||
u'documents_url': u'http://127.0.0.1:8000/api/document_types/1/documents/',
|
||||
u'filenames': [],
|
||||
u'id': 1,
|
||||
u'label': u'Default',
|
||||
u'trash_time_period': None,
|
||||
u'trash_time_unit': None,
|
||||
u'url': u'http://127.0.0.1:8000/api/document_types/1/'}]}
|
||||
|
||||
Upload a new document::
|
||||
|
||||
with open('test_document.pdf', mode='rb') as
|
||||
requests.post('http://127.0.0.1:8000/api/documents/', auth=('username', 'password'), files={'file': file_object}, data={'document_type': 1}).json()
|
||||
|
||||
{u'description': u'',
|
||||
u'document_type': 1,
|
||||
u'id': 19,
|
||||
u'label': u'test_document.pdf',
|
||||
u'language': u'eng'}
|
||||
|
||||
Use API tokens to avoid sending the username and password on every request. Obtain a token by making a POST request to ``/api/auth/token/obtain/?format=json``::
|
||||
|
||||
requests.post('http://127.0.0.1:8000/api/auth/token/obtain/?format=json', data={'username': 'username', 'password': 'password'}).json()
|
||||
|
||||
{u'token': u'4ccbc35b5eb327aa82dc3b7c9747b578900f02bb'}
|
||||
|
||||
Add the API token to the request header::
|
||||
|
||||
headers = {'Authorization': 'Token 4ccbc35b5eb327aa82dc3b7c9747b578900f02bb'}
|
||||
|
||||
requests.get('http://127.0.0.1:8000/api/document_types/', headers=headers).json()
|
||||
|
||||
{u'description': u'',
|
||||
u'document_type': 1,
|
||||
u'id': 19,
|
||||
u'label': u'test_document.pdf',
|
||||
u'language': u'eng'}
|
||||
|
||||
|
||||
Use sessions to avoid having to add the headers on each request::
|
||||
|
||||
session = requests.Session()
|
||||
|
||||
headers = {'Authorization': 'Token 4ccbc35b5eb327aa82dc3b7c9747b578900f02bb'}
|
||||
|
||||
session.headers.update(headers)
|
||||
|
||||
session.get('http://127.0.0.1:8000/api/document_types/')
|
||||
|
||||
{u'description': u'',
|
||||
u'document_type': 1,
|
||||
u'id': 19,
|
||||
u'label': u'test_document.pdf',
|
||||
u'language': u'eng'}
|
||||
@@ -1,14 +0,0 @@
|
||||
Cabinets
|
||||
========
|
||||
|
||||
Cabinets are a multi-level method to organize documents. Each cabinet can
|
||||
contain documents as well as other sub level cabinets. Cabinets can
|
||||
be added from the :menuselection:`Cabinets --> Add new` menu.
|
||||
|
||||
With a cabinet structure created, the next step is to add documents to them.
|
||||
To add documents to a cabinet, select the cabinet tab of a document, and
|
||||
select :menuselection:`Actions --> Add to cabinets` link.
|
||||
|
||||
Documents can also be added in bulk to one or more cabinets from any view
|
||||
that lists documents.
|
||||
|
||||
@@ -1,103 +0,0 @@
|
||||
*******************
|
||||
Database conversion
|
||||
*******************
|
||||
|
||||
Version 3.1.x added a new management command to help convert data residing in
|
||||
an SQLite database to other database managers like PostgreSQL. Here is the
|
||||
conversion procedure.
|
||||
|
||||
Direct install
|
||||
==============
|
||||
|
||||
* Make a backup of your existing SQLite database and documents by copying the
|
||||
``/opt/mayan-edms/media`` folder.
|
||||
* :doc:`Upgrade to at least version 3.1.3. <../releases/3.1.3>`
|
||||
* Migrate the existing SQLite database with the command ``performupgrade``::
|
||||
|
||||
sudo -u mayan MAYAN_MEDIA_ROOT=/opt/mayan-edms/media /opt/mayan-edms/bin/mayan-edms.py performupgrade
|
||||
|
||||
* Install PostgreSQL::
|
||||
|
||||
sudo apt-get install postgresql libpq-dev
|
||||
|
||||
* Provision a PostgreSQL database::
|
||||
|
||||
sudo -u postgres psql -c "CREATE USER mayan WITH password 'mayanuserpass';"
|
||||
sudo -u postgres createdb -O mayan mayan
|
||||
|
||||
* Install the Python client for PostgreSQL::
|
||||
|
||||
sudo -u mayan /opt/mayan-edms/bin/pip install --no-cache-dir --no-use-pep517 psycopg2==2.7.3.2
|
||||
|
||||
* Copy the newly created fallback config file::
|
||||
|
||||
cp /opt/mayan-edms/media/config_backup.yml /opt/mayan-edms/media/config.yml
|
||||
|
||||
* Edit the configuration file to add the entry for the PostgreSQL database and
|
||||
rename the SQLite database to 'old'::
|
||||
|
||||
# Before
|
||||
DATABASES:
|
||||
default:
|
||||
ATOMIC_REQUESTS: false
|
||||
AUTOCOMMIT: true
|
||||
CONN_MAX_AGE: 0
|
||||
ENGINE: django.db.backends.sqlite3
|
||||
HOST: ''
|
||||
NAME: /opt/mayan-edms/media/db.sqlite3
|
||||
OPTIONS: {}
|
||||
PASSWORD: ''
|
||||
PORT: ''
|
||||
TEST: {CHARSET: null, COLLATION: null, MIRROR: null, NAME: null}
|
||||
TIME_ZONE: null
|
||||
USER: ''
|
||||
|
||||
# After
|
||||
DATABASES:
|
||||
old:
|
||||
ATOMIC_REQUESTS: false
|
||||
AUTOCOMMIT: true
|
||||
CONN_MAX_AGE: 0
|
||||
ENGINE: django.db.backends.sqlite3
|
||||
HOST: ''
|
||||
NAME: /opt/mayan-edms/media/db.sqlite3
|
||||
OPTIONS: {}
|
||||
PASSWORD: ''
|
||||
PORT: ''
|
||||
TEST: {CHARSET: null, COLLATION: null, MIRROR: null, NAME: null}
|
||||
TIME_ZONE: null
|
||||
USER: ''
|
||||
default:
|
||||
ATOMIC_REQUESTS: false
|
||||
AUTOCOMMIT: true
|
||||
CONN_MAX_AGE: 0
|
||||
ENGINE: django.db.backends.postgresql
|
||||
HOST: '127.0.0.1'
|
||||
NAME: /opt/mayan-edms/media/db.sqlite3
|
||||
OPTIONS: {}
|
||||
PASSWORD: 'mayanuserpass'
|
||||
PORT: ''
|
||||
TEST: {CHARSET: null, COLLATION: null, MIRROR: null, NAME: null}
|
||||
TIME_ZONE: null
|
||||
USER: 'mayan'
|
||||
|
||||
* Migrate the new database to create the empty tables::
|
||||
|
||||
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 migrate
|
||||
|
||||
* Convert the data in the SQLite and store it in the PostgreSQL database::
|
||||
|
||||
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 convertdb --from=old --to=default --force
|
||||
|
||||
* Update the supervisor config file to have Mayan EDMS run from the PostgreSQL database::
|
||||
|
||||
[supervisord]
|
||||
environment=
|
||||
<...>
|
||||
MAYAN_DATABASE_ENGINE=django.db.backends.postgresql,
|
||||
MAYAN_DATABASE_HOST=127.0.0.1,
|
||||
MAYAN_DATABASE_NAME=mayan,
|
||||
MAYAN_DATABASE_PASSWORD=mayanuserpass,
|
||||
MAYAN_DATABASE_USER=mayan,
|
||||
MAYAN_DATABASE_CONN_MAX_AGE=360,
|
||||
<...>
|
||||
@@ -1,356 +0,0 @@
|
||||
******************
|
||||
Direct deployments
|
||||
******************
|
||||
|
||||
Mayan EDMS should be deployed like any other Django_ project and
|
||||
preferably using virtualenv_. Below are some ways to deploy and use Mayan EDMS.
|
||||
Do not use more than one method.
|
||||
|
||||
Being a Django_ and a Python_ project, familiarity with these technologies is
|
||||
recommended to better understand why Mayan EDMS does some of the things it
|
||||
does.
|
||||
|
||||
|
||||
Basic deployment
|
||||
================
|
||||
This setup uses less memory and CPU resources at the expense of some speed.
|
||||
|
||||
Binary dependencies
|
||||
-------------------
|
||||
|
||||
If using a Debian_ or Ubuntu_ based Linux distribution, get the executable
|
||||
requirements using::
|
||||
|
||||
sudo apt-get install g++ gcc ghostscript gnupg1 graphviz libfuse2 \
|
||||
libjpeg-dev libmagic1 libpq-dev libpng-dev libreoffice libtiff-dev \
|
||||
poppler-utils postgresql python-dev python-virtualenv redis-server \
|
||||
sane-utils supervisor tesseract-ocr zlib1g-dev -y
|
||||
|
||||
Create an user account for the installation:
|
||||
--------------------------------------------
|
||||
::
|
||||
|
||||
sudo adduser mayan --disabled-password --disabled-login --no-create-home --gecos ""
|
||||
|
||||
Create the parent directory where the project will be deployed:
|
||||
---------------------------------------------------------------
|
||||
::
|
||||
|
||||
sudo mkdir /opt
|
||||
|
||||
Create the Python virtual environment for the installation:
|
||||
-----------------------------------------------------------
|
||||
::
|
||||
|
||||
sudo virtualenv /opt/mayan-edms
|
||||
|
||||
Make the mayan user the owner of the installation directory:
|
||||
------------------------------------------------------------
|
||||
::
|
||||
|
||||
sudo chown mayan:mayan /opt/mayan-edms -R
|
||||
|
||||
Install Mayan EDMS from PyPI:
|
||||
-----------------------------
|
||||
::
|
||||
|
||||
sudo -u mayan /opt/mayan-edms/bin/pip install --no-cache-dir --no-use-pep517 mayan-edms
|
||||
|
||||
Install the Python client for PostgreSQL and Redis:
|
||||
---------------------------------------------------
|
||||
::
|
||||
|
||||
sudo -u mayan /opt/mayan-edms/bin/pip install --no-cache-dir --no-use-pep517 psycopg2==2.7.3.2 redis==2.10.6
|
||||
|
||||
Create the database for the installation:
|
||||
-----------------------------------------
|
||||
::
|
||||
|
||||
sudo -u postgres psql -c "CREATE USER mayan WITH password 'mayanuserpass';"
|
||||
sudo -u postgres createdb -O mayan mayan
|
||||
|
||||
Initialize the project:
|
||||
-----------------------
|
||||
::
|
||||
|
||||
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 initialsetup
|
||||
|
||||
Collect the static files:
|
||||
-------------------------
|
||||
::
|
||||
|
||||
sudo -u mayan MAYAN_MEDIA_ROOT=/opt/mayan-edms/media \
|
||||
/opt/mayan-edms/bin/mayan-edms.py collectstatic --noinput
|
||||
|
||||
Create the supervisor file at ``/etc/supervisor/conf.d/mayan.conf``:
|
||||
--------------------------------------------------------------------
|
||||
::
|
||||
|
||||
[supervisord]
|
||||
environment=
|
||||
MAYAN_ALLOWED_HOSTS='["*"]', # Allow access to other network hosts other than localhost
|
||||
MAYAN_CELERY_RESULT_BACKEND="redis://127.0.0.1:6379/0",
|
||||
MAYAN_BROKER_URL="redis://127.0.0.1:6379/0",
|
||||
PYTHONPATH=/opt/mayan-edms/lib/python2.7/site-packages:/opt/mayan-edms/data,
|
||||
MAYAN_MEDIA_ROOT=/opt/mayan-edms/media,
|
||||
MAYAN_DATABASE_ENGINE=django.db.backends.postgresql,
|
||||
MAYAN_DATABASE_HOST=127.0.0.1,
|
||||
MAYAN_DATABASE_NAME=mayan,
|
||||
MAYAN_DATABASE_PASSWORD=mayanuserpass,
|
||||
MAYAN_DATABASE_USER=mayan,
|
||||
MAYAN_DATABASE_CONN_MAX_AGE=60,
|
||||
DJANGO_SETTINGS_MODULE=mayan.settings.production
|
||||
|
||||
[program:mayan-gunicorn]
|
||||
autorestart = true
|
||||
autostart = true
|
||||
command = /opt/mayan-edms/bin/gunicorn -w 2 mayan.wsgi --max-requests 500 --max-requests-jitter 50 --worker-class gevent --bind 0.0.0.0:8000 --timeout 120
|
||||
user = mayan
|
||||
|
||||
[program:mayan-worker-fast]
|
||||
autorestart = true
|
||||
autostart = true
|
||||
command = nice -n 1 /opt/mayan-edms/bin/mayan-edms.py celery worker -Ofair -l ERROR -Q converter,sources_fast -n mayan-worker-fast.%%h --concurrency=1
|
||||
killasgroup = true
|
||||
numprocs = 1
|
||||
priority = 998
|
||||
startsecs = 10
|
||||
stopwaitsecs = 1
|
||||
user = mayan
|
||||
|
||||
[program:mayan-worker-medium]
|
||||
autorestart = true
|
||||
autostart = true
|
||||
command = nice -n 18 /opt/mayan-edms/bin/mayan-edms.py celery worker -Ofair -l ERROR -Q checkouts_periodic,documents_periodic,indexing,metadata,sources,sources_periodic,uploads,documents -n mayan-worker-medium.%%h --concurrency=1
|
||||
killasgroup = true
|
||||
numprocs = 1
|
||||
priority = 998
|
||||
startsecs = 10
|
||||
stopwaitsecs = 1
|
||||
user = mayan
|
||||
|
||||
[program:mayan-worker-slow]
|
||||
autorestart = true
|
||||
autostart = true
|
||||
command = nice -n 19 /opt/mayan-edms/bin/mayan-edms.py celery worker -Ofair -l ERROR -Q mailing,tools,statistics,parsing,ocr -n mayan-worker-slow.%%h --concurrency=1
|
||||
killasgroup = true
|
||||
numprocs = 1
|
||||
priority = 998
|
||||
startsecs = 10
|
||||
stopwaitsecs = 1
|
||||
user = mayan
|
||||
|
||||
[program:mayan-celery-beat]
|
||||
autorestart = true
|
||||
autostart = true
|
||||
command = nice -n 1 /opt/mayan-edms/bin/mayan-edms.py celery beat --pidfile= -l ERROR
|
||||
killasgroup = true
|
||||
numprocs = 1
|
||||
priority = 998
|
||||
startsecs = 10
|
||||
stopwaitsecs = 1
|
||||
user = mayan
|
||||
|
||||
Configure Redis to discard data when it runs out of memory, not save its database and only keep 1 database:
|
||||
-----------------------------------------------------------------------------------------------------------
|
||||
::
|
||||
|
||||
echo "maxmemory-policy allkeys-lru" >> /etc/redis/redis.conf
|
||||
echo "save \"\"" >> /etc/redis/redis.conf
|
||||
echo "databases 1" >> /etc/redis/redis.conf
|
||||
systemctl restart redis
|
||||
|
||||
Enable and restart the services [1_]:
|
||||
-------------------------------------
|
||||
::
|
||||
|
||||
systemctl enable supervisor
|
||||
systemctl restart supervisor
|
||||
|
||||
|
||||
.. _deployment_advanced:
|
||||
|
||||
Advanced deployment
|
||||
===================
|
||||
|
||||
This variation uses RabbitMQ as the message broker and removes the fast worker
|
||||
concurrency restriction. RabbitMQ consumes more memory but scales to thousands
|
||||
of messages. RabbitMQ messages are also persistent, this means that pending
|
||||
tasks are not lost in the case of a restart. The database connection lifetime
|
||||
is increased to 10 minutes. The Gunicorn workers are increased to 3.
|
||||
|
||||
Binary dependencies
|
||||
-------------------
|
||||
|
||||
If using a Debian_ or Ubuntu_ based Linux distribution, get the executable
|
||||
requirements using::
|
||||
|
||||
sudo apt-get install g++ gcc ghostscript gnupg1 graphviz libfuse2 \
|
||||
libjpeg-dev libmagic1 libpq-dev libpng-dev libreoffice libtiff-dev \
|
||||
poppler-utils postgresql python-dev python-virtualenv rabbitmq-server \
|
||||
redis-server sane-utils supervisor tesseract-ocr zlib1g-dev -y
|
||||
|
||||
Create an user account for the installation:
|
||||
--------------------------------------------
|
||||
::
|
||||
|
||||
sudo adduser mayan --disabled-password --disabled-login --no-create-home --gecos ""
|
||||
|
||||
Create the parent directory where the project will be deployed:
|
||||
---------------------------------------------------------------
|
||||
::
|
||||
|
||||
sudo mkdir /opt
|
||||
|
||||
Create the Python virtual environment for the installation:
|
||||
-----------------------------------------------------------
|
||||
::
|
||||
|
||||
sudo virtualenv /opt/mayan-edms
|
||||
|
||||
Make the mayan user the owner of the installation directory:
|
||||
------------------------------------------------------------
|
||||
::
|
||||
|
||||
sudo chown mayan:mayan /opt/mayan-edms -R
|
||||
|
||||
Install Mayan EDMS from PyPI:
|
||||
-----------------------------
|
||||
::
|
||||
|
||||
sudo -u mayan /opt/mayan-edms/bin/pip install --no-cache-dir --no-use-pep517 mayan-edms
|
||||
|
||||
Install the Python client for PostgreSQL and Redis:
|
||||
---------------------------------------------------
|
||||
::
|
||||
|
||||
sudo -u mayan /opt/mayan-edms/bin/pip install --no-cache-dir --no-use-pep517 librabbitmq==2.0.0 psycopg2==2.7.3.2 redis==2.10.6
|
||||
|
||||
Create the database for the installation:
|
||||
-----------------------------------------
|
||||
::
|
||||
|
||||
sudo -u postgres psql -c "CREATE USER mayan WITH password 'mayanuserpass';"
|
||||
sudo -u postgres createdb -O mayan mayan
|
||||
|
||||
Initialize the project:
|
||||
-----------------------
|
||||
::
|
||||
|
||||
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 initialsetup
|
||||
|
||||
Collect the static files:
|
||||
-------------------------
|
||||
::
|
||||
|
||||
sudo -u mayan MAYAN_MEDIA_ROOT=/opt/mayan-edms/media \
|
||||
/opt/mayan-edms/bin/mayan-edms.py collectstatic --noinput
|
||||
|
||||
Create the RabbitMQ user and vhost:
|
||||
-----------------------------------
|
||||
::
|
||||
|
||||
sudo rabbitmqctl add_user mayan mayanrabbitmqpassword
|
||||
sudo rabbitmqctl add_vhost mayan
|
||||
sudo rabbitmqctl set_permissions -p mayan mayan ".*" ".*" ".*"
|
||||
|
||||
Create the supervisor file at ``/etc/supervisor/conf.d/mayan.conf``:
|
||||
--------------------------------------------------------------------
|
||||
::
|
||||
|
||||
[supervisord]
|
||||
environment=
|
||||
MAYAN_ALLOWED_HOSTS='["*"]', # Allow access to other network hosts other than localhost
|
||||
MAYAN_CELERY_RESULT_BACKEND="redis://127.0.0.1:6379/0",
|
||||
MAYAN_BROKER_URL="amqp://mayan:mayanrabbitmqpassword@localhost:5672/mayan",
|
||||
PYTHONPATH=/opt/mayan-edms/lib/python2.7/site-packages:/opt/mayan-edms/data,
|
||||
MAYAN_MEDIA_ROOT=/opt/mayan-edms/media,
|
||||
MAYAN_DATABASE_ENGINE=django.db.backends.postgresql,
|
||||
MAYAN_DATABASE_HOST=127.0.0.1,
|
||||
MAYAN_DATABASE_NAME=mayan,
|
||||
MAYAN_DATABASE_PASSWORD=mayanuserpass,
|
||||
MAYAN_DATABASE_USER=mayan,
|
||||
MAYAN_DATABASE_CONN_MAX_AGE=360,
|
||||
DJANGO_SETTINGS_MODULE=mayan.settings.production
|
||||
|
||||
[program:mayan-gunicorn]
|
||||
autorestart = true
|
||||
autostart = true
|
||||
command = /opt/mayan-edms/bin/gunicorn -w 3 mayan.wsgi --max-requests 500 --max-requests-jitter 50 --worker-class gevent --bind 0.0.0.0:8000 --timeout 120
|
||||
user = mayan
|
||||
|
||||
[program:mayan-worker-fast]
|
||||
autorestart = true
|
||||
autostart = true
|
||||
command = nice -n 1 /opt/mayan-edms/bin/mayan-edms.py celery worker -Ofair -l ERROR -Q converter,sources_fast -n mayan-worker-fast.%%h
|
||||
killasgroup = true
|
||||
numprocs = 1
|
||||
priority = 998
|
||||
startsecs = 10
|
||||
stopwaitsecs = 1
|
||||
user = mayan
|
||||
|
||||
[program:mayan-worker-medium]
|
||||
autorestart = true
|
||||
autostart = true
|
||||
command = nice -n 18 /opt/mayan-edms/bin/mayan-edms.py celery worker -Ofair -l ERROR -Q checkouts_periodic,documents_periodic,indexing,metadata,sources,sources_periodic,uploads,documents -n mayan-worker-medium.%%h --concurrency=1
|
||||
killasgroup = true
|
||||
numprocs = 1
|
||||
priority = 998
|
||||
startsecs = 10
|
||||
stopwaitsecs = 1
|
||||
user = mayan
|
||||
|
||||
[program:mayan-worker-slow]
|
||||
autorestart = true
|
||||
autostart = true
|
||||
command = nice -n 19 /opt/mayan-edms/bin/mayan-edms.py celery worker -Ofair -l ERROR -Q mailing,tools,statistics,parsing,ocr -n mayan-worker-slow.%%h --concurrency=1
|
||||
killasgroup = true
|
||||
numprocs = 1
|
||||
priority = 998
|
||||
startsecs = 10
|
||||
stopwaitsecs = 1
|
||||
user = mayan
|
||||
|
||||
[program:mayan-celery-beat]
|
||||
autorestart = true
|
||||
autostart = true
|
||||
command = nice -n 1 /opt/mayan-edms/bin/mayan-edms.py celery beat --pidfile= -l ERROR
|
||||
killasgroup = true
|
||||
numprocs = 1
|
||||
priority = 998
|
||||
startsecs = 10
|
||||
stopwaitsecs = 1
|
||||
user = mayan
|
||||
|
||||
Configure Redis to discard data when it runs out of memory, not save its database and only keep 1 database:
|
||||
-----------------------------------------------------------------------------------------------------------
|
||||
::
|
||||
|
||||
echo "maxmemory-policy allkeys-lru" >> /etc/redis/redis.conf
|
||||
echo "save \"\"" >> /etc/redis/redis.conf
|
||||
echo "databases 1" >> /etc/redis/redis.conf
|
||||
systemctl restart redis
|
||||
|
||||
Enable and restart the services [1_]:
|
||||
-------------------------------------
|
||||
::
|
||||
|
||||
systemctl enable supervisor
|
||||
systemctl restart supervisor
|
||||
|
||||
[1]: https://bugs.launchpad.net/ubuntu/+source/supervisor/+bug/1594740
|
||||
|
||||
.. _Debian: https://www.debian.org/
|
||||
.. _Django: https://www.djangoproject.com/
|
||||
.. _Python: https://www.python.org/
|
||||
.. _SQLite: https://www.sqlite.org/
|
||||
.. _Ubuntu: http://www.ubuntu.com/
|
||||
.. _virtualenv: http://www.virtualenv.org/en/latest/index.html
|
||||
.. _1: https://bugs.launchpad.net/ubuntu/+source/supervisor/+bug/1594740
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,115 +0,0 @@
|
||||
|
||||
Index examples
|
||||
--------------
|
||||
|
||||
Index of document types
|
||||
^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
This index will create one level for each document type in the system and place
|
||||
links to the document of each respective type.
|
||||
|
||||
#. Go to the :menuselection:`System --> Setup --> Indexes` menu.
|
||||
#. Create a new index using :menuselection:`Actions --> Create new`.
|
||||
#. Give it a label to describe it, and an internal name. The internal name is
|
||||
used when referencing this index in other parts of the system.
|
||||
#. Press the :menuselection:`Template` link of the newly created index.
|
||||
#. Select :menuselection:`New child node` to create a new level in which the
|
||||
following template code will be entered.
|
||||
::
|
||||
|
||||
{{ document.document_type }}
|
||||
|
||||
#. Save the template.
|
||||
#. Go to :menuselection:`Document types` and associate this index with
|
||||
existing document types in the system.
|
||||
#. Finally go to :menuselection:`Tools --> Rebuild indexes` to execute the
|
||||
index template. The rebuild process is only necessary when changes are
|
||||
made to the index templates. Otherwise they update automatically whenever
|
||||
a new document is uploaded or existing documents properties are modified.
|
||||
#. A new index should appear under :menuselection:`Indexes` menu.
|
||||
|
||||
You can also program different behavior based on the different document types,
|
||||
by use a comparison and a conditional statement. As the document_type itself
|
||||
is not a string you cannot directly use that for that comparison. You will have
|
||||
to use the label of the document type.
|
||||
|
||||
For example::
|
||||
|
||||
{% if document.document_type.label == "Invoice" or document.document_type.label == "Letter" %}
|
||||
Correspondence
|
||||
{% else %}
|
||||
{{ document.document_type }}
|
||||
{% endif %}
|
||||
|
||||
This will create and index level for each document type. Except for documents
|
||||
of types "Invoice" and "Letter", these will now go into the level "Correspondence".
|
||||
|
||||
|
||||
Index document by department, taken from the first character of the invoice number metadata
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Requires one index node with the template::
|
||||
|
||||
{% if document.metadata_value_of.invoice_number.0 == "A" %}Accounting
|
||||
{% if document.metadata_value_of.invoice_number.0 == "H" %}Human Resources
|
||||
{% endif %}
|
||||
|
||||
|
||||
Nested date index from a date contained in a metadata
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Assuming the metadata type is named **date_issued** with a date format
|
||||
of YYYY-MM-DD. The target is to have two levels: one for years and another
|
||||
sub level for months.
|
||||
|
||||
**First level: Year**
|
||||
::
|
||||
|
||||
{{ document.metadata_value_of.date_issued|slice:"0:4" }}
|
||||
|
||||
|
||||
**Second level: Months**
|
||||
::
|
||||
|
||||
{{ document.metadata_value_of.date_issued|slice:"5:7" }}
|
||||
|
||||
|
||||
**Optional: Third level: Day**
|
||||
::
|
||||
|
||||
{{ document.metadata_value_of.date_issued|slice:"8:10" }}
|
||||
|
||||
|
||||
Index by OCR content
|
||||
^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
This example indexes documents in a "quarterly report" level if they have the
|
||||
fragment “quarterly report” in the OCR text::
|
||||
|
||||
{% if "quarterly report" in document.latest_version.ocr_content|join:" "|lower %}Quarterly reports{% endif %}
|
||||
|
||||
The same applies to text content extracted for the document::
|
||||
|
||||
{% if "quarterly report" in document.latest_version.content|join:" "|lower %}Quarterly reports{% endif %}
|
||||
|
||||
|
||||
|
||||
Index documents not found in any cabinet
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
::
|
||||
|
||||
{% if document.cabinets.count == 0 %}No Cabinets{% endif %}
|
||||
|
||||
|
||||
Index untagged documents
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
::
|
||||
|
||||
{% if document.tags.count == 0 %}No Tags{% endif %}
|
||||
|
||||
|
||||
Index documents specifically, by the year of a metadata field otherwise by their uploaded year
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
::
|
||||
|
||||
{% for tag in document.tags.all %}{% if tag.label == "Taxes" %}{% if document.metadata_value_of.tax_year|length_is:"4" %}{{ document.metadata_value_of.tax_year }}{% else %}{{ document.date_added|date:"Y" }}{% endif %}{% endif %}{% endfor %}
|
||||
@@ -1,36 +0,0 @@
|
||||
*********
|
||||
Languages
|
||||
*********
|
||||
|
||||
The list of languages choices in the language dropdown used for documents is
|
||||
based on the current ISO 639 list. This list can be quite extensive. To reduce
|
||||
the number of languages available use the setting ``DOCUMENTS_LANGUAGE_CODES``,
|
||||
and set it to a nested list of abbreviations. This setting can be found in the
|
||||
:menuselection:`System --> Setup -> Settings -> Common` menu.
|
||||
|
||||
For example, to reduce the list to just English and Spanish use
|
||||
::
|
||||
|
||||
DOCUMENTS_LANGUAGE_CODES = ('eng', 'spa')
|
||||
|
||||
|
||||
The default language to appear on the dropdown can also be configured using::
|
||||
|
||||
DOCUMENTS_LANGUAGE = 'spa'
|
||||
|
||||
Use the correct ISO 639-3 language abbreviation (https://en.wikipedia.org/wiki/ISO_639)
|
||||
as this code is used in several subsystems in Mayan EDMS such as the OCR app
|
||||
to determine how to interpret the document.
|
||||
|
||||
If using the Docker image, these settings can also be passed to the container
|
||||
as environment variables by prepending the ``MAYAN_`` suffix.
|
||||
|
||||
Example::
|
||||
|
||||
-e MAYAN_DOCUMENTS_LANGUAGE_CODES='["eng", "spa"]'
|
||||
|
||||
For more information check out the
|
||||
:ref:`environment variables <environment_variables>` chapter of the
|
||||
:doc:`../topics/settings` topic.
|
||||
|
||||
|
||||
@@ -1,22 +0,0 @@
|
||||
*****************
|
||||
Mailing documents
|
||||
*****************
|
||||
|
||||
Sending emails in Mayan EDMS is controlled by two different system depending on
|
||||
the type of email being sent. These are administrative emails like password
|
||||
reset emails and user emails sent from the application. To configure
|
||||
administrative email for things like password reset check the topic:
|
||||
:doc:`../topics/administration`
|
||||
|
||||
Application emails
|
||||
==================
|
||||
|
||||
To allow users to send emails or documents from within the web interface,
|
||||
Mayan EDMS provides its our own email system called Mailing Profiles.
|
||||
Mailing Profiles support access control per user role and can use different
|
||||
email backends. Mailing Profiles are created from the
|
||||
:menuselection:`System --> Setup` menu.
|
||||
|
||||
Once created mailing profiles allow users to send email messages from
|
||||
within the user interface containing either an URL link to the document or
|
||||
the actual document as an attachment.
|
||||
@@ -1,31 +0,0 @@
|
||||
**************
|
||||
Object storage
|
||||
**************
|
||||
|
||||
It is possible to use object storage instead of the default filesystem based
|
||||
storage. One such object storage system is Amazon S3 (Simple Storage Service)
|
||||
API compatible object storage. The following steps will configure Mayan EDMS
|
||||
to use a S3 style storage for documents.
|
||||
|
||||
1. Install the django-storages and boto3 Python libraries.
|
||||
|
||||
* For the direct deployment method of installation use::
|
||||
|
||||
pip install django-storages boto3
|
||||
|
||||
|
||||
* or if using the Docker image, add the following the command line that runs the container::
|
||||
|
||||
-e MAYAN_PIP_INSTALLS='django-storages boto3'
|
||||
|
||||
|
||||
2. From the web interface navigate to the :menuselection:`System --> Setup --> Setting --> Documents` menu.
|
||||
3. Locate the **DOCUMENTS_STORAGE_BACKEND** setting, press **Edit** and enter::
|
||||
|
||||
storages.backends.s3boto3.S3Boto3Storage
|
||||
|
||||
4. Save and locate the setting **DOCUMENTS_STORAGE_BACKEND_ARGUMENTS**, press **Edit** and enter::
|
||||
|
||||
'{access_key: <your S3 access key>, secret_key: <your S3 secret key>, bucket_name: <S3 bucket name>}'
|
||||
|
||||
5. Save and restart your Mayan EDMS installation for the setting to take effect.
|
||||
@@ -1,38 +0,0 @@
|
||||
**************
|
||||
Password reset
|
||||
**************
|
||||
|
||||
To use the password reset feature, administrative emails need to be configured.
|
||||
These are sent by the system itself and not by the users. Their usage and
|
||||
configuration is different than the
|
||||
:doc:`email system used to share documents via email<../chapters/mailing>`.
|
||||
|
||||
Sending administrative emails
|
||||
=============================
|
||||
|
||||
To be able to send password reset emails configure the Django email settings
|
||||
via the :ref:`configuration file <configuration_file>`.
|
||||
|
||||
Example::
|
||||
|
||||
EMAIL_BACKEND: django.core.mail.backends.smtp.EmailBackend
|
||||
EMAIL_HOST: '<your smtp ip address or hostname>'
|
||||
EMAIL_HOST_PASSWORD: '<your smtp password>'
|
||||
EMAIL_HOST_USER: '<your smtp username>'
|
||||
EMAIL_PORT: 25 # or 587 or your server's SMTP port
|
||||
EMAIL_TIMEOUT:
|
||||
EMAIL_USE_SSL: true
|
||||
EMAIL_USE_TLS: false
|
||||
|
||||
To change the reference URL in the password reset emails on in the
|
||||
default document mailing template modify the ``COMMON_PROJECT_URL`` setting.
|
||||
For information on the different ways to change a setting check the
|
||||
:doc:`../topics/settings` topic.
|
||||
|
||||
To test the email settings use the management command ``sendtestemail``.
|
||||
Example::
|
||||
|
||||
mayan-edms.py sendtestemail myself@example.com
|
||||
|
||||
|
||||
|
||||
@@ -1,171 +0,0 @@
|
||||
**********
|
||||
Scaling up
|
||||
**********
|
||||
|
||||
The default installation method fits most use cases. If you use case requires
|
||||
more speed or capacity here are some suggestion that can help you improve the
|
||||
performance of your installation.
|
||||
|
||||
Change the database manager
|
||||
===========================
|
||||
Use PostgreSQL or MySQL as the database manager.
|
||||
Tweak the memory setting of the database manager to increase memory allocation.
|
||||
More PostgreSQL specific examples are available in their wiki page:
|
||||
https://wiki.postgresql.org/wiki/Performance_Optimization
|
||||
|
||||
Increase the number of Gunicorn workers
|
||||
=======================================
|
||||
The Gunicorn workers process HTTP requests and affect the speed at which the
|
||||
website responds.
|
||||
|
||||
If you are using the Docker image, change the value of the
|
||||
``MAYAN_GUNICORN_WORKERS`` environment variable (check the Docker image chapter:
|
||||
:ref:`docker_environment_variables`). Normally this variable defaults to 2.
|
||||
Increase this number to match the number of CPU cores + 1.
|
||||
|
||||
If you are using the direct deployment methods, change the line that reads::
|
||||
|
||||
command = /opt/mayan-edms/bin/gunicorn -w 2 mayan.wsgi --max-requests 500 --max-requests-jitter 50 --worker-class gevent --bind 0.0.0.0:8000 --timeout 120
|
||||
|
||||
And increase the value of the ``-w 2`` argument. This line is found in the
|
||||
``[program:mayan-gunicorn]`` section of the supervisor configuration file.
|
||||
|
||||
|
||||
Background task processing
|
||||
==========================
|
||||
The Celery workers are system processes that take care of the background
|
||||
tasks requested by the frontend interactions like document image rendering
|
||||
and periodic tasks like OCR. There are several dozen tasks defined in the code.
|
||||
These tasks are divided into queues based on the app of the relationship
|
||||
between the tasks. The queues by default are divided into three groups
|
||||
based on the speed at which they need to be processed. The document page
|
||||
image rendering for example is categorized as a high volume, short duration
|
||||
task. The OCR is a high volume, long duration task. Email checking is a
|
||||
low volume, medium duration tasks. It is not advisable to have the same
|
||||
worker processing OCR to process image rendering too. If the worker is
|
||||
processing several OCR tasks it will not be able to provide fast images
|
||||
when an user is browsing the user interface. This is why by default the
|
||||
queues are split into 3 workers: fast, medium, and slow.
|
||||
|
||||
The fast worker handles the queues:
|
||||
|
||||
* converter: Handles document page rendering
|
||||
* sources_fast: Does staging file image rendering
|
||||
|
||||
The medium worker handles the queues:
|
||||
|
||||
* checkouts_periodic: Scheduled tasks that check if a document's checkout
|
||||
period has expired
|
||||
* documents_periodic:
|
||||
* indexing: Does reindexing of documents in the background when their
|
||||
properties change
|
||||
* metadata:
|
||||
* sources:
|
||||
* sources_periodic: Checking email accounts and watch folders for new
|
||||
documents.
|
||||
* uploads: Processes files to turn the into Mayan documents. Processing
|
||||
encompasses MIME type detection, page count detection.
|
||||
* documents:
|
||||
|
||||
The slow worker handles the queues:
|
||||
|
||||
* mailing: Does the actual sending of documents via email as requested by
|
||||
users via the mailing profiles
|
||||
* tools: Executes in the background maintenance requests from the options
|
||||
in the tools menu
|
||||
* statistics: Recalculates statistics and charts
|
||||
* parsing: Parses documents to extract actual text content
|
||||
* ocr: Performs OCR to transcribe page images to text
|
||||
|
||||
Optimizations
|
||||
-------------
|
||||
|
||||
* Increase the number of workers and redistribute the queues among them
|
||||
(only possible with direct deployments).
|
||||
* Launch more workers to service a queue. For example for faster document
|
||||
image generation launch 2 workers to process the converter queue only
|
||||
possible with direct deployments).
|
||||
* By default each worker process uses 1 thread. You can increase the thread
|
||||
count of each worker process with the Docker environment options:
|
||||
|
||||
* MAYAN_WORKER_FAST_CONCURRENCY
|
||||
* MAYAN_WORKER_MEDIUM_CONCURRENCY
|
||||
* MAYAN_WORKER_SLOW_CONCURRENCY
|
||||
|
||||
* If using direct deployment, increase the value of the --concurrency=1
|
||||
argument of each worker in the supervisor file. You can also remove this
|
||||
argument and let the Celery algorithm choose the number of threads to
|
||||
launch. Usually this defaults to the number of CPU cores + 1.
|
||||
|
||||
Change the message broker
|
||||
=========================
|
||||
Messages are the method of communication between front end interactive code
|
||||
and background tasks. In this regard messages can be thought as homologous
|
||||
to tasks requests. Improving how many messages can be sent, stored and
|
||||
sorted will impact the number of tasks the system can handle. To save on
|
||||
memory, the basic deployment method and the Docker image default to using
|
||||
Redis as a message broker. To increase capacity and reduce volatility of
|
||||
messages (pending tasks are not lost during shutdown) use RabbitMQ to
|
||||
shuffle messages.
|
||||
|
||||
For direct installs refer to the :ref:`deployment_advanced` documentation
|
||||
section for the required changes.
|
||||
|
||||
For the Docker image, launch a separate RabbitMQ container
|
||||
(https://hub.docker.com/_/rabbitmq/)::
|
||||
|
||||
docker run -d --name mayan-edms-rabbitmq -e RABBITMQ_DEFAULT_USER=mayan -e RABBITMQ_DEFAULT_PASS=mayanrabbitmqpassword -e RABBITMQ_DEFAULT_VHOST=mayan rabbitmq:3
|
||||
|
||||
Pass the MAYAN_BROKER_URL environment variable (https://kombu.readthedocs.io/en/latest/userguide/connections.html#connection-urls)
|
||||
to the Mayan EDMS container so that it uses the RabbitMQ container the
|
||||
message broker::
|
||||
|
||||
-e MAYAN_BROKER_URL="amqp://mayan:mayanrabbitmqpassword@localhost:5672/mayan",
|
||||
|
||||
When tasks finish, they leave behind a return status or the result of a
|
||||
calculation, these are stored for a while so that whoever requested the
|
||||
background task, is able retrieve the result. These results are stored in the
|
||||
result storage. By default a Redis server is launched inside the Mayan EDMS
|
||||
container. You can launch a separate Docker Redis container and tell the Mayan
|
||||
EDMS container to use this via the MAYAN_CELERY_RESULT_BACKEND environment
|
||||
variable. The format of this variable is explained here: http://docs.celeryproject.org/en/3.1/configuration.html#celery-result-backend
|
||||
|
||||
Deployment type
|
||||
===============
|
||||
Docker provides a faster deployment and the overhead is not high on modern
|
||||
systems. It is however memory and CPU limited by default and you need to
|
||||
increase this limits. The settings to change the container resource limits
|
||||
are here: https://docs.docker.com/config/containers/resource_constraints/#limit-a-containers-access-to-memory
|
||||
|
||||
For the best performance possible use the advanced deployment method on a
|
||||
host dedicated to serving only Mayan EDMS.
|
||||
|
||||
Storage
|
||||
=======
|
||||
For best input and output speed use a block based local filesystem on an
|
||||
SSD drive for the ``/media`` sub folder. The location of the ``/media`` folder
|
||||
will be specified by the ``MEDIA_ROOT`` setting.
|
||||
|
||||
If capacity is your bottom line, switch to an
|
||||
:doc:`object storage <../chapters/object_storage>` system.
|
||||
|
||||
Use additional hosts
|
||||
====================
|
||||
When one host is not enough you can use multiple hosts and share the load.
|
||||
Make sure that all hosts share the ``/media`` folder as specified by the
|
||||
``MEDIA_ROOT`` setting, also the database, the broker, and the result storage.
|
||||
One setting that needs to be changed in this configuration is the lock
|
||||
manager backend.
|
||||
|
||||
Resource locking is a technique to avoid two processes or tasks to modify
|
||||
the same resource at the same time causing a race condition. Mayan EDMS uses
|
||||
its own lock manager. By default the lock manager with use a simple file
|
||||
based lock backend ideal for single host installations. For multiple hosts
|
||||
installation the database backend must be used in other to coordinate the
|
||||
resource locks between the different hosts over a share data medium. This is
|
||||
accomplished by modifying the environment variable ``LOCK_MANAGER_BACKEND`` in
|
||||
both the direct deployment or the Docker image. Use the value
|
||||
``lock_manager.backends.model_lock.ModelLock`` to switch to the database
|
||||
resource lock backend. If you can also write your own lock manager backend
|
||||
for other data sharing mediums with better performance than a relational
|
||||
database like Redis, Memcached, Zoo Keeper.
|
||||
@@ -1,113 +0,0 @@
|
||||
********
|
||||
Settings
|
||||
********
|
||||
|
||||
Mayan EDMS can be configure via environment variables or by setting files.
|
||||
|
||||
|
||||
.. _environment_variables:
|
||||
|
||||
Via environment variables
|
||||
=========================
|
||||
|
||||
To use environment variables, lookup the name of the setting you want to
|
||||
override in the "Settings" menu. The "Settings" menu is located inside the
|
||||
"Setup" main menu. To pass a value via an environment variable append
|
||||
``"MAYAN_"`` to the name of the settings option. For example, to change
|
||||
the number of documents displayed per page (COMMON_PAGINATE_BY, by default 40),
|
||||
use::
|
||||
|
||||
export MAYAN_COMMON_PAGINATE_BY=10
|
||||
|
||||
Restart Mayan EDMS and the new value will take effect. The "Settings" menu
|
||||
can be used to verify if the overridden setting value is being interpreted
|
||||
correctly.
|
||||
|
||||
|
||||
.. _configuration_file:
|
||||
|
||||
Via YAML configuration file
|
||||
===========================
|
||||
|
||||
.. versionadded:: 3.1
|
||||
|
||||
It is possible to modify the different settings by creating or editing the
|
||||
``media/config.yml`` file. This file is formatted in the YAML markup language (
|
||||
http://yaml.org/). Here is an example of what the looks like::
|
||||
|
||||
DOCUMENT_PARSING_AUTO_PARSING: true
|
||||
DOCUMENT_PARSING_PDFTOTEXT_PATH: /usr/bin/pdftotext
|
||||
EMAIL_BACKEND: django.core.mail.backends.smtp.EmailBackend
|
||||
EMAIL_HOST: localhost
|
||||
EMAIL_HOST_PASSWORD: ''
|
||||
EMAIL_HOST_USER: ''
|
||||
EMAIL_PORT: 25
|
||||
EMAIL_TIMEOUT: null
|
||||
EMAIL_USE_SSL: false
|
||||
EMAIL_USE_TLS: false
|
||||
FILE_UPLOAD_MAX_MEMORY_SIZE: 2621440
|
||||
HOME_VIEW: common:home
|
||||
|
||||
Every time Mayan EDMS is able to start correctly it will copy the ``config.yml``
|
||||
and create a backup copy in the same directory named ``config_backup.yml``.
|
||||
This file is used to revert to the last know configuration file known
|
||||
to be valid. You can revert manually by copy the file or by using the
|
||||
``revertsettings`` management command from the command line.
|
||||
|
||||
|
||||
Via Python settings files
|
||||
=========================
|
||||
|
||||
Another way to configure Mayan EDMS is via Python-style, settings files.
|
||||
If Mayan EDMS was installed using the Python package a ``mayan_settings``
|
||||
folder will created for this purpose. If you installed Mayan EDMS
|
||||
according to the :doc:`../chapters/deploying` instructions provided in this
|
||||
documentation your ``mayan_settings`` folder should be located in the directory:
|
||||
``/usr/share/mayan-edms/mayan/media/mayan_settings``.
|
||||
|
||||
If Mayan EDMS was installed using Docker, the ``mayan_settings`` folder
|
||||
will be found inside the install Docker volume. If you installed Mayan EDMS
|
||||
according to the :doc:`../chapters/docker` instructions provided in this
|
||||
documentation your ``mayan_settings`` folder should be located in the directory:
|
||||
``/docker-volumes/mayan/mayan_settings``.
|
||||
|
||||
Create a file with any valid name and a ``.py`` extension in the
|
||||
``mayan_settings`` folder. The file must starts with a global import of
|
||||
``mayan.settings.production``. In the form::
|
||||
|
||||
from mayan.settings.production import *
|
||||
|
||||
Now add the corresponding lines to override the default settings.
|
||||
In the settings file, it is not necessary to prepend the string ``MAYAN_`` to
|
||||
the setting option. For example, to change the number of documents displayed
|
||||
per page (COMMON_PAGINATE_BY, by default 40),
|
||||
use::
|
||||
|
||||
COMMON_PAGINATE_BY=10
|
||||
|
||||
versus::
|
||||
|
||||
export MAYAN_COMMON_PAGINATE_BY=10
|
||||
|
||||
when using the environment variable method.
|
||||
|
||||
For this example let's assume the file was saved with the name ``mysettings.py``.
|
||||
|
||||
The way used to tell Mayan EDMS to import this file will vary based on the
|
||||
installation method.
|
||||
|
||||
For the :doc:`../chapters/deploying` method, the full import path will be
|
||||
``mayan.media.mayan_settings.mysettings`` and can be passed via the
|
||||
``--settings`` command line argument like this::
|
||||
|
||||
python manage.py runserver --settings=mayan.media.mayan_settings.mysettings
|
||||
|
||||
or via the ``DJANGO_SETTINGS_MODULE`` environment variable like this::
|
||||
|
||||
export DJANGO_SETTINGS_MODULE=mayan.media.mayan_settings.mysettings
|
||||
|
||||
For the :doc:`../chapters/docker` installation method, the full import path will be
|
||||
``mayan_settings.mysettings`` and can only be passed via the
|
||||
``MAYAN_SETTINGS_MODULE`` environment variable like this::
|
||||
|
||||
docker run <...> -e MAYAN_SETTINGS_MODULE=mayan_settings.mysettings
|
||||
@@ -1,23 +0,0 @@
|
||||
Tags
|
||||
====
|
||||
|
||||
Tags are color coded properties that can be attached or removed from documents.
|
||||
Tags allow giving documents a binary property. Documents can also be tagged
|
||||
with more than one tag.
|
||||
|
||||
Tags are created from the :menuselection:`Tags --> Create` menu.
|
||||
|
||||
To view all created tags use the :menuselection:`Tags --> All` menu.
|
||||
|
||||
Once tagged, documents can be searched by their tags. It is also possible to
|
||||
show all the documents tagged with a particular
|
||||
tag via the **Documents** link of each tag.
|
||||
|
||||
To view, add, or remove tags from a specific document, go to the document view
|
||||
and click on the **Tags** tab. This view will show the current tags of a
|
||||
document. The **Actions** menu will now show two new options: one to attach
|
||||
more tags to the document and another to remove tags from the document.
|
||||
|
||||
It is also possible to tag documents in bulk by selecting several documents
|
||||
from any view that displays a list documents and selecting the **Attach tag**
|
||||
or **Remove tags** from the dropdown menu.
|
||||
@@ -1,91 +0,0 @@
|
||||
*********
|
||||
Workflows
|
||||
*********
|
||||
|
||||
Introduction
|
||||
============
|
||||
|
||||
Workflows provide a structure method for storing a sequence of states over
|
||||
which the a document will progress. Workflows keep track how a document has
|
||||
been processed so far.
|
||||
|
||||
Workflows work by storing a series of states to help you know the "status"
|
||||
of a document. To move a workflow from one state to another, transitions are
|
||||
used.
|
||||
|
||||
Transitions connect two different states and help provide context to know
|
||||
which state is possible to transition to, from a previous state. Transitions
|
||||
provide and order for the sequence of possible states changes.
|
||||
|
||||
Transitions can be executed manually by users if they have the required access
|
||||
level as configure by the system administrator.
|
||||
|
||||
|
||||
Automation
|
||||
==========
|
||||
|
||||
Besides being able to be executed manually by users, transitions can also be
|
||||
programmed execute automatically based on system events. This is called in
|
||||
Mayan EDMS transition triggering and is one of the tools available to
|
||||
automate business processes.
|
||||
|
||||
For example:
|
||||
|
||||
* Move a document from a "scanned" state to a "billed" state
|
||||
when a tag is attached to the document.
|
||||
* Move a document from a "uploaded" state to a "OCR ready" state
|
||||
when the OCR engine finishes processing the document.
|
||||
|
||||
The other tool provided for process automation is being able to execute an
|
||||
action when a workflow state is reached or leaved. These are called state
|
||||
events.
|
||||
|
||||
Some examples of state actions currently provided are:
|
||||
|
||||
* Attach a tag to a document
|
||||
* Remove a tag from a document
|
||||
* Do an HTTP POST request to an external IP address
|
||||
* Edit the label or the description of a document.
|
||||
|
||||
Other time more state actions are being added. Some state actions like the one
|
||||
that creates an HTTP POST request allow Mayan EDMS to trigger processes in
|
||||
external systems based on the state of a document. One example of this is
|
||||
triggering the billing process of an accounting system when an invoice is
|
||||
scanned in Mayan EDMS.
|
||||
|
||||
Workflow state actions and transitions triggers are new features and are still
|
||||
evolving.
|
||||
|
||||
Workflows allow translating business logic into a series of states. With the
|
||||
addition of state actions and transition triggers, the workflows in Mayan EDMS
|
||||
are no longer just informative but can be part of your actual business
|
||||
automation process.
|
||||
|
||||
|
||||
Implementation
|
||||
==============
|
||||
|
||||
Internally, workflows are implemented as a finite state machines
|
||||
(https://en.wikipedia.org/wiki/Finite-state_machine). And have the limitation
|
||||
that only one state can be the current active state for a workflow being
|
||||
executed. The other limitation of the current implementation is that every
|
||||
workflow needs at least one state marked as the initial state. These limitations
|
||||
are the result of a compromised in the design between flexibility and ease of
|
||||
use.
|
||||
|
||||
|
||||
Visualizations
|
||||
==============
|
||||
|
||||
The graphical representation of a workflow (or a finite state machine style
|
||||
in Mayan EDMS's case) is similar to a flowchart. The states are represented
|
||||
with circles. The transitions are represented with arrows. Circle with a
|
||||
double border represent the initial state of the workflow.
|
||||
|
||||
To view the graphical representations of workflow use **Preview** button of
|
||||
the workflow in the setup view.
|
||||
|
||||
|
||||
|
||||
We are working now on workflow transition trigger filters to have
|
||||
the trigger move the state of the workflow on certain conditions. For example: Attach a tag if there is a specific word found in the OCR text.
|
||||
19
docs/conf.py
19
docs/conf.py
@@ -33,9 +33,7 @@ sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), "_ext"))
|
||||
# coming with Sphinx (named 'sphinx.ext.*') or your custom ones.
|
||||
#extensions = ['sphinx.ext.autodoc', 'sphinx.ext.viewcode']
|
||||
#extensions = ["djangodocs", "sphinx.ext.intersphinx"]
|
||||
extensions = [
|
||||
'sphinx.ext.extlinks', 'sphinxcontrib.blockdiag', 'sphinxcontrib.spelling'
|
||||
]
|
||||
extensions = ['sphinxcontrib.blockdiag']
|
||||
|
||||
blockdiag_antialias = True
|
||||
blockdiag_html_image_format = "SVG"
|
||||
@@ -234,18 +232,3 @@ man_pages = [
|
||||
]
|
||||
|
||||
html_theme = 'sphinx_rtd_theme'
|
||||
|
||||
# -- External links --
|
||||
extlinks = {
|
||||
'django-docs': (
|
||||
'https://docs.djangoproject.com/en/{}/%s'.format(
|
||||
mayan.__django_version__
|
||||
), 'Django documentation section: '
|
||||
),
|
||||
'github-issue': (
|
||||
'https://github.com/mayan-edms/mayan-edms/issues/%s', 'GitHub issue #'
|
||||
),
|
||||
'gitlab-issue': (
|
||||
'https://gitlab.com/mayan-edms/mayan-edms/issues/%s', 'GitLab issue #'
|
||||
)
|
||||
}
|
||||
|
||||
@@ -17,23 +17,45 @@ repository for electronic documents.
|
||||
.. toctree::
|
||||
:hidden:
|
||||
|
||||
topics/features
|
||||
topics/installation
|
||||
releases/index
|
||||
topics/getting_started
|
||||
topics/access_control
|
||||
topics/categorization
|
||||
topics/collaboration
|
||||
topics/settings
|
||||
topics/storage
|
||||
topics/integration
|
||||
topics/advanced
|
||||
topics/administration
|
||||
topics/troubleshooting
|
||||
topics/development
|
||||
topics/faq
|
||||
topics/license
|
||||
topics/contact
|
||||
Installation <topics/installation>
|
||||
Features <topics/features>
|
||||
Release notes and upgrading <releases/index>
|
||||
|
||||
ACLs <topics/acls>
|
||||
Backups <topics/backups>
|
||||
Checkouts <topics/checkouts>
|
||||
Document types <topics/document_types>
|
||||
File storage <topics/file_storage>
|
||||
Document indexes <topics/indexes>
|
||||
Document languages <topics/languages>
|
||||
Document signatures <topics/signatures>
|
||||
Mailing <topics/mailing>
|
||||
Metadata <topics/metadata>
|
||||
OCR <topics/ocr_backend>
|
||||
Permissions <topics/permissions>
|
||||
Settings <topics/settings>
|
||||
Sources <topics/sources>
|
||||
Smart links <topics/smart_links>
|
||||
Tags <topics/tags>
|
||||
Transformations <topics/transformations>
|
||||
Upload wizard <topics/upload_wizard>
|
||||
Versioning <topics/versioning>
|
||||
|
||||
Docker image <topics/docker>
|
||||
Advanced deployment <topics/deploying>
|
||||
|
||||
Development <topics/development>
|
||||
App creation <topics/app_creation>
|
||||
Pending work <topics/pending_work>
|
||||
Code statistics <topics/code_statistics>
|
||||
Translations <topics/translations>
|
||||
Licensing <topics/license>
|
||||
FAQ <topics/faq>
|
||||
Contact <topics/contact>
|
||||
MERCs <mercs/index>
|
||||
Pending work <topics/pending_work>
|
||||
Individual Contributor Assignment Agreement <topics/caa_individual>
|
||||
Entity Contributor Assignment Agreement <topics/caa_entity>
|
||||
|
||||
.. _Docker: https://www.docker.com/
|
||||
.. _Django: http://www.djangoproject.com/
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
==============================
|
||||
MERC 1: Purpose and Guidelines
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
==============================
|
||||
|
||||
:MERC: 1
|
||||
:Author: Michael Price
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
==================================
|
||||
MERC 3: Using JavaScript libraries
|
||||
MERC 3: Using javascript libraries
|
||||
==================================
|
||||
|
||||
:MERC: 3
|
||||
@@ -17,13 +17,13 @@ MERC 3: Using JavaScript libraries
|
||||
Abstract
|
||||
========
|
||||
|
||||
This MERC proposes a standard way to use JavaScript libraries.
|
||||
This MERC proposes a standard way to use javascript libraries.
|
||||
|
||||
Rationale
|
||||
=========
|
||||
|
||||
Mayan EDMS uses several JavaScript libraries for user interface features.
|
||||
Currently, the libraries are not installed using any JavaScript package
|
||||
Mayan EDMS uses several javascript libraries for user interface features.
|
||||
Currently, the libraries are not installed using any javascript package
|
||||
manager but copied uncompressed. Installing the libraries in this manner
|
||||
carries some disadvantages.
|
||||
|
||||
@@ -32,7 +32,7 @@ Motivation
|
||||
|
||||
The inclusion of the libraries in source form is required by many licenses
|
||||
if the library is not installed by a package manager in distributable form.
|
||||
There are several disadvantages with the current approach:
|
||||
There are several disavantages with the current approach:
|
||||
|
||||
1. Having the library in source form means that the entire weight of the
|
||||
library's size carries over the overall size of the Mayan EDMS distribution files.
|
||||
@@ -42,7 +42,7 @@ There are several disadvantages with the current approach:
|
||||
installed in the project and manually searching, downloading, compressing
|
||||
and adding the files to the repository.
|
||||
3. The source form of the libraries includes normal and minified versions
|
||||
of the code and the accompanying CSS files. There is no define preference
|
||||
of the code and the accompaning CSS files. There is no define preference
|
||||
and through the project both versions of the libraries are loaded
|
||||
interchangeably. Using a packager manager the minified version would be
|
||||
used of a pipeline to minify the installed libraries should be added.
|
||||
@@ -58,10 +58,10 @@ Specification
|
||||
|
||||
Changes needed:
|
||||
|
||||
1. Python based JavaScript package manager. Alternatively a Python wrapper
|
||||
for a JavaScript package manager could be used.
|
||||
2. Package manifest for the JavaScript libraries used.
|
||||
3. Installation pipeline to install the JavaScript libraries during the
|
||||
1. Python based javascript package manager. Alternatively a Python wrapper
|
||||
for a javascript package manager could be used.
|
||||
2. Package manifest for the javascript libraries used.
|
||||
3. Installation pipeline to install the javascript libraries during the
|
||||
installation and setup of the project.
|
||||
|
||||
References:
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
*****
|
||||
=====
|
||||
MECRs
|
||||
*****
|
||||
=====
|
||||
|
||||
Mayan EDMS Request For Comment documents index.
|
||||
|
||||
@@ -17,9 +17,9 @@ Accepted
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
../mercs/0001-merc-process
|
||||
../mercs/0002-test-writing
|
||||
../mercs/0003-using-javascript-libraries
|
||||
0001-merc-process
|
||||
0002-test-writing
|
||||
0003-using-javascript-libraries
|
||||
|
||||
Draft
|
||||
-----
|
||||
@@ -27,7 +27,8 @@ Draft
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
../mercs/merging-roles-and-groups
|
||||
merging-roles-and-groups
|
||||
support-forum
|
||||
|
||||
|
||||
Type
|
||||
@@ -38,8 +39,7 @@ Process
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
../mercs/0001-merc-process
|
||||
../mercs/0004-support-forum
|
||||
0001-merc-process
|
||||
|
||||
|
||||
Feature
|
||||
@@ -47,5 +47,5 @@ Feature
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
../mercs/0002-test-writing
|
||||
../mercs/0003-using-javascript-libraries
|
||||
0002-test-writing
|
||||
0003-using-javascript-libraries
|
||||
|
||||
@@ -30,7 +30,7 @@ overheads without providing advantages in the day to day operations.
|
||||
|
||||
In reality there is almost a 1 to 1 correlation between Roles and Groups.
|
||||
Other permissions systems already use Groups as permission units without
|
||||
disadvantages. An example of this is LDAP and its commercial counterpart
|
||||
disavantages. An example of this is LDAP and its commercial counterpart
|
||||
Active Directory.
|
||||
|
||||
Motivation
|
||||
@@ -43,7 +43,7 @@ favor of using a native Django model for the same task.
|
||||
Merging the Role and Group models will also provide a speed boost in every
|
||||
permission check and queryset filtering. These checks are nested in nature.
|
||||
Since the access checks are performed for every view and for every link
|
||||
in the view the performance gain should be substantial.
|
||||
in the view the performace gain should be substantial.
|
||||
|
||||
Backwards Compatibility
|
||||
=======================
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
=====================
|
||||
MERC 4: Support forum
|
||||
=====================
|
||||
======================
|
||||
MERC XX: Support forum
|
||||
======================
|
||||
|
||||
:MERC: 4
|
||||
:MERC: XX
|
||||
:Author: Michael Price
|
||||
:Status: Accepted
|
||||
:Status: Draft
|
||||
:Type: Process
|
||||
:Created: 2018-02-27
|
||||
:Last-Modified: 2018-09-04
|
||||
:Last-Modified: 2018-02-27
|
||||
|
||||
.. contents:: Table of Contents
|
||||
:depth: 3
|
||||
@@ -42,5 +42,7 @@ issues regarding Google, reinforce the need for a self hosted solution.
|
||||
Specification
|
||||
=============
|
||||
|
||||
Platform chosen was phpBB. Factors were: written in PHP, ease of installation,
|
||||
compatible with several database managers, mature, extensive development history.
|
||||
The proposed solution is to use the bbPress (https://wordpress.org/plugins/bbpress/)
|
||||
forum plugin for Wordpress. After 14 years, Wordpress dominance continues
|
||||
unrivaled. The wealth of material, themes, templates and professional avaialbe make
|
||||
it a safe option.
|
||||
@@ -16,36 +16,36 @@ Version 0.10
|
||||
* LibreOffice (https://www.libreoffice.org/)
|
||||
* unoconv [version 0.5] (https://github.com/dagwieers/unoconv)
|
||||
|
||||
* The new office documents converter won't convert files with the extension
|
||||
.docx because these files are recognized as zip files instead. This
|
||||
* The new office documents converter won't convert files with the extension
|
||||
.docx because these files are recognized as zip files instead. This
|
||||
is an issue of the libmagic library.
|
||||
|
||||
* New configuration option added ``CONVERTER_UNOCONV_USE_PIPE`` that controls
|
||||
how unoconv handles the communication with LibreOffice. The default of
|
||||
``True`` causes unoconv to use **pipes**, this approach is slower than using
|
||||
* New configuration option added ``CONVERTER_UNOCONV_USE_PIPE`` that controls
|
||||
how unoconv handles the communication with LibreOffice. The default of
|
||||
``True`` causes unoconv to use **pipes**, this approach is slower than using
|
||||
**TCP/IP** ports but it is more stable.
|
||||
|
||||
* Initial `REST` `API` that exposes documents properties and one method, this
|
||||
new `API` is used by the new smart document widget and requires the
|
||||
|
||||
* Initial `REST` `API` that exposes documents properties and one method, this
|
||||
new `API` is used by the new smart document widget and requires the
|
||||
package ``djangorestframework``, users must issue a::
|
||||
|
||||
|
||||
$ pip install -r requirements/production.txt
|
||||
|
||||
|
||||
to install this new requirement.
|
||||
|
||||
|
||||
* MIME type detection and caching performance updates.
|
||||
* Updated the included version of ``jQuery`` to 1.7
|
||||
* Updated the included version of ``JqueryAsynchImageLoader`` to 0.9.7
|
||||
* Document image serving response now specifies a MIME type for increased
|
||||
* Document image serving response now specifies a MIME type for increased
|
||||
browser compatibility.
|
||||
* Small change in the scheduler that increases stability.
|
||||
* Russian translation updates Sergey Glita
|
||||
* Improved and generalized the OCR queue locking mechanism, this should
|
||||
eliminate any possibility of race conditions between Mayan EDMS OCR nodes.
|
||||
* Improved and generalized the OCR queue locking mechanism, this should
|
||||
eliminate any posibility of race conditions between Mayan EDMS OCR nodes.
|
||||
* Added support for signals to the OCR queue, this results in instant OCR
|
||||
processing upon submittal of a document to the OCR queue, this works in
|
||||
addition to the current polling processing which eliminates the
|
||||
possibility of stale documents in the OCR queue.
|
||||
posibility of stale documents in the OCR queue.
|
||||
* Added multiple document OCR submit link
|
||||
* Re enabled Tesseract language specific OCR processing and added a one
|
||||
* Re enabled tesseract language specific OCR processing and added a one
|
||||
(1) time language neutral retry for failed language specific OCR
|
||||
|
||||
@@ -1,12 +1,13 @@
|
||||
Version 0.12.1
|
||||
==============
|
||||
================================
|
||||
Mayan EDMS v0.12.1 release notes
|
||||
================================
|
||||
|
||||
*May 2012*
|
||||
|
||||
This is the first maintenance release of the 0.12 series.
|
||||
|
||||
Overview
|
||||
--------
|
||||
========
|
||||
|
||||
While bug fixes and minor feature were the focus for this release, some
|
||||
bigger changes were included because of their importance. The parsing of
|
||||
@@ -18,12 +19,11 @@ environments where users don't have the ability to install OS level
|
||||
binaries.
|
||||
|
||||
|
||||
Changes
|
||||
-------
|
||||
What's new in Mayan EDMS v0.12.1
|
||||
================================
|
||||
|
||||
Fabric file (fabfile)
|
||||
^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~
|
||||
A Fabric file is included to help users not very familiar with Ubuntu,
|
||||
Python and Django install Mayan EDMS, or for system administrators
|
||||
looking to automate the install whether in local or remote systems.
|
||||
@@ -33,66 +33,54 @@ Feel free to submit your configuration settings and files for different database
|
||||
webserver or Linux distribution. More configurations will be added to
|
||||
the fabfile as more are tested.
|
||||
|
||||
|
||||
Documentation update
|
||||
^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~
|
||||
The installation instructions were updated to include the installation of
|
||||
the libpng-dev and libjpeg-dev libraries as well as the installation of
|
||||
the ``poppler-utils`` package. An additional step to help users test their
|
||||
the poppler-utils package. An additional step to help users test their
|
||||
new installation of Mayan EDMS was also added.
|
||||
|
||||
|
||||
Translations
|
||||
^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~
|
||||
The Italian translation has been synchronized with the source files at
|
||||
Transifex and finished to %100 completion.
|
||||
|
||||
|
||||
Usability improvements
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~
|
||||
The index instance view now feature the same multi document action
|
||||
buttons (Submit to OCR, delete, download, etc) as the mail and recent
|
||||
document views.
|
||||
|
||||
|
||||
Better office document conversion
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
A new method of converting office documents has been implemented, this
|
||||
new method doesn't require the use of the command line utility ``UNOCONV``.
|
||||
If this new method proves to work better than previous solutions the use
|
||||
of ``UNOCONV`` may be deprecated in the future. The conversion method
|
||||
adds just one new configuration option: ``CONVERTER_LIBREOFFICE_PATH``
|
||||
which defaults to ``/usr/bin/libreoffice``.
|
||||
|
||||
adds just one new configuration option: `CONVERTER_LIBREOFFICE_PATH`
|
||||
which defaults to '/usr/bin/libreoffice'.
|
||||
|
||||
Better PDF text parsing
|
||||
^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Brian E. submitted a patch to use the Poppler package pdftotext utility to
|
||||
extract text from PDF files. This is now the default method Mayan EDMS
|
||||
will execute to try to extract text from a PDF and failing that will
|
||||
fallback to the previous method. This change add a new configuration
|
||||
option: ``OCR_PDFTOTEXT_PATH`` to specify the location of the ``pdftotext``
|
||||
executable, it defaults to ``/usr/bin/pdftotext``. Be sure to install the
|
||||
option: `OCR_PDFTOTEXT_PATH` to specify the location of the ``pdftotext``
|
||||
executable, it defaults to '/usr/bin/pdftotext'. Be sure to install the
|
||||
``poppler-utils`` os package to take advantage of this new parser.
|
||||
|
||||
|
||||
Changed defaults
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~
|
||||
The OCR queue is now active by default when first created during the
|
||||
``syncdb`` phase and the ``OCR_AUTOMATIC_OCR`` option now defaults
|
||||
``syncdb`` phase and the `OCR_AUTOMATIC_OCR` option now defaults
|
||||
to ``True``. These two changes are made to reduce the steps required for
|
||||
new users to start enjoying the benefits of automatic text extraction from
|
||||
uploaded documents without having to read the documentation and have a more
|
||||
functional default install.
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
=================================
|
||||
|
||||
Start off by adding the new requirements::
|
||||
|
||||
@@ -116,17 +104,13 @@ The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
|
||||
=============================
|
||||
* None
|
||||
|
||||
|
||||
Bugs fixed
|
||||
----------
|
||||
:github-issue:`25` "Office document conversion error"
|
||||
|
||||
|
||||
Removals
|
||||
--------
|
||||
==========
|
||||
* Issue #25 "Office document conversion error"
|
||||
|
||||
Stuff removed
|
||||
=============
|
||||
* None
|
||||
|
||||
@@ -1,12 +1,14 @@
|
||||
Version 0.12.2
|
||||
==============
|
||||
================================
|
||||
Mayan EDMS v0.12.2 release notes
|
||||
================================
|
||||
|
||||
*June 2012*
|
||||
|
||||
This is the second maintenance release of the 0.12 series.
|
||||
|
||||
Overview
|
||||
--------
|
||||
========
|
||||
|
||||
|
||||
As with the previous release bug fixes and minor feature were the focus
|
||||
for this release too. `issue #24`_ has been fixed and document
|
||||
@@ -17,28 +19,24 @@ the diagnosis of installation of runtime error a simple view showing the
|
||||
number of internal interval jobs being used by Mayan EDMS as well as a
|
||||
new app which shows a detail of the current installation enviroment were added.
|
||||
|
||||
|
||||
Changes
|
||||
-------
|
||||
What's new in Mayan EDMS v0.12.2
|
||||
================================
|
||||
|
||||
Smarter auto admin creation
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Mayan EDMS creates a administrator user during the
|
||||
database creation phase to reduce the amount of steps required for a
|
||||
functional install. The creation of this account is controlled by the configuration
|
||||
option ``COMMON_AUTO_CREATE_ADMIN``, the username of the account is
|
||||
specified with the configuration option ``COMMON_AUTO_ADMIN_USERNAME``
|
||||
and the password of this account by the option ``COMMON_AUTO_ADMIN_PASSWORD``.
|
||||
Previously the ``COMMON_AUTO_ADMIN_PASSWORD`` defaulted to 'admin' which
|
||||
option `COMMON_AUTO_CREATE_ADMIN`, the username of the account is
|
||||
specified with the configuration option `COMMON_AUTO_ADMIN_USERNAME`
|
||||
and the password of this account by the option `COMMON_AUTO_ADMIN_PASSWORD`.
|
||||
Previously the `COMMON_AUTO_ADMIN_PASSWORD` defaulted to 'admin' which
|
||||
created an administrator account of username 'admin' with a password of
|
||||
'admin'. The new default is to randomize an initial password and show this password
|
||||
at the login screen until the administrator password is changed.
|
||||
|
||||
|
||||
Document check outs
|
||||
^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~
|
||||
As per the feature request filed under `issue #26`_, a new document
|
||||
check out and check in functionality has been added. Users can now
|
||||
check out a document and lock new version of it from being uploaded to avoid
|
||||
@@ -49,10 +47,8 @@ new versions of it or check the document back in before the expiration period,
|
||||
unless being granted the ``Allow overriding check out restrictions`` or
|
||||
``Forcefully check in documents`` permission respectively.
|
||||
|
||||
|
||||
Installation environment app
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Diagnosting remote installations of web based applications without access to the
|
||||
command line can be a bit hard, to alleviate this situation a new installation
|
||||
environment details app has been added. The purpose of this app is to provide
|
||||
@@ -60,25 +56,19 @@ support staff information about the physical environment where Mayan EDMS has
|
||||
been installed. To avoid possible security compromises only administrators
|
||||
can access this app.
|
||||
|
||||
|
||||
Editable compressed documents filename
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Previously when downloading more than one document in a compressed manner,
|
||||
Mayan EDMS would produce a file with the name ``document_bundle.zip`` for
|
||||
download. A different filename can now be specified at the same download dialog.
|
||||
|
||||
|
||||
German translation
|
||||
^^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
A German language translation has been added thanks to Tetja Rediske
|
||||
and Tilmann Sittig.
|
||||
|
||||
|
||||
Statistics gathering
|
||||
^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~
|
||||
Previous attempts at gathering usage statistics have been met with deficient results.
|
||||
User participation in surveys as well as the quality of the data entered by users
|
||||
was disappointing. That is why this version of Mayan EDMS features an
|
||||
@@ -86,7 +76,7 @@ anonymous statistics gathering functionality.
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
=================================
|
||||
|
||||
Start off by adding the new requirements::
|
||||
|
||||
@@ -107,22 +97,19 @@ The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
|
||||
=============================
|
||||
* None
|
||||
|
||||
|
||||
Bugs fixed
|
||||
----------
|
||||
|
||||
:github-issue:`24 "Duplicated filename extension when uploading a new version of a document"
|
||||
:github-issue:`26` "checkout feature request"
|
||||
|
||||
Removals
|
||||
--------
|
||||
==========
|
||||
* `issue #24`_ "Duplicated filename extension when uploading a new version of a document"
|
||||
* `issue #26`_ "checkout feature request"
|
||||
|
||||
Stuff removed
|
||||
=============
|
||||
* Feedback app
|
||||
|
||||
|
||||
|
||||
.. _issue #24: https://github.com/rosarior/mayan/issues/24
|
||||
.. _issue #26: https://github.com/rosarior/mayan/issues/26
|
||||
|
||||
@@ -1,12 +1,15 @@
|
||||
Version 0.12
|
||||
============
|
||||
==============================
|
||||
Mayan EDMS v0.12 release notes
|
||||
==============================
|
||||
|
||||
*February 2012*
|
||||
|
||||
Welcome to Mayan EDMS v0.12!
|
||||
|
||||
This release commemorates Mayan EDMS first aniversary!
|
||||
|
||||
Overview
|
||||
--------
|
||||
========
|
||||
|
||||
Aside from new features, the focus of this release of Mayan EDMS also
|
||||
been about improving the code and documentation quality standard
|
||||
@@ -23,7 +26,7 @@ releases:
|
||||
* All app permissions have been move to a separate permissions.py file
|
||||
per app
|
||||
* Complete permission system refactor.
|
||||
* Document signing code moved to it's own app
|
||||
* Document signining code move to it's own app
|
||||
* Initial unit tests
|
||||
* A lot of logging used throught the entire project.
|
||||
* Much functionality moved to model managers.
|
||||
@@ -35,17 +38,16 @@ releases:
|
||||
* Removal of remarked code.
|
||||
|
||||
|
||||
Changes
|
||||
-------
|
||||
What's new in Mayan EDMS v0.12
|
||||
==============================
|
||||
|
||||
ACL support
|
||||
^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~
|
||||
* Object level access control is now in place for documents, folders,
|
||||
tags and smart links. What this means is that administrators can now
|
||||
grant permissions to users, groups or roles on for specific objects.
|
||||
A more in-depth explanation of how this new ACL system can be found in
|
||||
the :doc:`3 tier access control <../chapters/permissions>` section of the
|
||||
the :doc:`3 tier access control <../topics/permissions>` section of the
|
||||
permissions chapter.
|
||||
|
||||
* Default class ACL support. Administrators can setup the access control
|
||||
@@ -55,72 +57,57 @@ ACL support
|
||||
allow the access control list that the actual creator of an object will
|
||||
inherit.
|
||||
|
||||
|
||||
Anonymous user support
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~
|
||||
Anonymous user support is a two tier function, first is the addition of
|
||||
the ``COMMON_ALLOW_ANONYMOUS_ACCESS`` configuration option that
|
||||
allows non authenticated user to browse all the pages of a Mayan EDMS
|
||||
installation. The second part of this support is the ability to assign
|
||||
permissions or individual access to objects to anonymous users.
|
||||
|
||||
the `COMMON_ALLOW_ANONYMOUS_ACCESS` configuration option that
|
||||
allows non authenticated user to browse all the pages of a Mayan EDMS installation.
|
||||
The second part of this support is the ability to assign permissions
|
||||
or individual access to objects to anonymous users.
|
||||
|
||||
Translations
|
||||
^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~
|
||||
A new Italian translation is available, provided by SeeOpen.IT
|
||||
(www.seeopen.it, info@seeopen.it) as well as complete Russian translation
|
||||
update by Sergei Glita. Included in this release also the initial translation
|
||||
to Polish by mic.
|
||||
|
||||
|
||||
Usability improvements
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~
|
||||
* Detached signature behavior improved, uploading a new detached signature
|
||||
erases the previous one.
|
||||
* Usability improvement in the role member's add/removal form, by using
|
||||
HTML's option groups tag property
|
||||
|
||||
|
||||
2 Step download process
|
||||
^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~
|
||||
The code for downloading single and multiple document and document versions
|
||||
has been merged with compression support also added. This allows for the
|
||||
download of documents in their original format or compressed and well as
|
||||
the download of several documents in a single compressed file.
|
||||
|
||||
|
||||
Customizable GPG home directory
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Addition of the ``SIGNATURES_GPG_HOME`` configuration option to let
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Addition of the `SIGNATURES_GPG_HOME` configuration option to let
|
||||
administrators set Mayan EDMS's GPG instance home directory, used to
|
||||
store keyrings and other GPG configuration files.
|
||||
|
||||
|
||||
Out of process bulk uploading
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
A management command has been added to help upload a large number of documents
|
||||
from a compressed file. For information about this new feature check the
|
||||
Initial data loading chapter.
|
||||
from a compressed file. For information about this new feature check the Initial data loading chapter.
|
||||
|
||||
|
||||
Out of process user import
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
A management command has been added to import a large number users
|
||||
from a CSV file. More information about this new feature can also be found
|
||||
in the Initial data loading chapter.
|
||||
|
||||
|
||||
Refactored document indexing
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
:doc:`The document indexing <../chapters/indexes>` functionality has been
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
:doc:`The document indexing <../topics/indexes>` functionality has been
|
||||
improved and moved from experimental
|
||||
stage to beta stage. Index configuration menus are now available on the
|
||||
``Setup`` menu and allows administrators to create skeleton trees that will
|
||||
@@ -129,14 +116,12 @@ These populated trees can also be mirrored on the physical filesystem and shared
|
||||
using Samba or another filesharing server giving users a structured view
|
||||
of the documents contained within Mayan EDMS from the ``Indexes`` tab
|
||||
or from a mirrored index shared via the network. A new configuration option
|
||||
has been added, ``DOCUMENT_INDEXING_FILESYSTEM_SERVING``, which maps
|
||||
has been added, `DOCUMENT_INDEXING_FILESYSTEM_SERVING`, which maps
|
||||
the index internal name with the physical directory where such index will be
|
||||
mirrored on disk.
|
||||
|
||||
|
||||
Help shape Mayan EDMS's future
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Included in this version is a small feedback application, found under the
|
||||
``About`` main menu, where users by just answering some questions can
|
||||
help determine the priority of the next planned features on the pipeline,
|
||||
@@ -144,10 +129,8 @@ or even help add new features if enough requests are received. All questions
|
||||
are optional but answering as many as possible will help greatly understand
|
||||
the need of the Mayan EDMS user base.
|
||||
|
||||
|
||||
Staging file previews
|
||||
^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~
|
||||
The staging file previews now show the filename for easier
|
||||
identification and speedier upload selection. The staging files previews
|
||||
are now treated as a gallery which means that users can preview an entire
|
||||
@@ -155,23 +138,8 @@ page of staging files without having to click and close each one
|
||||
individually.
|
||||
|
||||
|
||||
Removals
|
||||
--------
|
||||
|
||||
* Support for Celery and Sentry has been drop
|
||||
for now.
|
||||
* Removed the 'db_index' argument from Text fields definition and
|
||||
migrations as it was causing error messages for MySQL users, thanks to
|
||||
Sergei Glita for reporting this one.
|
||||
* Configuration options removed:
|
||||
|
||||
* OCR_CACHE_URI
|
||||
* DOCUMENT_INDEXING_FILESYSTEM_FILESERVING_PATH - Use the newest `DOCUMENT_INDEXING_FILESYSTEM_SERVING`
|
||||
* DOCUMENT_INDEXING_FILESYSTEM_FILESERVING_ENABLE - Use the newest `DOCUMENT_INDEXING_FILESYSTEM_SERVING`
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
=================================
|
||||
|
||||
Start off by adding the new requirements::
|
||||
|
||||
@@ -233,20 +201,31 @@ The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
|
||||
=============================
|
||||
The permission system has been completely reworked so sadly this is a
|
||||
place where even data migration can't help and the permissions assigned
|
||||
to roles will be lost during the upgrade to version 0.12. Users, groups
|
||||
to roles will be lost during the upgrade to version 0.12. Users, groups
|
||||
and roles will be preserved only permissions need to be assigned again,
|
||||
so write down your role permission setup before upgrading.
|
||||
|
||||
|
||||
Bugs fixed
|
||||
----------
|
||||
|
||||
* :github-issue:`17` special thanks to Dave Herring for all the help including
|
||||
access to a machine suffering with the issue, and to Sergei Glita for
|
||||
his research and eventual find of the core cause.
|
||||
==========
|
||||
* Issue #17, special thanks to Dave Herring for all the help including
|
||||
access to a machine suffering with the issue, and to Sergei Glita for
|
||||
his research and eventual find of the core cause.
|
||||
* Statistics fixes.
|
||||
* Fixed get_image_cache_name regression in the OCR app.
|
||||
|
||||
Stuff removed
|
||||
=============
|
||||
* Support for Celery and Sentry has been drop
|
||||
for now.
|
||||
* Removed the 'db_index' argument from Text fields definition and
|
||||
migrations as it was causing error messages for MySQL users, thanks to
|
||||
Sergei Glita for reporting this one.
|
||||
* Configuration options removed:
|
||||
|
||||
* OCR_CACHE_URI
|
||||
* DOCUMENT_INDEXING_FILESYSTEM_FILESERVING_PATH - Use the newest `DOCUMENT_INDEXING_FILESYSTEM_SERVING`
|
||||
* DOCUMENT_INDEXING_FILESYSTEM_FILESERVING_ENABLE - Use the newest `DOCUMENT_INDEXING_FILESYSTEM_SERVING`
|
||||
|
||||
|
||||
@@ -1,132 +1,110 @@
|
||||
Version 0.13
|
||||
============
|
||||
================================
|
||||
Mayan EDMS v0.13 release notes
|
||||
================================
|
||||
|
||||
*December 2012*
|
||||
|
||||
Welcome to Mayan EDMS v0.13!
|
||||
|
||||
Overview
|
||||
--------
|
||||
========
|
||||
|
||||
Initially this version was meant as a the third maintenance release of
|
||||
the 0.12 series, but with the amount of changes and updates that were included
|
||||
it was obvious this was not just a bug fix version anymore hence the version
|
||||
jump to 0.13 instead of 0.12.3
|
||||
|
||||
Changes
|
||||
-------
|
||||
|
||||
What's new in Mayan EDMS v0.13
|
||||
================================
|
||||
|
||||
Django 1.3.5
|
||||
^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~
|
||||
This release updates the required version of Django to 1.3.5 to take advantage
|
||||
of the security fixes added to that version of the framework.
|
||||
|
||||
|
||||
Bulk document tagging and untagging
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
As requested by issue `issue #31`_ this feature has been implemented and
|
||||
enabled in this version. Attaching or removing tags from a large number of
|
||||
documents is now much easier.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
As requested by issue `issue #31`_ this feature has been implemented and enabled in this version.
|
||||
Attaching or removing tags from a large number of documents is now much easier.
|
||||
|
||||
Registration
|
||||
^^^^^^^^^^^^
|
||||
|
||||
Based on requests made by the community for greater commercial support and
|
||||
services for Mayan EDMS, a new feature has been added that allows users
|
||||
register their copies of Mayan EDMS and better help users with commercial
|
||||
support packages. Registration for non commercial users is voluntary and
|
||||
optional, and in no way affects the functionality of Mayan EDMS. However
|
||||
even for non commercial users registration offers the advantage of
|
||||
automatically branding the user's copy of Mayan EDMS with their name or the
|
||||
company name in the title area.
|
||||
|
||||
~~~~~~~~~~~~
|
||||
Based on requests made by the community for greater commercial support and services for
|
||||
Mayan EDMS, a new feature has been added that allows users to register their
|
||||
copies of Mayan EDMS and better help users with commercial support packages.
|
||||
Registration for non commercial users is voluntary and optional, and in no way
|
||||
affects the functionality of Mayan EDMS. However even for non commercial users
|
||||
registration offers the advantage of automatically branding the user's copy
|
||||
of Mayan EDMS with their name or the company name in the title area.
|
||||
|
||||
Per document type indexing
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Index can now be restricted to update only on specific document types, this
|
||||
greatly increases the usefulness of indexes, and prevents unwanted index
|
||||
updates.
|
||||
|
||||
|
||||
Bootstrap
|
||||
^^^^^^^^^
|
||||
|
||||
~~~~~~~~~
|
||||
Setting up Mayan EDMS after installation has been indetified by users as the
|
||||
main difficulty when knowledge about Mayan EDMS is relatively low. To
|
||||
main difficulty when knowledge about Mayan EDMS is relatively low. To
|
||||
address this situation a new feature that provides preconfigured setups has been
|
||||
added. These preconfigured setups are published in the Mayan EDMS website and
|
||||
added. These preconfigured setups are published in the Mayan EDMS website and
|
||||
upon synchonization are available to users, this gives users access and integrators
|
||||
access to new setups without having to wait for new versions of Mayan EDMS.
|
||||
Aside from including preconfigured setups, the new bootstrap app
|
||||
has the ability of dumping an user's current setup into a serialized text file
|
||||
which can be tweaked by hand and sent via email to other users. The possibilities
|
||||
which can be tweaked by hand and sent via email to other users. The possibilities
|
||||
enabled by this range from company wide defaults setups to consultants providing
|
||||
their clients with customized setups without having to access their clients'
|
||||
Mayan EDMS instances. ``JSON``, ``YAML`` and a custom ``YAML`` format
|
||||
(http://djangosnippets.org/snippets/2461/) are supported by this new app.
|
||||
|
||||
|
||||
Add documents to folders in bulk
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
As requested, the ability to add more than one document at a time to a selected
|
||||
folder has been added.
|
||||
|
||||
|
||||
Translation updates
|
||||
^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~
|
||||
The translation for all the current languages were synchronized to the
|
||||
latest transifex project sources.
|
||||
|
||||
|
||||
Model updates
|
||||
^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~
|
||||
Several small fixes to the behavior of some model were added, namely that
|
||||
the names of some models should be unique. The document type name as well
|
||||
as the metadata set name were two models that were updated to behave this way.
|
||||
|
||||
|
||||
Navigation updates
|
||||
^^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
There were some additions and changes to the navigation to make it more intuitive
|
||||
or to add an alternate way to access the same information better. The bulk
|
||||
attachment of tags was one of these. Previously users were added or removed
|
||||
from groups, now users can be assigned to groups without leaving the user view.
|
||||
The name of an existing metadata set can now be edited and what was previously
|
||||
called metadata set edit is now more aptly named metadata members which adds
|
||||
or removes metadata types into a single organizational unit. An error that
|
||||
caused a duplicate menu link in the document type filename view was also fixed.
|
||||
|
||||
or to add an alternate way to access the same information better. The bulk
|
||||
attachment of tags was one of these. Previously users were added or removed from groups,
|
||||
now users can be assigned to groups without leaving the user view. The name of an
|
||||
existing metadata set can now be edited and what was previously called metadata set edit
|
||||
is now more aptly named metadata members which adds or removes metadata types into a
|
||||
single organizational unit. An error that caused a duplicate menu link in the
|
||||
document type filename view was also fixed.
|
||||
|
||||
Support for UNOCONV dropped
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Support for converting office documents by calling LibreOffice via ``UNOCONV``
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Support for converting office documents by calling LibreOffice via UNOCONV
|
||||
has been disabled for a while ever since LibreOffice start including
|
||||
document conversion support from the command line. This version completly
|
||||
removes any traces of code and configuration options related to ``UNOCONV``.
|
||||
|
||||
removes any traces of code and configuration options related to UNOCONV.
|
||||
|
||||
Optimizations
|
||||
^^^^^^^^^^^^^
|
||||
|
||||
Inspired by the idea of getting Mayan EDMS running effectively on low power
|
||||
hardware such as the Raspberry Pi, several rounds or profiling and
|
||||
optimization were done.
|
||||
~~~~~~~~~~~~~
|
||||
Inspired by the idea of getting Mayan EDMS running effectively on low power hardware such as
|
||||
the Raspberry Pi, several rounds or profiling and optimization were done.
|
||||
|
||||
Some caching optimization were introduced to the permission model, resulting in
|
||||
a speed increase of 33% in rendering time on views with heavy permission checking
|
||||
and a 18% query reduction on cache hits.
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
|
||||
=================================
|
||||
If you installed Mayan EDMS by cloning the Git repository issue the commands::
|
||||
|
||||
$ git reset --hard HEAD
|
||||
@@ -155,24 +133,21 @@ The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
|
||||
=============================
|
||||
* None
|
||||
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
|
||||
* :github-issue:`28` "Document indexing based on filesystem problem"
|
||||
* :github-issue:`29` Default ACL documentation
|
||||
* :github-issue:`30` "Ubuntu 12.0.4 LTS complaining about mising 'fabfile/templates/settings_local.py' (master branch)"
|
||||
* :github-issue:`31` "Bulk add tags Feature request"
|
||||
* :github-issue:`32` "Error run $python manage.py syncdb"
|
||||
* :github-issue:`33` "Fetches translations from Transifex. "
|
||||
* :github-issue:`34` "Initial syncdb fails because of import time database access"
|
||||
* :github-issue:`35` "Fix first install syncdb on Postgres"
|
||||
* :github-issue:`37` "When 19 >= &document_type_id >= 10 in url, error page not found"
|
||||
* :github-issue:`39` * `issue #39`_ Feature request "Bulk move folders"
|
||||
===========================
|
||||
* `issue #28`_ "Document indexing based on filesystem problem"
|
||||
* `issue #29`_ Default ACL documentation
|
||||
* `issue #30`_ "Ubuntu 12.0.4 LTS complaining about mising 'fabfile/templates/settings_local.py' (master branch)"
|
||||
* `issue #31`_ "Bulk add tags Feature request"
|
||||
* `issue #32`_ "Error run $python manage.py syncdb"
|
||||
* `issue #33`_ "Fetches translations from Transifex. "
|
||||
* `issue #34`_ "Initial syncdb fails because of import time database access"
|
||||
* `issue #35`_ "Fix first install syncdb on Postgres"
|
||||
* `issue #37`_ "When 19 >= &document_type_id >= 10 in url, error page not found"
|
||||
* `issue #39`_ Feature request "Bulk move folders"
|
||||
|
||||
|
||||
.. _issue #28: https://github.com/rosarior/mayan/issues/28
|
||||
|
||||
@@ -1,10 +1,13 @@
|
||||
Version 1.0
|
||||
===========
|
||||
=============================
|
||||
Mayan EDMS v1.0 release notes
|
||||
=============================
|
||||
|
||||
*August 26, 2014*
|
||||
|
||||
Welcome to Mayan EDMS v1.0!
|
||||
|
||||
Overview
|
||||
--------
|
||||
========
|
||||
After a year of low activity the focus of this release was to get the code
|
||||
updated to work with the most recent version of Django and the most recent
|
||||
version of the dependencies Mayan EDMS uses. The goal was to have a strong
|
||||
@@ -13,30 +16,25 @@ fixes were the primary focus of this cycle. Because of this not much
|
||||
emphasis was placed on adding new features, or at least new features
|
||||
that could have the potential to break things.
|
||||
|
||||
Changes
|
||||
-------
|
||||
What's new in Mayan EDMS v1.0
|
||||
=============================
|
||||
|
||||
New home
|
||||
^^^^^^^^
|
||||
|
||||
~~~~~~~~
|
||||
The growth and reach of the project has necessitaded for a while the move
|
||||
of the project to its own organization in Github. This move has finally been
|
||||
done, the new URL of the project is: https://github.com/mayan-edms/mayan-edms
|
||||
|
||||
|
||||
Django 1.6
|
||||
^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~
|
||||
This release updates the required version of Django to 1.6, bringing with it
|
||||
not only new features, but also a lot of security updates, a new project
|
||||
directory structure and new deployment methods.
|
||||
|
||||
|
||||
Translation updates
|
||||
^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
The translation for all languages were synchronized to the latest transifex
|
||||
project sources. Translation completion as reported by Transifex:
|
||||
~~~~~~~~~~~~~~~~~~~
|
||||
The translation for all languages were synchronized to the latest transifex project sources.
|
||||
Translation completion as reported by Transifex:
|
||||
|
||||
* English - 100%
|
||||
* Spanish - 100%
|
||||
@@ -61,127 +59,96 @@ project sources. Translation completion as reported by Transifex:
|
||||
* Croatian - 3%
|
||||
* Turkish - 3%
|
||||
|
||||
|
||||
Model updates
|
||||
^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~
|
||||
There were some convenience properties created to allow quick access to
|
||||
a document's version and pages. These custom properties were removed and
|
||||
an official method to access these properties as provided by Django is now
|
||||
used.
|
||||
|
||||
|
||||
Source code improvements
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
A circular import of metadata and document_index apps code from the documents app
|
||||
was removed. Document index updates are now handled via signals, not called
|
||||
directly as before. Hundreds of PEP8 style fixes, unused import removals,
|
||||
unused variables removals and removal of remarked or unused code. Removal of the
|
||||
``DEVELOPMENT`` flag (was used to trigger static media serving during development),
|
||||
this is now handled by the ``DEBUG`` flag. The ``DEBUG`` flag is now set to ``True`` by
|
||||
DEVELOPMENT flag (was used to trigger static media serving during development),
|
||||
this is now handled by the DEBUG flag. The DEBUG flag is now set to `True` by
|
||||
default as per Django 1.6 defaults. Removed usage of Django's JSON libraries
|
||||
using Python's JSON library instead. Update of time and date use to use Django's
|
||||
new timezone aware data and time handling. Removal of custom code in favor of using
|
||||
modules provided by Django or by existing 3rd party libraries. Unification of code
|
||||
used for equal or similar purpose in various modules.
|
||||
|
||||
|
||||
Removal of included 3rd party modules
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
One last 3rd party module was included with the source code of Mayan EDMS.
|
||||
This module is now available on PyPI and fetched during the installation instead
|
||||
of being included.
|
||||
|
||||
|
||||
Automatic testing and code coverage check
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Some initial tests were added, which will help with the detection of
|
||||
regressions or bugs when adding new features. More tests are needed, but
|
||||
the initial work has being started.
|
||||
|
||||
|
||||
Update of required modules and libraries versions
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Many of the required modules and libraries have been updated to a more
|
||||
recent version if not to their most recent released version.
|
||||
|
||||
|
||||
Database connection leaks
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Stale database connection being left open by scheduler tasks are now explictly
|
||||
closed. This avoids consumption of the pool of database connections, increases
|
||||
stability and reduces memory usage.
|
||||
|
||||
|
||||
Deletion of detached signatures
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Detached signatures can now be deleted, if accidentally added to the wrong
|
||||
document.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Detached signatures can now be deleted, if accidentally added to the wrong document.
|
||||
|
||||
Removal of fabric based installations
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
These files are now part of their own project and located at https://github.com/mayan-edms/mayan-fabric
|
||||
|
||||
|
||||
Pluggable OCR backends
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~
|
||||
A commonly requested feature, it is now possible to write backends drivers
|
||||
to do document OCR using software or services other than Tesseract.
|
||||
|
||||
|
||||
OCR improvements
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~
|
||||
OCR queue state is now reset when reloading Mayan EMDS, avoiding the OCR queue
|
||||
to remain locked. `unpaper` binary is now an optional pre OCR requirement, the OCR
|
||||
queue will now continue working is ``unpaper`` is not installed. Addition of post
|
||||
queue will now continue working is `unpaper` is not installed. Addition of post
|
||||
OCR processing support for French and German.
|
||||
|
||||
|
||||
License change
|
||||
^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~
|
||||
Mayan EDMS is now licensed under the Apache 2.0 license. This means many
|
||||
things but the main change is that inclusion of Mayan EDMS into
|
||||
commercial products is now explicitly allowed.
|
||||
|
||||
|
||||
PyPI package
|
||||
^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~
|
||||
Mayan EDMS has been packaged and submitted to the PyPI_ Python Package Index
|
||||
making it even easier to install and use.
|
||||
|
||||
|
||||
New REST API
|
||||
^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~
|
||||
This release feature a completely new REST API and automatic API documentation.
|
||||
This new API is also used internally by Mayan EDMS itself.
|
||||
|
||||
This new API is also used internally by *Mayan EDMS* itself.
|
||||
|
||||
Other changes
|
||||
^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~
|
||||
More office document types are now recognized and supported. More file types are now
|
||||
supported as text files and properly previewed and parsed. Removal of the legacy
|
||||
runserver.sh and runserver_plus.sh scripts. New document preview generation and
|
||||
display pipeline, faster, simpler. Inclusion of a proof of concept compressed storage
|
||||
backend.
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
|
||||
=================================
|
||||
If you installed Mayan EDMS by cloning the Git repository issue the commands::
|
||||
|
||||
$ git reset --hard HEAD
|
||||
@@ -208,8 +175,7 @@ The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
|
||||
=============================
|
||||
* If using the SQLite3 database option, rename the file named `mayan.sqlite` file to `db.sqlite3` and
|
||||
move it to the new `media` provided folder.
|
||||
* Also move to the `media` folder any `gpg_home`, `document_storage` and `image_cache` folders
|
||||
@@ -217,8 +183,7 @@ Backward incompatible changes
|
||||
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
|
||||
===========================
|
||||
* None
|
||||
|
||||
|
||||
|
||||
@@ -1,19 +1,18 @@
|
||||
Version 1.1.1
|
||||
=============
|
||||
===============================
|
||||
Mayan EDMS v1.1.1 release notes
|
||||
===============================
|
||||
|
||||
Released: May 21, 2015
|
||||
|
||||
Changes
|
||||
-------
|
||||
What's new
|
||||
==========
|
||||
|
||||
Update to Django 1.6.11
|
||||
^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~
|
||||
The required version of Django has been updated to version 1.6.11_.
|
||||
|
||||
Minor changes
|
||||
^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~
|
||||
- Fix make_dist.sh script
|
||||
- Add test for issue #163
|
||||
- Activate tests for the sources app
|
||||
@@ -26,12 +25,11 @@ Minor changes
|
||||
- Increase size of the lock name field
|
||||
- New style documentation
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
=================================
|
||||
|
||||
Using PIP
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
Type in the console::
|
||||
|
||||
@@ -39,9 +37,8 @@ Type in the console::
|
||||
|
||||
the requirements will also be updated.
|
||||
|
||||
|
||||
Using Git
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
If you installed Mayan EDMS by cloning the Git repository issue the commands::
|
||||
|
||||
@@ -54,9 +51,8 @@ Next upgrade/add the new requirements::
|
||||
|
||||
$ pip install --upgrade -r requirements.txt
|
||||
|
||||
|
||||
Common steps
|
||||
^^^^^^^^^^^^
|
||||
~~~~~~~~~~~~
|
||||
|
||||
Add new static media::
|
||||
|
||||
@@ -66,14 +62,11 @@ The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
|
||||
* None
|
||||
|
||||
=============================
|
||||
None
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
|
||||
* None
|
||||
===========================
|
||||
None
|
||||
|
||||
.. _1.6.11: https://docs.djangoproject.com/en/1.8/releases/1.6.11/
|
||||
|
||||
@@ -1,14 +1,17 @@
|
||||
Version 1.1
|
||||
===========
|
||||
=============================
|
||||
Mayan EDMS v1.1 release notes
|
||||
=============================
|
||||
|
||||
Released: February 10, 2015
|
||||
|
||||
Changes
|
||||
-------
|
||||
Welcome to Mayan EDMS v1.1
|
||||
|
||||
|
||||
What's new in Mayan EDMS v1.1
|
||||
=============================
|
||||
|
||||
Celery
|
||||
^^^^^^
|
||||
|
||||
~~~~~~
|
||||
All background tasks processing has been converted to use Celery_. By default
|
||||
Mayan EDMS runs in "Eager" until a broker and result backend are configured
|
||||
as per `Celery's documentation`_. This change made the built-in scheduler and
|
||||
@@ -16,83 +19,72 @@ job_processing apps obsolete, both were removed.
|
||||
|
||||
|
||||
Views namespaces
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~
|
||||
All views are namespaced_ with the name of the app which defines them. If you have
|
||||
developed 3rd party apps for Mayan EDMS be sure to update any reference to a view
|
||||
by prepending the app name to the view name.
|
||||
|
||||
|
||||
Removal of the splash screen
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
The static image home screen has been replaced with a quick links view, showing
|
||||
the most used actions: Uploading documents, viewing recent documents, viewing
|
||||
all documents and searching documents.
|
||||
|
||||
|
||||
Sending and receiving documents via email
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
A link or entire documents can be sent as attachments via email. Documents can
|
||||
also be received via email with the addition of two document sources named IMAP
|
||||
and POP3 which correspond to the mail protocol used to fetch the documents.
|
||||
Read Django's `email configuration settings documentation`_ for more details
|
||||
on how to set up mail serving.
|
||||
also be received via email with the addition of two document sources named IMAP and POP3
|
||||
which correspond to the mail protocol used to fetch the documents. Read Django's
|
||||
`email configuration settings documentation`_ for more details on how to set up
|
||||
mail serving.
|
||||
|
||||
|
||||
Update to Django 1.6.8
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~
|
||||
Mayan EDMS has been updated to use Django 1.6.8.
|
||||
|
||||
|
||||
Events app
|
||||
^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~
|
||||
The built-in history app has been removed in favor of a new events wrapper app
|
||||
for `Django activity stream`_
|
||||
|
||||
|
||||
Watch folders
|
||||
^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~
|
||||
Filesystem folders can be monitored for change and their files automatically
|
||||
uploaded as documents in Mayan EDMS.
|
||||
|
||||
|
||||
Vagrant file included
|
||||
^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~
|
||||
A vagrant file is now included to allow developers to provision a virtual machine
|
||||
with the latest development version of Mayan EDMS.
|
||||
|
||||
|
||||
User locale profile (language and timezone)
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Interface language and locale setting can now be setup for each user and are not
|
||||
installation wide as before. Date and times offsets are automatically ajusted to
|
||||
each user's timezone settings.
|
||||
|
||||
|
||||
Document states
|
||||
^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~
|
||||
A new simple workflow app that can represent document states has been included.
|
||||
|
||||
|
||||
Explicit document types needed per index
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Indexes can now be tied to document types, eliminating the need to update
|
||||
indexes for every document update. Indexes will only update when a document of
|
||||
the type to which they are associated is updated.
|
||||
|
||||
|
||||
Optional and required metadata types
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Metadata types can now be assigned in two ways to documents types, as optional or
|
||||
required. Values for required metadata types as the name implies, must be entered
|
||||
for documents to be able to be uploaded. Optional metadata types on the other hand
|
||||
@@ -100,16 +92,14 @@ can be left blank by the user.
|
||||
|
||||
|
||||
Bulk document type change
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
It is now possible to change the document type of previously uploaded documents.
|
||||
When the document type of a document is changed the metadata values are reset and
|
||||
the metadata types of the new document type are automatically assigned.
|
||||
|
||||
|
||||
New release cycle
|
||||
^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~
|
||||
Starting with this version a new release cycle methodology will come into effect.
|
||||
The goal of this release cycle is to allow two series of versions of Mayan EDMS to be
|
||||
active at a given time: A new major version with new functionality and a minor version
|
||||
@@ -120,36 +110,29 @@ maintenance mode.
|
||||
|
||||
|
||||
Deprecation of Python 2.6
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Series 1.0 of Mayan EDMS will be the last series supporting Python 2.6. Series
|
||||
2.0 will be using Django 1.7.x which itself requires Python 2.7 or later.
|
||||
|
||||
|
||||
Improved testings
|
||||
^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~
|
||||
Mayan EDMS is now automatically tested against SQLite, MySQL and PostgreSQL.
|
||||
|
||||
|
||||
API updates
|
||||
^^^^^^^^^^^
|
||||
|
||||
Many new API endpoints have been added exposing the majority of Mayan EDMS
|
||||
functionality.
|
||||
~~~~~~~~~~~
|
||||
Many new API endpoints have been added exposing the majority of Mayan EDMS functionality.
|
||||
|
||||
|
||||
Messages contextual improvements
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Many updates and simplifications were made to the source text messages to
|
||||
reduce the difficulty of translating Mayan EDMS and maintaing the contextual
|
||||
meaning of the text messages.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Many updates and simplifications were made to the source text messages to reduce the
|
||||
difficulty of translating Mayan EDMS and maintaing the contextual meaning of the
|
||||
text messages.
|
||||
|
||||
Improved method for custom settings
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Custom settings now use a string based value, it is longer needed to import
|
||||
classes when customizing a setting::
|
||||
|
||||
@@ -162,71 +145,64 @@ Instead the fully qualified name of the class must be passed as the setting valu
|
||||
|
||||
|
||||
Removal of the OCR config setting
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
OCR behavior is now a document type property meaning that it can be turned
|
||||
on or off for specific document types.
|
||||
|
||||
|
||||
Per document language setting
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Previously the document language used for OCR was specified for the entire
|
||||
installation. If documents in multiple languages were uploaded some suffered
|
||||
lower success rates. Now the language of each document can be specified.
|
||||
|
||||
|
||||
Metadata validation and parsing support
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
It is now possible to create functions to validate metadata value input or
|
||||
parse and store corrected values. Three sample metadata validations functions
|
||||
are included: ``Parse date and time``, ``Parse date`` and ``Parse time``.
|
||||
|
||||
|
||||
Removal of 960 grid system in favor Pure CSS's grid system
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
By using Pure CSS's columns based grid system, the move towards a
|
||||
Bootstrap UI migration has advanced greatly.
|
||||
|
||||
|
||||
Simplified UI
|
||||
^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~
|
||||
All user actions as well as the logout button are now under the user functions
|
||||
section.
|
||||
|
||||
|
||||
Stable PDF previews generation
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
The way PDF were being generated has been improved greatly eliminating
|
||||
spurious segmentation faults at the expense of a small speed penalty.
|
||||
|
||||
|
||||
More technical documentation
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Many new sub topics were added to the development section of the documentation
|
||||
to allow developers to better understand the inner workings and philosophies
|
||||
of Mayan EDMS.
|
||||
|
||||
|
||||
Other changes
|
||||
^^^^^^^^^^^^^
|
||||
~~~~~~~~~~~~~
|
||||
|
||||
* Removal of the ``MAIN_SIDE_BAR_SEARCH`` setting
|
||||
* Removal of ``THEMES`` setting and themes support
|
||||
* Removal of ``VERBOSE_LOGIN`` setting
|
||||
* Removal of the MAIN_SIDE_BAR_SEARCH setting
|
||||
* Removal of THEMES and themes support
|
||||
* Removal of VERBOSE_LOGIN setting
|
||||
* Removal of graphics backend supported file format list view
|
||||
* Removal of the ``MAIN_DISABLE_ICONS`` setting
|
||||
* Removal of the MAIN_DISABLE_ICONS setting
|
||||
* Removal of specialized Sentry support
|
||||
* Removal of the ``MAIN_ENABLE_SCROLL_JS`` setting
|
||||
* Removal of the MAIN_ENABLE_SCROLL_JS setting
|
||||
* Remove hardcoded root (/) redirections
|
||||
* Removal of ``APSCheduler`` as a requirement
|
||||
* Removal of APSCheduler as a requirement
|
||||
* Removal of the scheduled jobs view
|
||||
* Removal of the ``web_theme`` app
|
||||
* Removal of the web_theme app
|
||||
* Removal of the sources icon selection support
|
||||
* Removal of the in-app help panels
|
||||
* Removal of the duplicate document search feature
|
||||
@@ -236,8 +212,7 @@ Other changes
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
|
||||
=================================
|
||||
IMPORTANT! Before running the upgrade make sure none of your documents have
|
||||
duplicated metadata types, meaning that the same metadata type must not appear
|
||||
twice for any given document.
|
||||
@@ -265,7 +240,7 @@ Migrate existing database schema with::
|
||||
|
||||
During the migration several messages of stale content types can occur:
|
||||
|
||||
::
|
||||
.. code-block:: bash
|
||||
|
||||
The following content types are stale and need to be deleted:
|
||||
|
||||
@@ -303,7 +278,7 @@ The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
=============================
|
||||
|
||||
* You will have to redefine your document sources due to the new extended models
|
||||
for this app.
|
||||
@@ -312,80 +287,80 @@ Backward incompatible changes
|
||||
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
===========================
|
||||
|
||||
* :github-issue:`30` Document workflows
|
||||
* :github-issue:`32` Watched folders
|
||||
* :github-issue:`34` Postprocessing document queue
|
||||
* :github-issue:`35` Metadata validation
|
||||
* :github-issue:`37` Add from __future__ import unicode_literals
|
||||
* :github-issue:`39` Capitalization of messages
|
||||
* :github-issue:`40` Update references to root ('/') path
|
||||
* :github-issue:`46` Advanced search past 1st page
|
||||
* :github-issue:`49` Problems with large pdf files
|
||||
* :github-issue:`50` raise CommandNotFound(path)
|
||||
* :github-issue:`51` Search with ANONYMOUS error
|
||||
* :github-issue:`55` Document approval cicle?
|
||||
* :github-issue:`56` Removal of non essential features, views, models
|
||||
* :github-issue:`57` Migrate to Celery for task query and periodic tasks
|
||||
* :github-issue:`64` Pluralize messages properly
|
||||
* :github-issue:`65` Backport the ability to receive documents via email
|
||||
* :github-issue:`66` Python 3 compatibility: Add from __future__ import unicode_literals and remove all u''
|
||||
* :github-issue:`68` Revise and update the use gettext vs. gettext_lazy
|
||||
* :github-issue:`69` Feature removal: remove "Unregistered" message from the title bar
|
||||
* :github-issue:`71` Add retry support to the converter task
|
||||
* :github-issue:`72` Delete unused static icons
|
||||
* :github-issue:`74` Cache a document's first document version
|
||||
* :github-issue:`75` Move automatic OCR queueing from a configuration settings to a property of Document Type model
|
||||
* :github-issue:`77` Add document view permission support to the search app
|
||||
* :github-issue:`78` COMMON_TEMPORARY_DIRECTORY seems not to be used everywhere
|
||||
* :github-issue:`79` Error installing
|
||||
* :github-issue:`82` Make document type a required field
|
||||
* :github-issue:`83` Simplify source app views and navigation
|
||||
* :github-issue:`84` Remove template context variable 'object_name' to improve translations
|
||||
* :github-issue:`85` Reset page count for a single document
|
||||
* :github-issue:`86` Move migrations to new 'south_migrations' folders
|
||||
* :github-issue:`87` Per document language selection
|
||||
* :github-issue:`88` Remove metadata type selection from the upload wizard
|
||||
* :github-issue:`89` Allow metadata types to be required for specific document types
|
||||
* :github-issue:`90` Remove the app_registry app
|
||||
* :github-issue:`91` Don't preserve the ?page= URL query string value when switching sources during document upload
|
||||
* :github-issue:`92` Make register_multi_item_links class aware
|
||||
* :github-issue:`95` Installation error on Mac OSX; OSError: [Errno 2] No such file or directory
|
||||
* :github-issue:`96` Remove hard code User model references
|
||||
* :github-issue:`97` Make multi item links a drop down list
|
||||
* :github-issue:`104` Finish polishing metadata validation patch
|
||||
* :github-issue:`105` Tie smart links setups to document types
|
||||
* :github-issue:`106` Convert document indexing app actions to Celery
|
||||
* :github-issue:`107` Restrict document metadata addition and removal
|
||||
* :github-issue:`108` New home screen
|
||||
* :github-issue:`109` Add Roles API endpoints
|
||||
* :github-issue:`111` Add Checkouts API endpoints
|
||||
* :github-issue:`112` Add OCR API endpoints
|
||||
* :github-issue:`114` Implement UI language as user preference
|
||||
* :github-issue:`116` Add documentation topic explicitly noting the binary requirements
|
||||
* :github-issue:`118` When a metadata type is removed from a document type, remove it from all the documents of that type
|
||||
* :github-issue:`119` When a required metadata type is added to a document type, add it to all documents of that type
|
||||
* :github-issue:`126` Failing migration with SQLite
|
||||
* :github-issue:`127` Failing migration with Postgres
|
||||
* :github-issue:`128` Add Indexes API endpoints
|
||||
* :github-issue:`129` Search api shouldn't memorize requested page as part of the query
|
||||
* :github-issue:`130` Users API is not working correctly
|
||||
* :github-issue:`131` Is there an API to update a user's password?
|
||||
* :github-issue:`137` Enhancement of language selection
|
||||
* :github-issue:`138` Possibility to keep zoom factor
|
||||
* :github-issue:`139` Translatability of language selection
|
||||
* :github-issue:`140` Thumbnail creation for ods crashing
|
||||
* :github-issue:`143` Exception Value: 'exceptions.ValueError' object has no attribute 'messages'
|
||||
* :github-issue:`144` Behavior of 'Edit metadata' (Recent Documents)
|
||||
* :github-issue:`146` Periodic task not initiated for mail boxes and watch folders
|
||||
* :github-issue:`149` Attribute error in document download
|
||||
* :github-issue:`150` Double second menu entry
|
||||
* :github-issue:`152` Document content empty
|
||||
* :github-issue:`153` south migration with postgres: documents: 031_remove_orphan_documents
|
||||
* :github-issue:`154` south migration with postgres: tags: 0002_auto__add_tag__chg_field_tagproperties_tag
|
||||
* :github-issue:`157` upload new version of a document not working
|
||||
* :github-issue:`158` Plural form not matching singular form in ocr app bug i18n
|
||||
* `issue #30 <https://github.com/mayan-edms/mayan-edms/issues/30>`_ Document workflows
|
||||
* `issue #32 <https://github.com/mayan-edms/mayan-edms/issues/32>`_ Watched folders
|
||||
* `issue #34 <https://github.com/mayan-edms/mayan-edms/issues/34>`_ Postprocessing document queue
|
||||
* `issue #35 <https://github.com/mayan-edms/mayan-edms/issues/35>`_ Metadata validation
|
||||
* `issue #37 <https://github.com/mayan-edms/mayan-edms/issues/37>`_ Add from __future__ import unicode_literals
|
||||
* `issue #39 <https://github.com/mayan-edms/mayan-edms/issues/39>`_ Capitalization of messages
|
||||
* `issue #40 <https://github.com/mayan-edms/mayan-edms/issues/40>`_ Update references to root ('/') path
|
||||
* `issue #46 <https://github.com/mayan-edms/mayan-edms/issues/46>`_ Advanced search past 1st page
|
||||
* `issue #49 <https://github.com/mayan-edms/mayan-edms/issues/49>`_ Problems with large pdf files
|
||||
* `issue #50 <https://github.com/mayan-edms/mayan-edms/issues/50>`_ raise CommandNotFound(path)
|
||||
* `issue #51 <https://github.com/mayan-edms/mayan-edms/issues/51>`_ Search with ANONYMOUS error
|
||||
* `issue #55 <https://github.com/mayan-edms/mayan-edms/issues/55>`_ Document approval cicle?
|
||||
* `issue #56 <https://github.com/mayan-edms/mayan-edms/issues/56>`_ Removal of non essential features, views, models
|
||||
* `issue #57 <https://github.com/mayan-edms/mayan-edms/issues/57>`_ Migrate to Celery for task query and periodic tasks
|
||||
* `issue #64 <https://github.com/mayan-edms/mayan-edms/issues/64>`_ Pluralize messages properly
|
||||
* `issue #65 <https://github.com/mayan-edms/mayan-edms/issues/65>`_ Backport the ability to receive documents via email
|
||||
* `issue #66 <https://github.com/mayan-edms/mayan-edms/issues/66>`_ Python 3 compatibility: Add from __future__ import unicode_literals and remove all u''
|
||||
* `issue #68 <https://github.com/mayan-edms/mayan-edms/issues/68>`_ Revise and update the use gettext vs. gettext_lazy
|
||||
* `issue #69 <https://github.com/mayan-edms/mayan-edms/issues/69>`_ Feature removal: remove "Unregistered" message from the title bar
|
||||
* `issue #71 <https://github.com/mayan-edms/mayan-edms/issues/71>`_ Add retry support to the converter task
|
||||
* `issue #72 <https://github.com/mayan-edms/mayan-edms/issues/72>`_ Delete unused static icons
|
||||
* `issue #74 <https://github.com/mayan-edms/mayan-edms/issues/74>`_ Cache a document's first document version
|
||||
* `issue #75 <https://github.com/mayan-edms/mayan-edms/issues/75>`_ Move automatic OCR queueing from a configuration settings to a property of Document Type model
|
||||
* `issue #77 <https://github.com/mayan-edms/mayan-edms/issues/77>`_ Add document view permission support to the search app
|
||||
* `issue #78 <https://github.com/mayan-edms/mayan-edms/issues/78>`_ COMMON_TEMPORARY_DIRECTORY seems not to be used everywhere
|
||||
* `issue #79 <https://github.com/mayan-edms/mayan-edms/issues/79>`_ Error installing
|
||||
* `issue #82 <https://github.com/mayan-edms/mayan-edms/issues/82>`_ Make document type a required field
|
||||
* `issue #83 <https://github.com/mayan-edms/mayan-edms/issues/83>`_ Simplify source app views and navigation
|
||||
* `issue #84 <https://github.com/mayan-edms/mayan-edms/issues/84>`_ Remove template context variable 'object_name' to improve translations
|
||||
* `issue #85 <https://github.com/mayan-edms/mayan-edms/issues/85>`_ Reset page count for a single document
|
||||
* `issue #86 <https://github.com/mayan-edms/mayan-edms/issues/86>`_ Move migrations to new 'south_migrations' folders
|
||||
* `issue #87 <https://github.com/mayan-edms/mayan-edms/issues/87>`_ Per document language selection
|
||||
* `issue #88 <https://github.com/mayan-edms/mayan-edms/issues/88>`_ Remove metadata type selection from the upload wizard
|
||||
* `issue #89 <https://github.com/mayan-edms/mayan-edms/issues/89>`_ Allow metadata types to be required for specific document types
|
||||
* `issue #90 <https://github.com/mayan-edms/mayan-edms/issues/90>`_ Remove the app_registry app
|
||||
* `issue #91 <https://github.com/mayan-edms/mayan-edms/issues/91>`_ Don't preserve the ?page= URL query string value when switching sources during document upload
|
||||
* `issue #92 <https://github.com/mayan-edms/mayan-edms/issues/92>`_ Make register_multi_item_links class aware
|
||||
* `issue #95 <https://github.com/mayan-edms/mayan-edms/issues/95>`_ Installation error on Mac OSX; OSError: [Errno 2] No such file or directory
|
||||
* `issue #96 <https://github.com/mayan-edms/mayan-edms/issues/96>`_ Remove hard code User model references
|
||||
* `issue #97 <https://github.com/mayan-edms/mayan-edms/issues/97>`_ Make multi item links a drop down list
|
||||
* `issue #104 <https://github.com/mayan-edms/mayan-edms/issues/104>`_ Finish polishing metadata validation patch
|
||||
* `issue #105 <https://github.com/mayan-edms/mayan-edms/issues/105>`_ Tie smart links setups to document types
|
||||
* `issue #106 <https://github.com/mayan-edms/mayan-edms/issues/106>`_ Convert document indexing app actions to Celery
|
||||
* `issue #107 <https://github.com/mayan-edms/mayan-edms/issues/107>`_ Restrict document metadata addition and removal
|
||||
* `issue #108 <https://github.com/mayan-edms/mayan-edms/issues/108>`_ New home screen
|
||||
* `issue #109 <https://github.com/mayan-edms/mayan-edms/issues/109>`_ Add Roles API endpoints
|
||||
* `issue #111 <https://github.com/mayan-edms/mayan-edms/issues/111>`_ Add Checkouts API endpoints
|
||||
* `issue #112 <https://github.com/mayan-edms/mayan-edms/issues/112>`_ Add OCR API endpoints
|
||||
* `issue #114 <https://github.com/mayan-edms/mayan-edms/issues/114>`_ Implement UI language as user preference
|
||||
* `issue #116 <https://github.com/mayan-edms/mayan-edms/issues/116>`_ Add documentation topic explicitly noting the binary requirements
|
||||
* `issue #118 <https://github.com/mayan-edms/mayan-edms/issues/118>`_ When a metadata type is removed from a document type, remove it from all the documents of that type
|
||||
* `issue #119 <https://github.com/mayan-edms/mayan-edms/issues/119>`_ When a required metadata type is added to a document type, add it to all documents of that type
|
||||
* `issue #126 <https://github.com/mayan-edms/mayan-edms/issues/126>`_ Failing migration with SQLite
|
||||
* `issue #127 <https://github.com/mayan-edms/mayan-edms/issues/127>`_ Failing migration with Postgres
|
||||
* `issue #128 <https://github.com/mayan-edms/mayan-edms/issues/128>`_ Add Indexes API endpoints
|
||||
* `issue #129 <https://github.com/mayan-edms/mayan-edms/issues/129>`_ Search api shouldn't memorize requested page as part of the query
|
||||
* `issue #130 <https://github.com/mayan-edms/mayan-edms/issues/130>`_ Users API is not working correctly
|
||||
* `issue #131 <https://github.com/mayan-edms/mayan-edms/issues/131>`_ Is there an API to update a user's password?
|
||||
* `issue #137 <https://github.com/mayan-edms/mayan-edms/issues/137>`_ Enhancement of language selection
|
||||
* `issue #138 <https://github.com/mayan-edms/mayan-edms/issues/138>`_ Possibility to keep zoom factor
|
||||
* `issue #139 <https://github.com/mayan-edms/mayan-edms/issues/139>`_ Translatability of language selection
|
||||
* `issue #140 <https://github.com/mayan-edms/mayan-edms/issues/140>`_ Thumbnail creation for ods crashing
|
||||
* `issue #143 <https://github.com/mayan-edms/mayan-edms/issues/143>`_ Exception Value: 'exceptions.ValueError' object has no attribute 'messages'
|
||||
* `issue #144 <https://github.com/mayan-edms/mayan-edms/issues/144>`_ Behavior of 'Edit metadata' (Recent Documents)
|
||||
* `issue #146 <https://github.com/mayan-edms/mayan-edms/issues/146>`_ Periodic task not initiated for mail boxes and watch folders
|
||||
* `issue #149 <https://github.com/mayan-edms/mayan-edms/issues/149>`_ Attribute error in document download
|
||||
* `issue #150 <https://github.com/mayan-edms/mayan-edms/issues/150>`_ Double second menu entry
|
||||
* `issue #152 <https://github.com/mayan-edms/mayan-edms/issues/152>`_ Document content empty
|
||||
* `issue #153 <https://github.com/mayan-edms/mayan-edms/issues/153>`_ south migration with postgres: documents: 031_remove_orphan_documents
|
||||
* `issue #154 <https://github.com/mayan-edms/mayan-edms/issues/154>`_ south migration with postgres: tags: 0002_auto__add_tag__chg_field_tagproperties_tag
|
||||
* `issue #157 <https://github.com/mayan-edms/mayan-edms/issues/157>`_ upload new version of a document not working
|
||||
* `issue #158 <https://github.com/mayan-edms/mayan-edms/issues/158>`_ Plural form not matching singular form in ocr app bug i18n
|
||||
|
||||
|
||||
.. _Celery: http://www.celeryproject.org/
|
||||
|
||||
@@ -1,34 +1,31 @@
|
||||
Version 2.0.1
|
||||
=============
|
||||
===============================
|
||||
Mayan EDMS v2.0.1 release notes
|
||||
===============================
|
||||
|
||||
Released: January 22, 2016
|
||||
|
||||
Changes
|
||||
-------
|
||||
Welcome to Mayan EDMS v2.0.1
|
||||
|
||||
|
||||
What's new in Mayan EDMS v2.0.1
|
||||
===============================
|
||||
|
||||
Required metadata was not enforce correctly
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
-------------------------------------------
|
||||
Fixed a situation where documents having required metadata could still be
|
||||
uploaded without entering a value for the required metadata.
|
||||
|
||||
|
||||
Fix multiple document metadata adding
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
-------------------------------------
|
||||
Fixed a bug when adding metadata to multiple documents.
|
||||
|
||||
|
||||
Fix multiple document metadata editing
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
--------------------------------------
|
||||
Fixed a bug that made it impossible to edit multiple documents' metadata values
|
||||
if one of the documents had no previous value for it's metadata.
|
||||
|
||||
|
||||
Updated Vagrant file
|
||||
^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
--------------------
|
||||
The included Vagrant file now provide 2 boxes: development and production.
|
||||
Selection which kind of box to provision is as easy as executing::
|
||||
|
||||
@@ -40,22 +37,18 @@ or
|
||||
|
||||
|
||||
Other changes
|
||||
^^^^^^^^^^^^^
|
||||
|
||||
-------------
|
||||
* None
|
||||
|
||||
|
||||
Removals
|
||||
--------
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
|
||||
Using PIP
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
Type in the console::
|
||||
|
||||
@@ -63,9 +56,8 @@ Type in the console::
|
||||
|
||||
the requirements will also be updated automatically.
|
||||
|
||||
|
||||
Using Git
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
If you installed Mayan EDMS by cloning the Git repository issue the commands::
|
||||
|
||||
@@ -79,9 +71,8 @@ Next upgrade/add the new requirements::
|
||||
|
||||
$ pip install --upgrade -r requirements.txt
|
||||
|
||||
|
||||
Common steps
|
||||
^^^^^^^^^^^^
|
||||
~~~~~~~~~~~~
|
||||
|
||||
Migrate existing database schema with::
|
||||
|
||||
@@ -95,15 +86,14 @@ The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
=============================
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
===========================
|
||||
|
||||
* :gitlab-issue:`243` System allows a user to skip entering values for a required metadata field while uploading a new document
|
||||
* :gitlab-issue:`245` Add multiple metadata not possible
|
||||
* `GitLab issue #243 <https://gitlab.com/mayan-edms/mayan-edms/issues/243>`_ System allows a user to skip entering values for a required metadata field while uploading a new document
|
||||
* `GitLab issue #245 <https://gitlab.com/mayan-edms/mayan-edms/issues/245>`_ Add multiple metadata not possible
|
||||
|
||||
.. _PyPI: https://pypi.python.org/pypi/mayan-edms/
|
||||
|
||||
@@ -1,39 +1,34 @@
|
||||
Version 2.0.2
|
||||
=============
|
||||
===============================
|
||||
Mayan EDMS v2.0.2 release notes
|
||||
===============================
|
||||
|
||||
Released: February 15, 2016
|
||||
|
||||
Changes
|
||||
-------
|
||||
Welcome to Mayan EDMS v2.0.2
|
||||
|
||||
What's new
|
||||
==========
|
||||
|
||||
Fine tune "Update" checkbox from the metadata entry form
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
--------------------------------------------------------
|
||||
Previously the update checkbox was ignored during the metadata step of the
|
||||
document upload wizard with the wizard always creating a metadata entry for the
|
||||
new document even if the entry was left blank. The checkbox now controls whether
|
||||
or not the wizard will store try to create the metadata entry.
|
||||
|
||||
|
||||
Fix empty optional lookup metadata fields behavior
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
--------------------------------------------------
|
||||
An edge case was fixed that caused validation to be executed for empty metadata
|
||||
fields that had a value lookup list.
|
||||
|
||||
|
||||
Remove Docker files
|
||||
^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
-------------------
|
||||
Included Docker and Docker Compose files were removed since the Mayan EDMS Docker
|
||||
(https://gitlab.com/mayan-edms/mayan-edms-docker) repository is stable.
|
||||
|
||||
|
||||
Other changes
|
||||
^^^^^^^^^^^^^
|
||||
|
||||
- Only extract validation error messages from ``ValidationError`` exception
|
||||
instances.
|
||||
-------------
|
||||
- Only extract validation error messages from ValidationError exception instances.
|
||||
- Add 2 second delay to document version tests to workaround MySQL not storing
|
||||
the millisecond part of the document version's timestamp.
|
||||
- Install testing dependencies when installing development dependencies.
|
||||
@@ -41,18 +36,15 @@ Other changes
|
||||
- Move metadata form value validation to .clean() method.
|
||||
- Add HTML tags stripping to the browser title generation template.
|
||||
|
||||
|
||||
Removals
|
||||
--------
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
|
||||
Using PIP
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
Type in the console::
|
||||
|
||||
@@ -60,9 +52,8 @@ Type in the console::
|
||||
|
||||
the requirements will also be updated automatically.
|
||||
|
||||
|
||||
Using Git
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
If you installed Mayan EDMS by cloning the Git repository issue the commands::
|
||||
|
||||
@@ -76,9 +67,8 @@ Next upgrade/add the new requirements::
|
||||
|
||||
$ pip install --upgrade -r requirements.txt
|
||||
|
||||
|
||||
Common steps
|
||||
^^^^^^^^^^^^
|
||||
~~~~~~~~~~~~
|
||||
|
||||
Migrate existing database schema with::
|
||||
|
||||
@@ -92,14 +82,13 @@ The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
=============================
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
===========================
|
||||
|
||||
* :gitlab-issue:`250` Empty optional lookup metadata trigger validation error.
|
||||
* `GitLab issue #250 <https://gitlab.com/mayan-edms/mayan-edms/issues/250>`_ Empty optional lookup metadata trigger validation error.
|
||||
|
||||
.. _PyPI: https://pypi.python.org/pypi/mayan-edms/
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,46 +1,41 @@
|
||||
Version 2.1.1
|
||||
=============
|
||||
===============================
|
||||
Mayan EDMS v2.1.1 release notes
|
||||
===============================
|
||||
|
||||
Released: May 17, 2016
|
||||
|
||||
What's new
|
||||
==========
|
||||
|
||||
This is a bugfix release and all users are encouraged to upgrade.
|
||||
|
||||
Changes
|
||||
-------
|
||||
|
||||
Fix object column resolution issue in navigation app
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
----------------------------------------------------
|
||||
Version 2.1 includes a navigation feature that allows model instances from a
|
||||
queryset generated using the .defer() or .only() Django filter optimization
|
||||
features to resolve to their parent class transparently. This optimization
|
||||
caused problems with the sources app which uses a
|
||||
|
||||
|
||||
Missing Tesseract language files
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
--------------------------------
|
||||
The Tesseract OCR backend now reports if the tesseract language file is missing
|
||||
for the requested document's language.
|
||||
|
||||
|
||||
Other changes
|
||||
^^^^^^^^^^^^^
|
||||
-------------
|
||||
|
||||
- Ensure the automatic default index is created after the default document type.
|
||||
|
||||
|
||||
Removals
|
||||
--------
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
|
||||
Using PIP
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
Type in the console::
|
||||
|
||||
@@ -48,9 +43,8 @@ Type in the console::
|
||||
|
||||
the requirements will also be updated automatically.
|
||||
|
||||
|
||||
Using Git
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
If you installed Mayan EDMS by cloning the Git repository issue the commands::
|
||||
|
||||
@@ -64,9 +58,8 @@ Next upgrade/add the new requirements::
|
||||
|
||||
$ pip install --upgrade -r requirements.txt
|
||||
|
||||
|
||||
Common steps
|
||||
^^^^^^^^^^^^
|
||||
~~~~~~~~~~~~
|
||||
|
||||
Migrate existing database schema with::
|
||||
|
||||
@@ -80,16 +73,15 @@ The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
=============================
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
===========================
|
||||
|
||||
* :gitlab-issue:`288` Can't add sources in mayan-edms 2.1.
|
||||
* :gitlab-issue:`289` OCR fails with Exception.
|
||||
* `GitLab issue #288 <https://gitlab.com/mayan-edms/mayan-edms/issues/288>`_ Can't add sources in mayan-edms 2.1.
|
||||
* `GitLab issue #289 <https://gitlab.com/mayan-edms/mayan-edms/issues/289>`_ OCR fails with Exception.
|
||||
|
||||
|
||||
.. _PyPI: https://pypi.python.org/pypi/mayan-edms/
|
||||
|
||||
@@ -1,30 +1,31 @@
|
||||
Version 2.1.10
|
||||
==============
|
||||
================================
|
||||
Mayan EDMS v2.1.10 release notes
|
||||
================================
|
||||
|
||||
Released: February 13, 2017
|
||||
|
||||
What's new
|
||||
==========
|
||||
|
||||
This is a micro release equal to the previews version from the user's point of view.
|
||||
The version number was increase to workaround some issues with the Python
|
||||
Package Index not allowing re-uploads.
|
||||
|
||||
Changes
|
||||
-------
|
||||
-------------
|
||||
|
||||
- Update Makefile to use twine for releases.
|
||||
- Add Makefile target to make test releases.
|
||||
|
||||
|
||||
Removals
|
||||
--------
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
|
||||
Using PIP
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
Type in the console::
|
||||
|
||||
@@ -32,9 +33,8 @@ Type in the console::
|
||||
|
||||
the requirements will also be updated automatically.
|
||||
|
||||
|
||||
Using Git
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
If you installed Mayan EDMS by cloning the Git repository issue the commands::
|
||||
|
||||
@@ -48,9 +48,8 @@ Next upgrade/add the new requirements::
|
||||
|
||||
$ pip install --upgrade -r requirements.txt
|
||||
|
||||
|
||||
Common steps
|
||||
^^^^^^^^^^^^
|
||||
~~~~~~~~~~~~
|
||||
|
||||
Migrate existing database schema with::
|
||||
|
||||
@@ -64,13 +63,12 @@ The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
=============================
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
===========================
|
||||
|
||||
* None
|
||||
|
||||
|
||||
@@ -1,13 +1,17 @@
|
||||
Version 2.1.11
|
||||
==============
|
||||
================================
|
||||
Mayan EDMS v2.1.11 release notes
|
||||
================================
|
||||
|
||||
Released: March 14, 2017
|
||||
|
||||
What's new
|
||||
==========
|
||||
|
||||
This is a bug-fix release and all users are encouraged to upgrade. The focus
|
||||
of this micro release was REST API improvement.
|
||||
|
||||
Changes
|
||||
-------
|
||||
-------------
|
||||
|
||||
- Added a quick rename serializer to the document type API serializer.
|
||||
- Added per document type, workflow list API view. The URL for this endpoint is
|
||||
@@ -20,7 +24,7 @@ Changes
|
||||
- Implemented document workflows transition ACLs. GitLab issue #321.
|
||||
- Add document comments API endpoints. GitHub issue #249.
|
||||
- Add support for overriding the Celery class. The setting is named
|
||||
``MAYAN_CELERY_CLASS`` and expects a dotted python path to the class to use.
|
||||
MAYAN_CELERY_CLASS and expects a dotted python path to the class to use.
|
||||
- Changed the document upload view in source app to not use the HTTP referer
|
||||
URL blindly, but instead recompose the URL using known view name. Needed
|
||||
when integrating Mayan EDMS into other app via using iframes.
|
||||
@@ -30,18 +34,15 @@ Changes
|
||||
- Added support for adding or editing document types to smart links via the
|
||||
API.
|
||||
|
||||
|
||||
Removals
|
||||
--------
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
|
||||
Using PIP
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
Type in the console::
|
||||
|
||||
@@ -49,9 +50,8 @@ Type in the console::
|
||||
|
||||
the requirements will also be updated automatically.
|
||||
|
||||
|
||||
Using Git
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
If you installed Mayan EDMS by cloning the Git repository issue the commands::
|
||||
|
||||
@@ -65,9 +65,8 @@ Next upgrade/add the new requirements::
|
||||
|
||||
$ pip install --upgrade -r requirements.txt
|
||||
|
||||
|
||||
Common steps
|
||||
^^^^^^^^^^^^
|
||||
~~~~~~~~~~~~
|
||||
|
||||
Migrate existing database schema with::
|
||||
|
||||
@@ -81,16 +80,15 @@ The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
=============================
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
===========================
|
||||
|
||||
* :github-issue:`355` Add document comments API [$50 US]
|
||||
* :gitlab-issue:`321` Transition ACLS
|
||||
* :gitlab-issue:`357` It should be possible to retrieve all workflows for a given DocumentType from the API
|
||||
* `Github issue #249 <https://github.com/mayan-edms/mayan-edms/issues/249>`_ Add document comments API [$50 US]
|
||||
* `GitLab issue #321 <https://gitlab.com/mayan-edms/mayan-edms/issues/321>`_ Transition ACLS
|
||||
* `GitLab issue #357 <https://gitlab.com/mayan-edms/mayan-edms/issues/357>`_ It should be possible to retrieve all workflows for a given DocumentType from the API
|
||||
|
||||
.. _PyPI: https://pypi.python.org/pypi/mayan-edms/
|
||||
|
||||
@@ -1,45 +1,40 @@
|
||||
Version 2.1.2
|
||||
=============
|
||||
===============================
|
||||
Mayan EDMS v2.1.2 release notes
|
||||
===============================
|
||||
|
||||
Released: May 20, 2016
|
||||
|
||||
What's new
|
||||
==========
|
||||
|
||||
This is a bugfix release and all users are encouraged to upgrade.
|
||||
|
||||
Changes
|
||||
-------
|
||||
|
||||
Language list sorting
|
||||
^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
---------------------
|
||||
The document language list and the user locale profile language list are now
|
||||
sorted to make it easier to find the desired language.
|
||||
|
||||
|
||||
Fixed the metadata lookup options: {{ users }} and {{ groups }}
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
---------------------------------------------------------------
|
||||
When configuring metadata type lookup options the {{ users }} and {{ groups }}
|
||||
special options can be used to display a list of users or a list of groups.
|
||||
These options where producing a list in the wrong format and were updated.
|
||||
|
||||
|
||||
Other changes
|
||||
^^^^^^^^^^^^^
|
||||
|
||||
-------------
|
||||
- Add Makefile for common development tasks
|
||||
|
||||
|
||||
Removals
|
||||
--------
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
|
||||
Using PIP
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
Type in the console::
|
||||
|
||||
@@ -47,9 +42,8 @@ Type in the console::
|
||||
|
||||
the requirements will also be updated automatically.
|
||||
|
||||
|
||||
Using Git
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
If you installed Mayan EDMS by cloning the Git repository issue the commands::
|
||||
|
||||
@@ -63,9 +57,8 @@ Next upgrade/add the new requirements::
|
||||
|
||||
$ pip install --upgrade -r requirements.txt
|
||||
|
||||
|
||||
Common steps
|
||||
^^^^^^^^^^^^
|
||||
~~~~~~~~~~~~
|
||||
|
||||
Migrate existing database schema with::
|
||||
|
||||
@@ -79,15 +72,15 @@ The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
=============================
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
===========================
|
||||
|
||||
* `GitLab issue #290 <https://gitlab.com/mayan-edms/mayan-edms/issues/290>`_ Unicode characters not supported as metadata values
|
||||
* `GitLab issue #292 <https://gitlab.com/mayan-edms/mayan-edms/issues/292>`_ Sort languages by name not by abbreviation
|
||||
|
||||
* :gitlab-issue:`290` Unicode characters not supported as metadata values
|
||||
* :gitlab-issue:`292` Sort languages by name not by abbreviation
|
||||
|
||||
.. _PyPI: https://pypi.python.org/pypi/mayan-edms/
|
||||
|
||||
@@ -1,26 +1,24 @@
|
||||
Version 2.1.3
|
||||
=============
|
||||
===============================
|
||||
Mayan EDMS v2.1.3 release notes
|
||||
===============================
|
||||
|
||||
Released: June 29, 2016
|
||||
|
||||
What's new
|
||||
==========
|
||||
|
||||
This is a bug-fix release and all users are encouraged to upgrade.
|
||||
|
||||
Changes
|
||||
-------
|
||||
|
||||
Temporary files cleanup
|
||||
^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
-----------------------
|
||||
When uploading PDF files that had been OCRed by previous software, the text
|
||||
parser backend that uses Poppler, would leave behind some temporary files in
|
||||
the /tmp folder. The issue has been resolved and from the fix a test mixin
|
||||
system check has been devised that will identify places in the codebase with
|
||||
similar behaviors, reducing the recurrence of similar issues in the future.
|
||||
|
||||
|
||||
Other changes
|
||||
^^^^^^^^^^^^^
|
||||
|
||||
-------------
|
||||
- Add help message when initialsetup migration phase fails. Relates to GitLab issue #296
|
||||
- Start using self.setdout instead of print as per documentation.
|
||||
- Fix GitLab issue #295, "When editing a user the top bar jumps to the name of the user".
|
||||
@@ -29,18 +27,15 @@ Other changes
|
||||
- Add missing temporary file cleanup for office documents.
|
||||
- Fix file descriptor leak in the document signature download test.
|
||||
|
||||
|
||||
Removals
|
||||
--------
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
|
||||
Using PIP
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
Type in the console::
|
||||
|
||||
@@ -48,9 +43,8 @@ Type in the console::
|
||||
|
||||
the requirements will also be updated automatically.
|
||||
|
||||
|
||||
Using Git
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
If you installed Mayan EDMS by cloning the Git repository issue the commands::
|
||||
|
||||
@@ -64,9 +58,8 @@ Next upgrade/add the new requirements::
|
||||
|
||||
$ pip install --upgrade -r requirements.txt
|
||||
|
||||
|
||||
Common steps
|
||||
^^^^^^^^^^^^
|
||||
~~~~~~~~~~~~
|
||||
|
||||
Migrate existing database schema with::
|
||||
|
||||
@@ -80,16 +73,15 @@ The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
=============================
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
===========================
|
||||
|
||||
* :gitlab-issue:`295` When editing a user the top bar jumps to the name of the user
|
||||
* :gitlab-issue:`309` Temp files quickly filling-up my /tmp (1GB tmpfs)
|
||||
* `GitLab issue #295 <https://gitlab.com/mayan-edms/mayan-edms/issues/295>`_ When editing a user the top bar jumps to the name of the user
|
||||
* `GitLab issue #309 <https://gitlab.com/mayan-edms/mayan-edms/issues/309>`_ Temp files quickly filling-up my /tmp (1GB tmpfs)
|
||||
|
||||
|
||||
.. _PyPI: https://pypi.python.org/pypi/mayan-edms/
|
||||
|
||||
@@ -1,13 +1,16 @@
|
||||
Version 2.1.4
|
||||
=============
|
||||
===============================
|
||||
Mayan EDMS v2.1.4 release notes
|
||||
===============================
|
||||
|
||||
Released: October 28, 2016
|
||||
|
||||
What's new
|
||||
==========
|
||||
|
||||
This is a bug-fix release and all users are encouraged to upgrade.
|
||||
|
||||
Changes
|
||||
-------
|
||||
|
||||
Other changes
|
||||
-------------
|
||||
- Fix statistics namespace list display view
|
||||
- Fix events list display view
|
||||
- Update required Django version to 1.8.15
|
||||
@@ -18,18 +21,15 @@ Changes
|
||||
- New GPG backend system
|
||||
- Minor documentation updates
|
||||
|
||||
|
||||
Removals
|
||||
--------
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
|
||||
Using PIP
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
Type in the console::
|
||||
|
||||
@@ -37,9 +37,8 @@ Type in the console::
|
||||
|
||||
the requirements will also be updated automatically.
|
||||
|
||||
|
||||
Using Git
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
If you installed Mayan EDMS by cloning the Git repository issue the commands::
|
||||
|
||||
@@ -53,9 +52,8 @@ Next upgrade/add the new requirements::
|
||||
|
||||
$ pip install --upgrade -r requirements.txt
|
||||
|
||||
|
||||
Common steps
|
||||
^^^^^^^^^^^^
|
||||
~~~~~~~~~~~~
|
||||
|
||||
Migrate existing database schema with::
|
||||
|
||||
@@ -69,16 +67,15 @@ The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
=============================
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
===========================
|
||||
|
||||
* :gitlab-issue:`311` acl page return ContentType:Document
|
||||
* :gitlab-issue:`316` Error when trying to access the statistics
|
||||
* :gitlab-issue:`324` Document signature tests fail in Ubuntu 16.10
|
||||
* `GitLab issue #311 <https://gitlab.com/mayan-edms/mayan-edms/issues/311>`_ acl page return ContentType:Document
|
||||
* `GitLab issue #316 <https://gitlab.com/mayan-edms/mayan-edms/issues/316>`_ Error when trying to access the statistics
|
||||
* `GitLab issue #324 <https://gitlab.com/mayan-edms/mayan-edms/issues/324>`_ Document signature tests fail in Ubuntu 16.10
|
||||
|
||||
.. _PyPI: https://pypi.python.org/pypi/mayan-edms/
|
||||
|
||||
@@ -1,12 +1,16 @@
|
||||
Version 2.1.5
|
||||
=============
|
||||
===============================
|
||||
Mayan EDMS v2.1.5 release notes
|
||||
===============================
|
||||
|
||||
Released: November 8, 2016
|
||||
|
||||
What's new
|
||||
==========
|
||||
|
||||
This is a bug-fix release and all users are encouraged to upgrade.
|
||||
|
||||
Changes
|
||||
-------
|
||||
Other changes
|
||||
-------------
|
||||
|
||||
- Backport resize transformation math operation fix (GitLab #319).
|
||||
- Update Pillow to 3.1.2
|
||||
@@ -20,18 +24,15 @@ Changes
|
||||
- Fix ACL create view HTML response type. (GitLab #335).
|
||||
- Expland staging folder and watch folder explanation.
|
||||
|
||||
|
||||
Removals
|
||||
--------
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
|
||||
Using PIP
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
Type in the console::
|
||||
|
||||
@@ -39,9 +40,8 @@ Type in the console::
|
||||
|
||||
the requirements will also be updated automatically.
|
||||
|
||||
|
||||
Using Git
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
If you installed Mayan EDMS by cloning the Git repository issue the commands::
|
||||
|
||||
@@ -55,9 +55,8 @@ Next upgrade/add the new requirements::
|
||||
|
||||
$ pip install --upgrade -r requirements.txt
|
||||
|
||||
|
||||
Common steps
|
||||
^^^^^^^^^^^^
|
||||
~~~~~~~~~~~~
|
||||
|
||||
Migrate existing database schema with::
|
||||
|
||||
@@ -71,18 +70,18 @@ The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
=============================
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
===========================
|
||||
|
||||
* `GitLab issue #319 <https://gitlab.com/mayan-edms/mayan-edms/issues/319>`_ TransformationResize issue with very "long" image
|
||||
* `GitLab issue #331 <https://gitlab.com/mayan-edms/mayan-edms/issues/331>`_ Trash List View: Items actions should be limited
|
||||
* `GitLab issue #333 <https://gitlab.com/mayan-edms/mayan-edms/issues/333>`_ "Unable to run gpg - it may not be available."
|
||||
* `GitLab issue #334 <https://gitlab.com/mayan-edms/mayan-edms/issues/334>`_ Perfomance improvment: prevent unnecessary image.resize in TransformationZoom
|
||||
* `GitLab issue #335 <https://gitlab.com/mayan-edms/mayan-edms/issues/335>`_ Wrong HTML Content-Type in ACL->NEW
|
||||
|
||||
* :gitlab-issue:`319` TransformationResize issue with very "long" image
|
||||
* :gitlab-issue:`331` Trash List View: Items actions should be limited
|
||||
* :gitlab-issue:`333` "Unable to run gpg - it may not be available."
|
||||
* :gitlab-issue:`334` Perfomance improvment: prevent unnecessary image.resize in TransformationZoom
|
||||
* :gitlab-issue:`335` Wrong HTML Content-Type in ACL->NEW
|
||||
|
||||
.. _PyPI: https://pypi.python.org/pypi/mayan-edms/
|
||||
|
||||
@@ -1,28 +1,29 @@
|
||||
Version 2.1.6
|
||||
=============
|
||||
===============================
|
||||
Mayan EDMS v2.1.6 release notes
|
||||
===============================
|
||||
|
||||
Released: November 23, 2016
|
||||
|
||||
What's new
|
||||
==========
|
||||
|
||||
This is a bug-fix release and all users are encouraged to upgrade.
|
||||
|
||||
Changes
|
||||
-------
|
||||
-------------
|
||||
|
||||
- Fix variable name typo in the rotation transformation class.
|
||||
- Update translations
|
||||
|
||||
|
||||
Removals
|
||||
--------
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
|
||||
Using PIP
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
Type in the console::
|
||||
|
||||
@@ -30,9 +31,8 @@ Type in the console::
|
||||
|
||||
the requirements will also be updated automatically.
|
||||
|
||||
|
||||
Using Git
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
If you installed Mayan EDMS by cloning the Git repository issue the commands::
|
||||
|
||||
@@ -46,9 +46,8 @@ Next upgrade/add the new requirements::
|
||||
|
||||
$ pip install --upgrade -r requirements.txt
|
||||
|
||||
|
||||
Common steps
|
||||
^^^^^^^^^^^^
|
||||
~~~~~~~~~~~~
|
||||
|
||||
Migrate existing database schema with::
|
||||
|
||||
@@ -62,13 +61,12 @@ The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
=============================
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
===========================
|
||||
|
||||
* None
|
||||
|
||||
|
||||
@@ -1,13 +1,17 @@
|
||||
Version 2.1.7
|
||||
=============
|
||||
===============================
|
||||
Mayan EDMS v2.1.7 release notes
|
||||
===============================
|
||||
|
||||
Released: February 2, 2017
|
||||
|
||||
What's new
|
||||
==========
|
||||
|
||||
This is a bug-fix release and all users are encouraged to upgrade. The focus
|
||||
of this micro release was REST API improvement.
|
||||
|
||||
Changes
|
||||
-------
|
||||
-------------
|
||||
|
||||
- Improved user management API endpoints (initial work by @lokeshmanmode):
|
||||
|
||||
@@ -40,18 +44,15 @@ Changes
|
||||
- The parser and validation fields of the metadata type model have been enable
|
||||
in the metadata type API serializer.
|
||||
|
||||
|
||||
Removals
|
||||
--------
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
|
||||
Using PIP
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
Type in the console::
|
||||
|
||||
@@ -59,9 +60,8 @@ Type in the console::
|
||||
|
||||
the requirements will also be updated automatically.
|
||||
|
||||
|
||||
Using Git
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
If you installed Mayan EDMS by cloning the Git repository issue the commands::
|
||||
|
||||
@@ -75,9 +75,8 @@ Next upgrade/add the new requirements::
|
||||
|
||||
$ pip install --upgrade -r requirements.txt
|
||||
|
||||
|
||||
Common steps
|
||||
^^^^^^^^^^^^
|
||||
~~~~~~~~~~~~
|
||||
|
||||
Migrate existing database schema with::
|
||||
|
||||
@@ -91,13 +90,12 @@ The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
=============================
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
===========================
|
||||
|
||||
* None
|
||||
|
||||
|
||||
@@ -1,13 +1,17 @@
|
||||
Version 2.1.8
|
||||
=============
|
||||
===============================
|
||||
Mayan EDMS v2.1.8 release notes
|
||||
===============================
|
||||
|
||||
Released: February 12, 2017
|
||||
|
||||
What's new
|
||||
==========
|
||||
|
||||
This is a bug-fix release and all users are encouraged to upgrade. The focus
|
||||
of this micro release was REST API improvement.
|
||||
|
||||
Changes
|
||||
-------
|
||||
-------------
|
||||
|
||||
- Fixes in the trashed document API endpoints.
|
||||
- Improved tags API PUT and PATCH endpoints.
|
||||
@@ -19,18 +23,15 @@ Changes
|
||||
- Add Smart link API endpoints.
|
||||
- Add writable versions of the Document and Document Type serializers (GitLab issues #348 and #349).
|
||||
|
||||
|
||||
Removals
|
||||
--------
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
|
||||
Using PIP
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
Type in the console::
|
||||
|
||||
@@ -38,9 +39,8 @@ Type in the console::
|
||||
|
||||
the requirements will also be updated automatically.
|
||||
|
||||
|
||||
Using Git
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
If you installed Mayan EDMS by cloning the Git repository issue the commands::
|
||||
|
||||
@@ -54,9 +54,8 @@ Next upgrade/add the new requirements::
|
||||
|
||||
$ pip install --upgrade -r requirements.txt
|
||||
|
||||
|
||||
Common steps
|
||||
^^^^^^^^^^^^
|
||||
~~~~~~~~~~~~
|
||||
|
||||
Migrate existing database schema with::
|
||||
|
||||
@@ -70,16 +69,15 @@ The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
=============================
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
===========================
|
||||
|
||||
* :gitlab-issue:`310` Metadata's lookup with chinese messages when new document
|
||||
* :gitlab-issue:`348` REST API: Document version comments are not getting updated
|
||||
* :gitlab-issue:`349` REST API: Document Label, Description are not able to update
|
||||
* `GitLab issue #310 <https://gitlab.com/mayan-edms/mayan-edms/issues/310>`_ Metadata's lookup with chinese messages when new document
|
||||
* `GitLab issue #348 <https://gitlab.com/mayan-edms/mayan-edms/issues/348>`_ REST API: Document version comments are not getting updated
|
||||
* `GitLab issue #349 <https://gitlab.com/mayan-edms/mayan-edms/issues/349>`_ REST API: Document Label, Description are not able to update
|
||||
|
||||
.. _PyPI: https://pypi.python.org/pypi/mayan-edms/
|
||||
|
||||
@@ -1,30 +1,30 @@
|
||||
Version 2.1.9
|
||||
=============
|
||||
===============================
|
||||
Mayan EDMS v2.1.9 release notes
|
||||
===============================
|
||||
|
||||
Released: February 13, 2017
|
||||
|
||||
What's new
|
||||
==========
|
||||
|
||||
This is a micro release equal to the previews version from the user's point of view.
|
||||
The version number was increase to workaround some issues with the Python
|
||||
Package Index not allowing re-uploads.
|
||||
|
||||
|
||||
Changes
|
||||
-------
|
||||
-------------
|
||||
|
||||
- Update make file to Workaround long standing pypa wheel bug #99
|
||||
|
||||
|
||||
Removals
|
||||
--------
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
|
||||
Using PIP
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
Type in the console::
|
||||
|
||||
@@ -32,9 +32,8 @@ Type in the console::
|
||||
|
||||
the requirements will also be updated automatically.
|
||||
|
||||
|
||||
Using Git
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
If you installed Mayan EDMS by cloning the Git repository issue the commands::
|
||||
|
||||
@@ -48,9 +47,8 @@ Next upgrade/add the new requirements::
|
||||
|
||||
$ pip install --upgrade -r requirements.txt
|
||||
|
||||
|
||||
Common steps
|
||||
^^^^^^^^^^^^
|
||||
~~~~~~~~~~~~
|
||||
|
||||
Migrate existing database schema with::
|
||||
|
||||
@@ -64,13 +62,12 @@ The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
=============================
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
===========================
|
||||
|
||||
* None
|
||||
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
Version 2.1
|
||||
===========
|
||||
=============================
|
||||
Mayan EDMS v2.1 release notes
|
||||
=============================
|
||||
|
||||
Released: May 14, 2016
|
||||
|
||||
Changes
|
||||
-------
|
||||
What's new
|
||||
==========
|
||||
|
||||
Upgrade to use Django 1.8.13
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
----------------------------
|
||||
With the end of life support for Django 1.7, moving to the next Mayan EDMS
|
||||
minor version was a target for this release. The Django minor release chosen was
|
||||
1.8 as it is very compatible with 1.7 and required minimal changes. Django 1.8
|
||||
@@ -16,35 +16,28 @@ is an LTS release (Long Term Support) meaning that is no new big feature of a
|
||||
new Django version is required, the project can stay in Django 1.8 for a good
|
||||
amount of time with no downsides.
|
||||
|
||||
|
||||
Remove remaining references to Django's User model
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
--------------------------------------------------
|
||||
The few remaining hard code references to Django's User model that were missed
|
||||
in a previous release have been removed. Using a custom User model with Mayan
|
||||
should present very little if any obstacles.
|
||||
|
||||
|
||||
Remove included login required middleware
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
-----------------------------------------
|
||||
The custom middleware include with Mayan EDMS that forces user to be
|
||||
authenticated before being able to access any view has been removed in favor of
|
||||
a dedicated 3rd party Django app for that purpose. The app chosen was
|
||||
django-stronghold (http://mikegrouchy.com/django-stronghold/).
|
||||
|
||||
|
||||
Improve generation of success and error messages for class based views
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
----------------------------------------------------------------------
|
||||
In the past success messages for actions would show a generic mention to the
|
||||
object being manipulated (document, folder, tag). Now the errors and success
|
||||
messages with be more explicit in describing what the view has or was trying
|
||||
to manipulate.
|
||||
|
||||
|
||||
Remove ownership concept from folders
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
-------------------------------------
|
||||
Currently Folders in Mayan EDMS have a field that stores a reference to the
|
||||
user that has created that folders. One of the design decisions of Mayan EDMS
|
||||
is that there should never be any explicit ownership of any object. Ownership
|
||||
@@ -52,10 +45,8 @@ is relative and is defined by the Access Control List of an object. The
|
||||
removal of the user field from the Folders model brings this app in line with
|
||||
the defined behavior.
|
||||
|
||||
|
||||
Replacement of strip_spaces middleware with the spaceless template tag
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
----------------------------------------------------------------------
|
||||
As a size optimization technique HTML content was dynamically stripped of spaces
|
||||
as it was being served. The technique used involved detecting the MIME type of
|
||||
the content being served and if found to be of text/HTML type spaces between
|
||||
@@ -66,64 +57,50 @@ when the template is compiled and not at each HTTP response. The optimization
|
||||
is minimal but since it happened at every response a small increase in speed
|
||||
is expected for all deployment scenarios.
|
||||
|
||||
|
||||
Deselect the update checkbox for optional metadata by default
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
-------------------------------------------------------------
|
||||
During the last releases the behavior of the of metadata edit checkbox has seen
|
||||
several tune ups. Thanks to community feedback one small change has been
|
||||
introduced. The edit checkbox will be deselected by default for all optional
|
||||
document type metadata entries.
|
||||
|
||||
|
||||
Implement per document type document creation permission
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
--------------------------------------------------------
|
||||
If is now possible to grant the document creation permission to a role for a
|
||||
document type. Previously document creation was a "blanket" permission. Having
|
||||
the permission meant that user could create any type of document. With this
|
||||
change it is now possible to restrict which types of document users of a
|
||||
specific role can create.
|
||||
|
||||
|
||||
Make document type delete time period optional
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
----------------------------------------------
|
||||
The entries that defined after how long a document in the trash would be
|
||||
permanently deleted have been made optional. This means that if a document
|
||||
type has this option blank, the corresponding document of this type would never
|
||||
be deleted from the trash can.
|
||||
|
||||
|
||||
Fixed date locale handling in document properties, checkout and user detail views
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
---------------------------------------------------------------------------------
|
||||
A few releases back the ability to for users to set their timezone was added.
|
||||
This change also included a smart date rendering update to adjust the dates
|
||||
and times fields to the user's timezone. Some users reported a few views where
|
||||
this timezone adjustment was not happening, this has been fully fixed.
|
||||
|
||||
|
||||
Default index
|
||||
^^^^^^^^^^^^^
|
||||
|
||||
-------------
|
||||
During new installations a default index that organizes document by year/month
|
||||
when they were uploaded will be created to help users better understand the
|
||||
concept of indexes in Mayan EDMS.
|
||||
|
||||
|
||||
HTML5 upload widget
|
||||
^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
-------------------
|
||||
A common request is the ability to just drap and drop documents from other
|
||||
windows into Mayan EDMS's document upload wizard. This release includes that
|
||||
capability and will also show a completion bar for the upload. Document
|
||||
uploading is sped up dramatically with this change.
|
||||
|
||||
|
||||
Message of the Day app
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
----------------------
|
||||
Administrators wanting to display announcements has no other way to do so
|
||||
than to customize the login template. To avoid this a new app has been added
|
||||
that allows for the creation of messages to be shown at the user login
|
||||
@@ -131,10 +108,8 @@ screen. These messages can have an activation and an expiration date and
|
||||
time. These messages are useful for display company access policies,
|
||||
maintenance announcement, etc.
|
||||
|
||||
|
||||
Document signing
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
----------------
|
||||
The biggest change for this release if the addition of document signing from
|
||||
within the UI. Enterprise users request this feature very often as in those
|
||||
environments cryptographic signatures are a basic requirement. Previously
|
||||
@@ -154,10 +129,8 @@ Finally documents are now checked just once for signatures and not every time
|
||||
they are accessed, this provides a very sizable speed improvement in document
|
||||
access and availability.
|
||||
|
||||
|
||||
Other changes
|
||||
^^^^^^^^^^^^^
|
||||
|
||||
=============
|
||||
- Upgrade Python requirements to recent versions.
|
||||
- Rename 'Content' search box to 'OCR'.
|
||||
- Silence all Django 1.8 model import warnings.
|
||||
@@ -188,12 +161,11 @@ Removals
|
||||
--------
|
||||
* None
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
|
||||
Using PIP
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
Type in the console::
|
||||
|
||||
@@ -201,9 +173,8 @@ Type in the console::
|
||||
|
||||
the requirements will also be updated automatically.
|
||||
|
||||
|
||||
Using Git
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
If you installed Mayan EDMS by cloning the Git repository issue the commands::
|
||||
|
||||
@@ -217,9 +188,8 @@ Next upgrade/add the new requirements::
|
||||
|
||||
$ pip install --upgrade -r requirements.txt
|
||||
|
||||
|
||||
Common steps
|
||||
^^^^^^^^^^^^
|
||||
~~~~~~~~~~~~
|
||||
|
||||
Migrate existing database schema with::
|
||||
|
||||
@@ -233,37 +203,36 @@ The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
=============================
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
===========================
|
||||
|
||||
* :gitlab-issue:`137` Add app creation chapter to documentation.
|
||||
* :gitlab-issue:`147` Add in app document signing.
|
||||
* :gitlab-issue:`161` Email backend setup documentation.
|
||||
* :gitlab-issue:`162` Add HTML5 file uploader.
|
||||
* :gitlab-issue:`191` Split index contents title into title and path/breadcrumb widget.
|
||||
* :gitlab-issue:`206` Support for dynamic LOGIN_EXEMPT_URLS.
|
||||
* :gitlab-issue:`208` Add tagging step to upload wizard.
|
||||
* :gitlab-issue:`218` Cookie cutter template for Mayan apps.
|
||||
* :gitlab-issue:`222` Add notice board or Message of the Day.
|
||||
* :gitlab-issue:`255` Remove hard coded User model.
|
||||
* :gitlab-issue:`232` "Create documents" is a blanket permission for a user to create a document of any document type.
|
||||
* :gitlab-issue:`246` Upgrade to Django version 1.8 as Django 1.7 is end-of-life.
|
||||
* :gitlab-issue:`251` Add method to disable metadata edit form "update" checkbox when not needed.
|
||||
* :gitlab-issue:`255` UnicodeDecodeError in apps/common/middleware/strip_spaces_widdleware.py.
|
||||
* :gitlab-issue:`256` typo in locale settings (Dutch).
|
||||
* :gitlab-issue:`261` Feature: Document Access Audit Logging.
|
||||
* :gitlab-issue:`265` Indexes show list (show indexe only if the user has ACLs on document type).
|
||||
* :gitlab-issue:`266` Smart links : Dynamic label with Postgresql.
|
||||
* :gitlab-issue:`267` Release 2.1 RC1 : Notes and ideas.
|
||||
* :gitlab-issue:`268` Release 2.1 RC1 : Bug to access inside an indexes.
|
||||
* :gitlab-issue:`270` Release 2.1 RC1 : Bug statistics.
|
||||
* :gitlab-issue:`274` [Release 2.1 RC2] Web Tests.
|
||||
* :gitlab-issue:`275` [Release 2.1 RC2] Notes.
|
||||
* :gitlab-issue:`276` [Release 2.1 RC2] API Tests.
|
||||
* `GitLab issue #137 <https://gitlab.com/mayan-edms/mayan-edms/issues/137>`_ Add app creation chapter to documentation.
|
||||
* `GitLab issue #147 <https://gitlab.com/mayan-edms/mayan-edms/issues/147>`_ Add in app document signing.
|
||||
* `GitLab issue #161 <https://gitlab.com/mayan-edms/mayan-edms/issues/161>`_ Email backend setup documentation.
|
||||
* `GitLab issue #162 <https://gitlab.com/mayan-edms/mayan-edms/issues/162>`_ Add HTML5 file uploader.
|
||||
* `GitLab issue #191 <https://gitlab.com/mayan-edms/mayan-edms/issues/191>`_ Split index contents title into title and path/breadcrumb widget.
|
||||
* `GitLab issue #206 <https://gitlab.com/mayan-edms/mayan-edms/issues/206>`_ Support for dynamic LOGIN_EXEMPT_URLS.
|
||||
* `GitLab issue #208 <https://gitlab.com/mayan-edms/mayan-edms/issues/208>`_ Add tagging step to upload wizard.
|
||||
* `GitLab issue #218 <https://gitlab.com/mayan-edms/mayan-edms/issues/218>`_ Cookie cutter template for Mayan apps.
|
||||
* `GitLab issue #222 <https://gitlab.com/mayan-edms/mayan-edms/issues/222>`_ Add notice board or Message of the Day.
|
||||
* `GitLab issue #225 <https://gitlab.com/mayan-edms/mayan-edms/issues/225>`_ Remove hard coded User model.
|
||||
* `GitLab issue #232 <https://gitlab.com/mayan-edms/mayan-edms/issues/232>`_ "Create documents" is a blanket permission for a user to create a document of any document type.
|
||||
* `GitLab issue #246 <https://gitlab.com/mayan-edms/mayan-edms/issues/246>`_ Upgrade to Django version 1.8 as Django 1.7 is end-of-life.
|
||||
* `GitLab issue #251 <https://gitlab.com/mayan-edms/mayan-edms/issues/251>`_ Add method to disable metadata edit form "update" checkbox when not needed.
|
||||
* `GitLab issue #255 <https://gitlab.com/mayan-edms/mayan-edms/issues/255>`_ UnicodeDecodeError in apps/common/middleware/strip_spaces_widdleware.py.
|
||||
* `GitLab issue #256 <https://gitlab.com/mayan-edms/mayan-edms/issues/256>`_ typo in locale settings (Dutch).
|
||||
* `GitLab issue #261 <https://gitlab.com/mayan-edms/mayan-edms/issues/261>`_ Feature: Document Access Audit Logging.
|
||||
* `GitLab issue #265 <https://gitlab.com/mayan-edms/mayan-edms/issues/265>`_ Indexes show list (show indexe only if the user has ACLs on document type).
|
||||
* `GitLab issue #266 <https://gitlab.com/mayan-edms/mayan-edms/issues/266>`_ Smart links : Dynamic label with Postgresql.
|
||||
* `GitLab issue #267 <https://gitlab.com/mayan-edms/mayan-edms/issues/267>`_ Release 2.1 RC1 : Notes and ideas.
|
||||
* `GitLab issue #268 <https://gitlab.com/mayan-edms/mayan-edms/issues/268>`_ Release 2.1 RC1 : Bug to access inside an indexes.
|
||||
* `GitLab issue #270 <https://gitlab.com/mayan-edms/mayan-edms/issues/270>`_ Release 2.1 RC1 : Bug statistics.
|
||||
* `GitLab issue #274 <https://gitlab.com/mayan-edms/mayan-edms/issues/274>`_ [Release 2.1 RC2] Web Tests.
|
||||
* `GitLab issue #275 <https://gitlab.com/mayan-edms/mayan-edms/issues/275>`_ [Release 2.1 RC2] Notes.
|
||||
* `GitLab issue #276 <https://gitlab.com/mayan-edms/mayan-edms/issues/276>`_ [Release 2.1 RC2] API Tests.
|
||||
|
||||
.. _PyPI: https://pypi.python.org/pypi/mayan-edms/
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
Version 2.2
|
||||
===========
|
||||
=============================
|
||||
Mayan EDMS v2.2 release notes
|
||||
=============================
|
||||
|
||||
Released: April 26, 2017
|
||||
|
||||
Changes
|
||||
-------
|
||||
What's new
|
||||
==========
|
||||
|
||||
API changes
|
||||
^^^^^^^^^^^
|
||||
|
||||
-----------
|
||||
Refactor of the metadata API URLs to use the resource/sub resource paradigm.
|
||||
|
||||
Before:
|
||||
@@ -66,10 +66,8 @@ resolved to '/api/documents/<pk>/pages/<page_pk>/pages'.
|
||||
- API endpoint to view or change a role's groups.
|
||||
- API endpoint to view or change a role's permissions.
|
||||
|
||||
|
||||
Code cleanups
|
||||
^^^^^^^^^^^^^
|
||||
|
||||
-------------
|
||||
As with every release time was dedicated to improve the organization, size, and
|
||||
readability of code. To this end the licenses of each app were moved to their
|
||||
own module in every app, called licenses.py. As part of the code cleanup the
|
||||
@@ -78,10 +76,8 @@ installed alongside Mayan EDMS for debugging purposes has been removed. The
|
||||
dependency on django-filetransfer has been removed by using
|
||||
django-downloadviews which allows the creation of class based download views.
|
||||
|
||||
|
||||
Performance
|
||||
^^^^^^^^^^^
|
||||
|
||||
-----------
|
||||
The document language list has been moved from the document model to the
|
||||
document form. This change speeds up loading time, document properties views
|
||||
and API documentation views. This version includes the new image caching
|
||||
@@ -90,36 +86,28 @@ document's images resulting in an overall display loading speed up. The fonts
|
||||
used are now loaded from Mayan EDMS itself and not from the web. This change
|
||||
also allow Mayan EDMS to work in a completely off-line manner.
|
||||
|
||||
|
||||
Searching
|
||||
^^^^^^^^^
|
||||
|
||||
---------
|
||||
Support for searching pages as well as documents has been added. This
|
||||
functionality has been exposed in the API too.
|
||||
|
||||
|
||||
Security
|
||||
^^^^^^^^
|
||||
|
||||
--------
|
||||
This release enables the password validation for the user password validation
|
||||
support provided by Django. This change allows administrator to set password
|
||||
policies limiting the minimum amount of characters needed for example. For
|
||||
more information on how to configure the password validation feature refer
|
||||
to the :django-docs:`topics/auth/passwords/#enabling-password-validation`
|
||||
|
||||
to Django's documentation at: https://docs.djangoproject.com/en/1.11/topics/auth/passwords/#enabling-password-validation
|
||||
|
||||
Sources
|
||||
^^^^^^^
|
||||
|
||||
-------
|
||||
To help test the interval sources (POP3 Email, IMAP Email, Watch folders) a
|
||||
"Check now" button was added that allows users to trigger the source's
|
||||
document fetching code instantly. Previously users had to wait until the next
|
||||
scheduled interval to verify if their source's settings were correct.
|
||||
|
||||
|
||||
Testing
|
||||
^^^^^^^
|
||||
|
||||
-------
|
||||
The testing process has been simplified by adding a new option '--mayan-apps'
|
||||
to the test runner that automatically tests all Mayan EDMS apps that report to
|
||||
include tests. The app flag that indicates when an app has test was changed
|
||||
@@ -130,13 +118,11 @@ to 81%.
|
||||
|
||||
A custom test runner replacing the previous custom management command
|
||||
called `runtests`. Testing for orphaned temporary files and orphaned file
|
||||
handles is now optional and controlled by the ``COMMON_TEST_FILE_HANDLES`` and
|
||||
``COMMON_TEST_FILE_HANDLES`` settings.
|
||||
|
||||
handles is now optional and controlled by the COMMON_TEST_FILE_HANDLES and
|
||||
COMMON_TEST_FILE_HANDLES settings.
|
||||
|
||||
User interface
|
||||
^^^^^^^^^^^^^^
|
||||
|
||||
--------------
|
||||
To avoid warping on long full names or usernames, the user's full name or
|
||||
username is no longer displayed in the main menu. Instead the word "Profile"
|
||||
is displayed and the users's full name or username is displayed when the
|
||||
@@ -155,10 +141,8 @@ A new workflow view that lists documents currently executing a workflow and
|
||||
documents by their specific current workflow state has been added to the
|
||||
main menu.
|
||||
|
||||
|
||||
Other changes
|
||||
^^^^^^^^^^^^^
|
||||
|
||||
-------------
|
||||
- Cabinets app is now integrated as a core app.
|
||||
- Now that the Cabinets app is included, the Folders app has been disabled
|
||||
by default. To enable the Folders apps add the following line to your
|
||||
@@ -172,22 +156,17 @@ Other changes
|
||||
- Add support for attaching multiple tags to single or multiple documents.
|
||||
- Refactor the workflow for removing tags from single and multiple documents.
|
||||
- Move new version creation blocking from the documents app to the checkouts app.
|
||||
- ``DEBUG`` now defaults to ``False``.
|
||||
- Production settings don't override the ``DEBUG`` variable. ``DEBUG`` can be
|
||||
set to ``True`` on production install to debug errors live.
|
||||
- Refactor add document to folder view to allow adding a documents to multiple
|
||||
folders at the same time.
|
||||
- Refactor the remove document from folder view to allow removing documents
|
||||
from multiple folders at the same time.
|
||||
- Refactor the document mailing views and add support for sending multiple
|
||||
documents via email at the same time.
|
||||
- Refactor the document metadata views and add support for adding multiple
|
||||
metadata types to a document at the same time.
|
||||
- Addition of a new OCR backend using ``PyOCR``. This backend tries first to
|
||||
do OCR using ``libtesseract``. If ``libtesseract`` is not available the
|
||||
backend defaults to calling the ``tesseract`` executable.
|
||||
- Make the ``lock_manager.backends.file_lock.FileLock`` the new default
|
||||
locking backend.
|
||||
- DEBUG now defaults to False.
|
||||
- Production settings don't override the DEBUG variable. DEBUG can be set to True
|
||||
on production install to debug errors live.
|
||||
- Refactor add document to folder view to allow adding a documents to multiple folders at the same time.
|
||||
- Refactor the remove document from folder view to allow removing documents from multiple folders at the same time.
|
||||
- Refactor the document mailing views and add support for sending multiple documents via email at the same time.
|
||||
- Refactor the document metadata views and add support for adding multiple metadata types to a document at the same time.
|
||||
- Addition of a new OCR backend using PyOCR. This backend tries first to do OCR
|
||||
using libtesseract. If libtesseract is not available the backend defaults to
|
||||
calling the Tesseract executable.
|
||||
- Make the lock_manager.backends.file_lock.FileLock the new default locking backend.
|
||||
- New transformations added:
|
||||
|
||||
- Rotate 90 degrees
|
||||
@@ -200,22 +179,19 @@ Other changes
|
||||
|
||||
- Add tool to launch all workflows. GitLab issue #355
|
||||
|
||||
|
||||
Removals
|
||||
--------
|
||||
|
||||
- Removal of the ``OCR_TESSERACT_PATH`` configuration setting.
|
||||
- Removal of the Tesseract OCR backend. Replaced with a ``PyOCR`` backend.
|
||||
- Removal of the OCR_TESSERACT_PATH configuration setting.
|
||||
- Removal of the Tesseract OCR backend. Replaced with a PyOCR backend.
|
||||
- Remove usage of pytesseract Python library.
|
||||
- Installation app.
|
||||
- Recent searches feature.
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
|
||||
If installed via PIP
|
||||
^^^^^^^^^^^^^^^^^^^^
|
||||
~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Type in the console::
|
||||
|
||||
@@ -223,9 +199,8 @@ Type in the console::
|
||||
|
||||
the requirements will also be updated automatically.
|
||||
|
||||
|
||||
If installed using Git
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
If you installed Mayan EDMS by cloning the Git repository issue the commands::
|
||||
|
||||
@@ -243,9 +218,8 @@ Remove deprecated requirements::
|
||||
|
||||
$ pip uninstall -y -r removals.txt
|
||||
|
||||
|
||||
Common steps
|
||||
^^^^^^^^^^^^
|
||||
~~~~~~~~~~~~
|
||||
|
||||
Migrate existing database schema with::
|
||||
|
||||
@@ -259,27 +233,26 @@ The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
=============================
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
===========================
|
||||
|
||||
* :gitlab-issue:`185` Add support for nested menus
|
||||
* :gitlab-issue:`285` Dashboard widgets
|
||||
* :gitlab-issue:`294` Move new version creation blocking from the documents app to the checkouts app
|
||||
* :gitlab-issue:`301` Remove the installation app
|
||||
* :gitlab-issue:`303` Update urlpatterns in urls.py files to be a list of django.conf.urls.url() instances instead.
|
||||
* :gitlab-issue:`304` Remove string view arguments of url() in urls.py files.
|
||||
* :gitlab-issue:`307` Enter multiple Tags at once
|
||||
* :gitlab-issue:`310` Metadata's lookup with chinese messages when new document
|
||||
* :gitlab-issue:`311` acl page return ContentType:Document
|
||||
* :gitlab-issue:`319` TransformationResize issue with very "long" image
|
||||
* :gitlab-issue:`328` Upgrade Warning/Error during performupgrade (v2.1.3 to v2.1.4)
|
||||
* :gitlab-issue:`342` Tags should be of unordered / unsorted data type
|
||||
* :gitlab-issue:`343` Bootstrap's dependency on fonts.googleapis.com causes Mayan EDMS web interface load slowly if public internet is unreachable
|
||||
* :gitlab-issue:`355` Workflow changes only on new added documents
|
||||
* `GitLab issue #185 <https://gitlab.com/mayan-edms/mayan-edms/issues/185>`_ Add support for nested menus
|
||||
* `GitLab issue #285 <https://gitlab.com/mayan-edms/mayan-edms/issues/285>`_ Dashboard widgets
|
||||
* `GitLab issue #294 <https://gitlab.com/mayan-edms/mayan-edms/issues/294>`_ Move new version creation blocking from the documents app to the checkouts app
|
||||
* `GitLab issue #301 <https://gitlab.com/mayan-edms/mayan-edms/issues/301>`_ Remove the installation app
|
||||
* `GitLab issue #303 <https://gitlab.com/mayan-edms/mayan-edms/issues/303>`_ Update urlpatterns in urls.py files to be a list of django.conf.urls.url() instances instead.
|
||||
* `GitLab issue #304 <https://gitlab.com/mayan-edms/mayan-edms/issues/304>`_ Remove string view arguments of url() in urls.py files.
|
||||
* `GitLab issue #307 <https://gitlab.com/mayan-edms/mayan-edms/issues/307>`_ Enter multiple Tags at once
|
||||
* `GitLab issue #310 <https://gitlab.com/mayan-edms/mayan-edms/issues/310>`_ Metadata's lookup with chinese messages when new document
|
||||
* `GitLab issue #311 <https://gitlab.com/mayan-edms/mayan-edms/issues/311>`_ acl page return ContentType:Document
|
||||
* `GitLab issue #319 <https://gitlab.com/mayan-edms/mayan-edms/issues/319>`_ TransformationResize issue with very "long" image
|
||||
* `GitLab issue #328 <https://gitlab.com/mayan-edms/mayan-edms/issues/328>`_ Upgrade Warning/Error during performupgrade (v2.1.3 to v2.1.4)
|
||||
* `GitLab issue #342 <https://gitlab.com/mayan-edms/mayan-edms/issues/342>`_ Tags should be of unordered / unsorted data type
|
||||
* `GitLab issue #343 <https://gitlab.com/mayan-edms/mayan-edms/issues/343>`_ Bootstrap's dependency on fonts.googleapis.com causes Mayan EDMS web interface load slowly if public internet is unreachable
|
||||
* `GitLab issue #355 <https://gitlab.com/mayan-edms/mayan-edms/issues/355>`_ Workflow changes only on new added documents
|
||||
|
||||
.. _PyPI: https://pypi.python.org/pypi/mayan-edms/
|
||||
|
||||
@@ -1,14 +1,17 @@
|
||||
Version 2.3
|
||||
===========
|
||||
=============================
|
||||
Mayan EDMS v2.3 release notes
|
||||
=============================
|
||||
|
||||
Released: June 08, 2017
|
||||
|
||||
What's new
|
||||
==========
|
||||
|
||||
This is a bug-fix and minor feature release and all users are encouraged to
|
||||
upgrade.
|
||||
|
||||
Changes
|
||||
-------
|
||||
|
||||
-------------
|
||||
- Index node expression template field changed from a 128 character field to an
|
||||
unlimited size text field to allow for complex indexing expressions.
|
||||
- When updating the metadata of a document, any input in the value form field
|
||||
@@ -37,18 +40,15 @@ Changes
|
||||
can be accessed using {{ document.workflow.publish_workflow.get_current_state }}.
|
||||
- Added a new API endpoint to display a list of all the available search models.
|
||||
|
||||
|
||||
Removals
|
||||
--------
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
|
||||
Using PIP
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
Type in the console::
|
||||
|
||||
@@ -56,9 +56,8 @@ Type in the console::
|
||||
|
||||
the requirements will also be updated automatically.
|
||||
|
||||
|
||||
Using Git
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
If you installed Mayan EDMS by cloning the Git repository issue the commands::
|
||||
|
||||
@@ -72,9 +71,8 @@ Next upgrade/add the new requirements::
|
||||
|
||||
$ pip install --upgrade -r requirements.txt
|
||||
|
||||
|
||||
Common steps
|
||||
^^^^^^^^^^^^
|
||||
~~~~~~~~~~~~
|
||||
|
||||
Migrate existing database schema with::
|
||||
|
||||
@@ -88,17 +86,16 @@ The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
=============================
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
===========================
|
||||
|
||||
* :gitlab-issue:`371` Auto select checkbox when updating metadata
|
||||
* :gitlab-issue:`372` (Feature request) Allow 'rebuild index' to rebuild only a selected index
|
||||
* :gitlab-issue:`383` Page not found when deployed to sub-uri
|
||||
* :gitlab-issue:`385` mountindex: how to specify FUSE mount option allow_other?
|
||||
* `GitLab issue #371 <https://gitlab.com/mayan-edms/mayan-edms/issues/371>`_ Auto select checkbox when updating metadata
|
||||
* `GitLab issue #372 <https://gitlab.com/mayan-edms/mayan-edms/issues/372>`_ (Feature request) Allow 'rebuild index' to rebuild only a selected index
|
||||
* `GitLab issue #383 <https://gitlab.com/mayan-edms/mayan-edms/issues/383>`_ Page not found when deployed to sub-uri
|
||||
* `GitLab issue #385 <https://gitlab.com/mayan-edms/mayan-edms/issues/385>`_ mountindex: how to specify FUSE mount option allow_other?
|
||||
|
||||
.. _PyPI: https://pypi.python.org/pypi/mayan-edms/
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
Version 2.4
|
||||
===========
|
||||
=============================
|
||||
Mayan EDMS v2.4 release notes
|
||||
=============================
|
||||
|
||||
Released: June 23, 2017
|
||||
|
||||
Changes
|
||||
-------
|
||||
What's new
|
||||
==========
|
||||
|
||||
SANE document source
|
||||
^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
--------------------
|
||||
A new document source has been added with the ability to retrieve documents from
|
||||
scanners directly. This new document source uses the SANE (Scanner Access Now Easy)
|
||||
(https://en.wikipedia.org/wiki/Scanner_Access_Now_Easy) API client to communicate
|
||||
@@ -16,32 +16,26 @@ with USB and network scanners. SANE must be properly installed for this document
|
||||
source to work. Your scanner must also be supported by the SANE API
|
||||
(http://www.sane-project.org/sane-supported-devices.html).
|
||||
|
||||
|
||||
Automatic PDF orientation detection
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
-----------------------------------
|
||||
The orientation of PDF documents is now detected at creation and a rotation
|
||||
transformation applied to each of the document's pages to correct the orientation.
|
||||
|
||||
|
||||
Environment variables
|
||||
^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
---------------------
|
||||
Configuration options can now be updated from environment variables. To update
|
||||
a configuration option, prepend the string ``MAYAN_`` to the name of the configuration
|
||||
a configuration option, prepend the string `MAYAN_` to the name of the configuration
|
||||
option. For example, to increase the number of documents displayed per search results
|
||||
page (from a default of 40) to 50 documents, set the environment variable
|
||||
``MAYAN_COMMON_PAGINATE_BY`` to 50 with::
|
||||
MAYAN_COMMON_PAGINATE_BY to 50 with::
|
||||
|
||||
$ export MAYAN_COMMON_PAGINATE_BY=50
|
||||
|
||||
and restart Mayan EDMS. A list of the configuration options can be found in the
|
||||
:menuselection:`Setup --> Settings` menu.
|
||||
|
||||
`Setup` menu, under `Settings`.
|
||||
|
||||
Math filters
|
||||
^^^^^^^^^^^^
|
||||
|
||||
------------
|
||||
The django-mathfilters (https://pypi.python.org/pypi/django-mathfilters) package
|
||||
has been included to provide proper math filters in the indexes. An example of
|
||||
this is indexing documents by quarter::
|
||||
@@ -50,46 +44,39 @@ this is indexing documents by quarter::
|
||||
|
||||
|
||||
Expand searchable objects
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
-------------------------
|
||||
Previously, only documents and later on document pages were searchable. This release
|
||||
add support for searching for tags, metadata types and cabinets. This search support
|
||||
is available via the dynamic search API.
|
||||
|
||||
|
||||
Management command to reset locks
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
---------------------------------
|
||||
During testing or development error occur and locks can remain behind, blocking
|
||||
execution of a process or task until they expire. To help resolve this a
|
||||
management command has been added called `purgelocks` that will delete all locks
|
||||
in the system.
|
||||
|
||||
|
||||
Index by workflow state
|
||||
^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
-----------------------
|
||||
Support was added to update the a document indexes from workflow state changes.
|
||||
To make workflow referencing easier from the index template, a new fields was
|
||||
added to the workflow model called internal_name. For example, for a workflow
|
||||
called "Publishing Workflow" with an internal name of ``publishing_workflow``,
|
||||
called `Publishing Workflow` with an internal name of `publishing_workflow`,
|
||||
use the following string to reference the current state in an index::
|
||||
|
||||
{{ document.workflow.publishing_workflow.get_current_state }}
|
||||
|
||||
|
||||
Task manager
|
||||
^^^^^^^^^^^^
|
||||
|
||||
------------
|
||||
A new app to monitor the distribution and consumption of background task has been
|
||||
added. This app is call "Task manager" and can be found in the "Tools" menu.
|
||||
added. This app is call `Task manager` and can be found in the `Tools` menu.
|
||||
Use this new tool to diagnose your background task workers or to determine when
|
||||
to scale up the number of workers.
|
||||
|
||||
|
||||
Other Changes
|
||||
^^^^^^^^^^^^^
|
||||
|
||||
-------------
|
||||
- Improve render of documents with no pages.
|
||||
- Fix repeated permission list API URL. GitLab issue #389.
|
||||
- Fix role creation API endpoint not returning id. GitLab issue #390.
|
||||
@@ -97,22 +84,19 @@ Other Changes
|
||||
- Add hardware requirements. GitHub issue #247.
|
||||
- Fix URL query string encoding for the document page navigation views. GitLab
|
||||
issue #383.
|
||||
- Truncate views titles via the ``APPEARANCE_MAXIMUM_TITLE_LENGTH`` setting.
|
||||
- Truncate views titles via the APPEARANCE_MAXIMUM_TITLE_LENGTH setting.
|
||||
GitLab issue #217.
|
||||
- Add link to show a document's OCR errors. GitLab issue #291.
|
||||
|
||||
|
||||
Removals
|
||||
--------
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
|
||||
Using PIP
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
Type in the console::
|
||||
|
||||
@@ -120,9 +104,8 @@ Type in the console::
|
||||
|
||||
the requirements will also be updated automatically.
|
||||
|
||||
|
||||
Using Git
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
If you installed Mayan EDMS by cloning the Git repository issue the commands::
|
||||
|
||||
@@ -136,9 +119,8 @@ Next upgrade/add the new requirements::
|
||||
|
||||
$ pip install --upgrade -r requirements.txt
|
||||
|
||||
|
||||
Common steps
|
||||
^^^^^^^^^^^^
|
||||
~~~~~~~~~~~~
|
||||
|
||||
Migrate existing database schema with::
|
||||
|
||||
@@ -152,24 +134,23 @@ The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
=============================
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
===========================
|
||||
|
||||
* :github-issue:`247` Hardware requirements
|
||||
* :gitlab-issue:`132` Task queue viewer
|
||||
* :gitlab-issue:`217` [Documents] Truncate document label for avoid double lines in mobile or reduce font
|
||||
* :gitlab-issue:`221` Add flush lock management command
|
||||
* :gitlab-issue:`291` Link to OCR error log from document OCR tab
|
||||
* :gitlab-issue:`344` Add support for searching folders, tags, metadata.
|
||||
* :gitlab-issue:`383` Page not found when deployed to sub-uri
|
||||
* :gitlab-issue:`387` Document Scanning not Functioning on rotated landscape PDF's
|
||||
* :gitlab-issue:`389` How can we map permissions with a particular role using REST API?
|
||||
* :gitlab-issue:`390` Id is not getting in response
|
||||
* :gitlab-issue:`391` "Rebuild indexes" does not work in Mayan EDMS 2.3
|
||||
* `GitHub issue #247 <https://github.com/mayan-edms/mayan-edms/issues/247>`_ Hardware requirements
|
||||
* `GitLab issue #132 <https://gitlab.com/mayan-edms/mayan-edms/issues/132>`_ Task queue viewer
|
||||
* `GitLab issue #217 <https://gitlab.com/mayan-edms/mayan-edms/issues/217>`_ [Documents] Truncate document label for avoid double lines in mobile or reduce font
|
||||
* `GitLab issue #221 <https://gitlab.com/mayan-edms/mayan-edms/issues/221>`_ Add flush lock management command
|
||||
* `GitLab issue #291 <https://gitlab.com/mayan-edms/mayan-edms/issues/291>`_ Link to OCR error log from document OCR tab
|
||||
* `GitLab issue #344 <https://gitlab.com/mayan-edms/mayan-edms/issues/344>`_ Add support for searching folders, tags, metadata.
|
||||
* `GitLab issue #383 <https://gitlab.com/mayan-edms/mayan-edms/issues/383>`_ Page not found when deployed to sub-uri
|
||||
* `GitLab issue #387 <https://gitlab.com/mayan-edms/mayan-edms/issues/387>`_ Document Scanning not Functioning on rotated landscape PDF's
|
||||
* `GitLab issue #389 <https://gitlab.com/mayan-edms/mayan-edms/issues/389>`_ How can we map permissions with a particular role using REST API?
|
||||
* `GitLab issue #390 <https://gitlab.com/mayan-edms/mayan-edms/issues/390>`_ Id is not getting in response
|
||||
* `GitLab issue #391 <https://gitlab.com/mayan-edms/mayan-edms/issues/391>`_ "Rebuild indexes" does not work in Mayan EDMS 2.3
|
||||
|
||||
.. _PyPI: https://pypi.python.org/pypi/mayan-edms/
|
||||
|
||||
@@ -1,26 +1,24 @@
|
||||
Version 2.5.1
|
||||
=============
|
||||
===============================
|
||||
Mayan EDMS v2.5.1 release notes
|
||||
===============================
|
||||
|
||||
Released: July 07, 2017
|
||||
|
||||
Changes
|
||||
-------
|
||||
What's new
|
||||
==========
|
||||
|
||||
This version is identical to version 2.5. It was released to workaround some
|
||||
issues with the recent migration of PyPI (https://mail.python.org/pipermail/distutils-sig/2017-June/030766.html)
|
||||
|
||||
|
||||
Removals
|
||||
--------
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
|
||||
Using PIP
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
Type in the console::
|
||||
|
||||
@@ -28,9 +26,8 @@ Type in the console::
|
||||
|
||||
the requirements will also be updated automatically.
|
||||
|
||||
|
||||
Using Git
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
If you installed Mayan EDMS by cloning the Git repository issue the commands::
|
||||
|
||||
@@ -44,9 +41,8 @@ Next upgrade/add the new requirements::
|
||||
|
||||
$ pip install --upgrade -r requirements.txt
|
||||
|
||||
|
||||
Common steps
|
||||
^^^^^^^^^^^^
|
||||
~~~~~~~~~~~~
|
||||
|
||||
Migrate existing database schema with::
|
||||
|
||||
@@ -60,15 +56,14 @@ The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
=============================
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
===========================
|
||||
|
||||
* :gitlab-issue:`378` Add metadata widget changes from @Macrobb
|
||||
* :gitlab-issue:`379` Add new document version list view permission.
|
||||
* `GitLab issue #378 <https://gitlab.com/mayan-edms/mayan-edms/issues/378>`_ Add metadata widget changes from @Macrobb
|
||||
* `GitLab issue #379 <https://gitlab.com/mayan-edms/mayan-edms/issues/379>`_ Add new document version list view permission.
|
||||
|
||||
.. _PyPI: https://pypi.python.org/pypi/mayan-edms/
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
Version 2.5.2
|
||||
=============
|
||||
===============================
|
||||
Mayan EDMS v2.5.2 release notes
|
||||
===============================
|
||||
|
||||
Released: July 08, 2017
|
||||
|
||||
Changes
|
||||
-------
|
||||
What's new
|
||||
==========
|
||||
|
||||
Improve duplicate document scan
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
-------------------------------
|
||||
Previously the way document creation code was enclosed in a single database
|
||||
transactions. This cause the duplicate scan at upload code to received a
|
||||
document reference to uncommitted database data. The single database
|
||||
@@ -18,15 +18,13 @@ recevies saved and committed data.
|
||||
|
||||
Removals
|
||||
--------
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
|
||||
Using PIP
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
Type in the console::
|
||||
|
||||
@@ -34,9 +32,8 @@ Type in the console::
|
||||
|
||||
the requirements will also be updated automatically.
|
||||
|
||||
|
||||
Using Git
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
If you installed Mayan EDMS by cloning the Git repository issue the commands::
|
||||
|
||||
@@ -50,9 +47,8 @@ Next upgrade/add the new requirements::
|
||||
|
||||
$ pip install --upgrade -r requirements.txt
|
||||
|
||||
|
||||
Common steps
|
||||
^^^^^^^^^^^^
|
||||
~~~~~~~~~~~~
|
||||
|
||||
Migrate existing database schema with::
|
||||
|
||||
@@ -66,13 +62,12 @@ The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
=============================
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
===========================
|
||||
|
||||
* None
|
||||
|
||||
|
||||
@@ -1,30 +1,26 @@
|
||||
Version 2.5
|
||||
===========
|
||||
=============================
|
||||
Mayan EDMS v2.5 release notes
|
||||
=============================
|
||||
|
||||
Released: July 07, 2017
|
||||
|
||||
Changes
|
||||
-------
|
||||
What's new
|
||||
==========
|
||||
|
||||
OCR text download
|
||||
^^^^^^^^^^^^^^^^^
|
||||
|
||||
-----------------
|
||||
A link and view were added to download the entire OCR text of a document as a
|
||||
separate file. The link can be found under the "Actions" dropdown when the
|
||||
"OCR" tab of a document is selected.
|
||||
|
||||
|
||||
SANE document source
|
||||
^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
--------------------
|
||||
A validation error was being raised when the resolution field of the SANE
|
||||
document source was left blank. This issue has been fixed and works as expected
|
||||
now.
|
||||
|
||||
|
||||
Mailing profiles
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
----------------
|
||||
Previously, the way documents were emailed was controlled by configuration
|
||||
settings that only system administrator could change as the OS level. It is
|
||||
now possible to create mailing profiles from within the user interface. This
|
||||
@@ -40,19 +36,15 @@ which could be taxing email quota limits or triggering spam filters. For
|
||||
more information on the multi-tenant plugin visit the Mayan app store at:
|
||||
http://www.mayan-edms.com/store/
|
||||
|
||||
|
||||
New transformation
|
||||
^^^^^^^^^^^^^^^^^^
|
||||
|
||||
------------------
|
||||
A lineart transformation was added to reduce the amount of colors in a
|
||||
document's image to just 2. This is useful to increase the OCR accuracy on
|
||||
some kind of documents whose color or layout may confuse the OCR engine
|
||||
and lower the accuracy of the text recognition.
|
||||
|
||||
|
||||
UI reorganization
|
||||
^^^^^^^^^^^^^^^^^
|
||||
|
||||
-----------------
|
||||
The main menu was been reorganization for clarity of function. The "About" menu
|
||||
has been renamed to "System" to signify that the items in this menu relate
|
||||
to system configuration topics. The "Tools" and "Setup" sub-menus, were moved
|
||||
@@ -61,28 +53,22 @@ renamed to "User". Additionally, the "User" menu is now part of the main menu
|
||||
instead of floating right on the layout. This change along with others
|
||||
improve the usability on small devices like tablets and smartphones.
|
||||
|
||||
|
||||
PDF compatibility updates
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
-------------------------
|
||||
Support for non-compliant, "broken", and PDFs encrypted with no passwords has
|
||||
been added. Previously no effort was made to process the images for these
|
||||
files. The code for detecting the number of pages in a PDF has also been
|
||||
improved to retry several methods when failing on non-compliant PDF documents.
|
||||
|
||||
|
||||
Office documents compatibility updates
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
--------------------------------------
|
||||
Improvements to the Libre Office conversion code were added, including a
|
||||
workaround for Libre Office bug #37531 (https://bugs.documentfoundation.org/show_bug.cgi?id=37531)
|
||||
which sometimes manifested when uploading multiple office documents
|
||||
sequentially.
|
||||
|
||||
|
||||
Metadata setup UI improvements
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
------------------------------
|
||||
A new widget to define the document type to metadata type relationship has been
|
||||
added. The new widget provides a method to switch between required metadata
|
||||
and optional metadata for a document type. This new method is not only faster
|
||||
@@ -93,10 +79,8 @@ type view but also from the metadata type view eliminating travel between these
|
||||
two views when creating new metadata types and assigning them to document
|
||||
types.
|
||||
|
||||
|
||||
Duplicated document scanning
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
----------------------------
|
||||
Support to scan and list duplicated document scanning was added in the form of
|
||||
a new document list link under the "Documents" main menu. Every time a document
|
||||
is uploaded, a document scan will be triggered to determine if the new document
|
||||
@@ -110,31 +94,27 @@ addition of being able to search documents by their checksum. This was done by
|
||||
indexing the checksum database field and by adding the checksum as a search
|
||||
field in the advanced document search view and via the API.
|
||||
|
||||
|
||||
Login session control
|
||||
^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
---------------------
|
||||
Support was added to control the length of time a log in session lasts. First
|
||||
from the user interface side of things a "Remember me" checkbox was added to
|
||||
the log in form that will cause the session to persist after the browser is
|
||||
closed. If this checkbox is left blank the session will be destroyed when the
|
||||
browser closes and the user will need to log in again when accessing any of the
|
||||
URLs. The second part of this feature is for administrators. The configuration
|
||||
setting ``AUTHENTICATION_MAXIMUM_SESSION_LENGTH`` was added to control the
|
||||
maximum time a logged in session will persist when users click the "Remember me"
|
||||
setting AUTHENTICATION_MAXIMUM_SESSION_LENGTH was added to control the maximum
|
||||
time a logged in session will persist when users click the "Remember me"
|
||||
checkbox. The default of this setting is 30 days.
|
||||
|
||||
|
||||
Document image cache disabling
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
------------------------------
|
||||
It is now possible to disable the document page image caching. The document
|
||||
image cache works on two level and hence two setting options were added.
|
||||
The first is the ``DOCUMENTS_DISABLE_BASE_IMAGE_CACHE`` option which disables the
|
||||
The first is the DOCUMENTS_DISABLE_BASE_IMAGE_CACHE option which disables the
|
||||
first layer of caching, the generation of a master image file for each document
|
||||
page. This means that subsequent request for a page's image will trigger the
|
||||
conversion of the document from its original uploaded file. The second option,
|
||||
``DOCUMENTS_DISABLE_TRANSFORMED_IMAGE_CACHE``, disables just the caching of the
|
||||
DOCUMENTS_DISABLE_TRANSFORMED_IMAGE_CACHE, disables just the caching of the
|
||||
transformed (rotated, resized, zoomed) images of document pages. The settings
|
||||
can be used together or separately depending on how much disk space saving is
|
||||
desired. These settings give control over the trade-off between disk space
|
||||
@@ -142,24 +122,19 @@ savings and higher CPU utilization. These settings are ideal for installations
|
||||
with a lot of documents, that want to conserve disk space, and have CPU capacity
|
||||
to spare. Multi-tenant installations can also benefit from these new settings.
|
||||
|
||||
|
||||
Document filter by workflow state
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
---------------------------------
|
||||
A few versions over, a main menu item was added to list documents by their
|
||||
workflow and/or their current workflow state. Support for filtering by the
|
||||
initial workflow state has been added to this feature.
|
||||
|
||||
Support for restoring forgotten password
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
----------------------------------------
|
||||
Views and templates were added to enable the typical "Forgotten
|
||||
password" worflow using a signed token via email.
|
||||
|
||||
|
||||
Other Changes
|
||||
^^^^^^^^^^^^^
|
||||
|
||||
-------------
|
||||
- Add missing OCR migration.
|
||||
- Improve error output of the performupgrade command to debug upgrade errors
|
||||
that could stop an upgrade (missing document files, etc).
|
||||
@@ -178,14 +153,14 @@ Other Changes
|
||||
- Make sure lookup selection widgets also trigger the metadata update
|
||||
checkbox on change.
|
||||
- Usability improvements on small displays.
|
||||
- Removal of the ``CONVERTER_LIBREOFFICE_PATH`` and ``CONVERTER_PDFTOPPM_PATH``
|
||||
- Removal of the CONVERTER_LIBREOFFICE_PATH and CONVERTER_PDFTOPPM_PATH
|
||||
settings. These setting have been consolidated into
|
||||
``CONVERTER_GRAPHICS_BACKEND_CONFIG``.
|
||||
CONVERTER_GRAPHICS_BACKEND_CONFIG.
|
||||
- Improve the documentation of the document creation API endpoint.
|
||||
GitHub issue #255. Thanks to @lcerliani opening the issue.
|
||||
- Libre Office conversion improvements. Give every libreoffice instance
|
||||
its own separate ``$HOME`` directory. Additionally give every libreoffice
|
||||
its own UserInstallation file in the ``$HOME`` directory. Works around
|
||||
its own separate $HOME directory. Additionally give every libreoffice
|
||||
its own UserInstallation file in the $HOME directory. Works around
|
||||
Libre Office issue: https://bugs.documentfoundation.org/show_bug.cgi?id=37531
|
||||
Solves or affects GitLab issues #393 #258 #198 #175
|
||||
- The trashed document deletion action is now a background task. This
|
||||
@@ -206,18 +181,15 @@ Other Changes
|
||||
- Unicode handling improvements.
|
||||
- Update required versions of Pillow and django-suit.
|
||||
|
||||
|
||||
Removals
|
||||
--------
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
|
||||
Using PIP
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
Type in the console::
|
||||
|
||||
@@ -225,9 +197,8 @@ Type in the console::
|
||||
|
||||
the requirements will also be updated automatically.
|
||||
|
||||
|
||||
Using Git
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
If you installed Mayan EDMS by cloning the Git repository issue the commands::
|
||||
|
||||
@@ -241,9 +212,8 @@ Next upgrade/add the new requirements::
|
||||
|
||||
$ pip install --upgrade -r requirements.txt
|
||||
|
||||
|
||||
Common steps
|
||||
^^^^^^^^^^^^
|
||||
~~~~~~~~~~~~
|
||||
|
||||
Migrate existing database schema with::
|
||||
|
||||
@@ -257,18 +227,17 @@ The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
=============================
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
===========================
|
||||
|
||||
* :github-issue:`255` Uploading a local file via api
|
||||
* :gitlab-issue:`215` Download text contents
|
||||
* :gitlab-issue:`286` User configurable mailer
|
||||
* :gitlab-issue:`337` Better way to switch Optional to Required Metadata
|
||||
* :gitlab-issue:`373` (feature request) Allow selecting document types for metadata
|
||||
* `GitHub issue #255 <https://github.com/mayan-edms/mayan-edms/issues/255>`_ Uploading a local file via api
|
||||
* `GitLab issue #215 <https://gitlab.com/mayan-edms/mayan-edms/issues/215>`_ Download text contents
|
||||
* `GitLab issue #286 <https://gitlab.com/mayan-edms/mayan-edms/issues/286>`_ User configurable mailer
|
||||
* `GitLab issue #337 <https://gitlab.com/mayan-edms/mayan-edms/issues/337>`_ Better way to switch Optional to Required Metadata
|
||||
* `GitLab issue #373 <https://gitlab.com/mayan-edms/mayan-edms/issues/373>`_ (feature request) Allow selecting document types for metadata
|
||||
|
||||
.. _PyPI: https://pypi.python.org/pypi/mayan-edms/
|
||||
|
||||
@@ -1,25 +1,25 @@
|
||||
Version 2.6
|
||||
===========
|
||||
=============================
|
||||
Mayan EDMS v2.6 release notes
|
||||
=============================
|
||||
|
||||
Released: July 18, 2017
|
||||
|
||||
Changes
|
||||
-------
|
||||
What's new
|
||||
==========
|
||||
|
||||
Other Changes
|
||||
-------------
|
||||
- Fix issue when editing or removing metadata from multiple documents.
|
||||
|
||||
|
||||
Removals
|
||||
--------
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
|
||||
Using PIP
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
Type in the console::
|
||||
|
||||
@@ -27,9 +27,8 @@ Type in the console::
|
||||
|
||||
the requirements will also be updated automatically.
|
||||
|
||||
|
||||
Using Git
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
If you installed Mayan EDMS by cloning the Git repository issue the commands::
|
||||
|
||||
@@ -43,9 +42,8 @@ Next upgrade/add the new requirements::
|
||||
|
||||
$ pip install --upgrade -r requirements.txt
|
||||
|
||||
|
||||
Common steps
|
||||
^^^^^^^^^^^^
|
||||
~~~~~~~~~~~~
|
||||
|
||||
Migrate existing database schema with::
|
||||
|
||||
@@ -59,15 +57,13 @@ The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
=============================
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
===========================
|
||||
|
||||
* None
|
||||
|
||||
|
||||
.. _PyPI: https://pypi.python.org/pypi/mayan-edms/
|
||||
|
||||
@@ -1,13 +1,16 @@
|
||||
Version 2.6.2
|
||||
=============
|
||||
===============================
|
||||
Mayan EDMS v2.6.2 release notes
|
||||
===============================
|
||||
|
||||
Released: July 22, 2017
|
||||
|
||||
What's new
|
||||
==========
|
||||
|
||||
This is a bug fix release and users are encouraged to upgrade.
|
||||
|
||||
Changes
|
||||
-------
|
||||
|
||||
Other Changes
|
||||
-------------
|
||||
- Fix deprecation warning to prepare upgrade to Django 1.11 and 2.0.
|
||||
- Fix zoom feature in document page view.
|
||||
- Add support to run tests against a MySQL or Postgres container.
|
||||
@@ -17,18 +20,15 @@ Changes
|
||||
- Allow total page number instrospection of encrypted PDF with non ASCII
|
||||
user properties. GitLab issue #411.
|
||||
|
||||
|
||||
Removals
|
||||
--------
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
|
||||
Using PIP
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
Type in the console::
|
||||
|
||||
@@ -36,9 +36,8 @@ Type in the console::
|
||||
|
||||
the requirements will also be updated automatically.
|
||||
|
||||
|
||||
Using Git
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
If you installed Mayan EDMS by cloning the Git repository issue the commands::
|
||||
|
||||
@@ -52,9 +51,8 @@ Next upgrade/add the new requirements::
|
||||
|
||||
$ pip install --upgrade -r requirements.txt
|
||||
|
||||
|
||||
Common steps
|
||||
^^^^^^^^^^^^
|
||||
~~~~~~~~~~~~
|
||||
|
||||
Migrate existing database schema with::
|
||||
|
||||
@@ -68,15 +66,13 @@ The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
=============================
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
===========================
|
||||
|
||||
* None
|
||||
|
||||
|
||||
.. _PyPI: https://pypi.python.org/pypi/mayan-edms/
|
||||
|
||||
@@ -1,13 +1,16 @@
|
||||
Version 2.6.3
|
||||
=============
|
||||
===============================
|
||||
Mayan EDMS v2.6.3 release notes
|
||||
===============================
|
||||
|
||||
Released: July 25, 2017
|
||||
|
||||
What's new
|
||||
==========
|
||||
|
||||
This is a bug fix release and users are encouraged to upgrade.
|
||||
|
||||
Changes
|
||||
-------
|
||||
|
||||
- Add makefile target to launch a PostgreSQL container.
|
||||
- Use resolve_url instead of redirect to resolve the post login URL.
|
||||
- Make the intialsetup and performupgrade management tasks work
|
||||
@@ -23,18 +26,15 @@ Changes
|
||||
#149 #200.
|
||||
- Add fade in animation to document images.
|
||||
|
||||
|
||||
Removals
|
||||
--------
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
|
||||
Using PIP
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
Type in the console::
|
||||
|
||||
@@ -42,9 +42,8 @@ Type in the console::
|
||||
|
||||
the requirements will also be updated automatically.
|
||||
|
||||
|
||||
Using Git
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
If you installed Mayan EDMS by cloning the Git repository issue the commands::
|
||||
|
||||
@@ -58,9 +57,8 @@ Next upgrade/add the new requirements::
|
||||
|
||||
$ pip install --upgrade -r requirements.txt
|
||||
|
||||
|
||||
Common steps
|
||||
^^^^^^^^^^^^
|
||||
~~~~~~~~~~~~
|
||||
|
||||
Migrate existing database schema with::
|
||||
|
||||
@@ -74,17 +72,16 @@ The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
=============================
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
===========================
|
||||
|
||||
* :gitlab-issue:`149` Autogenerate setup.py
|
||||
* :gitlab-issue:`200` dependencies in setup.py not up to date with requirements
|
||||
* :gitlab-issue:`402` Make permissions and roles searchable.
|
||||
* :gitlab-issue:`413` source.models.Source.handle_upload does not support tag_ids but upload_document does
|
||||
* `GitLab issue #149 <https://gitlab.com/mayan-edms/mayan-edms/issues/149>`_ Autogenerate setup.py
|
||||
* `GitLab issue #200 <https://gitlab.com/mayan-edms/mayan-edms/issues/200>`_ dependencies in setup.py not up to date with requirements
|
||||
* `GitLab issue #402 <https://gitlab.com/mayan-edms/mayan-edms/issues/402>`_ Make permissions and roles searchable.
|
||||
* `GitLab issue #413 <https://gitlab.com/mayan-edms/mayan-edms/issues/413>`_ source.models.Source.handle_upload does not support tag_ids but upload_document does
|
||||
|
||||
.. _PyPI: https://pypi.python.org/pypi/mayan-edms/
|
||||
|
||||
@@ -1,28 +1,27 @@
|
||||
Version 2.6.4
|
||||
=============
|
||||
===============================
|
||||
Mayan EDMS v2.6.4 release notes
|
||||
===============================
|
||||
|
||||
Released: July 25, 2017
|
||||
|
||||
This is a bug fix release and users are encouraged to upgrade.
|
||||
What's new
|
||||
==========
|
||||
|
||||
This is a bug fix release and users are encouraged to upgrade.
|
||||
|
||||
Changes
|
||||
-------
|
||||
|
||||
- Add missing replacements of reverse to resolve_url.
|
||||
|
||||
|
||||
Removals
|
||||
--------
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
|
||||
Using PIP
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
Type in the console::
|
||||
|
||||
@@ -30,9 +29,8 @@ Type in the console::
|
||||
|
||||
the requirements will also be updated automatically.
|
||||
|
||||
|
||||
Using Git
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
If you installed Mayan EDMS by cloning the Git repository issue the commands::
|
||||
|
||||
@@ -46,9 +44,8 @@ Next upgrade/add the new requirements::
|
||||
|
||||
$ pip install --upgrade -r requirements.txt
|
||||
|
||||
|
||||
Common steps
|
||||
^^^^^^^^^^^^
|
||||
~~~~~~~~~~~~
|
||||
|
||||
Migrate existing database schema with::
|
||||
|
||||
@@ -62,13 +59,12 @@ The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
=============================
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
===========================
|
||||
|
||||
* None
|
||||
|
||||
|
||||
@@ -1,22 +1,20 @@
|
||||
Version 2.6
|
||||
===========
|
||||
=============================
|
||||
Mayan EDMS v2.6 release notes
|
||||
=============================
|
||||
|
||||
Released: July 18, 2017
|
||||
|
||||
Changes
|
||||
-------
|
||||
What's new
|
||||
==========
|
||||
|
||||
Sending documents to multiple recipients
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
----------------------------------------
|
||||
Support was added to send a document as an attachment, or a link to a document
|
||||
to multiple email recipients. To use this feature enter a comman separated
|
||||
list of email recipients in the "Email address" field.
|
||||
|
||||
|
||||
Visual changes
|
||||
^^^^^^^^^^^^^^
|
||||
|
||||
--------------
|
||||
Several patches to change and improve the user interface landed on this release.
|
||||
The first, by Macrobb Simpson @Macrobb, makes the content area width, match
|
||||
window area. This means that on almost all device screen sizes the content area
|
||||
@@ -30,27 +28,21 @@ requires two axis navigation on small screens. The height of the dashboard
|
||||
items is now adjusted via javascript to ensure correct layout regardless of
|
||||
screen size of message length when translated.
|
||||
|
||||
|
||||
Search
|
||||
^^^^^^
|
||||
|
||||
------
|
||||
This release adds users and groups to the list of objects that are searchable
|
||||
via the API. The current list of searchable objects is: metadata types,
|
||||
users, groups, tags, documents, document pages, and cabinets.
|
||||
|
||||
|
||||
Logging
|
||||
^^^^^^^
|
||||
|
||||
-------
|
||||
The logging configuration was improved to create a log for critical errors
|
||||
when running on production mode. The default location for this log file is:
|
||||
/mayan/error.log. This path can be changed with the COMMON_PRODUCTION_ERROR_LOG_PATH
|
||||
setting. This log file will capture application errors and request exceptions.
|
||||
|
||||
|
||||
Cabinets
|
||||
^^^^^^^^
|
||||
|
||||
--------
|
||||
The access control for cabinets has been fixed in some regards and improved in
|
||||
others. The permission to add and remove documents can now be applied to
|
||||
individual root cabinets instead of globally for a role. Also, the permission
|
||||
@@ -59,37 +51,30 @@ or document type. In other words, to add a document to a cabinet, the user's
|
||||
role must have the permission to add documents to cabinet, for the cabinet
|
||||
to recieve the document and for the document about to be added.
|
||||
|
||||
|
||||
New permission
|
||||
^^^^^^^^^^^^^^
|
||||
|
||||
--------------
|
||||
The patch to add a permission to view a document's version list was backported
|
||||
from the development branch to make it accesible now. Like cabinets, the tag
|
||||
access control now works on two levels. Now to attach a tag to a document,
|
||||
the permission to attach tags must be granted to the tag to attach and to the
|
||||
document that will receive the tag.
|
||||
|
||||
|
||||
ACL changes
|
||||
^^^^^^^^^^^
|
||||
|
||||
-----------
|
||||
The document type permissions namespace was renamed from "Document setup" to
|
||||
"Document types" for clarity. Along with that change, support was added
|
||||
"Document types" for clarity. Along with that change, support was added
|
||||
for granting the document type edit, document type delete, and document type view
|
||||
permissions to individual document type instances instead of just globally.
|
||||
|
||||
|
||||
Testing
|
||||
^^^^^^^
|
||||
|
||||
-------
|
||||
The documents app view tests now test for view access and not just permission.
|
||||
Testing against access is more robust and also tests for permissions
|
||||
implicitly.
|
||||
|
||||
|
||||
Other Changes
|
||||
^^^^^^^^^^^^^
|
||||
|
||||
-------------
|
||||
- Fix HTML mark up in window title. GitLab #397.
|
||||
- Sort setting by namespace label and by global name second.
|
||||
- Sort indexes by label.
|
||||
@@ -97,17 +82,15 @@ Other Changes
|
||||
- Improve code to unbind menu entries.
|
||||
- Increase the size of the mailing profile label field to 128 characters.
|
||||
|
||||
|
||||
Removals
|
||||
--------
|
||||
* None
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
|
||||
Using PIP
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
Type in the console::
|
||||
|
||||
@@ -115,9 +98,8 @@ Type in the console::
|
||||
|
||||
the requirements will also be updated automatically.
|
||||
|
||||
|
||||
Using Git
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
If you installed Mayan EDMS by cloning the Git repository issue the commands::
|
||||
|
||||
@@ -131,9 +113,8 @@ Next upgrade/add the new requirements::
|
||||
|
||||
$ pip install --upgrade -r requirements.txt
|
||||
|
||||
|
||||
Common steps
|
||||
^^^^^^^^^^^^
|
||||
~~~~~~~~~~~~
|
||||
|
||||
Migrate existing database schema with::
|
||||
|
||||
@@ -147,18 +128,16 @@ The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
=============================
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
|
||||
* :gitlab-issue:`378` Add metadata widget changes from @Macrobb
|
||||
* :gitlab-issue:`396` Add support for emailing documents to a recipient list.
|
||||
* :gitlab-issue:`397` Title on Index Page is Broken
|
||||
* :gitlab-issue:`400` Django REST framework's BasicAuthentication doesn't work with Oauth2_proxy
|
||||
===========================
|
||||
|
||||
* `GitLab issue #378 <https://gitlab.com/mayan-edms/mayan-edms/issues/378>`_ Add metadata widget changes from @Macrobb
|
||||
* `GitLab issue #396 <https://gitlab.com/mayan-edms/mayan-edms/issues/396>`_ Add support for emailing documents to a recipient list.
|
||||
* `GitLab issue #397 <https://gitlab.com/mayan-edms/mayan-edms/issues/397>`_ Title on Index Page is Broken
|
||||
* `GitLab issue #400 <https://gitlab.com/mayan-edms/mayan-edms/issues/400>`_ Django REST framework's BasicAuthentication doesn't work with Oauth2_proxy
|
||||
|
||||
.. _PyPI: https://pypi.python.org/pypi/mayan-edms/
|
||||
|
||||
@@ -1,24 +1,22 @@
|
||||
Version 2.7.1
|
||||
=============
|
||||
===============================
|
||||
Mayan EDMS v2.7.1 release notes
|
||||
===============================
|
||||
|
||||
Released: September 3, 2017
|
||||
|
||||
Changes
|
||||
-------
|
||||
What's new
|
||||
==========
|
||||
|
||||
Unicode metadata when uploading a document
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
------------------------------------------
|
||||
An issue with Django's unquote_plus caused documents being uploaded with an
|
||||
unicode, no English character in an initial metadata value field to fail.
|
||||
The unquote_plus usage was remove in favor of a dedicate URL parsing library
|
||||
called furl. GitLab issue #423. Thanks to Gustavo Teixeira (@gsteixei) for the
|
||||
find.
|
||||
|
||||
|
||||
Silent errors during initialization
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
-----------------------------------
|
||||
When Python raises an ImportError exception, it is not possible to determine
|
||||
the cause of the error. The local.py import code was updated to interpret the
|
||||
text of the ImportError exception and ignore it only if the local.py was
|
||||
@@ -26,32 +24,28 @@ missing, which is the case during the initialization commands execute after
|
||||
the initial installation. Any error in the local.py file will now cause Mayan
|
||||
to exit. Thanks to MacRobb Simpson for the report and solution.
|
||||
|
||||
|
||||
String usage in the local.py file
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
---------------------------------
|
||||
Python 2.7 uses byte strings by default. Byte strings cannot be used in
|
||||
conjunction with unicode strings. A missing import was causing strings in
|
||||
the local.py file to be interpreted as byte string while the rest of Mayan
|
||||
uses unicode strings. Using non English special characters in a string located
|
||||
in the local.py file would have cause a Unicode errors. For new installations
|
||||
from Mayan version 2.7.1 onwards, the line
|
||||
``from __future__ import absolute_imports, unicode_literals`` is included when
|
||||
`from __future__ import absolute_imports, unicode_literals` is included when
|
||||
generating the local.py for the first time. For existing installations,
|
||||
adding this line at the top is all that's needed. GitLab issue #424. Thanks to
|
||||
Gustavo Teixeira (@gsteixei) for the find and researching the cause.
|
||||
|
||||
|
||||
Removals
|
||||
--------
|
||||
* None
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
|
||||
Using PIP
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
Type in the console::
|
||||
|
||||
@@ -59,9 +53,8 @@ Type in the console::
|
||||
|
||||
the requirements will also be updated automatically.
|
||||
|
||||
|
||||
Using Git
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
If you installed Mayan EDMS by cloning the Git repository issue the commands::
|
||||
|
||||
@@ -75,9 +68,8 @@ Next upgrade/add the new requirements::
|
||||
|
||||
$ pip install --upgrade -r requirements.txt
|
||||
|
||||
|
||||
Common steps
|
||||
^^^^^^^^^^^^
|
||||
~~~~~~~~~~~~
|
||||
|
||||
Migrate existing database schema with::
|
||||
|
||||
@@ -91,15 +83,15 @@ The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
=============================
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
===========================
|
||||
|
||||
* `GitLab issue #423 <https://gitlab.com/mayan-edms/mayan-edms/issues/423>`_ Metadata can't handle non ascii chars on upload
|
||||
* `GitLab issue #424 <https://gitlab.com/mayan-edms/mayan-edms/issues/424>`_ DjangoUnicodeDecodeError on document proprieties due document language field
|
||||
|
||||
* :gitlab-issue:`423` Metadata can't handle non ascii chars on upload
|
||||
* :gitlab-issue:`424` DjangoUnicodeDecodeError on document proprieties due document language field
|
||||
|
||||
.. _PyPI: https://pypi.python.org/pypi/mayan-edms/
|
||||
|
||||
@@ -1,23 +1,21 @@
|
||||
Version 2.7.2
|
||||
=============
|
||||
===============================
|
||||
Mayan EDMS v2.7.2 release notes
|
||||
===============================
|
||||
|
||||
Released: September 06, 2017
|
||||
|
||||
Changes
|
||||
-------
|
||||
What's new
|
||||
==========
|
||||
|
||||
Fixes to the new mailer creation view
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
-------------------------------------
|
||||
Some last minute changes to the dynamic form creation code added to support
|
||||
workflow state actions broke the creation of new mailer profiles. This is fixed
|
||||
now and a test was added to avoid future regressions. GitLab issue #431.
|
||||
Thanks to Robert Schöftner (@robert.schoeftner) for the report and the solution.
|
||||
|
||||
|
||||
Event consolidation
|
||||
^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
-------------------
|
||||
Several events were created to audit the creation of new documents. These events
|
||||
caused some confusion and were improved. When creating a new document the two
|
||||
'document properties edited' events were removed as this is an internal process
|
||||
@@ -26,41 +24,32 @@ submits the file to create the document. Now instead of 'System' the actual
|
||||
username of the user that uploaded the document will appear in the events log.
|
||||
GitLab issue #433. Thanks to Jesaja Everling (@jeverling) for the report.
|
||||
|
||||
|
||||
Cabinet list sorting
|
||||
^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
--------------------
|
||||
The root cabinet list is now displayed alphabetically sorted. The list of
|
||||
cabinets to which a document belongs to is now displayed sorted too. Thanks
|
||||
to Thomas Plotkowiak for the request.
|
||||
|
||||
|
||||
Visual cue for the document cabinet list
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
----------------------------------------
|
||||
In the document list item view, a simple visual cue in the form of italized
|
||||
text was added to the document cabinet list. GitLab issue #435. Thanks to LeVon
|
||||
Smoker for the request.
|
||||
|
||||
|
||||
Easier testing of production deployments
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
----------------------------------------
|
||||
The testing library mock is now installed by default, making it easier to run
|
||||
the entire test suit on deployed instances.
|
||||
|
||||
|
||||
Removals
|
||||
--------
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
|
||||
Using PIP
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
Type in the console::
|
||||
|
||||
@@ -68,9 +57,8 @@ Type in the console::
|
||||
|
||||
the requirements will also be updated automatically.
|
||||
|
||||
|
||||
Using Git
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
If you installed Mayan EDMS by cloning the Git repository issue the commands::
|
||||
|
||||
@@ -84,9 +72,8 @@ Next upgrade/add the new requirements::
|
||||
|
||||
$ pip install --upgrade -r requirements.txt
|
||||
|
||||
|
||||
Common steps
|
||||
^^^^^^^^^^^^
|
||||
~~~~~~~~~~~~
|
||||
|
||||
Migrate existing database schema with::
|
||||
|
||||
@@ -100,16 +87,15 @@ The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
=============================
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
===========================
|
||||
|
||||
* :gitlab-issue:`431` can't create new mailer
|
||||
* :gitlab-issue:`433` Events are not created correctly for document upload
|
||||
* :gitlab-issue:`435` Add visual cue to differentiate the Cabinet list on a document's preview card.
|
||||
* `GitLab issue #431 <https://gitlab.com/mayan-edms/mayan-edms/issues/431>`_ can't create new mailer
|
||||
* `GitLab issue #433 <https://gitlab.com/mayan-edms/mayan-edms/issues/433>`_ Events are not created correctly for document upload
|
||||
* `GitLab issue #435 <https://gitlab.com/mayan-edms/mayan-edms/issues/435>`_ Add visual cue to differentiate the Cabinet list on a document's preview card.
|
||||
|
||||
.. _PyPI: https://pypi.python.org/pypi/mayan-edms/
|
||||
|
||||
@@ -1,10 +1,11 @@
|
||||
Version 2.7.3
|
||||
=============
|
||||
===============================
|
||||
Mayan EDMS v2.7.3 release notes
|
||||
===============================
|
||||
|
||||
Released: September 11, 2017
|
||||
|
||||
Changes
|
||||
-------
|
||||
What's new
|
||||
==========
|
||||
|
||||
- Fix task manager queue list view. Thanks to LeVon Smoker for
|
||||
the report.
|
||||
@@ -13,18 +14,15 @@ Changes
|
||||
Nick Douma (LordGaav) for the report and diagnostic information. GitLab
|
||||
issue #436.
|
||||
|
||||
|
||||
Removals
|
||||
--------
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
|
||||
Using PIP
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
Type in the console::
|
||||
|
||||
@@ -32,9 +30,8 @@ Type in the console::
|
||||
|
||||
the requirements will also be updated automatically.
|
||||
|
||||
|
||||
Using Git
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
If you installed Mayan EDMS by cloning the Git repository issue the commands::
|
||||
|
||||
@@ -48,9 +45,8 @@ Next upgrade/add the new requirements::
|
||||
|
||||
$ pip install --upgrade -r requirements.txt
|
||||
|
||||
|
||||
Common steps
|
||||
^^^^^^^^^^^^
|
||||
~~~~~~~~~~~~
|
||||
|
||||
Migrate existing database schema with::
|
||||
|
||||
@@ -64,16 +60,15 @@ The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
=============================
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
===========================
|
||||
|
||||
* :gitlab-issue:`431` can't create new mailer
|
||||
* :gitlab-issue:`436` New document source menu does not contain source_ids
|
||||
* `GitLab issue #431 <https://gitlab.com/mayan-edms/mayan-edms/issues/431>`_ can't create new mailer
|
||||
* `GitLab issue #436 <https://gitlab.com/mayan-edms/mayan-edms/issues/436>`_ New document source menu does not contain source_ids
|
||||
|
||||
|
||||
.. _PyPI: https://pypi.python.org/pypi/mayan-edms/
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
Version 2.7
|
||||
===========
|
||||
=============================
|
||||
Mayan EDMS v2.7 release notes
|
||||
=============================
|
||||
|
||||
Released: August 30, 2017
|
||||
|
||||
Changes
|
||||
-------
|
||||
What's new
|
||||
==========
|
||||
|
||||
Beta Python 3 support
|
||||
^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
---------------------
|
||||
Preliminary support for Python 3 has landed in this version. More testing
|
||||
is still needed but for the most part seems to be usable. This is just
|
||||
initial support and not meant for production. Please submit any issue with
|
||||
@@ -16,16 +16,14 @@ Python 3 to help improve the support for it.
|
||||
|
||||
|
||||
PDF introspection improvements
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
------------------------------
|
||||
Some PDF files encode their page rotation information using indirect values
|
||||
instead of actually storing the rotation value as an integer. Support these
|
||||
types of PDF files was added.
|
||||
|
||||
|
||||
3rd party apps
|
||||
^^^^^^^^^^^^^^
|
||||
|
||||
--------------
|
||||
Support was added to allow 3rd party app adding data columns to existing
|
||||
models to specify the order in which such new columns will appear. Support
|
||||
was also added to allow any app to remove existing main menus. App can now in
|
||||
@@ -35,8 +33,7 @@ create multiple dashboards.
|
||||
|
||||
|
||||
Converter customization improvements
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
------------------------------------
|
||||
For users wanting more control over the document image conversion process,
|
||||
support was added to change the internal format used for image conversion.
|
||||
By default JPG used but via the `pdftoppm_format` and `pillow_format` entries
|
||||
@@ -48,8 +45,7 @@ value is `pdftoppm_dpi`.
|
||||
|
||||
|
||||
Workflow refactor
|
||||
^^^^^^^^^^^^^^^^^
|
||||
|
||||
-----------------
|
||||
This version includes a preview release of the workflow refactor that includes
|
||||
three new features: transition triggers, state actions, and graphical previews.
|
||||
The transition triggers allow setting document events as triggers to perform
|
||||
@@ -68,8 +64,7 @@ debugging workflows.
|
||||
|
||||
|
||||
OCR refactor
|
||||
^^^^^^^^^^^^
|
||||
|
||||
------------
|
||||
As part of the plan to add OCR zone and barcode support the first set of
|
||||
changes was included in this version. These initial changes bring the OCR
|
||||
app up to standard with the rest of the system and splits the OCR app into two
|
||||
@@ -83,8 +78,7 @@ by OCR.
|
||||
|
||||
|
||||
Document parsing
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
----------------
|
||||
Historically Mayan has had two methods to extract text from PDF files. First
|
||||
it will try the program called `pdftotext` and failing that will try the
|
||||
PDFMiner Python library. The official PDFMiner library is unmaintained and
|
||||
@@ -98,8 +92,7 @@ extraction strategy.
|
||||
|
||||
|
||||
Document version UI
|
||||
^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
-------------------
|
||||
The list of versions of a document was updated to use the new item list
|
||||
view templated added in version 2.6 for document lists. Along with this update
|
||||
preview support was added for individual document version. It is also possible
|
||||
@@ -109,8 +102,7 @@ example the difference in a document's versions.
|
||||
|
||||
|
||||
Events system
|
||||
^^^^^^^^^^^^^
|
||||
|
||||
-------------
|
||||
The events system has been updated to provide more information and improve
|
||||
navigation. The `Actor` field will now display `System` when an event was
|
||||
performed by the system instead of displaying the document name. The
|
||||
@@ -144,40 +136,37 @@ to trigger a workflow transition. The current list:
|
||||
|
||||
|
||||
Metadata on document type change
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
--------------------------------
|
||||
Changing document types will no longer delete all metadata from the document.
|
||||
Any existing metadata whose type matches the metadata in the new type will be
|
||||
preserved.
|
||||
|
||||
|
||||
Permission rebalance
|
||||
^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
--------------------
|
||||
In order to attach or remove a tag to a document, the tag view permissions
|
||||
was needed. This has been update to required the tag attach and remove
|
||||
permissions respectively.
|
||||
|
||||
|
||||
Other Changes
|
||||
^^^^^^^^^^^^^
|
||||
|
||||
- Add workaround for PDF with ``IndirectObject`` as the
|
||||
-------------
|
||||
- Add workaround for PDF with IndirectObject as the
|
||||
rotation value. GitHub #261.
|
||||
- Add ACL list link with icon and use it for the document facet menu.
|
||||
- Fix mailing app permissions labels.
|
||||
- Add ACLs link and ACLs permissions to the mailer profile model.
|
||||
- Improve mailer URL regex.
|
||||
- Add ordering support to the ``SourceColumn`` class. GitLab issue #417.
|
||||
- Add ordering support to the SourceColumn class. GitLab issue #417.
|
||||
- Shows the cabinets in the document list. GitLab #417 @corneliusludmann
|
||||
- Update the index information columns to show the
|
||||
- Update the index information colums to show the
|
||||
total number of documents and nodes contained in a level.
|
||||
- Add workaround for pycountry versions without the bibliographical key.
|
||||
GitHub issue #250.
|
||||
- Skip UUID migration on Oracle backends. GitHub issue #251.
|
||||
- Allow changing the output format, DPI of the pdftoppm command, and
|
||||
the output format of the converter via the ``CONVERTER_GRAPHICS_BACKEND_CONFIG``
|
||||
setting sub options: ``pdftoppm_dpi: 300, pdftoppm_format: jpeg, pillow_format: jpeg``
|
||||
the output format of the converter via the CONVERTER_GRAPHICS_BACKEND_CONFIG
|
||||
setting sub options: pdftoppm_dpi: 300, pdftoppm_format: jpeg, pillow_format: jpeg
|
||||
GitHub issues #256 #257 GitLab issue #416.
|
||||
- Add support for workflow triggers.
|
||||
- Add support for workflow actions. Includes actions to attach and remove tags,
|
||||
@@ -191,7 +180,7 @@ Other Changes
|
||||
- Convert document version view to item list view.
|
||||
- Add support for browsing individual document versions.
|
||||
- Add support for dropdown menus to the item list view template.
|
||||
- Add support for preserving the file extension when downloading a document
|
||||
- Add support for preserving the file extenstion when downloading a document
|
||||
version. GitLab #415.
|
||||
- Split OCR app into OCR and parsing.
|
||||
- Use the literal 'System' instead of the target name when
|
||||
@@ -211,27 +200,24 @@ Other Changes
|
||||
- Implement field order for the action dynamic forms.
|
||||
Perform action class validation by importing the class and
|
||||
not relying on an instance of action model, which might not
|
||||
exist when still creating the action.
|
||||
exisit when still creating the action.
|
||||
- Navigation improvements in the workflow app.
|
||||
- Rename index nodes to index levels.
|
||||
- Avoid Maximum recursion depth exceeded exception on index document
|
||||
list view.
|
||||
|
||||
|
||||
Removals
|
||||
--------
|
||||
|
||||
- Folders app.
|
||||
- The view to submit all document for OCR. The view to submit documents by type
|
||||
substitutes this once.
|
||||
- The ``PDFMiner`` parser.
|
||||
|
||||
- The PDFMiner parser.
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
|
||||
Using PIP
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
Type in the console::
|
||||
|
||||
@@ -239,9 +225,8 @@ Type in the console::
|
||||
|
||||
the requirements will also be updated automatically.
|
||||
|
||||
|
||||
Using Git
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
If you installed Mayan EDMS by cloning the Git repository issue the commands::
|
||||
|
||||
@@ -255,9 +240,8 @@ Next upgrade/add the new requirements::
|
||||
|
||||
$ pip install --upgrade -r requirements.txt
|
||||
|
||||
|
||||
Common steps
|
||||
^^^^^^^^^^^^
|
||||
~~~~~~~~~~~~
|
||||
|
||||
Migrate existing database schema with::
|
||||
|
||||
@@ -271,26 +255,25 @@ The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
=============================
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
===========================
|
||||
|
||||
* :github-issue:`250` migrate fails on documents.0025_auto_20150718_0742
|
||||
* :github-issue:`251` migrate fails on documents.0032_auto_20160315_0537
|
||||
* :github-issue:`256` Make it possible to adjust values in apps\converter\literals.py from Settings
|
||||
* :github-issue:`257` Use the DEFAULT_FILE_FORMAT from literals.py in python.py
|
||||
* :github-issue:`261` fix_orientation method causes document add to crash
|
||||
* :github-issue:`263` Typo in mayan/apps/ocr/migrations/0004_documenttypesettings.py
|
||||
* `GitHub issue #250 <https://github.com/mayan-edms/mayan-edms/issues/250>`_ migrate fails on documents.0025_auto_20150718_0742
|
||||
* `GitHub issue #251 <https://github.com/mayan-edms/mayan-edms/issues/251>`_ migrate fails on documents.0032_auto_20160315_0537
|
||||
* `GitHub issue #256 <https://github.com/mayan-edms/mayan-edms/issues/256>`_ Make it possible to adjust values in apps\converter\literals.py from Settings
|
||||
* `GitHub issue #257 <https://github.com/mayan-edms/mayan-edms/issues/257>`_ Use the DEFAULT_FILE_FORMAT from literals.py in python.py
|
||||
* `GitHub issue #261 <https://github.com/mayan-edms/mayan-edms/issues/261>`_ fix_orientation method causes document add to crash
|
||||
* `GitHub issue #263 <https://github.com/mayan-edms/mayan-edms/issues/263>`_ Typo in mayan/apps/ocr/migrations/0004_documenttypesettings.py
|
||||
* `GitLab issue #172 <https://gitlab.com/mayan-edms/mayan-edms/issues/172>`_ Metadata default value ignored when changing document type
|
||||
* `GitLab issue #329 <https://gitlab.com/mayan-edms/mayan-edms/issues/329>`_ Move code to Python 3
|
||||
* `GitLab issue #415 <https://gitlab.com/mayan-edms/mayan-edms/issues/415>`_ Wrong filename when downloading document version
|
||||
* `GitLab issue #416 <https://gitlab.com/mayan-edms/mayan-edms/issues/416>`_ DPI value for OCR not taken from document metadata
|
||||
* `GitLab issue #417 <https://gitlab.com/mayan-edms/mayan-edms/issues/417>`_ Display document cabinets in documents list
|
||||
* `GitLab issue #421 <https://gitlab.com/mayan-edms/mayan-edms/issues/421>`_ Metadata lost when changing document type
|
||||
|
||||
* :gitlab-issue:`172` Metadata default value ignored when changing document type
|
||||
* :gitlab-issue:`329` Move code to Python 3
|
||||
* :gitlab-issue:`415` Wrong filename when downloading document version
|
||||
* :gitlab-issue:`416` DPI value for OCR not taken from document metadata
|
||||
* :gitlab-issue:`417` Display document cabinets in documents list
|
||||
* :gitlab-issue:`421` Metadata lost when changing document type
|
||||
|
||||
.. _PyPI: https://pypi.python.org/pypi/mayan-edms/
|
||||
|
||||
@@ -1,76 +0,0 @@
|
||||
Version 3.0.1
|
||||
=============
|
||||
|
||||
Released: July 08, 2018
|
||||
|
||||
Changes
|
||||
-------
|
||||
|
||||
- Pin javascript libraries to specific versions to avoid using
|
||||
potentianlly broken updates automatically. GitLab issue #486.
|
||||
- French and Polish language translation updates.
|
||||
- Merge request #25. Thanks to Daniel Albert @esclear
|
||||
for the patch.
|
||||
|
||||
|
||||
Removals
|
||||
--------
|
||||
|
||||
- None
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
|
||||
Using PIP
|
||||
^^^^^^^^^
|
||||
|
||||
Type in the console::
|
||||
|
||||
$ pip install mayan-edms==3.0.1
|
||||
|
||||
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.
|
||||
|
||||
Next upgrade/add the new requirements::
|
||||
|
||||
$ pip install --upgrade -r requirements.txt
|
||||
|
||||
|
||||
Common steps
|
||||
^^^^^^^^^^^^
|
||||
|
||||
Migrate existing database schema with::
|
||||
|
||||
$ mayan-edms.py performupgrade
|
||||
|
||||
Add new static media::
|
||||
|
||||
$ mayan-edms.py collectstatic --noinput
|
||||
|
||||
The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
|
||||
* :gitlab-issue:`486` Docker Verison 3.0 not working
|
||||
|
||||
.. _PyPI: https://pypi.python.org/pypi/mayan-edms/
|
||||
@@ -1,149 +0,0 @@
|
||||
Version 3.0.2
|
||||
=============
|
||||
|
||||
Released: August 16, 2018
|
||||
|
||||
Changes
|
||||
-------
|
||||
|
||||
This bug fix release also includes a few tweaks to improve user experience.
|
||||
|
||||
|
||||
Docker install script
|
||||
^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
- Default to verbose.
|
||||
- Increase startup timer from 5 to 10 seconds to give more time to users to
|
||||
examine the settings of the installation to be performed.
|
||||
- Add support for configuring the PostgreSQL port. Useful when there are
|
||||
existing PostgreSQL installations.
|
||||
- Docker install script: Detect if Docker installed and provide help
|
||||
text if not.
|
||||
|
||||
|
||||
Documentation
|
||||
^^^^^^^^^^^^^
|
||||
|
||||
Add deployment step that configures Redis to discard unused task data when
|
||||
it runs out of memory. Redis is only used for volatile data therefore
|
||||
configuring it to discard data doesn't affect functionality but increases
|
||||
response time and reduced memory consumption.
|
||||
|
||||
The default timeout for gunicorn has been increased from from 30 to 120
|
||||
seconds.
|
||||
|
||||
The code statistics and pending work chapters have been removed from the
|
||||
documentation. The pending work list has been divided into a pending and a
|
||||
planned feature list and moved to the new Wiki at wiki.mayan-edms.com
|
||||
|
||||
Builds
|
||||
^^^^^^
|
||||
|
||||
Limit the number of branches that trigger the full test suit. Makes better use
|
||||
of the amount of free continous integration available in GitLab.
|
||||
|
||||
|
||||
Program code
|
||||
^^^^^^^^^^^^
|
||||
|
||||
- Index app: Add natural key support to the Index model.
|
||||
- Mailer app: Add natural key support to the mailer app.
|
||||
- Cabinets: Redirect to the cabinet list view after creating a new cabinet.
|
||||
- Converter app: Fix crop transformation argument parsing.
|
||||
- Converter app: Add error checking to the crop transformation arguments.
|
||||
Thanks to Jordan Wages (@wagesj45) for the report and investigation on the issue.
|
||||
Closes GitLab issue #490
|
||||
- Common app: Fix post login redirection to honor the ``?next=`` URL query string
|
||||
argument. Thanks go to K.C. Wong (@dvusboy1). Closes GitLab
|
||||
issue #489.
|
||||
- Sources app: Update dropzone.js' timeout from 30 seconds to 120 to allow
|
||||
upload of large files on slow connections.
|
||||
- Documents app: Display error when attempting to recalculate the page
|
||||
count of an empty
|
||||
document (document stub that has no document version).
|
||||
- Appearance app: Include querystring when force reload of a bare template view.
|
||||
- Documents app: Fix trashed document count and document page count swapped
|
||||
dashboard icons.
|
||||
- Documents app: Rename the multi document download link from "Download" to
|
||||
"Advanced download" for consistency.
|
||||
- Appearance app: Add support for hiding a links icon. Hide all object menu
|
||||
links' icons.
|
||||
- Documents app: Hide the title link of documents in the trash.
|
||||
- Workflow app: Define a redirection after workflow actions are edited.
|
||||
|
||||
|
||||
Security
|
||||
^^^^^^^^
|
||||
- Appearance app: avoid setting window.location directly to avoid exploit
|
||||
of cross site scripting. Thanks to Lokesh (@lokesh1095) for the report
|
||||
and solution. Closes GitLab issue #494.
|
||||
- Cabinets app: Escape cabinet labels to avoid possible exploit of
|
||||
cross site scripting. Thanks to Lokesh (@lokesh1095) for the report
|
||||
and proposed solutions. Closes GitLab issue #495.
|
||||
|
||||
|
||||
Removals
|
||||
--------
|
||||
|
||||
- None
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
|
||||
Using PIP
|
||||
^^^^^^^^^
|
||||
|
||||
Type in the console::
|
||||
|
||||
$ pip install mayan-edms==3.0.2
|
||||
|
||||
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.
|
||||
|
||||
Next upgrade/add the new requirements::
|
||||
|
||||
$ pip install --upgrade -r requirements.txt
|
||||
|
||||
|
||||
Common steps
|
||||
^^^^^^^^^^^^
|
||||
|
||||
Migrate existing database schema with::
|
||||
|
||||
$ mayan-edms.py performupgrade
|
||||
|
||||
Add new static media::
|
||||
|
||||
$ mayan-edms.py collectstatic --noinput
|
||||
|
||||
The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
|
||||
* :gitlab-issue:`489` "next" parameter is not honored after login
|
||||
* :gitlab-issue:`490` Crop Transformation seems to not convert input to numeric values
|
||||
* :gitlab-issue:`491` "Warning Your database backend is set to use SQLite[...]" with docker compose
|
||||
* :gitlab-issue:`494` DOM based Cross Site Scripting
|
||||
* :gitlab-issue:`495` Persistent Cross Site Scripting
|
||||
|
||||
.. _PyPI: https://pypi.python.org/pypi/mayan-edms/
|
||||
@@ -1,84 +0,0 @@
|
||||
Versin 3.0.3
|
||||
============
|
||||
|
||||
Released: August 17, 2018
|
||||
|
||||
Changes
|
||||
-------
|
||||
|
||||
Program code
|
||||
^^^^^^^^^^^^
|
||||
|
||||
- Tags app: Add explicit post action redirect for the tag attach and
|
||||
tag remove actions when working on a single document.
|
||||
|
||||
|
||||
Security
|
||||
^^^^^^^^
|
||||
|
||||
- Tags app: Add explicit casting of escaped tag labels to prevent exploit
|
||||
of cross site scripting. Thanks to Lokesh (@lokesh1095) for
|
||||
the report and proposed solutions. Closes GitLab issue #496.
|
||||
|
||||
|
||||
Removals
|
||||
--------
|
||||
|
||||
- None
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
|
||||
Using PIP
|
||||
^^^^^^^^^
|
||||
|
||||
Type in the console::
|
||||
|
||||
$ pip install mayan-edms==3.0.3
|
||||
|
||||
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.
|
||||
|
||||
Next upgrade/add the new requirements::
|
||||
|
||||
$ pip install --upgrade -r requirements.txt
|
||||
|
||||
|
||||
Common steps
|
||||
^^^^^^^^^^^^
|
||||
|
||||
Migrate existing database schema with::
|
||||
|
||||
$ mayan-edms.py performupgrade
|
||||
|
||||
Add new static media::
|
||||
|
||||
$ mayan-edms.py collectstatic --noinput
|
||||
|
||||
The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
|
||||
* :gitlab-issue:`496` Persistent Cross Site Scripting
|
||||
|
||||
.. _PyPI: https://pypi.python.org/pypi/mayan-edms/
|
||||
@@ -1,15 +1,15 @@
|
||||
Version 3.0
|
||||
===========
|
||||
=============================
|
||||
Mayan EDMS v3.0 release notes
|
||||
=============================
|
||||
|
||||
Released: June 29, 2018
|
||||
Released: March 19, 2018
|
||||
|
||||
Changes
|
||||
-------
|
||||
What's new
|
||||
==========
|
||||
|
||||
Turning Mayan EDMS into a single page app
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Historically, Mayan EDMS has steered away from adding too much JavaScript
|
||||
-----------------------------------------
|
||||
Historically, Mayan EDMS has steered away from adding too much Javascript
|
||||
in its code. The goal was to be able to maintain a robust, backend-based
|
||||
page rendering method that will be as future-proof as possible.
|
||||
This approach comes at the cost of some page loading speed, and reduced
|
||||
@@ -19,7 +19,7 @@ The whole system has been update to work as a modern Single Page App.
|
||||
Single Page Applications (SPAs) rewrite the current page dynamically
|
||||
rather than loading the entire page on each click of the mouse. This
|
||||
makes the web application feel and behave more like a desktop
|
||||
application. Because the majority of the styling and JavaScript code
|
||||
application. Because the majority of the styling and Javascript code
|
||||
is loaded only once, there is also the added benefit of less data down
|
||||
the wire. Thus the application becomes lighter and provides a faster
|
||||
response time to user events. Because the style is loaded and
|
||||
@@ -33,8 +33,7 @@ improvements are now possible.
|
||||
|
||||
|
||||
Upgrading to Django 1.11
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
------------------------
|
||||
The move to Django 1.11 proved to be a real challenge. Even though
|
||||
Django 1.11 is a minor release, it breaks compatibility and interfaces
|
||||
in several key areas. Among these were templates and form widgets.
|
||||
@@ -50,8 +49,7 @@ warning were fixed in preparation for an eventual upgrade to Django 2.0.
|
||||
|
||||
|
||||
Notification improvements
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
-------------------------
|
||||
These work by allowing users to subscribe to a particular event like Document
|
||||
Uploads or to an event of a particular document like when an invoice is edited.
|
||||
If these events occurs, the user gets a reminder next to the bell icon in the
|
||||
@@ -59,8 +57,7 @@ main menu bar.
|
||||
|
||||
|
||||
Dependencies upgrades
|
||||
^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
---------------------
|
||||
Most of the requirements, dependencies and libraries were upgraded to
|
||||
their latest release.
|
||||
|
||||
@@ -84,8 +81,7 @@ their latest release.
|
||||
|
||||
|
||||
Search syntax
|
||||
^^^^^^^^^^^^^
|
||||
|
||||
-------------
|
||||
Searching without using a specialized search database is difficult.
|
||||
Mayan’s design calls avoiding a separate search engine at the cost of some
|
||||
missing search syntax. The OR and the negative term support are the first
|
||||
@@ -119,8 +115,7 @@ This will return only documents with the exact phrase “blue car”.
|
||||
|
||||
|
||||
Running multiple instances of Mayan EDMS
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
----------------------------------------
|
||||
If you've ever tried running two instances of Mayan EDMS, you would
|
||||
have noticed that they both try to create a lock file in the ``/tmp``
|
||||
directory with the same name. Only the first instance will be able to run.
|
||||
@@ -135,8 +130,7 @@ all practical purposes.
|
||||
|
||||
|
||||
Display resolution settings
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
---------------------------
|
||||
Display sizes for document display, previews, and thumbnail were specified
|
||||
as a string that included the horizontal and the vertical resolution
|
||||
separated by the character “x”. Using an “x” character to separate
|
||||
@@ -154,7 +148,7 @@ The settings are now:
|
||||
|
||||
|
||||
Dynamic upload wizard steps
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
---------------------------
|
||||
The steps needed to upgrade a document using form-tools' SessionWizard
|
||||
were hardcoded in the source app. This made it very difficult to add or remove
|
||||
wizard steps.
|
||||
@@ -233,13 +227,12 @@ module. Example::
|
||||
WizardStep.deregister(WizardStepTags)
|
||||
|
||||
|
||||
This will cause the tags assignment step to not be assigned to the upload
|
||||
This will cause the tags assigment step to not be assigned to the upload
|
||||
wizard anymore.
|
||||
|
||||
|
||||
New upload step
|
||||
^^^^^^^^^^^^^^^
|
||||
|
||||
---------------
|
||||
Using the new ``WizardStep`` class a new upload wizard step was added
|
||||
to assign documents being uploaded to any number of cabinets while
|
||||
being uploaded. This step was been assigned number 4 in the order of
|
||||
@@ -247,23 +240,20 @@ step for uploading a file.
|
||||
|
||||
|
||||
Fix carousel item height issues
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
-------------------------------
|
||||
On some devices the height of the pages on the document preview view were
|
||||
squashed. The CSS for this view was updated to fix this issue.
|
||||
|
||||
|
||||
Orientation detection
|
||||
^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
---------------------
|
||||
After reports that it is not working in 100% of the cases, the feature that
|
||||
detects and fixes the orientation of PDF has been marked experimental and
|
||||
now defaults to being disabled.
|
||||
|
||||
|
||||
New proposal system
|
||||
^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
-------------------
|
||||
The Mayan EDMS Request for Comments or MERCs will be use to propose and or
|
||||
document the new features, the existing code, and the processes governing the
|
||||
project. MERCs 1 and 2 have been approved. MERC-1 outlines the MERC process
|
||||
@@ -271,8 +261,7 @@ itself and MERC-2 documents the way API tests are to be written for Mayan EDMS.
|
||||
|
||||
|
||||
Duplicated documents
|
||||
^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
--------------------
|
||||
The duplicated documents system has been improved to also better detect when
|
||||
the duplicate of a primary document has been move to the trash. In this
|
||||
instance the duplicate count of the primary document would be zero and will
|
||||
@@ -282,10 +271,8 @@ If the duplicated document is deleted from the trash the system now will launch
|
||||
a background clean up task to permanently delete the empty primary document's
|
||||
duplicate document entry from the database.
|
||||
|
||||
|
||||
Storage
|
||||
^^^^^^^
|
||||
|
||||
-------
|
||||
It is now possible to pass arguments to the document, document cache and
|
||||
document signatures storage backends. To pass the arguments, use the new
|
||||
settings: ``DOCUMENTS_STORAGE_BACKEND_ARGUMENTS``,
|
||||
@@ -308,54 +295,44 @@ If no path is specified the backend will default to ``mayan/media/document_stora
|
||||
Finally, to standardize the way app use storage, the ``storages.py`` modules is now used
|
||||
instead of the ``runtime.py`` module.
|
||||
|
||||
|
||||
User event filtering
|
||||
^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
--------------------
|
||||
When viewing the event list, the Actor (user) column is not displayed
|
||||
as a link. Clicking this link will filter the event list and display
|
||||
the events performed by that user. The view of event for each user can
|
||||
also be viewed using a new link added to the user list view in the setup
|
||||
menu.
|
||||
|
||||
|
||||
Smart checkbox selection
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
------------------------
|
||||
A faster way to select multiple item has been added. Click the checkbox of the first,
|
||||
hold the Shift key, and then click the checkbox of the last item of the selection.
|
||||
This will select the first, the last and all items in between. To deselect multiple
|
||||
items the same procedure is used. This code was donated by the Paperattor
|
||||
project (www.paperattor.com).
|
||||
|
||||
|
||||
Add JavaScript dependency manager
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
---------------------------------
|
||||
An internal utility to install and upgrade the JavaScript dependencies was added.
|
||||
This depency manager allows for the easier maintenance of the JavaScript libraries
|
||||
This depency manager allows for the easier maintenace of the JavaScript libraries
|
||||
used through the project.
|
||||
|
||||
Previously JavaScript libraries we downloaded and installed by manually. These
|
||||
libraries were them checked into the Git repository. Finally to enable them
|
||||
the corresponding imports were added to the base templates in the appeance app.
|
||||
the correspoding imports were added to the base templates in the apppeance app.
|
||||
|
||||
This new manager is the first step to start resolving these issues. The manager
|
||||
allows apps to specify their own dependencies. These dependencies are then
|
||||
allows apps to specify their own dependencies. These dependecies are then
|
||||
downloaded when the project is installed or upgraded. As such they are not
|
||||
part of the repository and lower the file size of the project.
|
||||
|
||||
|
||||
Workflow changes
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
----------------
|
||||
Removing a document type from a workflow will now also remove all running
|
||||
instances of that workflow for documents of the document type just removed.
|
||||
|
||||
|
||||
Adoption of Contributor Assignment Agreements
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
---------------------------------------------
|
||||
To facilitate the inclusion of submissions provided by third parties,
|
||||
the project has adopted the use of individual and entity contributor
|
||||
assignment agreements. These agreements make clear the process to
|
||||
@@ -363,10 +340,8 @@ transfer the rights to submissions. With these agreements in place
|
||||
we now have a documented and legally sound method to accept
|
||||
submissions that we couldn't before.
|
||||
|
||||
|
||||
SQLite
|
||||
^^^^^^
|
||||
|
||||
------
|
||||
Starting with version 3.0, a warning message will be shown in the console and
|
||||
in the user interface when using SQLite as the database engine. When it comes to
|
||||
Mayan EDMS, SQLite should only be used for development or testing, never for
|
||||
@@ -375,10 +350,8 @@ SQLite. The results are duplicated documents, frequency database locked errors,
|
||||
among other issues. Suggested database backends are PostgreSQL and MySQL
|
||||
(or MariaDB) using a transaction aware storage engine like InnoDB.
|
||||
|
||||
|
||||
Received email processing
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
-------------------------
|
||||
Parsing email messages is a complex task. To increase compatibility with the
|
||||
many interpretations of the standards that govern email messaging, Mayan EDMS
|
||||
now uses Mailgun's flanker library (https://github.com/mailgun/flanker).
|
||||
@@ -386,10 +359,8 @@ Thanks to flanker, Mayan EDMS now gains new capabilities when it comes to
|
||||
parsing incoming email. For example, in addition to mail attachments, it is now
|
||||
possible to process files included in emails as inline content.
|
||||
|
||||
|
||||
Other changes worth mentioning
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
------------------------------
|
||||
- Add Makefile target to check the format of the README.rst file.
|
||||
- Fix permission filtering when performing document page searching
|
||||
- base.js was splitted into mayan_app.js, mayan_image.js, and
|
||||
@@ -418,7 +389,7 @@ Other changes worth mentioning
|
||||
- Unify all document widgets.
|
||||
- Printed pages are now full width.
|
||||
- Move the invalid document markup to a separate HTML template.
|
||||
- Move transformations to their own module.
|
||||
- Move transfomations to their own module.
|
||||
- Split documents.tests.test_views into:
|
||||
|
||||
- base.py
|
||||
@@ -437,7 +408,7 @@ Other changes worth mentioning
|
||||
- Fix documentation formatting.
|
||||
- Add upload wizard step documentation chapter.
|
||||
- Improve and add additional diagrams.
|
||||
- Change documentation theme to rtd.
|
||||
- Change documenation theme to rtd.
|
||||
- Add the "to=" keyword argument to all ForeignKey, ManayToMany and
|
||||
OneToOne Fields.
|
||||
- Rename the role groups link label from "Members" to "Groups".
|
||||
@@ -517,19 +488,18 @@ Other changes worth mentioning
|
||||
- Add a new setting option to enable automatic parsing for each new document
|
||||
type created.
|
||||
- Add support for HTML bodies to the user mailers.
|
||||
- Production ``ALLOWED_HOSTS`` settings now defaults to a safer
|
||||
``['127.0.0.1', 'localhost', '[::1]']``
|
||||
- Production ALLOWED_HOSTS settings now defaults to a safer
|
||||
['127.0.0.1', 'localhost', '[::1]']
|
||||
- Capture menu resolution errors on invalid URLs. Closes GitLab issue #420.
|
||||
- New environment variables: ``MAYAN_SECRET_KEY``,
|
||||
``MAYAN_CELERY_ALWAYS_EAGER``, ``MAYAN_CELERY_RESULT_BACKEND``,
|
||||
``MAYAN_BROKER_URL``, ``MAYAN_DATABASE_ENGINE``,
|
||||
``MAYAN_DATABASE_CONN_MAX_AGE``, ``MAYAN_DATABASE_NAME``,
|
||||
``MAYAN_DATABASE_USER``, ``MAYAN_DATABASE_PASSWORD``,
|
||||
``MAYAN_DATABASE_HOST``, ``MAYAN_DATABASE_PORT``, ``MAYAN_DEBUG``.
|
||||
- Stricter defaults. CELERY_ALWAYS_EAGER to False, ``ALLOWED_HOSTS`` to
|
||||
``['127.0.0.1', 'localhost', '[::1]']``.
|
||||
- New environment variables: MAYAN_SECRET_KEY, MAYAN_CELERY_ALWAYS_EAGER,
|
||||
MAYAN_CELERY_RESULT_BACKEND, MAYAN_BROKER_URL, MAYAN_DATABASE_ENGINE,
|
||||
MAYAN_DATABASE_CONN_MAX_AGE, MAYAN_DATABASE_NAME, MAYAN_DATABASE_USER,
|
||||
MAYAN_DATABASE_PASSWORD, MAYAN_DATABASE_HOST, MAYAN_DATABASE_PORT,
|
||||
MAYAN_DEBUG.
|
||||
- Stricter defaults. CELERY_ALWAYS_EAGER to False, ALLOWED_HOSTS to
|
||||
['127.0.0.1', 'localhost', '[::1]'].
|
||||
- New initialization command. Creates media/system and populates the
|
||||
``SECRET_KEY`` and ``VERSION`` files.
|
||||
SECRET_KEY and VERSION files.
|
||||
- Sane scanner source paper source now defaults to blank.
|
||||
- Merge Docker image creation back into the main repository.
|
||||
- Docker image now uses gunicorn and whitenoise instead of NGINX to server
|
||||
@@ -537,43 +507,30 @@ Other changes worth mentioning
|
||||
- All installation artifact are now created and read from the media folder.
|
||||
- Debian is now the Linux distribution used for the Docker image.
|
||||
- Most Docker Celery workers are now execute using a lower OS priority number.
|
||||
- Add ``COMMON_PRODUCTION_ERROR_LOGGING`` setting to control the logging of
|
||||
- Add COMMON_PRODUCTION_ERROR_LOGGING setting to control the logging of
|
||||
errors in production. Defaults to False.
|
||||
- Change the error log file handle class to RotatingFileHandle to avoid an
|
||||
indefinitely growing log file.
|
||||
- Disable embedded signature verification during the perform upgrade command.
|
||||
- Replace the ``DOCUMENTS_LANGUAGE_CHOICES`` setting option. Replaced with the
|
||||
new ``DOCUMENTS_LANGUAGE_CODES``.
|
||||
- Disable embedded signatute verification during the perform upgrade command.
|
||||
- Replace the DOCUMENTS_LANGUAGE_CHOICES setting option. Replaced with the
|
||||
new DOCUMENTS_LANGUAGE_CODES.
|
||||
- Reduce default language code choice from 7800 to the top 100 spoken
|
||||
languages and related
|
||||
(https://en.wikipedia.org/wiki/List_of_languages_by_number_of_native_speakers)
|
||||
- Fix error when trying to upload a document from and email account with
|
||||
'from' and 'subject' metadata.
|
||||
languages and related (https://en.wikipedia.org/wiki/List_of_languages_by_number_of_native_speakers)
|
||||
- Fix error when trying to upload a document from and email account with 'from' and 'subject' metadata.
|
||||
- Fix typo on message.header get from 'Suject' to 'Subject'.
|
||||
- On multi part emails keep the original From and Subject properties for
|
||||
all subsequent parts if the sub parts don't specify them. Fixes issue
|
||||
#481. Thanks to Robert Schöftner @robert.schoeftner for the report and
|
||||
debug information.
|
||||
- Don't provide a default for the scanner source adf_mode. Some scanners
|
||||
throw an error even when the selection if supported.
|
||||
- Add a "Quick Download" action to reduce the number of steps to download
|
||||
a single document. GitLab issue #338.
|
||||
- Recalculate a document's indexes when attaching or removing a tag from or
|
||||
to it.
|
||||
- Recalculate all of a tag's documents when a tag is about to be deleted.
|
||||
|
||||
- On multi part emails keep the original From and Subject properties for all subsequent parts if the sub parts don't specify them. Fixes issue #481. Thanks to Robert Schöftner @robert.schoeftner for the report and debug information.
|
||||
- Don't provide a default for the scanner source adf_mode. Some scanners throw an error even when the selection
|
||||
if supported.
|
||||
- Add a "Quick Download" action to reduce the number of steps to download a single document. GitLab issue #338.
|
||||
|
||||
Removals
|
||||
--------
|
||||
|
||||
* Data filters app.
|
||||
* ``DOCUMENTS_LANGUAGE_CHOICES`` setting option. Replaced with
|
||||
``DOCUMENTS_LANGUAGE_CODES``.
|
||||
|
||||
* DOCUMENTS_LANGUAGE_CHOICES setting option. Replaced with
|
||||
DOCUMENTS_LANGUAGE_CODES.
|
||||
|
||||
Known issues
|
||||
------------
|
||||
|
||||
The newly added 'flanker' dependency used to process email, produces a number
|
||||
of warnings on the console that are imposible to turn off. These are not
|
||||
critical and are related to coding practices in the library. All warning
|
||||
@@ -585,8 +542,9 @@ Example: "WARNING:flanker.addresslib._parser.parser:Symbol 'domain' is unreachab
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
|
||||
|
||||
Using PIP
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
Type in the console::
|
||||
|
||||
@@ -596,7 +554,7 @@ the requirements will also be updated automatically.
|
||||
|
||||
|
||||
Using Git
|
||||
^^^^^^^^^
|
||||
~~~~~~~~~
|
||||
|
||||
If you installed Mayan EDMS by cloning the Git repository issue the commands::
|
||||
|
||||
@@ -612,7 +570,7 @@ Next upgrade/add the new requirements::
|
||||
|
||||
|
||||
Common steps
|
||||
^^^^^^^^^^^^
|
||||
~~~~~~~~~~~~
|
||||
|
||||
Migrate existing database schema with::
|
||||
|
||||
@@ -626,45 +584,42 @@ The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
=============================
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
===========================
|
||||
|
||||
* :gitlab-issue:`211` Remove all workflows when removing them from a document type
|
||||
* :gitlab-issue:`262` Event notifications
|
||||
* :gitlab-issue:`278` Detect non migrated models
|
||||
* :gitlab-issue:`302` 'New Document' button available to users who do not have permission
|
||||
* :gitlab-issue:`332` Add option to pass configuration parameters to the OCR backend as mentioned in #319
|
||||
* :gitlab-issue:`338` Quick download link in documents list view
|
||||
* :gitlab-issue:`370` Advanced search appears to OR the fields instead of AND them
|
||||
* :gitlab-issue:`380` Features removal for version 3.0
|
||||
* :gitlab-issue:`405` Add wizard steps from external apps
|
||||
* :gitlab-issue:`407` Improve search syntax to support search query types: AND, OR
|
||||
* :gitlab-issue:`408` Improve document checkbox selection.
|
||||
* :gitlab-issue:`420` Mayan raises a 500 instead of 404 in production mode
|
||||
* :gitlab-issue:`427` /tmp/mayan_locks.tmp is always owned by root
|
||||
* :gitlab-issue:`430` Can't use STATICFILES_STORAGE that requires running collectstatic first
|
||||
* :gitlab-issue:`437` Record users who upload or edit documents
|
||||
* :gitlab-issue:`439` Toastr library missing after update
|
||||
* :gitlab-issue:`444` Error in retrieving documents via POP3
|
||||
* :gitlab-issue:`446` Document searcher
|
||||
* :gitlab-issue:`447` API Security Bug Chinese wall breach
|
||||
* :gitlab-issue:`449` OCR Error: 'int' object has no attribute 'split'
|
||||
* :gitlab-issue:`452` Workflow ACL Doesn't works
|
||||
* :gitlab-issue:`454` Invalid next month calculation in statistics app, causes failstop
|
||||
* :gitlab-issue:`467` mail attachments without content-disposition are lost
|
||||
* :gitlab-issue:`468` plain text e-mails without charset do not work
|
||||
* :gitlab-issue:`470` Enable Django variable for HTML encoded emails
|
||||
* :gitlab-issue:`474` Provide option to serve Mayan EDMS without a webserver (using Tornado o similar).
|
||||
* :gitlab-issue:`480` Wrong Environment Variables names in documentation
|
||||
* :gitlab-issue:`481` IMAP sources with metadata not working in 3.0rc1
|
||||
* :gitlab-issue:`484` Document upload wizard only works as admin
|
||||
|
||||
* :github-issue:`264` migrate fails on document_states 0004_workflow_internal_name
|
||||
* :github-issue:`269` Lack of authentication for document previews
|
||||
* `GitLab issue #211 <https://gitlab.com/mayan-edms/mayan-edms/issues/211>`_ Remove all workflows when removing them from a document type
|
||||
* `GitLab issue #262 <https://gitlab.com/mayan-edms/mayan-edms/issues/262>`_ Event notifications
|
||||
* `GitLab issue #278 <https://gitlab.com/mayan-edms/mayan-edms/issues/278>`_ Detect non migrated models
|
||||
* `GitLab issue #302 <https://gitlab.com/mayan-edms/mayan-edms/issues/302>`_ 'New Document' button available to users who do not have permission
|
||||
* `GitLab issue #332 <https://gitlab.com/mayan-edms/mayan-edms/issues/332>`_ Add option to pass configuration parameters to the OCR backend as mentioned in #319
|
||||
* `GitLab issue #338 <https://gitlab.com/mayan-edms/mayan-edms/issues/338>`_ Quick download link in documents list view
|
||||
* `GitLab issue #370 <https://gitlab.com/mayan-edms/mayan-edms/issues/370>`_ Advanced search appears to OR the fields instead of AND them
|
||||
* `GitLab issue #380 <https://gitlab.com/mayan-edms/mayan-edms/issues/380>`_ Features removal for version 3.0
|
||||
* `GitLab issue #405 <https://gitlab.com/mayan-edms/mayan-edms/issues/405>`_ Add wizard steps from external apps
|
||||
* `GitLab issue #407 <https://gitlab.com/mayan-edms/mayan-edms/issues/407>`_ Improve search syntax to support search query types: AND, OR
|
||||
* `GitLab issue #408 <https://gitlab.com/mayan-edms/mayan-edms/issues/408>`_ Improve document checkbox selection.
|
||||
* `GitLab issue #420 <https://gitlab.com/mayan-edms/mayan-edms/issues/420>`_ Mayan raises a 500 instead of 404 in production mode
|
||||
* `GitLab issue #427 <https://gitlab.com/mayan-edms/mayan-edms/issues/427>`_ /tmp/mayan_locks.tmp is always owned by root
|
||||
* `GitLab issue #430 <https://gitlab.com/mayan-edms/mayan-edms/issues/430>`_ Can't use STATICFILES_STORAGE that requires running collectstatic first
|
||||
* `GitLab issue #437 <https://gitlab.com/mayan-edms/mayan-edms/issues/437>`_ Record users who upload or edit documents
|
||||
* `GitLab issue #439 <https://gitlab.com/mayan-edms/mayan-edms/issues/439>`_ Toastr library missing after update
|
||||
* `GitLab issue #444 <https://gitlab.com/mayan-edms/mayan-edms/issues/444>`_ Error in retrieving documents via POP3
|
||||
* `GitLab issue #446 <https://gitlab.com/mayan-edms/mayan-edms/issues/446>`_ Document searcher
|
||||
* `GitLab issue #447 <https://gitlab.com/mayan-edms/mayan-edms/issues/447>`_ API Security Bug Chinese wall breach
|
||||
* `GitLab issue #449 <https://gitlab.com/mayan-edms/mayan-edms/issues/449>`_ OCR Error: 'int' object has no attribute 'split'
|
||||
* `GitLab issue #452 <https://gitlab.com/mayan-edms/mayan-edms/issues/452>`_ Workflow ACL Doesn't works
|
||||
* `GitLab issue #454 <https://gitlab.com/mayan-edms/mayan-edms/issues/454>`_ Invalid next month calculation in statistics app, causes failstop
|
||||
* `GitLab issue #467 <https://gitlab.com/mayan-edms/mayan-edms/issues/467>`_ mail attachments without content-disposition are lost
|
||||
* `GitLab issue #468 <https://gitlab.com/mayan-edms/mayan-edms/issues/468>`_ plain text e-mails without charset do not work
|
||||
* `GitLab issue #470 <https://gitlab.com/mayan-edms/mayan-edms/issues/470>`_ Enable Django variable for HTML encoded emails
|
||||
* `GitLab issue #474 <https://gitlab.com/mayan-edms/mayan-edms/issues/474>`_ Provide option to serve Mayan EDMS without a webserver (using Tornado o similar).
|
||||
* `GitLab issue #480 <https://gitlab.com/mayan-edms/mayan-edms/issues/480>`_ Wrong Environment Variables names in documentation
|
||||
* `GitLab issue #481 <https://gitlab.com/mayan-edms/mayan-edms/issues/481>`_ IMAP sources with metadata not working in 3.0rc1
|
||||
* `GitHub issue #264 <https://github.com/mayan-edms/mayan-edms/issues/264>`_ migrate fails on document_states 0004_workflow_internal_name
|
||||
* `GitHub issue #269 <https://github.com/mayan-edms/mayan-edms/issues/269>`_ Lack of authentication for document previews
|
||||
|
||||
.. _PyPI: https://pypi.python.org/pypi/mayan-edms/
|
||||
|
||||
@@ -1,83 +0,0 @@
|
||||
Version 3.1.1
|
||||
=============
|
||||
|
||||
Released: September 18, 2018
|
||||
|
||||
Changes
|
||||
-------
|
||||
|
||||
- CSS tweak to make sure the AJAX spinner stays in place.
|
||||
- Fix 90, 180 and 270 degrees rotation transformations.
|
||||
|
||||
|
||||
Removals
|
||||
--------
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
|
||||
If installed via Python's PIP
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Remove deprecated requirements::
|
||||
|
||||
$ curl https://gitlab.com/mayan-edms/mayan-edms/raw/master/removals.txt | pip uninstall -r /dev/stdin
|
||||
|
||||
Type in the console::
|
||||
|
||||
$ pip install mayan-edms==3.1.1
|
||||
|
||||
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.
|
||||
|
||||
Migrate existing database schema with::
|
||||
|
||||
$ mayan-edms.py performupgrade
|
||||
|
||||
Add new static media::
|
||||
|
||||
$ mayan-edms.py collectstatic --noinput
|
||||
|
||||
The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
|
||||
* None
|
||||
|
||||
.. _PyPI: https://pypi.python.org/pypi/mayan-edms/
|
||||
@@ -1,188 +0,0 @@
|
||||
Version 3.1.10
|
||||
==============
|
||||
|
||||
Released: April 04, 2019
|
||||
|
||||
|
||||
Changes
|
||||
-------
|
||||
|
||||
Test improvements
|
||||
^^^^^^^^^^^^^^^^^
|
||||
|
||||
A number of test improvements were backported from the development branch. These
|
||||
include a mixin to assign random primary keys to the test objects. Normally
|
||||
primary keys are sequential and their predictability can hide edge cases that
|
||||
would normally only manifest in production. The tests case code was also split
|
||||
into smaller mixin units separating them by purpose. All code to perform HTTP
|
||||
requests now resides in the ``ClientMethodsTestCaseMixin``. Changes in the
|
||||
``ContentTypeCheckTestCaseMixin`` were added to enable this mixin for the API views
|
||||
in a future minor version. The test view code was moved into its own mixin
|
||||
called ``TestViewTestCaseMixin``. This mixin allows creating dynamic views to test
|
||||
object and link resolution among other things. The API base test case class is
|
||||
now part of the same class hierarchy, this means that the API test code will
|
||||
now behave the same and will benefit from all improvements in the base test case
|
||||
classes. Some indexing tests were failing randomly. This was caused by the way
|
||||
the test were built and not because of faulty code. The tests were updated and
|
||||
now operate as expected. While there is no official support for installing
|
||||
Mayan EDMS as a sub URL updates to the ``TestViewTestCaseMixin`` will allow it to
|
||||
execute with custom ``ROOT_URLCONF`` configurations. Further work and feedback is
|
||||
needed to officially support this installation method.
|
||||
|
||||
|
||||
Fixes
|
||||
^^^^^
|
||||
|
||||
The advanced search API endpoint was fixed and is now usable. Tests for all
|
||||
the issues fixed were added to avoid future regressions. A fix was applied
|
||||
to the compressed class that caused compressed files uploads to fail from the
|
||||
web form.
|
||||
|
||||
Docker
|
||||
^^^^^^
|
||||
|
||||
Updates were added to the Docker image that allow it to build on armv7l
|
||||
platforms like the RasperryPi, Odroid XU4, and Odroid HC2. This doesn't imply
|
||||
official support for these platforms. Further experimentation and optimization
|
||||
is needed and this changed will now allow users to build the image and provide
|
||||
feedback in an easier manner.
|
||||
|
||||
|
||||
Installation
|
||||
^^^^^^^^^^^^
|
||||
|
||||
The installation process has been updated to work around the Python pip
|
||||
issue #6197 (https://github.com/pypa/pip/issues/6197).
|
||||
|
||||
|
||||
User interface
|
||||
^^^^^^^^^^^^^^
|
||||
|
||||
Improvements in the AJAX menu rendering were conflicting with an old method
|
||||
of refreshing the unread notification counter badge. This conflict would cause
|
||||
the unread notification counter badge to blink and/or disappear. The older
|
||||
badge refresh method was removed and improvements to the menu rendering from
|
||||
the development branch were backported to support displaying link badges from
|
||||
the templates completing fixing the issue. An API entrypoint was also backported
|
||||
showing a list of all the server side AJAX templates. This change doesn't affect
|
||||
the API layout and it remains compatible with the previous version. Newlines
|
||||
are now explicitly removed from the rendered AJAX templates avoiding rendering
|
||||
issues on some browsers.
|
||||
|
||||
|
||||
Emails
|
||||
^^^^^^
|
||||
|
||||
An update was added to will now cause Mayan EDMS to reject all email attachments
|
||||
with a size 0 even if the attachment is valid. Documents of size 0 are not
|
||||
consideref valid in Mayan EDMS since they can't be introspected for MIME type,
|
||||
don't contain at least one version, and don't contain a single page. All these
|
||||
are requirements for a valid document in Mayan EDMS.
|
||||
|
||||
|
||||
Memory usage
|
||||
^^^^^^^^^^^^
|
||||
|
||||
The ``MIMETYPE_FILE_READ_SIZE`` setting was added to limit the number of bytes that
|
||||
will be read into memory to determine the MIME type of a new document. For
|
||||
compatibility with the current bevahor this setting defaults to 0 which means
|
||||
that it is disabled. Disabling the setting will cause the entire document's
|
||||
file to be loaded into memory. If documents are not processing due to out of
|
||||
memory errors (large documents or devices with limited memory), set
|
||||
``MIMETYPE_FILE_READ_SIZE`` to a value other than 0. Limited tests suggest 1024
|
||||
to be a good alternative as most "magic numbers" used for MIME type detection
|
||||
are located at the start of the file and just reading the first 1024 bytes will
|
||||
result in a positive identification with little memory usage.
|
||||
|
||||
|
||||
Other changes
|
||||
^^^^^^^^^^^^^
|
||||
|
||||
* Add missing document index API view create permission.
|
||||
* Fix index list API view. Add index create, delete, detail API tests.
|
||||
* Add support for skipping a default set of tests. Tests to be excluded
|
||||
by default should be tagged as 'exclude'.
|
||||
|
||||
Removals
|
||||
--------
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
|
||||
If installed via Python's PIP
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Remove deprecated requirements::
|
||||
|
||||
$ curl https://gitlab.com/mayan-edms/mayan-edms/raw/master/removals.txt | pip uninstall -r /dev/stdin
|
||||
|
||||
Type in the console::
|
||||
|
||||
$ pip install mayan-edms==3.1.10
|
||||
|
||||
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.
|
||||
|
||||
Migrate existing database schema with::
|
||||
|
||||
$ mayan-edms.py performupgrade
|
||||
|
||||
Add new static media::
|
||||
|
||||
$ mayan-edms.py collectstatic --noinput
|
||||
|
||||
The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
|
||||
* :gitlab-issue:`557` Break workflows with invalid input
|
||||
* :gitlab-issue:`559` IndexTestCase.test_dual_level_dual_document_index failure
|
||||
* :gitlab-issue:`562` events.links.link_user_notifications_list should use
|
||||
reverse
|
||||
* :gitlab-issue:`564` API REST /api/indexes/ generates an "Internal Server Error"
|
||||
* :gitlab-issue:`566` apps.common.tests.base.GenericViewTestCase doesn't work
|
||||
with a custom ROOT_URLCONF
|
||||
* :gitlab-issue:`568` Tornado 6.0 doesn't support Python 2.7
|
||||
* :gitlab-issue:`572` Error when sending compressed files: ziparchive object
|
||||
has no attribute children
|
||||
* :gitlab-issue:`574` import of E-Mails with empty attachment fails
|
||||
* :gitlab-issue:`576` Exception with access check for cabinets containing
|
||||
NON-ASCII chars
|
||||
|
||||
.. _PyPI: https://pypi.python.org/pypi/mayan-edms/
|
||||
@@ -1,148 +0,0 @@
|
||||
Version 3.1.11
|
||||
==============
|
||||
|
||||
Released: April XX, 2019
|
||||
|
||||
|
||||
Changes
|
||||
-------
|
||||
|
||||
Memory usage
|
||||
^^^^^^^^^^^^
|
||||
|
||||
The ``DOCUMENTS_HASH_BLOCK_SIZE`` setting was added to limit the number of
|
||||
bytes that will be read into memory when calculating the checksum of a new
|
||||
document. For compatibility with the current bevahor this setting defaults to
|
||||
0 which means that it is disabled. Disabling the setting will cause the
|
||||
entire document's file to be loaded into memory. If documents are not
|
||||
processing due to out of memory errors (large documents or devices with
|
||||
limited memory), set ``DOCUMENTS_HASH_BLOCK_SIZE`` to a value other than 0.
|
||||
Limited tests suggest 65535 to be a good alternative.
|
||||
|
||||
|
||||
Tag wizard step
|
||||
^^^^^^^^^^^^^^^
|
||||
|
||||
The tag wizard step was fixed and will now allow attaching multple tags to a
|
||||
new document.
|
||||
|
||||
|
||||
Permissions
|
||||
^^^^^^^^^^^
|
||||
|
||||
Previously the document checkout information link required one of the following
|
||||
permissions: document check in, document check in override, or document
|
||||
checkout. Meanwhile the document checkout information view would require the
|
||||
document checkout detail view permission. This difference in permissions
|
||||
has been eliminated and the link will now required the document checkout
|
||||
detail view permission, same as the view. Update your user role permissions
|
||||
accordingly.
|
||||
|
||||
|
||||
Other changes
|
||||
^^^^^^^^^^^^^
|
||||
|
||||
* Lower the log severity when links don't resolve.
|
||||
|
||||
|
||||
Removals
|
||||
--------
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
|
||||
If installed via Python's PIP
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Remove deprecated requirements::
|
||||
|
||||
$ curl https://gitlab.com/mayan-edms/mayan-edms/raw/master/removals.txt | pip uninstall -r /dev/stdin
|
||||
|
||||
Type in the console::
|
||||
|
||||
$ pip install mayan-edms==3.1.11
|
||||
|
||||
the requirements will also be updated automatically.
|
||||
|
||||
Migrate existing database schema with::
|
||||
|
||||
$ mayan-edms.py performupgrade
|
||||
|
||||
Add new static media::
|
||||
|
||||
$ mayan-edms.py collectstatic --noinput
|
||||
|
||||
The upgrade procedure is now complete.
|
||||
|
||||
|
||||
If installed using a direct deployment
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Remove deprecated requirements::
|
||||
|
||||
$ curl https://gitlab.com/mayan-edms/mayan-edms/raw/master/removals.txt | sudo -u mayan /opt/mayan-edms/bin/pip uninstall -r /dev/stdin
|
||||
|
||||
Download and install the new version::
|
||||
|
||||
$ sudo -u mayan /opt/mayan-edms/bin/pip install --no-cache-dir --no-use-pep517 mayan-edms==3.1.11
|
||||
|
||||
the requirements will also be updated automatically.
|
||||
|
||||
Run the upgrade command::
|
||||
|
||||
$ 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 any new static files::
|
||||
|
||||
$ sudo -u mayan MAYAN_MEDIA_ROOT=/opt/mayan-edms/media /opt/mayan-edms/bin/mayan-edms.py collectstatic --noinput
|
||||
|
||||
The upgrade procedure is now complete.
|
||||
|
||||
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
|
||||
|
||||
Migrate existing database schema with::
|
||||
|
||||
$ mayan-edms.py performupgrade
|
||||
|
||||
Add new static media::
|
||||
|
||||
$ mayan-edms.py collectstatic --noinput
|
||||
|
||||
The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
|
||||
* None
|
||||
|
||||
.. _PyPI: https://pypi.python.org/pypi/mayan-edms/
|
||||
@@ -1,102 +0,0 @@
|
||||
Version 3.1.2
|
||||
=============
|
||||
|
||||
Released: September 21, 2018
|
||||
|
||||
Changes
|
||||
-------
|
||||
|
||||
- Database access in data migrations defaults to the 'default' database.
|
||||
Force it to the user selected database instead.
|
||||
- Don't use a hardcoded database alias for the destination of the
|
||||
database conversion.
|
||||
- Improve natural key support in the UserOptions model.
|
||||
- Update from Django 1.11.11 to 1.11.15.
|
||||
- Add support to the convertdb command to operate on specified apps
|
||||
too.
|
||||
- Add test mixin to test the db conversion (dumping and loading) of a
|
||||
specific app.
|
||||
- Add an user test mixin to group user testing.
|
||||
- Add test the user management app for database conversion.
|
||||
- Add support for natural keys to the DocumentPageImageCache model.
|
||||
- Add database conversion test to the common app.
|
||||
- Fix label display for resolved smart links when not using a dynamic
|
||||
label.
|
||||
- Only show smart link resolution errors to the user with the smart link
|
||||
edit permission.
|
||||
- Intercept document list view exception and display them as an error
|
||||
message.
|
||||
|
||||
|
||||
Removals
|
||||
--------
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
|
||||
|
||||
If installed via Python's PIP
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Remove deprecated requirements::
|
||||
|
||||
$ curl https://gitlab.com/mayan-edms/mayan-edms/raw/master/removals.txt | pip uninstall -r /dev/stdin
|
||||
|
||||
Type in the console::
|
||||
|
||||
$ pip install mayan-edms==3.1.2
|
||||
|
||||
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.
|
||||
|
||||
Migrate existing database schema with::
|
||||
|
||||
$ mayan-edms.py performupgrade
|
||||
|
||||
Add new static media::
|
||||
|
||||
$ mayan-edms.py collectstatic --noinput
|
||||
|
||||
The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
|
||||
* None
|
||||
|
||||
.. _PyPI: https://pypi.python.org/pypi/mayan-edms/
|
||||
@@ -1,90 +0,0 @@
|
||||
Version 3.1.3
|
||||
=============
|
||||
|
||||
Released: September 26, 2018
|
||||
|
||||
Changes
|
||||
-------
|
||||
|
||||
* Make sure template API renders in non US languages.
|
||||
* Fix user groups view.
|
||||
* Add no results help text to the document type -> metadata type
|
||||
association view.
|
||||
* Expose the Django ``INSTALLED_APPS`` setting.
|
||||
* Add support for changing the concurrency of the Celery workers in the
|
||||
Docker image. Add environment variables ``MAYAN_WORKER_FAST_CONCURRENCY``,
|
||||
``MAYAN_WORKER_MEDIUM_CONCURRENCY`` and ``MAYAN_WORKER_SLOW_CONCURRENCY``.
|
||||
|
||||
|
||||
Removals
|
||||
--------
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
|
||||
|
||||
If installed via Python's PIP
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Remove deprecated requirements::
|
||||
|
||||
$ curl https://gitlab.com/mayan-edms/mayan-edms/raw/master/removals.txt | pip uninstall -r /dev/stdin
|
||||
|
||||
Type in the console::
|
||||
|
||||
$ pip install mayan-edms==3.1.3
|
||||
|
||||
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.
|
||||
|
||||
Migrate existing database schema with::
|
||||
|
||||
$ mayan-edms.py performupgrade
|
||||
|
||||
Add new static media::
|
||||
|
||||
$ mayan-edms.py collectstatic --noinput
|
||||
|
||||
The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
|
||||
* :gitlab-issue:`513` Unicode problem on GET '/api/templates/main_menu/' with german translation
|
||||
|
||||
.. _PyPI: https://pypi.python.org/pypi/mayan-edms/
|
||||
@@ -1,145 +0,0 @@
|
||||
Version 3.1.4
|
||||
=============
|
||||
|
||||
Released: October 4, 2018
|
||||
|
||||
Changes
|
||||
-------
|
||||
|
||||
|
||||
Improved search logic
|
||||
^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
The previous search code was optimized for speed and this was
|
||||
achieved by analyzing and then performing searches on a field
|
||||
basis and then on a term basis, merging the results. This
|
||||
logic has been revised to work on terms first for each
|
||||
field and then the results are merged. This change improves
|
||||
the results of the search system at the expense of some speed.
|
||||
|
||||
The search system also worked by default in 'AND' mode.
|
||||
This meant that all terms had to be found in a field for the
|
||||
result to count. User were adding the word 'AND' in the
|
||||
searches and this cause the search system to look for the
|
||||
word 'AND' and when not finding would affect the search results.
|
||||
The word 'AND' is now explicitly supported and interpreted
|
||||
to be a search syntax modifier. Adding 'AND' will not affect
|
||||
the search results.
|
||||
|
||||
|
||||
Indexing by OCR text
|
||||
^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
The indexing system has been updated to respond to the signal
|
||||
raise when the OCR engine finished processing a document. This
|
||||
allows the system to update location of a document in the
|
||||
index when the OCR is ready.
|
||||
|
||||
Another custom signal similar to the OCR completion one was
|
||||
added to the document parsing app. This allows the index app
|
||||
to also refresh the indexes when the parsing of document
|
||||
text is finished.
|
||||
|
||||
This example indexes documents if they have the fragment
|
||||
"quarterly report" in the OCR text::
|
||||
|
||||
{% if "quarterly report" document.latest_version.ocr_content|join:" "|lower %}Quarterly reports{% endif %} {# Detect the word "quarterly report" in the document OCR text #}
|
||||
|
||||
The same applies to text content extracted for the document::
|
||||
|
||||
{% if "quarterly report" document.latest_version.content|join:" "|lower %}Quarterly reports{% endif %} {# Detect the word "quarterly report" in the document text #}
|
||||
|
||||
|
||||
Other changes
|
||||
^^^^^^^^^^^^^
|
||||
|
||||
* Fix the link to the documentation. Closes GitLab issue #516.
|
||||
Thanks to Matthias Urlichs @smurfix for the report.
|
||||
* Update related links. Add links to the new Wiki and Forum.
|
||||
* Add Redis config entries in the Docker images to disable
|
||||
saving the database and to only provision 1 database.
|
||||
* Remove use of hard coded font icon for document page
|
||||
rendering busy indicator.
|
||||
* Disable the fancybox caption link if the document is
|
||||
in the trash.
|
||||
* Load the DropZone CSS from package and remove the
|
||||
hard code CSS from appearance/base.css.
|
||||
* Strip HTML entities from the browser's window title.
|
||||
Closes GitLab issue #517. Thanks to Daniel Carrico @daniel1113
|
||||
for the report.
|
||||
* Add explanation to the launch workflows tool.
|
||||
|
||||
|
||||
Removals
|
||||
--------
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
|
||||
|
||||
If installed via Python's PIP
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Remove deprecated requirements::
|
||||
|
||||
$ curl https://gitlab.com/mayan-edms/mayan-edms/raw/master/removals.txt | pip uninstall -r /dev/stdin
|
||||
|
||||
Type in the console::
|
||||
|
||||
$ pip install mayan-edms==3.1.4
|
||||
|
||||
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.
|
||||
|
||||
Migrate existing database schema with::
|
||||
|
||||
$ mayan-edms.py performupgrade
|
||||
|
||||
Add new static media::
|
||||
|
||||
$ mayan-edms.py collectstatic --noinput
|
||||
|
||||
The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
|
||||
* :gitlab-issue:`516` The readthedocs.io link is broken (page doesn't exist).
|
||||
* :gitlab-issue:`517` Quotes in workflow state document web browser title
|
||||
|
||||
.. _PyPI: https://pypi.python.org/pypi/mayan-edms/
|
||||
@@ -1,152 +0,0 @@
|
||||
Version 3.1.5
|
||||
=============
|
||||
|
||||
Released: October 8, 2018
|
||||
|
||||
Changes
|
||||
-------
|
||||
|
||||
|
||||
Index mirroring fixes
|
||||
^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
This release fixes the mountindex management command that mounts an index
|
||||
as a FUSE filesystem. It also includes a fix for indexes that return a
|
||||
multi line value. The carriage returns and newlines characters are now
|
||||
converted into spaces to make the index value a valid filesystem directory.
|
||||
Lastly an issue with the duplicated value was fixed. Indexes levels that
|
||||
return a duplicated value will not show as directory entries when mounted
|
||||
as a FUSE filesystem.
|
||||
|
||||
|
||||
Page parsed text link
|
||||
^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Recently a link was added to each document page to show the OCR text for
|
||||
that particular page. This release adds another link but to allow users
|
||||
to view the parsed text of each page.
|
||||
|
||||
|
||||
Python 3
|
||||
^^^^^^^^
|
||||
|
||||
This release includes several fixes for Python 3 compatibility and reduce
|
||||
the fail count of the test suit to just one test.
|
||||
|
||||
|
||||
Transformations arguments
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Visually the view to create or edit a transformation remains the same. But
|
||||
internally those views now use an explicit form to allow performing YAML
|
||||
format validation of arguments.
|
||||
|
||||
|
||||
Crop transformation
|
||||
^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Stricter error checking was added to the crop transformation.
|
||||
|
||||
|
||||
Other changes
|
||||
^^^^^^^^^^^^^
|
||||
|
||||
* Consolidate some document indexing test code into a new mixin.
|
||||
* Update compressed files class module to work with Python 3.
|
||||
* Update document parsing app tests to work with Python 3.
|
||||
* Handle office files in explicit binary mode for Python 3.
|
||||
* Return a proper list of SearchModel instances (Python 3).
|
||||
* Specify FUSE literals in explicit octal notation (Python 3).
|
||||
* URL quote the encoded names of the staging files using Django's compat
|
||||
module. (Python 3)
|
||||
* Open staging file in explicit binary mode. (Python 3)
|
||||
* Add separate Python 2 and Python 3 versions of the MetadataType model
|
||||
.comma_splitter() static method.
|
||||
* Update the metadata app tests to work on Python 3.
|
||||
* Make sure metadata lookup choices are a list to be able to add the
|
||||
optional marker (Python 3).
|
||||
* Make sure the image in the document preview view is centered when it is
|
||||
smaller than the viewport.
|
||||
* Restore use of the .store_body variable accidentally remove in
|
||||
63a77d0235ffef3cd49924ba280879313c622682. Closes GitLab issue #519.
|
||||
Thanks to TheOneValen @TheOneValen for the report.
|
||||
* Add shared cache class and add mounted index cache invalidation when
|
||||
document and index instance nodes are updated or deleted.
|
||||
* Fix document metadata app view error when adding multiple optional
|
||||
metadata types. Closes GitLab issue #521. Thanks to the TheOneValen
|
||||
@TheOneValen for the report.
|
||||
|
||||
|
||||
Removals
|
||||
--------
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
|
||||
If installed via Python's PIP
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Remove deprecated requirements::
|
||||
|
||||
$ curl https://gitlab.com/mayan-edms/mayan-edms/raw/master/removals.txt | pip uninstall -r /dev/stdin
|
||||
|
||||
Type in the console::
|
||||
|
||||
$ pip install mayan-edms==3.1.5
|
||||
|
||||
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.
|
||||
|
||||
Migrate existing database schema with::
|
||||
|
||||
$ mayan-edms.py performupgrade
|
||||
|
||||
Add new static media::
|
||||
|
||||
$ mayan-edms.py collectstatic --noinput
|
||||
|
||||
The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
|
||||
* :gitlab-issue:`518` mountindex broken (3.1.x)
|
||||
* :gitlab-issue:`519` Mail body fetched despite setting not to
|
||||
* :gitlab-issue:`521` Adding multiple metadata at once fails
|
||||
|
||||
.. _PyPI: https://pypi.python.org/pypi/mayan-edms/
|
||||
@@ -1,94 +0,0 @@
|
||||
Version 3.1.6
|
||||
=============
|
||||
|
||||
Released: October 9, 2018
|
||||
|
||||
|
||||
Changes
|
||||
-------
|
||||
|
||||
* Improve index mirroring value clean up code to remove the spaces at the
|
||||
starts and at the end of directories. Closes again GitLab issue #520
|
||||
Thanks to TheOneValen @ for the report.
|
||||
* Improve index mirroring cache class to use the hash of the keys
|
||||
instead of the literal keys. Avoid warning about invalid key
|
||||
characters. Closes GitLab issue #518. Thanks to TheOneValen @ for the
|
||||
report.
|
||||
* Only render the Template API view for authenticated users.
|
||||
Thanks rgarcia for the report.
|
||||
* Add icon to the cabinet "Add new level" link.
|
||||
* Display the cabinet "Add new level" link in the top level view too.
|
||||
|
||||
|
||||
Removals
|
||||
--------
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
|
||||
If installed via Python's PIP
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Remove deprecated requirements::
|
||||
|
||||
$ curl https://gitlab.com/mayan-edms/mayan-edms/raw/master/removals.txt | pip uninstall -r /dev/stdin
|
||||
|
||||
Type in the console::
|
||||
|
||||
$ pip install mayan-edms==3.1.6
|
||||
|
||||
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.
|
||||
|
||||
Migrate existing database schema with::
|
||||
|
||||
$ mayan-edms.py performupgrade
|
||||
|
||||
Add new static media::
|
||||
|
||||
$ mayan-edms.py collectstatic --noinput
|
||||
|
||||
The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
|
||||
* :gitlab-issue:`518` mountindex broken (3.1.x)
|
||||
* :gitlab-issue:`520` Newline handling in template expression for index when mounting the index
|
||||
|
||||
.. _PyPI: https://pypi.python.org/pypi/mayan-edms/
|
||||
@@ -1,102 +0,0 @@
|
||||
Version 3.1.7
|
||||
=============
|
||||
|
||||
Released: October 14, 2018
|
||||
|
||||
|
||||
Changes
|
||||
-------
|
||||
|
||||
* Fix an issue with some browsers not firing the .load event on cached
|
||||
images. Ref: http://api.jquery.com/load-event/
|
||||
* Remove duplicate YAML loading of environment variables.
|
||||
* Don't load development apps if they are already loaded.
|
||||
* Make sure all key used as input for the cache key hash are
|
||||
bytes and not unicode. GitLab issue #520. Thanks to TheOneValen
|
||||
@TheOneValen for the report.
|
||||
* Ignore document stub from the index mirror. GitLab issue
|
||||
#520. Thanks to TheOneValen @TheOneValen for the report.
|
||||
* Fix for the Docker image INSTALL_FLAG path. Thanks to
|
||||
Mark Maglana @relaxdiego for the report and to Hamish Farroq @farroq_HAM
|
||||
for the patch. GitLab issue #525.
|
||||
* Fix the typo in the Docker variable for worker concurrency. Thanks to
|
||||
Mark Maglana @relaxdiego for the report and to Hamish Farroq @farroq_HAM
|
||||
for the patch. GitLab issue #527.
|
||||
* Add a noop OCR backend that disables OCR and the check for the
|
||||
Tesseract OCR binaries. Set the OCR_BACKEND setting or MAYAN_OCR_BACKEND
|
||||
environment variable to ocr.backends.pyocr.PyOCR to use this.
|
||||
* All tests pass on Python 3.
|
||||
|
||||
|
||||
Removals
|
||||
--------
|
||||
|
||||
* None
|
||||
|
||||
Upgrading from a previous version
|
||||
---------------------------------
|
||||
|
||||
|
||||
If installed via Python's PIP
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Remove deprecated requirements::
|
||||
|
||||
$ curl https://gitlab.com/mayan-edms/mayan-edms/raw/master/removals.txt | pip uninstall -r /dev/stdin
|
||||
|
||||
Type in the console::
|
||||
|
||||
$ pip install mayan-edms==3.1.7
|
||||
|
||||
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.
|
||||
|
||||
Migrate existing database schema with::
|
||||
|
||||
$ mayan-edms.py performupgrade
|
||||
|
||||
Add new static media::
|
||||
|
||||
$ mayan-edms.py collectstatic --noinput
|
||||
|
||||
The upgrade procedure is now complete.
|
||||
|
||||
|
||||
Backward incompatible changes
|
||||
-----------------------------
|
||||
|
||||
* None
|
||||
|
||||
|
||||
Bugs fixed or issues closed
|
||||
---------------------------
|
||||
|
||||
* :gitlab-issue:`525` path to SECRET_KEY in entrypoint.sh seems to be a mistake
|
||||
* :gitlab-issue:`527` Celery concurrency flag names don't match
|
||||
|
||||
.. _PyPI: https://pypi.python.org/pypi/mayan-edms/
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user