Commit Graph
33 Commits
Author SHA1 Message Date
stumpylog e46e384b80 Test: fold the DocumentMetadataOverrides batching test into test_api_custom_fields.py instead of a new file 2026-09-10 13:10:10 -07:00
stumpylog 8d03b70d9b Handles a bad client sending malformed JSON or non-int primary keys 2026-09-10 13:10:10 -07:00
Trenton Holmes 6d3891ea84 Perf: reuse resolved CustomField objects across drf-writable-nested's per-item revalidation
drf-writable-nested's update_or_create_reverse_relations rebuilds a
fresh serializer -- and fresh field instances -- per custom_fields item
while matching existing vs. new instances during save(), so the
per-instance lookup cache alone only helped the first validation pass.
It passes the same context dict (by reference) to every one of those
serializers, so stash resolved CustomField objects there instead:
later passes reuse them for free rather than re-querying.
2026-09-10 13:10:10 -07:00
Trenton Holmes 93c9d5a6d9 Perf: batch CustomField lookups when validating a document's custom_fields
DocumentSerializer.custom_fields validates each item's field id via a
plain PrimaryKeyRelatedField, which issues one SELECT per custom field
per validation pass (discussion #13690). Batch-resolve all field ids in
one query and cache them on the field instance so per-item validation
is free instead of re-querying.
2026-09-10 13:10:10 -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 8f036c9521 Merge branch 'main' into dev
# Conflicts:
#	docs/usage.md
#	src/documents/signals/handlers.py
#	src/documents/tests/test_api_documents.py
#	src/documents/views.py
2026-04-14 15:11:23 -07:00
shamoon 4629bbf83e Enhancement: add view_global_statistics and view_system_status permissions (#12530) 2026-04-08 15:39:47 +00:00
shamoon 3292a0e7cc Fix: validate date CF value in serializer (#12410) 2026-03-21 08:49:52 -07: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 3e32e90355 Breaking: drop support for api versions < 9 (#12284) 2026-03-09 22:36:22 +00:00
Sebastian Steinbeißer 3b5ffbf9fa Chore(mypy): Annotate None returns for typing improvements (#11213) 2026-02-02 08:44:12 -08:00
shamoon 0c43b50f01 Fix: change async handling of select custom field updates (#11490) 2025-11-30 03:54:15 +00:00
shamoon cf5ac596ed Performance: make move files after select custom field change async (#11391) 2025-11-19 15:21:33 +00:00
david-loe 7b175ec1b3 Development: fix correct test delete select option (#11406) 2025-11-18 19:28:52 +00:00
shamoon 270e70a958 Fix: backwards-compatible versioned API response for custom field select fields (#8912) 2025-01-27 07:34:23 -08:00
shamoon 8e6de2790e Fix: do not accept empty string for doc link value via API (#8596) 2025-01-03 15:16:00 -08:00
shamoon 0fc1860d4c Enhancement: use stable unique IDs for custom field select options (#8299) 2024-12-02 04:15:38 +00:00
shamoon 35907313e8 Fix: allow removing dead document links from UI, validate via API (#8081) 2024-10-28 10:39:17 -07:00
shamoon 54293bedb1 Enhancement: management list button improvements (#7848) 2024-10-03 23:00:28 -07:00
shamoon 15554322dd Enhancement: allow specifying default currency for Monetary custom field (#7381) 2024-08-05 17:02:03 -07:00
shamoon 4ad4862641 Feature: select custom field type (#7167) 2024-07-09 07:57:07 -07:00
shamoon 6ea25a96a3 Fix: make backend monetary validation accept unpadded decimals (#6626) 2024-05-07 21:38:52 +00:00
shamoon bf11dc8d1b Enhancement: better monetary field with currency code (#5858) 2024-02-27 16:26:06 +00:00
shamoon 6b34f592df Fix: Explicit validation of custom field name unique constraint (#5647) 2024-02-03 20:51:26 +00:00
shamoon 3115106dc1 Enhancement: add basic filters for listing custom fields (#5257) 2024-01-06 03:04:31 +00:00
shamoon c5d622279c Fix symmetric doc links with target value None (#5187) 2023-12-31 07:56:26 -08:00
shamoonandTrenton H da058b915b Enhancement: improve validation of custom field values (#5166)
* Support all URI schemes

* Reworks custom field value validation to check and return a 400 error code in more cases and support more URL looking items, not just some basic schemes

* Fixes a spelling error in the message

---------

Co-authored-by: Trenton H <797416+stumpylog@users.noreply.github.com>
2023-12-29 14:45:29 -08:00
shamoon b1f6f52486 Fix: Dont allow null custom_fields property via API (#5063) 2023-12-19 21:53:56 +00:00
shamoon 638d9970fd Enhancement: symmetric document links (#4907) 2023-12-19 13:43:50 -08:00
shamoon 4481f12e32 Enhancement: implement document link custom field (#4799) 2023-12-05 08:16:56 -08:00
shamoonandTrenton H 10729f0362 Feature: Implement custom fields for documents (#4502)
Adds custom fields of certain data types, attachable to documents and searchable

Co-Authored-By: Trenton H <797416+stumpylog@users.noreply.github.com>
2023-11-05 17:27:23 -08:00