diff --git a/pyproject.toml b/pyproject.toml index b1e0285d0..6f11f9cee 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -200,9 +200,6 @@ lint.per-file-ignores."docker/wait-for-redis.py" = [ "INP001", "T201", ] -lint.per-file-ignores."src/documents/file_handling.py" = [ - "PTH", -] # TODO Enable & remove lint.per-file-ignores."src/documents/management/commands/document_consumer.py" = [ "PTH", ] # TODO Enable & remove @@ -254,6 +251,9 @@ lint.per-file-ignores."src/documents/views.py" = [ lint.per-file-ignores."src/paperless/checks.py" = [ "PTH", ] # TODO Enable & remove +lint.per-file-ignores."src/paperless/file_handling.py" = [ + "PTH", +] # TODO Enable & remove lint.per-file-ignores."src/paperless/settings.py" = [ "PTH", ] # TODO Enable & remove diff --git a/src/documents/management/commands/document_exporter.py b/src/documents/management/commands/document_exporter.py index 27abf7a7d..519d294be 100644 --- a/src/documents/management/commands/document_exporter.py +++ b/src/documents/management/commands/document_exporter.py @@ -32,14 +32,14 @@ if TYPE_CHECKING: if settings.AUDIT_LOG_ENABLED: from auditlog.models import LogEntry -from documents.file_handling import delete_empty_directories -from documents.file_handling import generate_filename from documents.management.commands.mixins import CryptMixin from documents.settings import EXPORTER_ARCHIVE_NAME from documents.settings import EXPORTER_FILE_NAME from documents.settings import EXPORTER_THUMBNAIL_NAME from paperless import version from paperless.db import GnuPG +from paperless.file_handling import delete_empty_directories +from paperless.file_handling import generate_filename from paperless.models import ApplicationConfiguration from paperless.models import Correspondent from paperless.models import CustomField diff --git a/src/documents/management/commands/document_importer.py b/src/documents/management/commands/document_importer.py index 5ca9cece1..1120e7d1b 100644 --- a/src/documents/management/commands/document_importer.py +++ b/src/documents/management/commands/document_importer.py @@ -21,7 +21,6 @@ from django.db.models.signals import m2m_changed from django.db.models.signals import post_save from filelock import FileLock -from documents.file_handling import create_source_path_directory from documents.management.commands.mixins import CryptMixin from documents.parsers import run_convert from documents.settings import EXPORTER_ARCHIVE_NAME @@ -31,6 +30,7 @@ from documents.settings import EXPORTER_THUMBNAIL_NAME from documents.signals.handlers import check_paths_and_prune_custom_fields from documents.signals.handlers import update_filename_and_move_files from paperless import version +from paperless.file_handling import create_source_path_directory from paperless.models import Correspondent from paperless.models import CustomField from paperless.models import CustomFieldInstance diff --git a/src/documents/signals/handlers.py b/src/documents/signals/handlers.py index e66b4be91..98ef65978 100644 --- a/src/documents/signals/handlers.py +++ b/src/documents/signals/handlers.py @@ -24,12 +24,12 @@ from filelock import FileLock from guardian.shortcuts import remove_perm from documents.caching import clear_document_caches -from documents.file_handling import create_source_path_directory -from documents.file_handling import delete_empty_directories -from documents.file_handling import generate_unique_filename from documents.mail import send_email from documents.templating.workflows import parse_w_workflow_placeholders from paperless import matching +from paperless.file_handling import create_source_path_directory +from paperless.file_handling import delete_empty_directories +from paperless.file_handling import generate_unique_filename from paperless.models import Correspondent from paperless.models import CustomField from paperless.models import CustomFieldInstance diff --git a/src/documents/tasks.py b/src/documents/tasks.py index bce317773..a3b37f5a8 100644 --- a/src/documents/tasks.py +++ b/src/documents/tasks.py @@ -21,8 +21,6 @@ from whoosh.writing import AsyncWriter from documents import sanity_checker from documents.caching import clear_document_caches -from documents.file_handling import create_source_path_directory -from documents.file_handling import generate_unique_filename from documents.parsers import DocumentParser from documents.parsers import get_parser_class_for_mime_type from documents.plugins.base import ConsumeTaskPlugin @@ -42,6 +40,8 @@ from paperless.consumer import WorkflowTriggerPlugin from paperless.data_models import ConsumableDocument from paperless.data_models import DocumentMetadataOverrides from paperless.double_sided import CollatePlugin +from paperless.file_handling import create_source_path_directory +from paperless.file_handling import generate_unique_filename from paperless.models import Correspondent from paperless.models import CustomFieldInstance from paperless.models import Document diff --git a/src/documents/tests/test_file_handling.py b/src/documents/tests/test_file_handling.py index 3ba06ed64..207e9cf3f 100644 --- a/src/documents/tests/test_file_handling.py +++ b/src/documents/tests/test_file_handling.py @@ -13,12 +13,12 @@ from django.test import TestCase from django.test import override_settings from django.utils import timezone -from documents.file_handling import create_source_path_directory -from documents.file_handling import delete_empty_directories -from documents.file_handling import generate_filename from documents.tasks import empty_trash from documents.tests.utils import DirectoriesMixin from documents.tests.utils import FileSystemAssertsMixin +from paperless.file_handling import create_source_path_directory +from paperless.file_handling import delete_empty_directories +from paperless.file_handling import generate_filename from paperless.models import Correspondent from paperless.models import CustomField from paperless.models import CustomFieldInstance diff --git a/src/documents/tests/test_management.py b/src/documents/tests/test_management.py index fede4318b..902ec75a1 100644 --- a/src/documents/tests/test_management.py +++ b/src/documents/tests/test_management.py @@ -13,10 +13,10 @@ from django.core.management import call_command from django.test import TestCase from django.test import override_settings -from documents.file_handling import generate_filename from documents.tasks import update_document_content_maybe_archive_file from documents.tests.utils import DirectoriesMixin from documents.tests.utils import FileSystemAssertsMixin +from paperless.file_handling import generate_filename from paperless.models import Document sample_file = os.path.join(os.path.dirname(__file__), "samples", "simple.pdf") diff --git a/src/paperless/consumer.py b/src/paperless/consumer.py index 834fae6a0..774905ce9 100644 --- a/src/paperless/consumer.py +++ b/src/paperless/consumer.py @@ -15,8 +15,6 @@ from django.utils import timezone from filelock import FileLock from rest_framework.reverse import reverse -from documents.file_handling import create_source_path_directory -from documents.file_handling import generate_unique_filename from documents.parsers import DocumentParser from documents.parsers import ParseError from documents.parsers import get_parser_class_for_mime_type @@ -34,6 +32,8 @@ 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.file_handling import create_source_path_directory +from paperless.file_handling import generate_unique_filename from paperless.loggers import LoggingMixin from paperless.models import Correspondent from paperless.models import CustomField diff --git a/src/documents/file_handling.py b/src/paperless/file_handling.py similarity index 100% rename from src/documents/file_handling.py rename to src/paperless/file_handling.py