dependabot[bot]
df5f8db0d3
Chore(deps): Bump https://github.com/astral-sh/ruff-pre-commit
...
Bumps the pre-commit-dependencies group with 1 update: [https://github.com/astral-sh/ruff-pre-commit ](https://github.com/astral-sh/ruff-pre-commit ).
Updates `https://github.com/astral-sh/ruff-pre-commit ` from v0.15.5 to 0.15.6
- [Release notes](https://github.com/astral-sh/ruff-pre-commit/releases )
- [Commits](https://github.com/astral-sh/ruff-pre-commit/compare/v0.15.5...v0.15.6 )
---
updated-dependencies:
- dependency-name: https://github.com/astral-sh/ruff-pre-commit
dependency-version: 0.15.6
dependency-type: direct:production
dependency-group: pre-commit-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-03-17 22:44:34 +00:00
Trenton H
aea2927a02
Feature: Convert Tika parser to the plugin system ( #12333 )
...
* Chore: move Tika parser and tests to paperless/
Move TikaDocumentParser and its tests to the canonical parser package
location, matching the pattern established for TextDocumentParser:
- src/paperless_tika/parsers.py → src/paperless/parsers/tika.py
- src/paperless_tika/tests/test_tika_parser.py → src/paperless/tests/parsers/test_tika_parser.py
- src/paperless_tika/tests/samples/ → src/paperless/tests/samples/tika/
Merge tika fixtures (tika_parser, sample_odt_file, sample_docx_file,
sample_doc_file, sample_broken_odt) into the shared parsers conftest.
Remove the now-empty src/paperless_tika/tests/conftest.py.
Content is unchanged — this commit is rename-only so git history is
preserved on the moved files.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
* Feature: Phase 3 — migrate TikaDocumentParser to ParserProtocol
Refactor TikaDocumentParser to satisfy ParserProtocol without subclassing
the legacy DocumentParser ABC:
- Add ClassVars: name, version, author, url
- Add supported_mime_types() classmethod (12 Office/ODF/RTF MIME types)
- Add score() classmethod — returns None when TIKA_ENABLED is False, 10 otherwise
- can_produce_archive = False (PDF is for display, not an OCR archive)
- requires_pdf_rendition = True (Office formats need PDF for browser display)
- __enter__/__exit__ via ExitStack: TikaClient opened once per parser
lifetime and shared across parse() and extract_metadata() calls
- extract_metadata() falls back to a short-lived TikaClient when called
outside a context manager (legacy view-layer metadata path)
- _convert_to_pdf() uses OutputTypeConfig() to honour the database-stored
ApplicationConfiguration before falling back to the env-var setting
- Rename convert_to_pdf → _convert_to_pdf (private helper)
Update paperless_tika/signals.py shim to import from the new module path
and drop the legacy logging_group/progress_callback kwargs.
Update documents/consumer.py to extend the existing TextDocumentParser
special cases to also cover TikaDocumentParser (parse/get_thumbnail
signatures, __exit__ cleanup).
Add TestTikaParserRegistryInterface (7 tests) covering score(), properties,
and ParserProtocol isinstance check. Update existing tests to use the new
accessor API (get_text, get_date, get_archive_path, _convert_to_pdf).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
* Fix: update remaining imports and move live Tika tests after parser migration
- src/documents/tests/test_parsers.py: import TikaDocumentParser from
paperless.parsers.tika (old paperless_tika.parsers no longer exists)
- git mv paperless_tika/tests/test_live_tika.py →
paperless/tests/parsers/test_live_tika.py to co-locate all Tika tests
with the parser; update import and replace old attribute API
(tika_parser.text/.archive_path) with accessor methods
(get_text/get_archive_path)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
* Fix: satisfy mypy and pyrefly for TikaDocumentParser
Use a TYPE_CHECKING-guarded assert to narrow self._tika_client from
TikaClient | None to TikaClient at the point of use in parse(). The
assert is visible to type checkers (TYPE_CHECKING=True) so both mypy
and pyrefly accept the subsequent attribute accesses without error;
at runtime TYPE_CHECKING is False so the assert never executes and no
ruff S101 suppression is required.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
* Fix: require context manager for TikaDocumentParser; clean up client lifecycle
- consumer.py: call __enter__ for new-style parsers so _tika_client and
_gotenberg_client are set before parse() is invoked
- views.py: use `with parser` (via nullcontext for old-style parsers) in
get_metadata so extract_metadata always runs inside a context manager
- tika.py: GotenbergClient added to ExitStack alongside TikaClient;
inline client creation removed from extract_metadata and _convert_to_pdf;
__exit__ uses ExitStack.close() instead of __exit__ pass-through
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
---------
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-17 15:43:28 -07:00
GitHub Actions
d53dcad4f6
Auto translate strings
2026-03-17 15:24:49 +00:00
shamoon
736b08ad09
Tweak: use cancel instead of discard for app config button
2026-03-17 08:23:08 -07:00
shamoon
ca5879a54e
Fix one test with explicit override
2026-03-16 23:03:31 -07:00
shamoon
4d4f30b5f8
Security: validate outbound llm URLs and block internal endpoints
2026-03-16 22:58:16 -07:00
Trenton H
85fecac401
Fix: don't try to usermod/groupmod when non-root + update docs ( #12365 )
2026-03-17 05:15:03 +00:00
Trenton H
470018c011
Chore: Mocks the celery and Redis pings so we don't wait for their timeout each time ( #12354 )
2026-03-16 20:12:17 +00:00
dependabot[bot]
54679a093a
Chore(deps): Bump pyopenssl from 25.3.0 to 26.0.0 ( #12363 )
...
Bumps [pyopenssl](https://github.com/pyca/pyopenssl ) from 25.3.0 to 26.0.0.
- [Changelog](https://github.com/pyca/pyopenssl/blob/main/CHANGELOG.rst )
- [Commits](https://github.com/pyca/pyopenssl/compare/25.3.0...26.0.0 )
---
updated-dependencies:
- dependency-name: pyopenssl
dependency-version: 26.0.0
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-16 10:36:00 -07:00
dependabot[bot]
58ebcc21be
Chore(deps): Bump pyjwt from 2.10.1 to 2.12.0 ( #12335 )
...
Bumps [pyjwt](https://github.com/jpadilla/pyjwt ) from 2.10.1 to 2.12.0.
- [Release notes](https://github.com/jpadilla/pyjwt/releases )
- [Changelog](https://github.com/jpadilla/pyjwt/blob/master/CHANGELOG.rst )
- [Commits](https://github.com/jpadilla/pyjwt/compare/2.10.1...2.12.0 )
---
updated-dependencies:
- dependency-name: pyjwt
dependency-version: 2.12.0
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-16 09:57:23 -07:00
Trenton H
1caa3eb8aa
Chore: Disables the system checks for management commands in tests and when unnecessary ( #12332 )
2026-03-16 15:10:35 +00:00
shamoon
866c9fd858
Fix: correct merge bulk edit indentation
2026-03-15 23:50:54 -07:00
shamoon
2bb4af2be6
Change: sort custom fields alphabetically by default ( #12358 )
2026-03-15 22:52:02 -07:00
GitHub Actions
6b8ff9763d
Auto translate strings
2026-03-16 01:52:49 +00:00
shamoon
6034f17c87
Format changelog
2026-03-15 18:51:06 -07:00
shamoon
48cd1cce6a
Merge branch 'main' into dev
2026-03-15 18:50:42 -07:00
github-actions[bot]
1e00ad5f30
Documentation: Add v2.20.11 changelog ( #12356 )
...
* Changelog v2.20.11 - GHA
* Update changelog for version 2.20.11
Added security advisory and fixed dropdown list issues.
---------
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: shamoon <4887959+shamoon@users.noreply.github.com >
2026-03-15 18:47:18 -07:00
shamoon
5f26c01c6f
Bump version to 2.20.11
v2.20.11
2026-03-15 17:16:11 -07:00
shamoon
92e133eeb0
Merge branch 'release/v2.20.x'
2026-03-15 17:15:20 -07:00
shamoon
06b2d5102c
Fix GHSA-59xh-5vwx-4c4q
2026-03-15 17:13:08 -07:00
Trenton H
9d69705e26
Feature: Add progress information to the classifier training for a better ux ( #12331 )
2026-03-14 19:53:52 +00:00
GitHub Actions
01abacab52
Auto translate strings
2026-03-14 05:09:13 +00:00
shamoon
88b8f9b326
Chore: bump Angular dependencies to 21.2.x ( #12338 )
2026-03-13 22:07:31 -07:00
dependabot[bot]
365ff99934
Bump ocrmypdf from 16.13.0 to 17.3.0 in the document-processing group ( #12267 )
...
* Bump ocrmypdf from 16.13.0 to 17.3.0 in the document-processing group
Bumps the document-processing group with 1 update: [ocrmypdf](https://github.com/ocrmypdf/OCRmyPDF ).
Updates `ocrmypdf` from 16.13.0 to 17.3.0
- [Release notes](https://github.com/ocrmypdf/OCRmyPDF/releases )
- [Commits](https://github.com/ocrmypdf/OCRmyPDF/compare/v16.13.0...v17.3.0 )
---
updated-dependencies:
- dependency-name: ocrmypdf
dependency-version: 17.3.0
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: document-processing
...
Signed-off-by: dependabot[bot] <support@github.com >
* Updates the argument name for v17
---------
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Trenton H <797416+stumpylog@users.noreply.github.com >
2026-03-13 09:51:21 -07:00
Trenton H
d86cfdb088
Feature: Initial document parser plugin framework ( #12294 )
2026-03-12 21:53:17 +00:00
shamoon
40255cfdbb
Fix: correct dropdown list active color in dark mode ( #12328 )
2026-03-12 14:06:16 -07:00
dependabot[bot]
c2e1085418
Chore(deps): Bump tornado from 6.5.4 to 6.5.5 ( #12327 )
...
Bumps [tornado](https://github.com/tornadoweb/tornado ) from 6.5.4 to 6.5.5.
- [Changelog](https://github.com/tornadoweb/tornado/blob/master/docs/releases.rst )
- [Commits](https://github.com/tornadoweb/tornado/compare/v6.5.4...v6.5.5 )
---
updated-dependencies:
- dependency-name: tornado
dependency-version: 6.5.5
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-12 13:44:41 -07:00
Trenton H
ee0d1a3094
Enhancement: Make the StatusConsumer truly async ( #12298 )
2026-03-12 13:27:35 -07:00
Trenton H
f15394fa5c
Fix: Removes the double exec that prevented migrations from running ( #12317 )
2026-03-12 12:46:12 -07:00
dependabot[bot]
773eb25f7d
Chore(deps): Bump the utilities-minor group across 1 directory with 5 updates ( #12324 )
...
* Chore(deps): Bump the utilities-minor group across 1 directory with 5 updates
Bumps the utilities-minor group with 5 updates in the / directory:
| Package | From | To |
| --- | --- | --- |
| [drf-spectacular-sidecar](https://github.com/tfranzel/drf-spectacular-sidecar ) | `2026.1.1` | `2026.3.1` |
| [filelock](https://github.com/tox-dev/py-filelock ) | `3.20.3` | `3.25.0` |
| [scikit-learn](https://github.com/scikit-learn/scikit-learn ) | `1.7.2` | `1.8.0` |
| [faker](https://github.com/joke2k/faker ) | `40.5.1` | `40.8.0` |
| [pyrefly](https://github.com/facebook/pyrefly ) | `0.54.0` | `0.55.0` |
Updates `drf-spectacular-sidecar` from 2026.1.1 to 2026.3.1
- [Commits](https://github.com/tfranzel/drf-spectacular-sidecar/compare/2026.1.1...2026.3.1 )
Updates `filelock` from 3.20.3 to 3.25.0
- [Release notes](https://github.com/tox-dev/py-filelock/releases )
- [Changelog](https://github.com/tox-dev/filelock/blob/main/docs/changelog.rst )
- [Commits](https://github.com/tox-dev/py-filelock/compare/3.20.3...3.25.0 )
Updates `scikit-learn` from 1.7.2 to 1.8.0
- [Release notes](https://github.com/scikit-learn/scikit-learn/releases )
- [Commits](https://github.com/scikit-learn/scikit-learn/compare/1.7.2...1.8.0 )
Updates `faker` from 40.5.1 to 40.8.0
- [Release notes](https://github.com/joke2k/faker/releases )
- [Changelog](https://github.com/joke2k/faker/blob/master/CHANGELOG.md )
- [Commits](https://github.com/joke2k/faker/compare/v40.5.1...v40.8.0 )
Updates `pyrefly` from 0.54.0 to 0.55.0
- [Release notes](https://github.com/facebook/pyrefly/releases )
- [Commits](https://github.com/facebook/pyrefly/compare/0.54.0...0.55.0 )
---
updated-dependencies:
- dependency-name: drf-spectacular-sidecar
dependency-version: 2026.3.1
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: utilities-minor
- dependency-name: filelock
dependency-version: 3.25.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: utilities-minor
- dependency-name: scikit-learn
dependency-version: 1.8.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: utilities-minor
- dependency-name: faker
dependency-version: 40.8.0
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: utilities-minor
- dependency-name: pyrefly
dependency-version: 0.55.0
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: utilities-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
* Dont know what your problem is dependabot
---------
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: shamoon <4887959+shamoon@users.noreply.github.com >
2026-03-12 12:30:42 -07:00
shamoon
d919c341b1
Fix: clear descendant selections in dropdown when parent toggled ( #12326 )
2026-03-12 11:57:35 -07:00
dependabot[bot]
e2947ccff2
Chore(deps): Bump the pre-commit-dependencies group with 4 updates ( #12323 )
...
* Chore(deps): Bump the pre-commit-dependencies group with 4 updates
---
updated-dependencies:
- dependency-name: https://github.com/codespell-project/codespell
dependency-version: 2.4.2
dependency-type: direct:production
dependency-group: pre-commit-dependencies
- dependency-name: prettier
dependency-version: 3.8.1
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: pre-commit-dependencies
- dependency-name: prettier-plugin-organize-imports
dependency-version: 4.3.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: pre-commit-dependencies
- dependency-name: https://github.com/lovesegfault/beautysh
dependency-version: 6.4.3
dependency-type: direct:production
dependency-group: pre-commit-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com >
* Drop this, it seems more trouble than its worth
* Re-run prek with new prettier
---------
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: shamoon <4887959+shamoon@users.noreply.github.com >
2026-03-12 16:29:57 +00:00
dependabot[bot]
61841a767b
Chore(deps): Bump the actions group with 3 updates ( #12322 )
...
Bumps the actions group with 3 updates: [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action ), [docker/login-action](https://github.com/docker/login-action ) and [actions/setup-node](https://github.com/actions/setup-node ).
Updates `docker/setup-buildx-action` from 3.12.0 to 4.0.0
- [Release notes](https://github.com/docker/setup-buildx-action/releases )
- [Commits](https://github.com/docker/setup-buildx-action/compare/v3.12.0...v4.0.0 )
Updates `docker/login-action` from 3.7.0 to 4.0.0
- [Release notes](https://github.com/docker/login-action/releases )
- [Commits](https://github.com/docker/login-action/compare/v3.7.0...v4.0.0 )
Updates `actions/setup-node` from 6.2.0 to 6.3.0
- [Release notes](https://github.com/actions/setup-node/releases )
- [Commits](https://github.com/actions/setup-node/compare/v6.2.0...v6.3.0 )
---
updated-dependencies:
- dependency-name: docker/setup-buildx-action
dependency-version: 4.0.0
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: actions
- dependency-name: docker/login-action
dependency-version: 4.0.0
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: actions
- dependency-name: actions/setup-node
dependency-version: 6.3.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: actions
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Trenton H <797416+stumpylog@users.noreply.github.com >
2026-03-12 09:04:22 -07:00
GitHub Actions
15db023caa
Auto translate strings
2026-03-12 15:44:21 +00:00
shamoon
45b363659e
Chore: mark document detail email action as deprecated ( #12308 )
2026-03-12 15:42:14 +00:00
Trenton H
7494161c95
Add dependency groups for pre-commit dependencies
2026-03-12 08:04:21 -07:00
Trenton H
5331312699
Remove cooldown for pre-commit updates (it's not supported)
...
Removed the default cooldown period for pre-commit updates.
2026-03-12 07:59:27 -07:00
Trenton H
b5a002b8ed
Chore: Enable dependabot for pre-commit ( #12305 )
2026-03-12 07:52:43 -07:00
shamoon
dd8573242d
Update api version for frontend dev server
2026-03-12 01:24:38 -07:00
Trenton H
86fa74c115
Fix: Postgres selection, DBENGINE and migrations ( #12299 )
2026-03-11 11:54:24 -07:00
shamoon
ba0a80a8ad
Fix: prevent wrapping with larger amounts of tags on small cards, reset moreTags setting to correct count ( #12302 )
2026-03-11 07:39:32 -07:00
shamoon
b7b9e83f37
Fix (dev): include DatePipe in BulkEditor unit test
2026-03-11 00:01:06 -07:00
GitHub Actions
217b5df591
Auto translate strings
2026-03-10 23:47:25 +00:00
shamoon
3efc9a5733
Fix: use effective content for matching and suggestion content ( #12293 )
2026-03-10 23:45:56 +00:00
shamoon
e19f341974
Fix: Pin filelock to ~=3.20.3 ( #12297 )
2026-03-10 13:38:23 -07:00
GitHub Actions
2b4ea570ef
Auto translate strings
2026-03-10 18:58:20 +00:00
shamoon
86573fc1a0
Chore: separate actions from bulk edit endpoint ( #12286 )
2026-03-10 18:55:36 +00:00
dependabot[bot]
3856ec19c0
docker(deps): bump astral-sh/uv ( #12265 )
...
Bumps [astral-sh/uv](https://github.com/astral-sh/uv ) from 0.10.7-python3.12-trixie-slim to 0.10.8-python3.12-trixie-slim.
- [Release notes](https://github.com/astral-sh/uv/releases )
- [Changelog](https://github.com/astral-sh/uv/blob/main/CHANGELOG.md )
- [Commits](https://github.com/astral-sh/uv/compare/0.10.7...0.10.8 )
---
updated-dependencies:
- dependency-name: astral-sh/uv
dependency-version: 0.10.8-python3.12-trixie-slim
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-10 17:27:06 +00:00
shamoon
60319c6d37
Fix: prevent stale db filename during workflow actions ( #12289 )
2026-03-09 19:32:46 -07:00
GitHub Actions
1221e7f21c
Auto translate strings
2026-03-09 22:37:56 +00:00