Home

Software-update: Paperless-ngx 3.0.0

Versie 3.0.0 van Paperless-ngx is uitgekomen. Met dit opensourceprogramma kunnen documenten worden beheerd, vergelijkbaar met programma's als Immich, Navidrome en Grimmory, die dat voor afbeeldingen, muziek en e-books doen. Ingelezen documenten kunnen worden voorzien van tags, met OCR gescand en worden lokaal in eigen beheer als PDF/A opgeslagen, naast het origineel. Dit maakt zoeken naar bepaalde tekst of het kopiëren daarvan mogelijk. Meer informatie over dit programma kan hier worden gevonden. In deze uitgave zijn de volgende veranderingen en verbeteringen aangebracht:

Breaking Changes
  • Breaking: Remove the positional arguments from the pre/post consume scripts (#12573)
  • Breaking: Decouple OCR control from archive file control (#12448)
  • Chore: drop support for api versions < 9 (#12284)
  • Chore: Drop support for Python 3.10 (#12234)
  • Chore: Refactor advanced database settings to allow more user configuration (#12165)
  • Remove API v1 compatability (#12166)
  • Remove pybzar as a barcode reader (#12065)
  • Remove support for document and thumbnail encryption (#11850)
  • Feature: Simplify and improve the consumer (#11753)
  • Notable Changes
  • Feature: Replace Whoosh with tantivy search backend (#12471)
  • Feature: document parser plugin framework (#12294)
  • Feature: document file versions (#12061)
  • Feature: sharelink bundles (#11682)
  • Feature: Paperless AI (#10319)
  • Feature: Remote OCR (Azure AI) (#10320)
  • Features / Enhancements
  • [Beta] Paperless-ngx v3.0.0 Beta (#12713)
  • Tweakhancement (beta): allow some bulk operations with all (#13193)
  • Security (beta): enforce current permissions in autocomplete (#13188)
  • Security (beta): bound email linkification (#13187)
  • Change: update root modified timestamp on version changes (#13170)
  • Performance: add DB indexes for common query/sort patterns (#13167)
  • Performance: use NgOptimizedImage for thumbnail lazy loading (#13169)
  • Performance: Tantivy indexing optimization (#13053)
  • Chorehancement: update to Angular v22, 'zoneless' / 'reactive' (#13114)
  • Enhancement (beta): support LLM timeout config (#13002)
  • Enhancement: ignore diacritics, support multiple substring matching for UI filtering (#13021)
  • Enhancement(beta): replace LanceDB vector store with sqlite-vec (#12990)
  • Enhancement (beta): Switch the AI vector store to LanceDB (#12944)
  • Fixhancement (beta): tasks dismiss all (#12949)
  • Enhancement (beta): add direct LLM language setting (#12906)
  • Enhancement: try to respect language for AI suggestions (#12894)
  • Enhancement: AI LLM chunk size and context window config (#12891)
  • Enhancement: support ollama embeddings (#12753)
  • Tweakhancment: Include the last applied 'documents' migration in the log (#12757)
  • Enhancement: version-aware thumbnail etag (#12754)
  • Documentation: Update v3 migration docs (#12752)
  • Feature: Further reduce document importer memory usage (#12707)
  • Tweakhancement: use fixed position instead of display none for printing (#12706)
  • Enhancement: Paperless-ngx v3 Logo (#12673)
  • Tweakhancement: localize some more task result messages (#12672)
  • Enhancement: chat message document links (#12670)
  • Tweakhancement: make upload notification open an anchor link (#12659)
  • Tweakhancement: tweak tasks UI, make open doc an anchor (#12658)
  • Enhancement: show small task summary in system status (#12634)
  • Enhancement: new Tasks UI (#12614)
  • Feature: Allow monitoring access to tasks summary (#12624)
  • Tweak: remove stale index warning (#12616)
  • Enhancement: add highlighting to title + content searches (#12593)
  • Feature: Redesign the task system (#12584)
  • Feature: Tune SQLite default settings for increased speed (#12580)
  • Feature: Document fuzzy match improvements (#12579)
  • Enhancement: validate and sanitize uploaded logos (#12551)
  • Enhancement: add view_global_statistics and view_system_status permissions (#12530)
  • Fixhancement: include sharelinks + bundles in export/import (#12479)
  • Enhancement: unify text search to use tantivy (#12485)
  • Feature: Consumer logging correlation (#12510)
  • Security enhancement: allow opt-in blocking internal mail hosts (#12502)
  • Feature: Replace Whoosh with tantivy search backend (#12471)
  • Fixhancement: include trashed documents in document exporter/importer (#12425)
  • Tweakhancement: show file extension in StoragePath test (#12452)
  • Feature: Transition all checksums to use SHA256 (#12432)
  • Enhancement: auto-hide the search bar on mobile (#12404)
  • Change: sort custom fields alphabetically by default (#12358)
  • Feature: Add progress information to the classifier training for a better ux (#12331)
  • Feature: document parser plugin framework (#12294)
  • Enhancement: Make the StatusConsumer truly async (#12298)
  • Feature: Migrate import/export to rich progress (#12260)
  • Enhancement: Show more document details in merge dialog (#12271)
  • Enhancement: saved view sharing (#12142)
  • Enhancement: “live” document updates (#12141)
  • Enhancement: Improve the retagger output using rich (#12194)
  • Enhancement: Transition sanity check to rich and improve output (#12182)
  • Enhancement: Switch all indexing to use rich (#12193)
  • Feature: Switch progress bar library to rich (#12169)
  • Enhancment: Formatted filename for single document downloads (#12095)
  • Feature: document file versions (#12061)
  • Enhancement: prevent duplicate mail processing across rules (#12159)
  • Feature: move to trash action for workflows (#11176)
  • Tweakhancement: reset to page 1 on reset filters (#12143)
  • Enhancement: consolidate management lists into document attributes section (#12045)
  • Enhancement: option to stop processing further mail rules (#12053)
  • Tweak: improve 2-digit year parsing (#12044)
  • Enhancement: pngx pdf viewer (#12043)
  • Fixhancement: improve ASN handling with PDF operations (#11689)
  • Feature: Enable users to customize date parsing via plugins (#11931)
  • Feature: password removal workflow action (#11665)
  • Enhancement: per-type object page sizing (#11977)
  • Enhancement: improve filter drop-down performance with virtual scrolling (#11973)
  • Tweakhancement: tweak bulk delete text (#11967)
  • Feature: support split documents based on tag barcodes (#11645)
  • Enhancement: Add setting for default PDF Editor mode (#11927)
  • Fixhancement: auto-queue llm index if needed (#11891)
  • Feature: sharelink bundles (#11682)
  • Enhancement: user control of doc details fields (#11906)
  • Enhancement: improve relative dates in date filter (#11899)
  • Enhancement: allow duplicates with warnings, UI for discovery (#11815)
  • Enhancement: configurable SSO groups claim (#11841)
  • Enhancement: support select all for management lists (#11889)
  • Tweakhancement: display document id, with copy (#11896)
  • Enhancement: Add support for app oidc (#11756)
  • Enhancement: Add 'any of' workflow trigger filters (#11683)
  • Enhancement: support doc_id placeholder in workflow templates (#11847)
  • Performance: improve treenode inefficiencies (#11606)
  • Feature: Remote OCR (Azure AI) (#10320)
  • Feature: password removal action (#11656)
  • Tweakhancement: use anchor element for management list quick filter buttons (#11692)
  • Feature: Indonesian translation (#11641)
  • Bug Fixes
  • Fix (beta): prevent pdfjs offsetParent warning (#13197)
  • Fix (beta): dont include hidden buttons in virtual scroll container height (#13194)
  • Fix (beta): fix custom field bulk editing for 'all' (#13191)
  • Security (beta): two small permission check fixes (#13186)
  • Fix (beta): short-circuit ObjectOwnedOrGrantedPermissionsFilter for superusers (#13183)
  • Fix (beta): compute num_notes via a subquery instead of Count()+distinct (#13182)
  • Fix: prevent tag assignment from reverting other pending workflow assignments (#13178)
  • Fix(beta): cache per-request effective-document resolution for thumb/metadata/preview (#13166)
  • Fix: fallback from archive version for share links (#13163)
  • Fix: better handle saved view errors in dashboard widgets (#13164)
  • Fix (beta): convert chat component to signal-backed Angular (#13152)
  • Fix: HTTP 500 filtering documents by tags + custom field query on MariaDB (#13143)
  • Fix: scope ProcessedMail UID deduplication by IMAP UIDVALIDITY (#12839)
  • Fix: allow setting any UID and GID when running rootless (#13090)
  • Fix (beta): fix sidebar document close button (#13136)
  • Fix: include wasm assets in pdf.js-based viewer (#13122)
  • Fix: fix ui labels from md5 to sha256 (#13119)
  • Fixhancement: dont assign empty title in workflow with broken template (#13112)
  • Fix: clamp mailrule max age before migration (#13093)
  • Fix: use latest document version for bulk download (#13103)
  • Fix (beta): handle relative date with comma query (#13087)
  • Fix (beta): fix sanity checker affected document counts (#13052)
  • Fix (beta): preserve Unicode in localization prompt (#13055)
  • Fix: change tantivy token limit to title field max length (#13046)
  • Fix: include last-modified in doc etag (#13044)
  • Fix (beta): Stream chunks during compaction to prevent oom on smaller installs (#13014)
  • Fixhancement (beta): truncate embedding queries for small chunk size (#13028)
  • Fix(beta): Workaround a Tantivy panic in more like this searching (#13026)
  • Fix (beta): Catch consumer files created during watcher re-creations (#13013)
  • Fix (beta): restore v2 (Whoosh) advanced-search query compatibility (#13010)
  • Fix (beta): retry celery ping and report warning on no response (#13012)
  • Fix (beta): don't send chat message on Enter while composing with IME (CJK) (#12999)
  • Fix: Apply unicode normalization to all paths and path components (#12993)
  • Fix: Handle the UTF 16 and BOM text files better (#12994)
  • Fix (beta): avoid DRF update calling save on all fields (#12992)
  • Fix: release pooled DB connection during AI LLM/embedding calls (#12983)
  • Fix: health-check pooled DB connections and close the pool on worker shutdown (#12977)
  • Fix: wrap long titles in delete confirm dialog (#12973)
  • Fix (beta): fix re-ordering in merge dialog (#12967)
  • Fix (beta): move task filtering to backend fully (#12956)
  • Fix (beta): avoid unnecessary creating new PDF with pw removal workflow (#12948)
  • Fixhancement (beta): tasks dismiss all (#12949)
  • Fix (beta): correct chat message bg color (#12955)
  • Fix (beta): respect disable state for suggest endpoint, require change perms (#12942)
  • Fix: Ensure checksum comparision is using SHA256 (#12939)
  • Fix: Restrict the AI backend at settings configure time (#12903)
  • Fix (beta): correctly apply i18n in suggestions dropdown (#12905)
  • Fix: Lock AI index during reading and don't index documents many times during a bulk update (#12899)
  • Fix: Minor fixes for the AI indexing (#12893)
  • Fix (beta): dont use tool calling with ollama (#12896)
  • Fix: Improvements for security around the AI (#12895)
  • Fix: correctly show timestamp tooltip on history item (#12879)
  • Fix: Fold query and autocomplete terms with Tantivy's ascii_fold so special letters match (#12868)
  • Fix: Don't store autocomplete_word, only index it (#12867)
  • Fix: Preserve Whoosh date range swapping in Tantviy (#12866)
  • Fix: Always release search index writer (#12865)
  • Fix: Handle CJK title, content and metadata searching (#12862)
  • Fix: Restrict date query rewrites to date or datetime fields only (#12864)
  • Fix: Missing call to tanvity wait_merging_threads (#12863)
  • Fix: Handle tanvity index lock contention (#12856)
  • Fix (beta): better catch chat errors (#12854)
  • Security (beta): fixes for v3 beta (#12838)
  • Fix (beta): normalize long punctuation chunks to improve embedding (#12848)
  • Fix: use chord.on_error before apply_async (#12842)
  • Fix: Don't use smaller integer fields for some workflow fields (#12834)
  • Fix: Password removal source file location (#12830)
  • Fix (beta): use correct html button type for custom field buttons (#12819)
  • Fix: Defer password removal workflow action until the file is in place (#12814)
  • Fix: Allow setting allauth rate limit configuration settings (#12798)
  • Fix: Don't embed the metadata which is already embedded into the context (#12795)
  • Fix: Sanitize dash or plus from the text search path (#12789)
  • Fix: improve new tasks ui layout across screen sizes (#12784)
  • Fix: Update parser contract to require empty strings, not None (#12775)
  • Fix: Use a persistent, writeable location for hugging face models (#12771)
  • Fix: create LLM_INDEX_DIR before writing meta.json on first run (#12759)
  • Tweakhancment: Include the last applied 'documents' migration in the log (#12757)
  • Fix: use response synthesizer for RAG doc chat (#12751)
  • Fix: only update modified field in notes actions (#12750)
  • Fix: Handle dash or plus operators in search queries (#12734)
  • Fixes trash preview when a document has deleted versions (#12742)
  • Fix: exclude versions from stats count (#12738)
  • Fixes celery chords by using Redis as our result backend (#12741)
  • Fix: bump version.py to 3.0.0 also (#12736)
  • Fix: makes the font cache folder writeable to all users (#12726)
  • Fixes Whoosh year only queries to be rewritten to Tantivy date syntax (#12725)
  • Fix: pass allow parallel tool calls in LLM client (#12718)
  • Fix: Handle passwords for removal action as lists (#12716)
  • Bumps all our versions to 3.0.0 (#12715)
  • Fix: avoid unnecessary close_old_connections in Celery task dispatch (#12701)
  • Fix: apply tag changes directly to document in db (#12664)
  • Fix: Use FileResponse for file API responses (#12638)
  • Fix: Changes bare metal webserver to use uvloop (#12626)
  • Fixhancement: Exact custom field monetary exact searching (#12592)
  • Fix: relative added date check visibility (#12600)
  • Fix: prevent intermediate change event when CustomFieldQueryAtom operator changes type (#12597)
  • Fix: reject invalid requests to API notes endpoint (#12582)
  • Fixhancement: include sharelinks + bundles in export/import (#12479)
  • Fix: Respect workflow change_groups during consumption (#12431)
  • Fix: Don't try to update the user when running as non-root (#12365)
  • Fix: use maxsplit=1 in Redis URL parsing to handle URLs with multiple colons (#12239)
  • Fixhancement: show sequential + id version labels, fix padding (#12196)
  • Fix: correct user dropdown button icon styling (#12092)
  • Fix: Handle an OOM kill of celery workers in the task handler @stumpylog (#12040)
  • Fix: re-run ASN check after barcode detection @shamoon (#11681)
  • Fix: prevent infinite loading crash in mail component (#11978)
  • Fix: fix broken docker create_classifier command in 2.20.6 (#11965)
  • Fix: ensure css color-scheme for dark mode (#11855)
  • Fix: fix tag list horizontal scroll, again (#11839)
  • Fix: ensure horizontal scroll for long tag names in list, wrap tags without parent (#11811)
  • Fix: use explicit order field for workflow actions (#11781)
  • Fix: fix recurring workflow to respect latest run time (#11735)
  • Fixhancement: add error handling and retry when opening index (#11731)
  • Fix: validate cf integer values within PostgreSQL range (#11666)
  • Fix: support ordering by storage path name (#11661)
  • Fix: propagate metadata override created value (#11659)
  • Fix: prevent ASN collisions for merge operations (#11634)
  • Documentation
  • [Beta] Paperless-ngx v3.0.0 Beta (#12713)
  • Fix: clamp mailrule max age before migration (#13093)
  • Documentation (beta): Updates documentation for new v3 features (#13033)
  • Documentation: fix PAPERLESS_DATE_PARSER_LANGUAGES formatting (#12997)
  • Documentation: remove duplicate words in three files (#12852)
  • Fix: Allow setting allauth rate limit configuration settings (#12798)
  • Documentation: Update v3 migration docs (#12752)
  • Enhancement: Paperless-ngx v3 Logo (#12673)
  • Chore: separate actions from bulk edit endpoint (#12286)
  • Chore: Switches to use prek in place of pre-commit (#12002)
  • Chore: upgrade to node v24 (#11747)
  • Maintenance
  • [Beta] Paperless-ngx v3.0.0 Beta (#12713)
  • Chore(deps): Bump the actions group across 1 directory with 14 updates (#13079)
  • Chore(deps): Bump the actions group across 1 directory with 12 updates (#12909)
  • Chore(deps): Bump the actions group across 1 directory with 17 updates (#12686)
  • Chore(deps): Bump the actions group across 1 directory with 4 updates (#12538)
  • Chore(deps-dev): Bump @playwright/test from 1.58.2 to 1.59.0 in /src-ui (#12537)
  • Chore: address more zizmor flags (#12529)
  • Chore: Resolves some zizmor reported code scan findings (#12516)
  • Chore(deps): Bump the actions group across 1 directory with 9 updates (#12490)
  • Chore(deps): Bump the actions group with 2 updates (#12377)
  • Chore(deps): Bump the actions group with 3 updates (#12322)
  • Chore: Don't upload digets file as a zip (#12264)
  • Chore(deps): Bump the actions group across 1 directory with 6 updates (#12224)
  • Chore(deps): Bump j178/prek-action from 1.1.0 to 1.1.1 in the actions group (#12033)
  • Chore: Switches to use prek in place of pre-commit (#12002)
  • Chore: Enable mypy checking in CI (#11991)
  • Chore(deps): Bump the actions group with 2 updates (#11966)
  • Chore: upgrade to node v24 (#11747)
  • Performance: pre-compress static files on ARM64 (#11721)
  • Chore(deps): Bump the actions group with 4 updates (#11695)
  • Feature: Indonesian translation (#11641)
  • Source: Tweakers.net

    Previous

    Next