Trenton Holmes
34f2385df4
Fix: resolve silent duplication from rebase onto fix/bulk_edit
...
Rebasing onto origin/fix/bulk_edit (PR #14083 , which independently
bounds the edit_pdf doc index via manual checks) applied cleanly with
no reported conflicts, but left two copies of the same "doc index is
out of bounds" check back to back in both EditPdfDocumentsSerializer
.validate and BulkEditSerializer._validate_parameters_edit_pdf --
#14083 's own `< 0 or >= len(operations)` check is now fully redundant
here since PdfEditOperationSerializer.doc already has min_value=0.
Removed the redundant second check in both methods.
Also split the merged test_edit_pdf_invalid_params subtest: #14083 's
loop asserted the same "doc index is out of bounds" message for both
doc=-1 and doc=2**32, but with min_value=0 in place, -1 is now
rejected earlier by the field itself with a different message.
2026-09-13 15:06:52 -07:00
Trenton Holmes and Claude Sonnet 5
1ff18656b7
Fix: type edit_pdf operations via a nested serializer
...
operations was a plain ListField(required=True) with no child=, so
each element was untyped, and both EditPdfDocumentsSerializer.validate
and BulkEditSerializer._validate_parameters_edit_pdf hand-checked
page/rotate/doc with isinstance(). This let a negative doc index
through silently (used as a wrapping Python list index instead of
being rejected), an empty operations list crashed
`max(op.get("doc", 0) for op in operations)` with update_document=True,
and an out-of-range doc index could drive pikepdf.new() to allocate an
unbounded number of objects.
Added PdfEditOperationSerializer (page: IntegerField(min_value=1),
rotate/doc: IntegerField, doc: min_value=0) and used it as
ListField(child=..., allow_empty=False) in both places, plus a
doc-index bound of len(operations) shared by both validate() methods.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com >
2026-09-13 15:02:31 -07:00
shamoon
f5a7ab062e
Fix: update some api global perms inconsistencies ( #14086 )
2026-09-13 15:02:31 -07:00
shamoon
9425f53d5c
fix: validate PDF output doc indexes in bulk edit
2026-09-12 15:20:40 -07:00
shamoon
9a47b20d2a
Enhancement: duplicates filter ( #13994 )
2026-09-07 20:46:49 +00:00
shamoon
c93c996edf
Remote ocr reprocess ( #13636 )
...
* Backend stuff for remote ocr reprocess, add to bulk edit pass in from ui settings
* Ok, frontend reprocess remote option
* Docs
2026-08-24 14:43:05 -07:00
shamoon
ef49414162
Fix: reject bulk edit permissions requests without the correct key ( #13563 )
2026-08-05 14:49:15 +00:00
shamoon
e37ef5aa71
Fix: validate custom field values in bulk operations ( #13457 )
2026-07-31 15:57:17 +00:00
shamoon
8aab34ea73
Security (beta): two small permission check fixes ( #13186 )
2026-07-21 16:50:28 +00:00
shamoon
a76b6b826c
Fix (dev): resolve tantivy search-filtered documents in bulk edit ( #12705 )
2026-05-04 14:34:08 -07:00
Trenton H
14fe520319
Chore: Update typing and baselines again ( #12641 )
...
a
2026-04-28 09:28:05 -07:00
Trenton H
fbf4e32646
Chore: Converts all call sites and test asserts to use apply_async and headers ( #12591 )
2026-04-20 11:40:04 -07:00
shamoon
d2328b776a
Performance: support bulk edit without id lists ( #12355 )
2026-03-31 18:23:28 +00:00
shamoon
0f84af27d0
Merge branch 'main' into dev
...
# Conflicts:
# docs/setup.md
# src-ui/src/main.ts
# src/documents/tests/test_api_bulk_edit.py
# src/documents/tests/test_api_custom_fields.py
# src/documents/tests/test_api_search.py
# src/documents/tests/test_api_status.py
# src/documents/tests/test_workflows.py
# src/paperless_mail/tests/test_api.py
2026-03-21 02:12:19 -07:00
shamoon
f84e0097e5
Fix validate document link targets
2026-03-21 00:55:36 -07:00
shamoon
86573fc1a0
Chore: separate actions from bulk edit endpoint ( #12286 )
2026-03-10 18:55:36 +00:00
shamoon
731448a8f9
Fixhancement: support version-specific edits ( #12233 )
2026-03-06 11:59:26 -08:00
shamoon
f65807b906
Merge branch 'main' into dev
...
# Conflicts:
# docs/setup.md
# src-ui/src/app/components/manage/document-attributes/management-list/management-list.component.ts
# src/documents/tests/test_api_documents.py
2026-02-28 02:31:20 -08:00
shamoon
c7f83212a3
Enforce on selection_data too
2026-02-28 01:27:40 -08:00
Sebastian Steinbeißer
3b5ffbf9fa
Chore(mypy): Annotate None returns for typing improvements ( #11213 )
2026-02-02 08:44:12 -08:00
shamoon
5b1e66be91
Feature: password removal action ( #11656 )
2026-01-08 21:36:11 +00:00
dependabot[bot] and Trenton H
4ddac79f0f
Chore(deps): Bump the small-changes group across 1 directory with 3 updates ( #10880 )
...
* Chore(deps): Bump the small-changes group across 1 directory with 3 updates
Bumps the small-changes group with 3 updates in the / directory: [ocrmypdf](https://github.com/ocrmypdf/OCRmyPDF ), [mkdocs-material](https://github.com/squidfunk/mkdocs-material ) and [ruff](https://github.com/astral-sh/ruff ).
Updates `ocrmypdf` from 16.10.4 to 16.11.0
- [Release notes](https://github.com/ocrmypdf/OCRmyPDF/releases )
- [Changelog](https://github.com/ocrmypdf/OCRmyPDF/blob/main/docs/release_notes.md )
- [Commits](https://github.com/ocrmypdf/OCRmyPDF/compare/v16.10.4...v16.11.0 )
Updates `mkdocs-material` from 9.6.19 to 9.6.20
- [Release notes](https://github.com/squidfunk/mkdocs-material/releases )
- [Changelog](https://github.com/squidfunk/mkdocs-material/blob/master/CHANGELOG )
- [Commits](https://github.com/squidfunk/mkdocs-material/compare/9.6.19...9.6.20 )
Updates `ruff` from 0.12.12 to 0.13.0
- [Release notes](https://github.com/astral-sh/ruff/releases )
- [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md )
- [Commits](https://github.com/astral-sh/ruff/compare/0.12.12...0.13.0 )
---
updated-dependencies:
- dependency-name: ocrmypdf
dependency-version: 16.11.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: small-changes
- dependency-name: mkdocs-material
dependency-version: 9.6.20
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: small-changes
- dependency-name: ruff
dependency-version: 0.13.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: small-changes
...
Signed-off-by: dependabot[bot] <support@github.com >
* Applies the new Ruff rule for unpacking
---------
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 >
2025-09-17 13:16:34 -07:00
shamoon
6d72ee795f
Feature: PDF editor ( #10318 )
2025-08-11 17:29:48 +00:00
shamoon
fc68f55d1a
Documentation: correct modify_tags param requirement
2025-02-14 08:20:43 -08:00
shamoon
9e4bc05a24
Fix: include global perms for bulk edit endpoint ( #8468 )
2024-12-12 15:38:54 +00:00
shamoon
e4f69dc945
Feature: bulk edit custom field values ( #8428 )
2024-12-09 17:35:49 +00:00
shamoon
dbccd13915
Enhancement: History (audit log) for bulk edit operations ( #8196 )
2024-12-01 17:53:52 +00:00
shamoon
a64d457c30
Enhancement: use request user as owner of split / merge docs ( #7112 )
2024-06-27 13:46:49 -07:00
Dominik Bruhn and shamoon
d1ac15baa9
Enhancement: support delete originals after split / merge ( #6935 )
...
---------
Co-authored-by: shamoon <4887959+shamoon@users.noreply.github.com >
2024-06-08 11:29:03 -07:00
shamoon
3e62f13f96
Enhancement: delete pages PDF action ( #6772 )
2024-05-22 23:01:15 +00:00
Trenton H
622f624132
Chore: Change the code formatter to Ruff ( #6756 )
...
* Changing the formatting to ruff-format
* Replaces references to black to ruff or ruff format, removes black from dependencies
2024-05-18 02:26:50 +00:00
Trenton H
7be7185418
Handcrafts SQL queries a little more to reduce the query count and/or the amount of returned data ( #6489 )
2024-04-30 07:37:09 -07:00
shamoon
63e1f9f5d3
Feature: custom fields filtering & bulk editing ( #6484 )
2024-04-26 15:10:03 -07:00
shamoon
4af8070450
Feature: PDF actions - merge, split & rotate ( #6094 )
2024-03-25 18:41:24 -07:00
shamoon
ef4f589094
Change: dont require empty bulk edit parameters ( #6059 )
2024-03-09 07:39:35 -08:00
shamoon
454098630b
Enhancement: mergeable bulk edit permissions ( #5508 )
2024-02-01 19:56:57 +00:00
shamoon and Trenton H
e2d25a7a09
Chore: reorganize api tests ( #4935 )
...
* Move permissions-related API tests
* Move bulk-edit-related API tests
* Move bulk-download-related API tests
* Move uisettings-related API tests
* Move remoteversion-related API tests
* Move tasks API tests
* Move object-related API tests
* Move consumption-template-related API tests
* Rename pared-down documents API test file
Co-Authored-By: Trenton H <797416+stumpylog@users.noreply.github.com >
2023-12-12 04:08:51 +00:00