Paperless-ngx v3.1.0

v3.1.0

Paperless-ngx v3.1.0

Added 9
  • Apply AI suggestions workflow action
  • Support using remote OCR engines selectively
  • Websocket heartbeat
  • Sync OIDC groups to superuser and staff roles
  • Merge documents as versions
  • Allow selection of compression type and level during export
Changed 8
  • Apply visual tweaks to welcome widget
  • Better support long list of views in documents list
  • Add count badge to versions dropdown
  • Add jitter to IMAP polling schedule
  • Render paperless_ai prompts via Jinja2 templates instead of f-strings
  • Prefer existing tags, types, correspondents, and storage paths in AI suggestions
  • Reduce memory and I/O overhead of the document exporter during zip exports
  • More efficient mail fetching
Fixed 3
  • Prevent config autocomplete craziness
  • Prevent token re-use in dropdown filtering
  • Exclude version documents from bulk edit all

From Paperless-ngx

paperless-ngx 3.1.0
Features / Enhancements
  • Enhancement: Apply AI suggestions workflow action @shamoon (#13639)
  • Enhancement: welcome widget visual tweaks @shamoon (#13794)
  • Enhancement: support using remote OCR engines selectively @shamoon (#13633)
  • Enhancement: websocket heartbeat @oktupol (#13739)
  • Enhancement: more v3 ui tweaks @shamoon (#13774)
  • Tweak: better support long list of views in documents list @shamoon (#13769)
  • QoL: add count badge to versions dropdown @shamoon (#13753)
  • Tweakhancement: add jitter to IMAP polling schedule @shamoon (#13734)
  • Enhancement: sync OIDC groups to superuser and staff roles @BeSovereign (#13060)
  • Enhancement: merge documents as versions @shamoon (#13515)
  • Tweak: adjust modal proportions for small screens @shamoon (#13728)
  • Refactor: render paperless_ai prompts via Jinja2 templates instead of f-strings @stumpylog (#13698)
  • Tweak: small visual tweaks / improvements & fixes @shamoon (#13700)
  • Enhancement: prefer existing tags, types, correspondents, and storage paths in AI suggestions @stumpylog (#13676)
  • Tweak: tweak permissions menu labels for shared user-dependent views @shamoon (#13685)
  • Feature: Allow selection of compression type and and level during export @stumpylog (#13661)
  • Enhancement: customizable icons for saved views @shamoon (#13388)
  • Enhancement: Add --url argument to document_fuzzy_match to improve output @lukyjay (#13123)
  • Feature: Updates remote OCR parser to respect the OCR mode setting @stumpylog (#13408)
  • Tweak: improve no ML suggestions UX @shamoon (#13621)
  • Performance: reduce memory and I/O overhead of the document exporter during zip exports @stumpylog (#13490)
  • QoL: make name button text on attribute pages selectable @shamoon (#13592)
  • Performance: More efficient mail fetching @stumpylog (#13432)
Bug Fixes
  • Fix: prevent config autocomplete craziness @shamoon (#13808)
  • Fix/performance: prevent token re-use in dropdown filtering, also a perf thing @shamoon (#13804)
  • Fix: exclude version documents from bulk edit "all" @shamoon (#13791)
  • Fix: fix bottom mobile nav buttons on Android @shamoon (#13780)
  • Fix: lazy import guardian modules to fix search language setting @shamoon (#13768)
  • Fix: version indexing fixes @shamoon (#13737)
  • Fix: append charset to file response for text files @shamoon (#13759)
  • Chore: pin Apache Tika images to 3.3.1 @shamoon (#13758)
  • Fix: align bulk edit object perms with document model @shamoon (#13757)
  • Fix: use selected version for doc detail emailing @shamoon (#13738)
  • Fix: hide version delete button without global perms @shamoon (#13735)
  • Fix: dont re-render path template when checking collisions @shamoon (#13718)
  • Fix: DocumentClassifierSchema bounds @shamoon (#13707)
  • Fix: remove shadow around attribute pages @shamoon (#13696)
  • Zen: correct dropdown corner radius visual defect @shamoon (#13695)
  • Fix: handle Android keyboard popper overlay @shamoon (#13694)
  • Fix: only show create when there is text, hide set values if no fields in cf bulk edit dropdown @shamoon (#13688)
  • Fix: reopen a fresh Tantivy index per write to prevent orphaned segment files @stumpylog (#13682)
  • Fix: fix validation of workflow title assignment @maxtruxa (#13659)
  • Fix: dont clip search dropdown on mobile @shamoon (#13675)
  • Fix: include sharelink bundle perms in WebUI @shamoon (#13664)
  • Fix: add pagination to saved views management page @shamoon (#13646)
  • Fix: fixes for workflow assign custom field values @shamoon (#13630)
  • Fix: deny deactivated users in permission filtering and auto-login @stumpylog (#13623)
  • Fix: check bulk mail delete permissions for the whole batch up front @stumpylog (#13620)
  • Fix: Allow DRF to validate the maximum API key length @stumpylog (#13614)
  • Fix: render PDF form values in annotation layer @shamoon (#13607)
  • QoL: disable name button without perms @shamoon (#13606)
  • Fix: prevent debounce overwrites in advanced search field, also improve Esc behavior @shamoon (#13602)
  • Fix: raise ParseError on remote OCR failure instead of silently continuing @stumpylog (#13574)
  • Fix: use selected version when creating share links @shamoon (#13571)
  • Fix: reject bulk edit permissions requests without the correct key @shamoon (#13563)
  • Fix: correctly serve app logo specified in env @shamoon (#13561)
  • Fix: prevent workflow passwords field type error @shamoon (#13552)
  • Fix: correct Firefox print regression @shamoon (#13543)
  • Fix: hide some saved view operations on management page without permissions @shamoon (#13542)
  • Fix: disable pdfjs selection rendering @shamoon (#13538)
  • Fix: hide sidebar drag grips with insufficient permissions @shamoon (#13536)
  • Fix: don't re-queue a consume-folder file that is already queued and awaiting consumption @stumpylog (#13526)
  • Fix: correct multi-search non-adjacent queries @shamoon (#13504)
  • Fix: Content-Disposition filename normalization @shamoon (#13514)
  • Fix: prevent duplicated text query with multiple date queries @shamoon (#13522)
  • Fix: crash filtering document link custom fields with an unset or unrelated field present @ggouzi (#13518)
  • Fix: parse unpadded yyyy-mm-dd date input regardless of locale @Se1foo (#13501)
Documentation
  • Documentation: clarify default OCR mode changes in v3 @shamoon (#13666)
  • Fix: fixes for workflow assign custom field values @shamoon (#13630)
  • Documentation: add wiki links for AI stuff and parser plugins @shamoon (#13626)
Maintenance
Dependencies
  • Chore: Upgrade Docker image to Python 3.14 @stumpylog (#13721)
  • Chore(deps): Bump the uv group across 1 directory with 2 updates @dependabot[bot] (#13709)
  • Chore: update, reorg some npm deps @shamoon (#13716)
  • Chore: update fpdf2 to 2.8.8 @shamoon (#13629)
  • Chore: update pnpm, add blockExoticSubdeps @shamoon (#13628)
  • Chore(deps): Bump h2 from 4.3.0 to 4.4.1 in the uv group across 1 directory @dependabot[bot] (#13593)
  • Chore(deps): Bump pdfjs-dist from 6.1.200 to 6.2.108 in /src-ui in the npm_and_yarn group across 1 directory @dependabot[bot] (#13594)
  • Chore(deps): Bump cryptography from 48.0.1 to 50.0.0 in the uv group across 1 directory @dependabot[bot] (#13588)
  • Chore(deps): Bump the utilities-patch group across 1 directory with 6 updates @dependabot[bot] (#13539)
  • Chore(deps): Bump the utilities-minor group across 1 directory with 20 updates @dependabot[bot] (#13535)
  • Chore(deps): Bump aiohttp from 3.14.1 to 3.14.3 in the uv group across 1 directory @dependabot[bot] (#13537)
  • Chore(deps-dev): Bump zensical from 0.0.47 to 0.0.51 in the development group across 1 directory @dependabot[bot] (#13533)
  • Chore(deps-dev): Bump postcss from 8.5.22 to 8.5.25 in /src/paperless_mail/templates in the npm_and_yarn group across 1 directory @dependabot[bot] (#13534)
  • Chore(deps): Bump the pre-commit-dependencies group across 1 directory with 4 updates @dependabot[bot] (#13532)
  • Chore: ruff 0.16 upgrade @stumpylog (#13531)
  • Chore(deps): Bump the actions group across 1 directory with 20 updates @dependabot[bot] (#13481)
  • docker(deps): bump astral-sh/uv from 0.11.28-python3.12-trixie-slim to 0.11.32-python3.12-trixie-slim @dependabot[bot] (#13472)
  • docker-compose(deps): bump nginx from 1.31.2-alpine to 1.31.3-alpine in /docker/compose @dependabot[bot] (#13470)
  • docker-compose(deps): Bump greenmail/standalone from 2.1.9 to 2.1.11 in /docker/compose @dependabot[bot] (#13469)
  • Chore(deps): Bump the frontend-angular-dependencies group across 1 directory with 18 updates @dependabot[bot] (#13476)
  • Chore(deps-dev): Bump @playwright/test from 1.61.1 to 1.62.0 in /src-ui @dependabot[bot] (#13480)
  • Chore(deps-dev): Bump the frontend-eslint-dependencies group across 1 directory with 4 updates @dependabot[bot] (#13477)
  • Chore(deps-dev): Bump @types/node from 26.1.0 to 26.1.1 in /src-ui @dependabot[bot] (#13479)
All App Changes
  • Fix: prevent config autocomplete craziness @shamoon (#13808)
  • Fix/performance: prevent token re-use in dropdown filtering, also a perf thing @shamoon (#13804)
  • Enhancement: Apply AI suggestions workflow action @shamoon (#13639)
  • Fix: exclude version documents from bulk edit "all" @shamoon (#13791)
  • Enhancement: welcome widget visual tweaks @shamoon (#13794)
  • Performance: fetch note authors with prefetch instead of one query each @shamoon (#13790)
  • Tweak: more misc UI tweaks @shamoon (#13783)
  • Enhancement: support using remote OCR engines selectively @shamoon (#13633)
  • Fix: fix bottom mobile nav buttons on Android @shamoon (#13780)
  • Enhancement: websocket heartbeat @oktupol (#13739)
  • Fix: lazy import guardian modules to fix search language setting @shamoon (#13768)
  • Enhancement: more v3 ui tweaks @shamoon (#13774)
  • Chore: add some missing UI accessibility labels @shamoon (#13772)
  • Chore: refactor permission checkbox live changes @shamoon (#13771)
  • Tweak: better support long list of views in documents list @shamoon (#13769)
  • Fix: version indexing fixes @shamoon (#13737)
  • Fix: append charset to file response for text files @shamoon (#13759)
  • Fix: align bulk edit object perms with document model @shamoon (#13757)
  • QoL: add count badge to versions dropdown @shamoon (#13753)
  • Tweakhancement: add jitter to IMAP polling schedule @shamoon (#13734)
  • Fix: use selected version for doc detail emailing @shamoon (#13738)
  • Fix: hide version delete button without global perms @shamoon (#13735)
  • Enhancement: sync OIDC groups to superuser and staff roles @BeSovereign (#13060)
  • Enhancement: merge documents as versions @shamoon (#13515)
  • Tweak: adjust modal proportions for small screens @shamoon (#13728)
  • Refactor: render paperless_ai prompts via Jinja2 templates instead of f-strings @stumpylog (#13698)
  • Chore(deps): Bump the uv group across 1 directory with 2 updates @dependabot[bot] (#13709)
  • Fix: dont re-render path template when checking collisions @shamoon (#13718)
  • Chore: update, reorg some npm deps @shamoon (#13716)
  • Fix: DocumentClassifierSchema bounds @shamoon (#13707)
  • Tweak: small visual tweaks / improvements & fixes @shamoon (#13700)
  • Fix: remove shadow around attribute pages @shamoon (#13696)
  • Zen: correct dropdown corner radius visual defect @shamoon (#13695)
  • Fix: handle Android keyboard popper overlay @shamoon (#13694)
  • Enhancement: prefer existing tags, types, correspondents, and storage paths in AI suggestions @stumpylog (#13676)
  • Fix: only show create when there is text, hide set values if no fields in cf bulk edit dropdown @shamoon (#13688)
  • Fix: reopen a fresh Tantivy index per write to prevent orphaned segment files @stumpylog (#13682)
  • Tweak: tweak permissions menu labels for shared user-dependent views @shamoon (#13685)
  • Fix: fix validation of workflow title assignment @maxtruxa (#13659)
  • Feature: Allow selection of compression type and and level during export @stumpylog (#13661)
  • Fix: dont clip search dropdown on mobile @shamoon (#13675)
  • Fix: include sharelink bundle perms in WebUI @shamoon (#13664)
  • Enhancement: customizable icons for saved views @shamoon (#13388)
  • Enhancement: Add --url argument to document_fuzzy_match to improve output @lukyjay (#13123)
  • Feature: Updates remote OCR parser to respect the OCR mode setting @stumpylog (#13408)
  • Performance: pass document chat queries as a QuerySet instead of a materialized.list @stumpylog (#13638)
  • Fix: add pagination to saved views management page @shamoon (#13646)
  • Fix: fixes for workflow assign custom field values @shamoon (#13630)
  • Fix: deny deactivated users in permission filtering and auto-login @stumpylog (#13623)
  • Chore: update fpdf2 to 2.8.8 @shamoon (#13629)
  • Chore: update pnpm, add blockExoticSubdeps @shamoon (#13628)
  • Fix: check bulk mail delete permissions for the whole batch up front @stumpylog (#13620)
  • Tweak: improve no ML suggestions UX @shamoon (#13621)
  • Fix: Allow DRF to validate the maximum API key length @stumpylog (#13614)
  • Performance: unify permission-filtering backends, fixes Correspondent/Tag list slowness @stumpylog (#13601)
  • Performance: generalize permitted_document_ids into permitted_object_ids for any model @stumpylog (#13578)
  • Fix: render PDF form values in annotation layer @shamoon (#13607)
  • QoL: disable name button without perms @shamoon (#13606)
  • Fix: prevent debounce overwrites in advanced search field, also improve Esc behavior @shamoon (#13602)
  • Performance: reduce memory and I/O overhead of the document exporter during zip exports @stumpylog (#13490)
  • Chore(deps): Bump h2 from 4.3.0 to 4.4.1 in the uv group across 1 directory @dependabot[bot] (#13593)
  • Chore(deps): Bump pdfjs-dist from 6.1.200 to 6.2.108 in /src-ui in the npm_and_yarn group across 1 directory @dependabot[bot] (#13594)
  • QoL: make name button text on attribute pages selectable @shamoon (#13592)
  • Fix: raise ParseError on remote OCR failure instead of silently continuing @stumpylog (#13574)
  • Fix: use selected version when creating share links @shamoon (#13571)
  • Chore: specify AI chat refine template @shamoon (#13564)
  • Fix: reject bulk edit permissions requests without the correct key @shamoon (#13563)
  • Fix: correctly serve app logo specified in env @shamoon (#13561)
  • Fix: prevent workflow passwords field type error @shamoon (#13552)
  • Chore(deps): Bump the utilities-patch group across 1 directory with 6 updates @dependabot[bot] (#13539)
  • Chore(deps): Bump the utilities-minor group across 1 directory with 20 updates @dependabot[bot] (#13535)
  • Performance: More efficient mail fetching @stumpylog (#13432)
  • Performance: eliminate per-document guardian permission-check causing high CPU on document lists @stumpylog (#13505)
  • Fix: correct Firefox print regression @shamoon (#13543)
  • Fix: hide some saved view operations on management page without permissions @shamoon (#13542)
  • Chore(deps): Bump aiohttp from 3.14.1 to 3.14.3 in the uv group across 1 directory @dependabot[bot] (#13537)
  • Chore(deps-dev): Bump zensical from 0.0.47 to 0.0.51 in the development group across 1 directory @dependabot[bot] (#13533)
  • Fix: disable pdfjs selection rendering @shamoon (#13538)
  • Fix: hide sidebar drag grips with insufficient permissions @shamoon (#13536)
  • Chore(deps-dev): Bump postcss from 8.5.22 to 8.5.25 in /src/paperless_mail/templates in the npm_and_yarn group across 1 directory @dependabot[bot] (#13534)
  • Chore: ruff 0.16 upgrade @stumpylog (#13531)
  • Fix: don't re-queue a consume-folder file that is already queued and awaiting consumption @stumpylog (#13526)
  • Fix: correct multi-search non-adjacent queries @shamoon (#13504)
  • Fix: Content-Disposition filename normalization @shamoon (#13514)
  • Fix: prevent duplicated text query with multiple date queries @shamoon (#13522)
  • Fix: crash filtering document link custom fields with an unset or unrelated field present @ggouzi (#13518)
  • Fix: parse unpadded yyyy-mm-dd date input regardless of locale @Se1foo (#13501)
  • Chore(deps): Bump the frontend-angular-dependencies group across 1 directory with 18 updates @dependabot[bot] (#13476)
  • Chore(deps-dev): Bump @playwright/test from 1.61.1 to 1.62.0 in /src-ui @dependabot[bot] (#13480)
  • Chore(deps-dev): Bump the frontend-eslint-dependencies group across 1 directory with 4 updates @dependabot[bot] (#13477)
  • Chore(deps-dev): Bump @types/node from 26.1.0 to 26.1.1 in /src-ui @dependabot[bot] (#13479)
View original

Upgraded? How did it go?

Discussion