Version 3.3.6

Thu, Dec 19, 2019

Released: December 19, 2019


Compressed files

Zip files only support UTF-8 and CP437 encoding for filenames. This is not strongly enforced and some software products create Zip files with other text encodings. The ZipArchive class was updated to work with badly encoded filenames instead of raising an error.


The page count code was updated to work with more versions of PDF files. A Python 3 incompatibility was also fixed.


The PDF orientation detection was fixed and updated to work with the new converter layer system.


The Redis lock backend initialization was updated to allow it to also work with Redis versions older than 5.0.


A fix for a cross site scripting issues was removed by accident during a version merge at some unknown time. The fix was reapplied and more robust tests using Selenium added to avoid further regressions.


FreeBSD is now also detected and the paths of binaries adjusted for easier installation.


A issue that left behind periodic task entries for watch folders after deleting a document type associated with them was fixed.

Transaction handling was added to the interval sources base class delete and save methods. This increases protection against data loss on database failure.

User interface

The last update for the user interface planned for series 3.3 is included. This update makes the list toolbar "stick" to the top of the view when scrolling. This is the new toolbar that encloses the multi-item action menu and the pagination controls.

The usage of the incorrect word "overrided" was updated to "overridden".

The address used to check for new versions was updated to the new Python Package Index address. This avoids SSL certificate errors when the old certificate is reused.


  • None

Backward incompatible changes

  • None

Bugs fixed or issues closed

  • GitLab issue #494 DOM based Cross Site Scripting

  • GitLab issue #651 Uploading compressed documents fail when compressed file contains special character

  • GitLab issue #709 Redis lock manager backend - exception on connect

  • GitLab issue #713 Unexpected exception while trying to create version for new document - 'Layer' object has no attribute 'add_to_object'

  • GitLab issue #715 Deleting a document type removes a watch folder associated with it without removing the check interval

  • GitLab issue #717 Check For Updates Failure

  • [:gitlab-merge:`63`]{#id2 .problematic} Improve the executables paths on FreeBSD/OpenBSD.

    ::: {#id1 .system-message} System Message: ERROR/3 (<string>{.docutils}, line 267); backlink

    Unknown interpreted text role "gitlab-merge". :::

  • [:gitlab-merge:`64`]{#id4 .problematic} Fix page count on some PDF files, and fix a Python 3 incompatibility.

    ::: {#id3 .system-message} System Message: ERROR/3 (<string>{.docutils}, line 268); backlink

    Unknown interpreted text role "gitlab-merge". :::

  • [:gitlab-merge:`65`]{#id6 .problematic} Settings: Display overridden instead of overrided

    ::: {#id5 .system-message} System Message: ERROR/3 (<string>{.docutils}, line 269); backlink

    Unknown interpreted text role "gitlab-merge". :::