]> git.ipfire.org Git - thirdparty/paperless-ngx.git/commitdiff
Merge classifier
authorshamoon <4887959+shamoon@users.noreply.github.com>
Tue, 8 Apr 2025 23:33:12 +0000 (16:33 -0700)
committershamoon <4887959+shamoon@users.noreply.github.com>
Tue, 8 Apr 2025 23:33:12 +0000 (16:33 -0700)
src/documents/caching.py
src/documents/management/commands/document_retagger.py
src/documents/signals/handlers.py
src/documents/tasks.py
src/documents/tests/test_api_documents.py
src/documents/tests/test_classifier.py
src/paperless/classifier.py [moved from src/documents/classifier.py with 100% similarity]
src/paperless/conditionals.py
src/paperless/consumer.py
src/paperless/matching.py
src/paperless/views.py

index a8c3bf923474d682e9211e85d4bc9ceb647fd87f..b8afab1d2302bbaacca9d54c72e72edda48a9271 100644 (file)
@@ -11,7 +11,7 @@ from django.core.cache import cache
 from paperless.models import Document
 
 if TYPE_CHECKING:
-    from documents.classifier import DocumentClassifier
+    from paperless.classifier import DocumentClassifier
 
 logger = logging.getLogger("paperless.caching")
 
@@ -53,7 +53,7 @@ def get_suggestion_cache(document_id: int) -> SuggestionCacheData | None:
     The classifier needs to be matching in format and hash and the suggestions need to
     have been cached once.
     """
-    from documents.classifier import DocumentClassifier
+    from paperless.classifier import DocumentClassifier
 
     doc_key = get_suggestion_cache_key(document_id)
     cache_hits = cache.get_many([CLASSIFIER_VERSION_KEY, CLASSIFIER_HASH_KEY, doc_key])
index de51f2368c90c89e35ae38669eb82b014e9553dc..50bcf979b272630ee98a7e104f0dc28ea6c9d3b7 100644 (file)
@@ -3,12 +3,12 @@ import logging
 import tqdm
 from django.core.management.base import BaseCommand
 
-from documents.classifier import load_classifier
 from documents.management.commands.mixins import ProgressBarMixin
 from documents.signals.handlers import set_correspondent
 from documents.signals.handlers import set_document_type
 from documents.signals.handlers import set_storage_path
 from documents.signals.handlers import set_tags
+from paperless.classifier import load_classifier
 from paperless.models import Document
 
 logger = logging.getLogger("paperless.management.retagger")
index cdfb6437e846530268790d8e6c3f397f5238828e..e66b4be91518fca43bd55598ae7151eca5953b60 100644 (file)
@@ -49,7 +49,7 @@ from paperless.permissions import set_permissions_for_object
 if TYPE_CHECKING:
     from pathlib import Path
 
-    from documents.classifier import DocumentClassifier
+    from paperless.classifier import DocumentClassifier
     from paperless.data_models import ConsumableDocument
     from paperless.data_models import DocumentMetadataOverrides
 
index c2ec82b4cf424cc8f4a0a4c1223b9ea4e5f9e842..bce31777325e4547b5de43f7bd39862af0a0ba82 100644 (file)
@@ -21,8 +21,6 @@ from whoosh.writing import AsyncWriter
 
 from documents import sanity_checker
 from documents.caching import clear_document_caches
-from documents.classifier import DocumentClassifier
-from documents.classifier import load_classifier
 from documents.file_handling import create_source_path_directory
 from documents.file_handling import generate_unique_filename
 from documents.parsers import DocumentParser
@@ -37,6 +35,8 @@ from documents.signals.handlers import cleanup_document_deletion
 from documents.signals.handlers import run_workflows
 from paperless import index
 from paperless.barcodes import BarcodePlugin
+from paperless.classifier import DocumentClassifier
+from paperless.classifier import load_classifier
 from paperless.consumer import ConsumerPlugin
 from paperless.consumer import WorkflowTriggerPlugin
 from paperless.data_models import ConsumableDocument
index fe388866a3fdc75b2bb5704c13406bb51f52ae39..34f5abc9c246376d2cce8d6965462c93244ce7ba 100644 (file)
@@ -1636,7 +1636,7 @@ class TestDocumentApi(DirectoriesMixin, DocumentConsumeDelayMixin, APITestCase):
         """
 
         # setup the cache how the classifier does it
-        from documents.classifier import DocumentClassifier
+        from paperless.classifier import DocumentClassifier
 
         settings.MODEL_FILE.touch()
 
index bb349611bfe46bee3862948eece76370a37bd461..2e7d3232b13b3e1fcfcc5d4c5200464cd361305d 100644 (file)
@@ -8,11 +8,11 @@ from django.conf import settings
 from django.test import TestCase
 from django.test import override_settings
 
-from documents.classifier import ClassifierModelCorruptError
-from documents.classifier import DocumentClassifier
-from documents.classifier import IncompatibleClassifierVersionError
-from documents.classifier import load_classifier
 from documents.tests.utils import DirectoriesMixin
+from paperless.classifier import ClassifierModelCorruptError
+from paperless.classifier import DocumentClassifier
+from paperless.classifier import IncompatibleClassifierVersionError
+from paperless.classifier import load_classifier
 from paperless.models import Correspondent
 from paperless.models import Document
 from paperless.models import DocumentType
index d843391cee116fbbf23cf294abdc303c49ee2b4f..8686888d142783376f5bfb27ca9870c2f0a0dddb 100644 (file)
@@ -10,7 +10,7 @@ from documents.caching import CLASSIFIER_HASH_KEY
 from documents.caching import CLASSIFIER_MODIFIED_KEY
 from documents.caching import CLASSIFIER_VERSION_KEY
 from documents.caching import get_thumbnail_modified_key
-from documents.classifier import DocumentClassifier
+from paperless.classifier import DocumentClassifier
 from paperless.models import Document
 
 
index 50a9eb9072543e3d30c5bc5b6501eb58c65ca3e9..834fae6a0b1923fa9fb2401af8511352bf5f2bf4 100644 (file)
@@ -15,7 +15,6 @@ from django.utils import timezone
 from filelock import FileLock
 from rest_framework.reverse import reverse
 
-from documents.classifier import load_classifier
 from documents.file_handling import create_source_path_directory
 from documents.file_handling import generate_unique_filename
 from documents.parsers import DocumentParser
@@ -32,6 +31,7 @@ from documents.signals import document_consumption_finished
 from documents.signals import document_consumption_started
 from documents.signals.handlers import run_workflows
 from documents.templating.workflows import parse_w_workflow_placeholders
+from paperless.classifier import load_classifier
 from paperless.data_models import ConsumableDocument
 from paperless.data_models import DocumentMetadataOverrides
 from paperless.loggers import LoggingMixin
index 5be8fb447c2ede02c8bd5c19570f372a84f4d6a9..7d6f0cd2620847014f5fbfb66db983dce96d4339 100644 (file)
@@ -18,7 +18,7 @@ from paperless.models import WorkflowTrigger
 from paperless.permissions import get_objects_for_user_owner_aware
 
 if TYPE_CHECKING:
-    from documents.classifier import DocumentClassifier
+    from paperless.classifier import DocumentClassifier
 
 logger = logging.getLogger("paperless.matching")
 
index 9e9567d4e7cd61430d75014f1d5625566194ef18..e8d00ac14aebfaed2179a1c0a75600eff7a74276 100644 (file)
@@ -98,7 +98,6 @@ from documents.caching import refresh_metadata_cache
 from documents.caching import refresh_suggestions_cache
 from documents.caching import set_metadata_cache
 from documents.caching import set_suggestions_cache
-from documents.classifier import load_classifier
 from documents.filters import CorrespondentFilterSet
 from documents.filters import CustomFieldFilterSet
 from documents.filters import DocumentFilterSet
@@ -125,6 +124,7 @@ from paperless import bulk_edit
 from paperless import index
 from paperless import version
 from paperless.celery import app as celery_app
+from paperless.classifier import load_classifier
 from paperless.conditionals import metadata_etag
 from paperless.conditionals import metadata_last_modified
 from paperless.conditionals import preview_etag