All Versions
Latest Version
Avg Release Cycle
27 days
Latest Release

Changelog History
Page 1

  • v0.27.0 Changes

    Sep 23, 2021

    • ๐Ÿ‘ Allow external authentication providers via OpenID Connect. Now you can integrate Docspell into your SSO solution. Using keycloak, for example (or other such tools) users can be maintained elsewhere, like in an LDAP directory. (#489)
    • โž• Adds two-factor authentication using TOTPs. If you don't want to setup an external authentication provider (which is another tool to maintain), you can use the builtin TOTP support to have two-factor authentication. (#762)
    • ๐Ÿ‘Œ Improvements when querying documents (#1040)
    • ๐Ÿ”„ Changed the underlying code for storing and loading files. This is a preparation to allow different storage backends for files in the future (maybe the filesystem or s3). (#1080)
    • The license has changed from GPLv3+ to AGPLv3+ (#1078)
    • ๐Ÿ›  Fixes a bug in the "check for updates" task that was added in the last release (#1068)
    • โฌ‡๏ธ Reduces the length of the startup command, which makes tools like ps much more readable and allows now to start docspell on Windows (untested, though ;-)) (#1062)
    • ๐Ÿ›  Fixes merging items, where sent mails were not copied to the target item. (#1055)
    • ๐Ÿ›  Fixes and improves deleting users. Now all their data is also removed and it is shown what that would be. (#1060)

    Rest API Changes

    • The login routes now won't return a session token when 2FA is enabled for an account. The returned token must be used to provide the TOTP in order to finalize login.
    • โž• Added open/auth/two-factor endpoint to provide the TOTP for login
    • โž• Added open/auth/openid/{providerId}[/resume] endpoints to initiate authentication via an external provider
    • โž• Added sec/user/{username}/deleteData to retrieve a summary of data that would be deleted with that user
    • โž• Added sec/user/otp/* endpoints to manage the TOTP for an account
    • โž• Added admin/user/otp/reserOTP to reset the 2FA setup for any user

    ๐Ÿ”ง Configuration Changes

    • ๐Ÿ”ง Restserver: Added a section to configure external authentication provider
  • v0.26.0 Changes

    Aug 28, 2021

    • โž• Add ability to merge items (#414). You can now select multiple items and merge them all into one. The first item in the list is the target item, all others are deleted after a successful merge. The webapp allows to reorder this list, of course.
    • โž• Add option to only import attachments of e-mails (#983).
    • Improve Manage Data page by sorting the tables (#965, #538)
    • ๐Ÿ‘ Allow wildcard searches in queries using (#971). Before you would have to specify the complete id. This is inconvenient when using from the command line client.
    • โž• Add Hebrew to the document languages (#1027, thans @wallace11). Please note, that the SOLR support is very basic for this language.
    • โž• Add a periodic task to check for Docspell updates (#990). Let's you check periodically for new versions of docspell. It uses an existing user account and its mail settings to send an e-mail.
    • ๐Ÿ‘‰ Show the link to an item and its attachments as a QR code in item details (#836). This might be useful when you want to attach this link to physical devices.
    • The search menu highlights the sections that contain active filters (#966)
    • Safe deletion of items (#347). When deleting items, they are now marked as deleted and can therefore be restored. A periodic job will really delete them from the database eventually.
    • ๐Ÿ‘Œ Improves German translation (#985, thanks @monnypython)
    • ๐Ÿ“„ The dsc tool has also been improved, thanks to @seijikun.
    • โฌ†๏ธ Upgrade the website to work with newer zola versions (#847)
    • โœ‚ Remove the scripts in tools/ since these are now obsolete. The new command line interface covers these features now. Note that the docker images are also NOT built anymore. The directory still exits and is still a place for scripts and little tooling around docspell.
    • ๐Ÿ›  Fixes a regression where the browser would not display the pdf (#975)
    • ๐Ÿ›  Fixes the health checks in the docker setup (#976)
    • ๐Ÿ›  Fixes an issue with text extraction for Japanese documents where numbers were extracted as special unicode points (#973). This only affects the docker setup, when not using the docker images you need to setup tesseract to use different training data for Japanese.

    Rest API Changes

    Complete ๐Ÿ“„ diff (need to click the Files changed tab)

    • The routes to fetch a list of tags, organizations, persons, fields etc can now optionally take a sort query parameter to specify how to order the list.
    • โž• Added /sec/collective/emptytrash/startonce to run the task to empty the trash immediately
    • The search endpoints can now take an optional parameter searchMode that defines whether to search in trashed items or not
    • Deleting an item via the api now only changes its state to Trashed
    • โž• Added /sec/item/{id}/restore to restore a trashed item (unless it has been deleted from the database).
    • โž• Added /sec/items/restoreAll to restore multiple of trashed items
    • โž• Added /sec/items/merge that accepts a POST request with a list of items to merge. The first item is the "target" item. All other items are deleted after the merge was successful.
    • The ScanMailboxSettings, Source and ItemUploadMeta structures now contains a boolean field attachmentsOnly
    • ItemInsights structure now contains a counter for trashed items
    • CollectiveSettings structure now has a section to specify settings for periodically deleting trashed items.

    ๐Ÿ”ง Configuration Changes

    • โšก๏ธ Joex: A new section for configuring the update task has been added. See section update-check in the default config file.
  • v0.25.1 Changes

    Jul 29, 2021

    • ๐Ÿ›  Fix solr fulltext search by adding the new japanese content field

    The SOLR fulltext search is broken in 0.25.0, so this is a fixup ๐Ÿš€ release.

  • v0.25.0 Changes

    Jul 29, 2021

    • Introducing a new CLI tool (#345) that replaces all the shell scripts from the tools/ directory!
    • ๐Ÿ’ป UI changes:
      • year separators are now more prominent (#950)
      • fixes a bug in the item counter in detail view when an item is deleted (#920)
      • German translation improvements (#901)
      • The number of selected files is shown in upload page (#896)
    • The created date of an item can now be used in queries (#925, #958)
    • Setting tags api has been improved (#955)
    • Task for converting pdfs is now behind the admin secret (#949)
    • Task for generating preview images is now behind the admin secret (#915)
    • respond with 404 when the source-id is not correct (#931)
    • โšก๏ธ Update of core libraries (#890)
    • โž• Add Japanese to the list of document languages. Thanks @wallace11 for helping out (#948, #962)
    • ๐Ÿ›  Fix setting the folder from metadata when processing a file and allow to specifiy it by name or id (#940)
    • ๐Ÿ›  Fixes docspell config file in docker-compose setup (#909)
    • ๐Ÿ›  Fixes selecting the next job in the job executor (#898)
    • ๐Ÿ›  Fixes a bug that prevents uploading more than one file at once (#938)

    Rest API Changes

    • โœ‚ Removed sec/item/convertallpdfs endpoint in favor for new admin/attachments/convertallpdfs endpoint which is now an admin task
    • โœ‚ Removed sec/collective/previews endpoint, in favor for new admin/attachments/generatePreviews endpoint which is now an admin task to generate previews for all files. The now removed enpoint did this only for one collective.
    • /sec/item/{id}/tags: Setting tags to an item (replacing existing tags) has been changed to allow tags to be specified as names or ids
    • ๐Ÿšš /sec/item/{id}/tagsremove: Added a route to remove tags for a single item

    ๐Ÿ”ง Configuration Changes


  • v0.24.0 Changes

    Jun 18, 2021

    ๐ŸŒ This time a translation of the Web-UI in German is included and the ๐Ÿš€ docker build was overhauled. The releases are now build and tested using Java 11.

    • ๐Ÿณ Rework Docker setup. Images are now provided for different architectures and have a new home now (see below). The images are now built via a github-action from the official packages of each release. (#635, #643, #840, #687)
    • ๐ŸŒ Translation of the UI into German (thanks to @monnypython for proof reading and applying lots of corrections!) (#292, #683, #870)
    • ๐Ÿ‘Œ Improve migration of SOLR (#604)
      • The information whether solr has been setup, is now stored inside SOLR. This means when upgrading Docspell, all data will be re-indexed.
    • โž• Add --exclude and --include options to the script (#885)
    • ๐Ÿ‘Œ Improved documenation of the http api (#874)
    • โœ‚ Removed unused libraries in the final packages to reduce file size a bit (#841)
    • ๐Ÿ› Bug: Searching by tag category was broken when using upper case letters (#849)
    • ๐Ÿ› Bug: when adding a boolean custom field, it must be applied immediatly (#842)
    • ๐Ÿ› Bug: when entering a space in a dropdown the menu closes (#863)
    • ๐Ÿ› Bug: Some scripts didn't work with earlier versions of jq (#851)
    • ๐Ÿ› Bug: The source form was broken in that it didn't load the language correctly (#877)
    • ๐Ÿ› Bug: Tag category options were wrongly populated when narrowing tags via a search (#880)

    ๐Ÿ’ฅ Breaking Changes

    Java 11

    ๐Ÿ— Not really a breaking change. Docspell is now build and tested using ๐Ÿ“„ Java 11. Docspell has a small amount of Java source code. This is compiled using Java 11 but to target Java 8 JVMs. So it still can run under Java 8. However, it is recommended to use at least Java 11 to ๐Ÿ“„ run Docspell.

    ๐Ÿณ Docker Images

    ๐Ÿณ The docker images are now pushed to the ๐Ÿณ docspell organization at ๐Ÿณ docker-hub! So the images are now:

    • ๐Ÿ“„ docspell/restserver
    • ๐Ÿ“„ docspell/joex
    • ๐Ÿ“„ docspell/tools

    ๐Ÿท Tags: images are tagged with two floating tags: nightly and โœ… latest. The nightly tag always points to the latest development โœ… state (the master branch). The latest tag points to the latest ๐Ÿš€ release. Each release is also tagged with its version number, like v0.24.0.

    The images changed slightly in that there is no assumption on where ๐Ÿ“„ the config file is placed. Now you need to pass the docspell config file explicitely when using the images.

    ๐Ÿ— Multiarch: Images are now build for amd64, arm64 and armv7.

    ๐Ÿ“„ The consumedir is being replaced by the more generic docspell/tools image which contains all the scripts from the tools/ section. That means it has no special entrypoint for the consumedir script anymore. The polling functionality is now provided by the consumedir script. ๐Ÿณ And the docker-compose file needs now to specify the complete command arguments. This makes it much more flexible to use.

    This allows to use this image to run all the other tool scripts, too. ๐Ÿ›  The scripts are in PATH inside the image and prefixed by ds-, so for example ds-consumedir or ds-export-files etc.

    ๐Ÿณ Docker Compose

    ๐Ÿณ The docker-compose setup is now at docker/docker-compose. Please look at the new compose ๐Ÿณ file and do the corresponding changes at yours. Especially the consumedir container changed significantly. Then due to the fact that the config file must be given explicitely, you need to add this argument to each ๐Ÿ“„ docspell component (restserver and joex) via a command section (see the compose file referenced above).

    The .envrc has been cleaned from some settings. Since the config files is mounted into the image, you can just edit this file instead. The only settings left in the .envrc file are those that need to be ๐Ÿณ available in the docker-compose file and the application. If some settings need to be duplicated for joex and restserver, you can use the builtin variable resolution mechanism for this. An example is provided in the new config file.

    ๐Ÿ”ง Configuration Changes


    Rest API Changes


  • v0.23.0 Changes

    May 29, 2021

    ๐Ÿš€ This release enables deleting multiple files at once of an item. It also changes how user settings are stored. Additionally several bugs ๐Ÿ’ป in the ui and server have been fixed.

    • ๐Ÿ”‹ Feature: Central user settings (#565): user settings have been stored in the browser but are now stored at the server. This means that all settings are now shared across all devices. See below for notes on migrating your current settings.
    • ๐Ÿ”‹ Feature: Delete multiple attachemnts at once, thanks to @stefan-scheidewig (#626): multiple attachments on an item can be deleted with a single click
    • ๐Ÿ”‹ Feature: Make consumedir-cleaner run on windows, thanks to @JaCoB1123 (#809)
    • ๐Ÿ› Bug: More work externalizing strings (#784, #760): many more strings have been externalized for being translated; also dates are now externalized, too
    • ๐Ÿ› Bug: Better anonymous upload page (#758): the upload page for anonymous users shouldn't show a form to provide any metadata
    • ๐Ÿ› Bug: Tag category color (#835): the input field to specify colors for tag categories didn't show the category name
    • ๐Ÿ› Bug: Search in names (#822): a bug in the webui sent a broken query to the server, making the "search in names" field unusable
    • ๐Ÿ› Bug: Fulltext only search broken (#823): the fulltext only search didn't only consult the solr index, but also the database, making it a lot slower and presenting the results not in the order returned by solr.
    • ๐Ÿ› Bug: Ui switches to logged in state on auth failure (#814)
    • ๐Ÿ› Bug: Broken search summary when tag has no category (#759)

    ๐Ÿ’ป Migrating UI Settings

    โฌ†๏ธ After the upgrade to this version, your current ui settings are not ๐Ÿ“„ read anymore. That means docspell starts up with a light theme and tag colors are gone etc. If there are no settings at the server, but ๐Ÿ’ป docspell finds some at your browser, the UI Settings page shows a big message and a button. Clicking this button sends your settings to the server. This message disappears as soon as there are some settings on the server.

    If you have multiple devices, you now need to choose one which settings you want to migrate to the server. It is currently not possible to store settings per device.

    **Note: the button is only there if there are no settings at the server. So if you want to migrate, don't set the theme or click on other things that are persisted before doing the migration!

    REST Api Changes

    • ๐Ÿ†• new routes have been added to delete multiple attachments of an item
    • ๐Ÿ†• new routes have been added to manage client settings

    ๐Ÿ”ง Configuration Changes

    • none
  • v0.22.0 Changes

    Apr 11, 2021

    ๐Ÿš€ This release fixes some annoying bugs and prepares the web-ui to be translated into other languages. For actual translating them, I ask for your help. There is a detailed post about how to start with it in ๐ŸŒ the docs.

    • โ™ป๏ธ Refactor webui to prepare for localisation (#726)
    • โž• Add names to user defined tasks for better documentation (#712)
    • ๐Ÿ›  Fixes some ui bugs:
      • scrollbar position (#722)
      • other minor ui related fixes (#746)
    • โœ‚ Removed deprecated api endpoints, fixing #482
    • ๐Ÿ›  Fixes bug where items are already shown in the ui, although still in processing (#719)
    • Switch to github actions for ci (#748)
    • ๐Ÿ›  Fixes a bug in the new query language (#754)
    • ๐Ÿ›  Fix counters for categories in the search menu (#755)

    REST Api Changes

    • โœ‚ remove deprecated endpoints: sec/item/searchForm, sec/item/searchFormWithTags, sec/item/searchFormStats
    • โž• adds category-count data to SearchSummary

    ๐Ÿ”ง Configuration Changes

    • none
  • v0.21.0 Changes

    Mar 13, 2021

    ๐Ÿš€ The main feature of this release gives a very flexible way of searching for documents, using a query.

    • โž• Add a query language to provide a flexible way for searching
      • the search form now is translated into a search query
      • allows to search for items not in a folder or not in a specific folder (#628, #379)
      • Allows for range searches in custom fields (#540)
      • And more! See the documentation
    • โž• Add a use attribute to all metadata, to be able to exclude them from suggestions (#659)
    • ๐Ÿ‘ Allow to submit items for reprocessing via the UI (#365)
    • โž• Add Latvian language (#679)
    • Scrollbars are back! (#681, #677)
    • ๐Ÿ‘ท The script was changed to inform the processing jobs to also check for duplicates (#653)
    • ๐Ÿณ Docker setup now uses again a fixed hostname (#608)
    • โœ… Moving the unit tests to MUnit (#672)
    • โœ‚ Remove the old UI code (#636)
    • ๐Ÿ›  Fix date extraction for English (#665)
    • ๐Ÿ›  Fix bug when reading contacts from extracted text (#709)
    • ๐Ÿ›  Fix bugs when reading mails (#691, #678)
    • ๐Ÿ›  Fix a bug that wouldn't show an error message when entering bad characters in the register form (#663)
    • ๐Ÿ›  Fixes a typo in the user settings menu (#654, thanks @ChristianKlass)

    ๐Ÿ“„ Thanks to everyone showing interest in docspell and dedicating time by โœ… opening issues, testing and providing ideas!

    REST Api Changes

    Note there are breaking changes in the REST Api

    • previous search and searchWithTags has been renamed to searchForm and searchFormWithTags, respectively
    • same with searchStats, it has been renamed to searchFormStats
    • The new search route can be used with GET and POST requests and accepts now a search query and also a flag for whether returning details or not (there are no separate endpoints anymore)
    • The new searchStats accepts a query
    • The ItemQuery data structure is now only a query string, without limit and offset
    • Organization and Person have an additional use attribute

    ๐Ÿ”ง Configuration Changes

    ๐Ÿ”ง There were no changes to the configuration files.

  • v0.20.0 Changes

    Feb 19, 2021

    ๐Ÿš€ This release comes with a completely new ui based on tailwindcss, including a dark theme! โž• Additionally there are some other minor features and bug fixes.

    • ๐Ÿ†• New Web-UI with light and dark theme (#293).
      • All markup and css was reworked. For this release, the old ui is still available as a fallback if something got missing while porting. The old ui will be removed in the next release.
      • Experience on mobile devices is greatly improved
      • to get back to the old ui, you need to install a browser extension to be able to add a request header. Check this for firefox or this for chromium
      • then add the request header Docspell-Ui with value 1. Reloading the page gets you back the old ui.
    • ๐Ÿ’ป With new Web-UI, certain features and fixes were realized, but not backported to the old ui:
      • foldable sections in search and multi-edit menu (#613, #527)
      • show current item in detail view (#369)
      • fixed some ui issues regarding processing logs (#363)
      • scrollbar fix (#600)
    • ๐Ÿ‘ Allow a person to be correspondent, concerning or both (#605)
    • โž• Add a short-name field to the organization (#560)
    • โž• Add a description field to the equipment (#633)
    • ๐Ÿ‘ Allow to specify a language for a source url (#651). This can be used to define upload urls per document language.
    • Trim whitespace for certain fields (#539)
    • ๐Ÿณ A different docker entrypoint for the consumedir script was added that supports polling (thanks @JaCoB1123, #603, #624)
    • ๐Ÿ›  Fix duplicate suggestions (#627)
    • ๐Ÿ›  Fix reading mails with empty headers (#606)
    • ๐Ÿ›  Fix suggesting person that doesn't belong to the suggested organization (#625)
    • Cleanup registered nodes periodically (#618)

    REST Api Changes

    • The Person structure was changed: the concerning boolean flag is replaced by a use attribute
    • The Equipment structure has an additional notes attribute
    • The Source structure has an additional language attribute

    ๐Ÿ”ง Configuration Changes

    • joex:
      • additional section in house-keeping to configure the periodic node cleanup task
  • v0.19.0 Changes

    Jan 25, 2021

    ๐Ÿš€ This release comes with major improvements to the text analysis ๐Ÿ”ง module. It is now much more configurable, has improved results and can learn tags from all categories. Additionally, more languages for document processing have been added and it's now easier to add more. Please open an issue if want more languages to be included.

    • text analysis improvements (#263, #570)
      • docspell can now learn from all your tag categories
      • the detection for correspondents/concerned entities has been improved by using the classifier for this, too
      • all text analysis steps are now configurable that makes it possible to adapt it better to your data and machine.
      • The docs have been updated with some details here and here.
    • more languages (#488)
      • Adds: Spanish, Italian, Portuguese, Czech, Dutch, Danish, Finnish, Norwegian, Swedish, Russian, Romanian
      • languages have different support for text-analysis, but there is some basic support for all
      • there is extended support for English, German and French through Stanford CoreNLP nlp models (as before)
    • scan mailbox change (#576)
      • The change from last version (#551) has been moved behind a flag in the "scan mailbox settings". Please review your scan mailbox tasks in your user settings.
      • The scan mailbox settings form view has been organized into tabs, as it grew too large for a single form.
    • ๐Ÿ“ฆ nix tools package fixed (#584)
      • If you are using docspell tools package for nix, it has now been fixed in that all scripts are available. They are now all prefixed by ds- (except the ds script)
    • ๐Ÿ›  fix deleting organization (#578)
      • Due to the new relationship of a person to an organization, deleting an organization whith references a person was not possible. This is now fixed.
    • base url fix (#579)
      • The baseurl setting is optional, but when specified it was required to omit a trailing slash. This is now fixed in that it is always rendered without the trailing slash to the client, no matter what is in the config
    • ๐Ÿท tag category case sensitive search fix (#568)
      • This was a bug introduced by the last release. When tag categories can now be spelled upper- or lower-case. In 0.18.0 you had to spell them lowercase, otherwise the search doesn't work.
    • โž• adds a workaround for mails that don't specify their used charset (#591)

    ๐Ÿ’ฅ Breaking Changes

    • ๐Ÿ”ง The joex configuration changed around text analysis. If you had some custom settings there, please review these wrt the new default config.
    • ๐Ÿ“ฆ When using the nix package manager: the tools package renamed the scripts to be better distinguishable, since they all end up in $PATH. They are now prefixed by ds-.
    • ๐Ÿณ The path of the consumedir script changed in the consumedir docker image
    • The settings of the scan-mailbox task has been extended by another flag. It controls when to apply the post-processing (moving or deleting). If you were relying that all mails (even those excluded by a subject filter) where moved away, you need to check your scan-mailbox task settings.

    REST Api Changes

    • the data structure for ClassifierSettings changed to allow specfiying a blacklist or whitelist of tag categories and the enabled flag has been removed.

    ๐Ÿ”ง Configuration Changes

    • joex
      • the config regarding text analysis changed, there are new config options, like nlp.mode and the max-due-date-years has been moved inside text-anlysis. Please have a look at the new default config if you changed something there.
      • The regex-ner section has changed: the enabled flag has been removed, you can now limit the number of entries using max-entries to apply and 0 means to disable it.