Released: February 10, 2015
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 job_processing apps obsolete, both were removed.
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.
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.
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.
Mayan EDMS has been updated to use Django 1.6.8.
The built-in history app has been removed in favor of a new events wrapper app for Django activity stream
Filesystem folders can be monitored for change and their files automatically uploaded as documents in Mayan EDMS.
A vagrant file is now included to allow developers to provision a virtual machine with the latest development version of Mayan EDMS.
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.
A new simple workflow app that can represent document states has been included.
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.
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 can be left blank by the user.
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.
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 providing upgrades and fixes. This release (1.1) will be active and supported during releases of versions 2.x, but will go into end-of-life as soon as version 3.0 is released, at which time version series 2.x will go into maintenance mode.
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.
Mayan EDMS is now automatically tested against SQLite, MySQL and PostgreSQL.
Many new API endpoints have been added exposing the majority of Mayan EDMS functionality.
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.
Custom settings now use a string based value, it is longer needed to import classes when customizing a setting:
from custom_app.backends import CustomStorageBackend DOCUMENTS_STORAGE_BACKEND = CustomStorageBackend
Instead the fully qualified name of the class must be passed as the setting value:
DOCUMENTS_STORAGE_BACKEND = 'custom_app.backends.CustomStorageBackend'
OCR behavior is now a document type property meaning that it can be turned on or off for specific document types.
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.
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
.
By using Pure CSS's columns based grid system, the move towards a Bootstrap UI migration has advanced greatly.
All user actions as well as the logout button are now under the user functions section.
The way PDF were being generated has been improved greatly eliminating spurious segmentation faults at the expense of a small speed penalty.
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.
MAIN_SIDE_BAR_SEARCH
settingTHEMES
setting and themes supportVERBOSE_LOGIN
settingMAIN_DISABLE_ICONS
settingMAIN_ENABLE_SCROLL_JS
settingAPSCheduler
as a requirementweb_theme
appIMPORTANT! 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.
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
Migrate existing database schema with:
$ mayan-edms.py migrate dynamic_search 0001 --fake $ mayan-edms.py migrate history 0001 --fake $ mayan-edms.py migrate linking 0001 --fake $ mayan-edms.py migrate lock_manager 0001 --fake $ mayan-edms.py migrate tags 0001 --fake $ mayan-edms.py migrate
During the migration several messages of stale content types can occur:
The following content types are stale and need to be deleted: metadata | documenttypedefaults metadata | metadataset metadata | metadatasetitem ocr | documentqueue ocr | queuedocument sources | watchfolder sources | outofprocess sources | webform sources | stagingfolder tags | tagproperties Any objects related to these content types by a foreign key will also be deleted. Are you sure you want to delete these content types? If you're unsure, answer 'no'. Type 'yes' to continue, or 'no' to cancel:
You can safely answer "yes".
Add new static media:
$ mayan-edms.py collectstatic --noinput
Remove unused dependencies:
$ pip uninstall APScheduler $ pip uninstall django-taggit
The upgrade procedure is now complete.
[:github-issue:`30`]{#id2 .problematic} Document workflows
::: {#id1 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 317);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`32`]{#id4 .problematic} Watched folders
::: {#id3 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 318);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`34`]{#id6 .problematic} Postprocessing document queue
::: {#id5 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 319);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`35`]{#id8 .problematic} Metadata validation
::: {#id7 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 320);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`37`]{#id10 .problematic} Add from __future__ import unicode_literals
::: {#id9 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 321);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`39`]{#id12 .problematic} Capitalization of messages
::: {#id11 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 322);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`40`]{#id14 .problematic} Update references to root ('/') path
::: {#id13 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 323);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`46`]{#id16 .problematic} Advanced search past 1st page
::: {#id15 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 324);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`49`]{#id18 .problematic} Problems with large pdf files
::: {#id17 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 325);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`50`]{#id20 .problematic} raise CommandNotFound(path)
::: {#id19 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 326);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`51`]{#id22 .problematic} Search with ANONYMOUS error
::: {#id21 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 327);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`55`]{#id24 .problematic} Document approval cicle?
::: {#id23 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 328);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`56`]{#id26 .problematic} Removal of non essential features, views, models
::: {#id25 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 329);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`57`]{#id28 .problematic} Migrate to Celery for task query and periodic tasks
::: {#id27 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 330);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`64`]{#id30 .problematic} Pluralize messages properly
::: {#id29 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 331);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`65`]{#id32 .problematic} Backport the ability to receive documents via email
::: {#id31 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 332);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`66`]{#id34 .problematic} Python 3 compatibility: Add from __future__ import unicode_literals and remove all u''
::: {#id33 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 333);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`68`]{#id36 .problematic} Revise and update the use gettext vs. gettext_lazy
::: {#id35 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 334);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`69`]{#id38 .problematic} Feature removal: remove "Unregistered" message from the title bar
::: {#id37 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 335);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`71`]{#id40 .problematic} Add retry support to the converter task
::: {#id39 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 336);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`72`]{#id42 .problematic} Delete unused static icons
::: {#id41 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 337);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`74`]{#id44 .problematic} Cache a document's first document version
::: {#id43 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 338);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`75`]{#id46 .problematic} Move automatic OCR queueing from a configuration settings to a property of Document Type model
::: {#id45 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 339);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`77`]{#id48 .problematic} Add document view permission support to the search app
::: {#id47 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 340);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`78`]{#id50 .problematic} COMMON_TEMPORARY_DIRECTORY seems not to be used everywhere
::: {#id49 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 341);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`79`]{#id52 .problematic} Error installing
::: {#id51 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 342);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`82`]{#id54 .problematic} Make document type a required field
::: {#id53 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 343);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`83`]{#id56 .problematic} Simplify source app views and navigation
::: {#id55 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 344);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`84`]{#id58 .problematic} Remove template context variable 'object_name' to improve translations
::: {#id57 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 345);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`85`]{#id60 .problematic} Reset page count for a single document
::: {#id59 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 346);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`86`]{#id62 .problematic} Move migrations to new 'south_migrations' folders
::: {#id61 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 347);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`87`]{#id64 .problematic} Per document language selection
::: {#id63 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 348);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`88`]{#id66 .problematic} Remove metadata type selection from the upload wizard
::: {#id65 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 349);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`89`]{#id68 .problematic} Allow metadata types to be required for specific document types
::: {#id67 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 350);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`90`]{#id70 .problematic} Remove the app_registry app
::: {#id69 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 351);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`91`]{#id72 .problematic} Don't preserve the ?page= URL query string value when switching sources during document upload
::: {#id71 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 352);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`92`]{#id74 .problematic} Make register_multi_item_links class aware
::: {#id73 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 353);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`95`]{#id76 .problematic} Installation error on Mac OSX; OSError: [Errno 2] No such file or directory
::: {#id75 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 354);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`96`]{#id78 .problematic} Remove hard code User model references
::: {#id77 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 355);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`97`]{#id80 .problematic} Make multi item links a drop down list
::: {#id79 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 356);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`104`]{#id82 .problematic} Finish polishing metadata validation patch
::: {#id81 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 357);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`105`]{#id84 .problematic} Tie smart links setups to document types
::: {#id83 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 358);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`106`]{#id86 .problematic} Convert document indexing app actions to Celery
::: {#id85 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 359);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`107`]{#id88 .problematic} Restrict document metadata addition and removal
::: {#id87 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 360);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`108`]{#id90 .problematic} New home screen
::: {#id89 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 361);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`109`]{#id92 .problematic} Add Roles API endpoints
::: {#id91 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 362);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`111`]{#id94 .problematic} Add Checkouts API endpoints
::: {#id93 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 363);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`112`]{#id96 .problematic} Add OCR API endpoints
::: {#id95 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 364);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`114`]{#id98 .problematic} Implement UI language as user preference
::: {#id97 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 365);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`116`]{#id100 .problematic} Add documentation topic explicitly noting the binary requirements
::: {#id99 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 366);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`118`]{#id102 .problematic} When a metadata type is removed from a document type, remove it from all the documents of that type
::: {#id101 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 367);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`119`]{#id104 .problematic} When a required metadata type is added to a document type, add it to all documents of that type
::: {#id103 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 368);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`126`]{#id106 .problematic} Failing migration with SQLite
::: {#id105 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 369);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`127`]{#id108 .problematic} Failing migration with Postgres
::: {#id107 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 370);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`128`]{#id110 .problematic} Add Indexes API endpoints
::: {#id109 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 371);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`129`]{#id112 .problematic} Search api shouldn't memorize requested page as part of the query
::: {#id111 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 372);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`130`]{#id114 .problematic} Users API is not working correctly
::: {#id113 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 373);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`131`]{#id116 .problematic} Is there an API to update a user's password?
::: {#id115 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 374);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`137`]{#id118 .problematic} Enhancement of language selection
::: {#id117 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 375);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`138`]{#id120 .problematic} Possibility to keep zoom factor
::: {#id119 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 376);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`139`]{#id122 .problematic} Translatability of language selection
::: {#id121 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 377);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`140`]{#id124 .problematic} Thumbnail creation for ods crashing
::: {#id123 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 378);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`143`]{#id126 .problematic} Exception Value: 'exceptions.ValueError' object has no attribute 'messages'
::: {#id125 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 379);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`144`]{#id128 .problematic} Behavior of 'Edit metadata' (Recent Documents)
::: {#id127 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 380);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`146`]{#id130 .problematic} Periodic task not initiated for mail boxes and watch folders
::: {#id129 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 381);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`149`]{#id132 .problematic} Attribute error in document download
::: {#id131 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 382);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`150`]{#id134 .problematic} Double second menu entry
::: {#id133 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 383);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`152`]{#id136 .problematic} Document content empty
::: {#id135 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 384);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`153`]{#id138 .problematic} south migration with postgres: documents: 031_remove_orphan_documents
::: {#id137 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 385);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`154`]{#id140 .problematic} south migration with postgres: tags: 0002_auto__add_tag__chg_field_tagproperties_tag
::: {#id139 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 386);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`157`]{#id142 .problematic} upload new version of a document not working
::: {#id141 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 387);
backlink
Unknown interpreted text role "github-issue". :::
[:github-issue:`158`]{#id144 .problematic} Plural form not matching singular form in ocr app bug i18n
::: {#id143 .system-message}
System Message: ERROR/3 (<string>
{.docutils}, line 388);
backlink
Unknown interpreted text role "github-issue". :::