]> git.ipfire.org Git - thirdparty/paperless-ngx.git/commitdiff
If override_date is provided, coerce it into a datetime 2023/head
authorTrenton H <797416+stumpylog@users.noreply.github.com>
Tue, 22 Nov 2022 18:11:27 +0000 (10:11 -0800)
committerTrenton H <797416+stumpylog@users.noreply.github.com>
Tue, 22 Nov 2022 18:11:27 +0000 (10:11 -0800)
src/documents/tasks.py

index 667c3d9dfc43466ae7768154052ec95c7fdb5f47..f5bad665ad012ed0ea3fe208a03248176ea34e59 100644 (file)
@@ -3,6 +3,7 @@ import logging
 import os
 import shutil
 import uuid
+from datetime import datetime
 from pathlib import Path
 from typing import Type
 
@@ -98,6 +99,14 @@ def consume_file(
 
     path = Path(path).resolve()
 
+    # Celery converts this to a string, but everything expects a datetime
+    # Long term solution is to not use JSON for the serializer but pickle instead
+    if override_created is not None and isinstance(override_created, str):
+        try:
+            override_created = datetime.fromisoformat(override_created)
+        except Exception:
+            pass
+
     # check for separators in current document
     if settings.CONSUMER_ENABLE_BARCODES: