Docspell Versions Save

Assist in organizing your piles of documents, resulting from scanners, e-mails and other sources with miminal effort.

nightly

1 week ago

Commits

  • 2834513: Update jwt-circe to 10.0.1 (eikek-scala-steward) #2631

v0.41.0

3 months ago

🎉 ChangelogDocumentationMilestone 🎉

  • Add khmer language (#2011)
  • Replace blaze with ember (http stack) (#2221, #2348)
  • Updated several dependencies (#2348, #2354, 2355)
  • Fix AddonExecutionResult monoid (#2363)
  • Setting item date from addons (#2345)
  • Fix sql queries where a space was missing (#2367, #2368)
  • Change AWS region for minio file backend (#2386)
  • Allow additional metadata to be passed on upload for addons and hooks (#2334)
  • Add support for Slovak language
  • Fix possibility to configure too large session-valid values (#2309)
  • Consider emails when flattenArchives is true (#2063)
  • Allow new file upload without hitting reset (#2323)

Solr needs analysis-extra module

With the addition of khmer language, solr needs now to load its analysis-extra module. It is (usually) packaged with the solr distribution, so it only requires to change the startup command. The docker-compose file has been changed accordingly. You might need to check your setup.

H2 Update

The in-process database H2 was updated in this release: from 2.1.214 to 2.2.224. You need to migrate your data to make it work with the new release. Exporting using the old version and importing using the new version should work fine. For details, please refer to the h2 documentation. There is a script tools/h2-util.sh to help with this process. Also this comment might be useful.

Big thanks to:

  • @eikek
  • @madduck
  • @mprasil
  • @rehanone
  • @v6ak
  • @xshadowlegendx

v0.40.0

1 year ago

🎉 ChangelogDocumentationMilestone 🎉

This release contains some bug fixes and improvements.

  • Add Ukrainian language (#1835, @GooRoo)
  • webui: normalize , to . for numeric fields (#1975)
  • improve error reporting when file backend fails (#1976)
  • docker: remove exlpicit zlib install (#1863)
  • nix: implement nix flake (#1869, @VTimofeenko)
  • nix: replace wkhtmltopdf with weasyprint (#1873, #1895, @VTimofeenko)
  • fix listing shares with no name (#1840)
  • fix html conversion of text files (#1915)
  • fix: remove test-scoped dependencies from artifacts (#1856)
  • fix deletin users (#1941)
  • fix notification for collective scoped tasks (#1987)

v0.39.0

1 year ago

🎉 ChangelogDocumentationMilestone 🎉

This release contains some bug fixes, updates docker images and includes some internal change to get a bit forward with #585 (user groups).

  • Allow to set extracted content (#1775) You can now fix OCRed text this way.
  • Improve handling mixes of OIDC and local accounts (#1827). It is now possible to use the same account locally and via OIDC.
  • Add Estonian language (#1646)
  • Updated docker images to new alpine and openjdk, fixing #1736 (#1713) by @jberggg and @eikek
    • drops support for arm7 (#1719)
    • introduces weasyprint as an alternative to wkhtmltopdf for converting html files to pdf
  • Fix docspell's query to remove attach.count. It has been removed a while ago, but the query language didn't reflect it (#1758)
  • Fix search for linked items (#1808)
  • Fix item selection after merging (#1809)
  • Internal changes to how a collective is referenced as a preparation for #585 (#1686)
  • Update H2 to 2.1.x, incompatible to the previous used version (#1690)

Warning

The database structure changed substantially in this release. Please make sure to create a backup of your database before attempting the upgrade!

Docker

There are two major changes for docker users: First ARM7 support has been dropped, because it was too much work to maintain alongside the other architectures. Second the images have been updated to the latest alpine linux, which requires to sacrifice using wkhtmltopdf as a tool to convert HTML to PDF (often used for processing emails).

The joex image doesn't have the wkhtmltopdf binary anymore, because it is not available for alpine linux. Instead weasyprint has been added. Docspell by default still uses wkhtmltopdf, because I found it has better results. But you can now switch to weasyprint and if you use the provided docker images you have to.

There is a new config that you need to set - when using environment variables:

DOCSPELL_JOEX_CONVERT_HTML__CONVERTER=weasyprint

Just add it to the env variables in the docker-compose.yml. If you use a config file, add this to it:

docspell.joex {
  convert.html-converter = "weasyprint"
}

File Backends

The internal change on how collectives are now referenced requires to adopt the files accordingly. If you have your files in the database, all is being migrated automatically on first start.

For other file backends, the files must be migrated manually. The difference is that from now on a collective is referenced by a unique number and not by its name anymore. You can look at the table collective to see which number was assigned to a collective and then

  • for a filebackend, simply move the folder with a collective name to its corresponding number
  • for s3 backend the same must happen, using some s3 client (maybe this one)

H2

If you use H2 as a database, there are some manual steps required. H2 was bumped from 1.4.x to 2.1.x and the new version cannot read the database files of the old version.

Additionally, one of the changesets for H2 used a now illegal syntax and had to be changed. This will lead to checksum mismatch errors when starting up.

Creating and restoring a dump, the script tools/h2-util.sh can be used. The H2 version can be specified with an environment variable H2_VERSION to easily create a dump in one version and restore in another.

To fix the changeset, you could simply run this sed command on the dump before restoring:

sed -i 's,175554607,-276220379,g' docspell-dump-h2.sql

But this could potentially change not only the checksum, but other things in the dump. It is not very likely, though. A more safe alternative is to use a text editor and find the correct place (in table flyway_schema_history) to change or just set database-schema.repair-schema = true in the config file or use the env variables

DOCSPELL_SERVER_BACKEND_DATABASE__SCHEMA_REPAIR__SCHEMA=true

and startup only the restserver one time to have the checksum fixed. Another safe variant is to run this update statement on your h2 database:

UPDATE flyway_schema_history set checksum = -276220379 WHERE version = '1.9.3';

v0.38.0

1 year ago

🎉 ChangelogDocumentationMilestone 🎉

This release fixes some issues related to OpenID connect integration and addons.

  • Allow to skip login page if a single OIDC provider is configured (#1640)
  • Add config to force OCR on a PDF even if text would be available (#1628)
  • Improvements for OIDC integration (#1619, #1545)
  • Improve unzipping/zipping files (#1603)
  • Fix starting a background task to install addon (#1601)
  • Add more database indexes to improve search (#1584)
  • Add paging to the share view (#1582)
  • Remove unused code (#1581)

v0.37.0

1 year ago

🎉 ChangelogDocumentationMilestone 🎉

This is more a bug fix release, targeting mainly fixes related to addons.

  • Fix e-mail address input field (#1565)
  • Overhaul of search when fulltext search is applied. Fixes #1363.
  • Return when a search exceeds server configured limit for page size (#1358)
  • Several fixes related to addons (#1566, #1573)

v0.36.0

1 year ago

🎉 ChangelogDocumentationMilestone 🎉

This release allows to extend Docspell with custom scripts/programs. This is still an experimental feature, I expect more changes coming. But you are invited to give it a try 😄!

  • Extend docspell via addons (experimental feature) (#1550) There are two addons to play with
  • Adds Lithuanian and Polish to document languages (#1540, #1345)
  • Quick guide for adding more languages (#942)
  • Make dashboard boxes headlines bold (#1531)
  • Improve logging config; allow to specify loggers and their level (#1535)
  • Allow for auth tokens to optionally be issued with an validity (#1533, #1534)

Note to docker users: The docker image of the previous release contained a "broken" zlib library that affected checksum generation for the db migrations (see #1517). The image of this release has an updated version of this system library. This means that it is quite likely that those who were not affected by this in 0.35.0 (for example, you started with a fresh db) - could now be affected. If you get these errors, try to "repair" the migrations. Apply the following settings in the docker-compose file for one start:

DOCSPELL_SERVER_BACKEND_DATABASE__SCHEMA_REPAIR__SCHEMA=true
DOCSPELL_SERVER_BACKEND_DATABASE__SCHEMA_RUN__FIXUP__MIGRATIONS=true
DOCSPELL_SERVER_BACKEND_DATABASE__SCHEMA_RUN__MAIN__MIGRATIONS=true

Start up one time and stop again. Then remove these settings again.

v0.35.0

2 years ago

🎉 ChangelogDocumentationMilestone 🎉

  • Download multiple documents as zip (#1093). The webui allows to download multiple files as a zip archive. The zip file is created at the server and cached for a while.
  • New project ds4e providing utilises to access Docspell from Emacs
  • Increase size for password fields in the database (#1508)
  • Hide the delete button in new notifciation channel forms (#1506)
  • Fix logging (#1468), non-errors were logged as errors.
  • Apply the migration fix from last version only from 0.32.0 onwards (#1469)
  • Fix typos in UI (#1510, @monnypython)
  • Add support for Postgres FTS in nix module (#1512, @LeSuisse)

v0.34.0

2 years ago

🎉 ChangelogDocumentationMilestone 🎉

  • French translation (#1440): The UI is now available in French! Thanks to @jgirardet.
  • Link Items (#528): Link items together directly (without using custom fields) and see all related items quickly on the search page.
  • Import mails recursively (#1260): The scanmailbox task can now go through folders recursively. Thanks to @Moerfi666 and @seijikun.
  • Fulltext search via PostgreSQL (#424): Another backend for full-text search was added that is backed by PostgreSQL's text search feature. You can now choose between SOLR and PostgreSQL for fulltext search.
  • More file backends (#1379): Next to storing the files in the database, you can now choose to store them in a S3 compatible storage or use the filesystem directly.
  • Flat zip upload (#1366): An option has been added to the upload metadata that will unpack zip files and process each entry separately (instead of treating a zip file as a single item).
  • Fix to upload large files (#1339): Uploaded files are not loaded entirely into memory allowing to upload large files.
  • Fix previously published db migration (#1454, #1436): Unfortunately, there was an db migration in the last release that caused problems on some installations. A fix for this migration has been added.
  • Fix build to run on windows (#1449, #1461): Building docspell on windows has been improved by @arittner.

For some of the new features, you need the new version of dsc.

v0.33.0

2 years ago

🎉 ChangelogDocumentationMilestone 🎉

⚠️ Important
Unfortunately, this release contains a DB migration script that fails on some installations. It can be sorted out by following the guide in #1436 and requires to connect to the DB directly. If you don't want to run commands against the database, you can wait for the next release.
  • Refactor file identifiers, as preparation for different file storage backends (#1380)
    • PLEASE NOTE this release contains a DB migration that changes all file identifiers in the database. It is really very much recommended to do a backup of the database before updating!
  • Allow background tasks to return results that are published via events (#1362)
  • Users can specify a time zone in user settings (#1062)
  • Improve item selection (#1422)
    • item selection is now stored globally and kept until you explicitly clear the selection
    • items can be selected in detail view and the search menu shows an entry to quickly see all items currently selected
  • Change logging format and backend
    • The logging format has changed again from logfmt to the "classic" one
    • the configuration allows to use logfmt, json or two "classic" formats
    • logback has been removed! If you used a custom logback.xml before, I'm sorry this is not possible anymore. There are two settings in the config file for now to control logging: logging.minimum-level and logging.format.
  • Pdf preview not updated (#1210)
    • some browsers (e.g. safari and some mobile browsers) don't update the ui when the src attribute of the embed element changes
    • for the "fallback view", an iframe is now used - thus for mobile it should work now. Safari on desktop would require to change the respective setting
  • Several ui improvements
    • More cards per row for large screens (#1401)
    • more space below direction dropdown (#1400)
    • fix input field save-while-typing (#1340, #1299)
    • improves detail view on small screens (#1420)
    • sort tags by group and then name (#1396)
    • fix bug presenting an empty tag category in search menu (#1402)
    • wrap long text in dashboard tables (#1357)
    • typo fixes (#1387, #1433)
  • Remove tools package from release (#1421)