Chore(mypy): Annotate None returns for typing improvements (#11213)

This commit is contained in:
Sebastian Steinbeißer
2026-02-02 17:44:12 +01:00
committed by GitHub
parent a9c0b06e28
commit 3b5ffbf9fa
113 changed files with 1598 additions and 1510 deletions

View File

@@ -9,7 +9,7 @@ class Command(BaseCommand):
# This code is taken almost entirely from https://github.com/wagtail/wagtail/pull/11912 with all credit to the original author.
help = "Converts UUID columns from char type to the native UUID type used in MariaDB 10.7+ and Django 5.0+."
def convert_field(self, model, field_name, *, null=False):
def convert_field(self, model, field_name, *, null=False) -> None:
if model._meta.get_field(field_name).model != model: # pragma: no cover
# Field is inherited from a parent model
return

View File

@@ -67,7 +67,7 @@ class Command(CryptMixin, BaseCommand):
"easy import."
)
def add_arguments(self, parser):
def add_arguments(self, parser) -> None:
parser.add_argument("target")
parser.add_argument(
@@ -186,7 +186,7 @@ class Command(CryptMixin, BaseCommand):
help="If provided, is used to encrypt sensitive data in the export",
)
def handle(self, *args, **options):
def handle(self, *args, **options) -> None:
self.target = Path(options["target"]).resolve()
self.split_manifest: bool = options["split_manifest"]
self.compare_checksums: bool = options["compare_checksums"]
@@ -244,7 +244,7 @@ class Command(CryptMixin, BaseCommand):
if self.zip_export and temp_dir is not None:
temp_dir.cleanup()
def dump(self):
def dump(self) -> None:
# 1. Take a snapshot of what files exist in the current export folder
for x in self.target.glob("**/*"):
if x.is_file():
@@ -498,7 +498,7 @@ class Command(CryptMixin, BaseCommand):
self,
content: list[dict] | dict,
target: Path,
):
) -> None:
"""
Writes the source content to the target json file.
If --compare-json arg was used, don't write to target file if
@@ -528,7 +528,7 @@ class Command(CryptMixin, BaseCommand):
source: Path,
source_checksum: str | None,
target: Path,
):
) -> None:
"""
Copies the source to the target, if target doesn't exist or the target doesn't seem to match
the source attributes

View File

@@ -246,7 +246,7 @@ class Command(CryptMixin, BaseCommand):
self.source = Path(tmp_dir)
self._run_import()
def _run_import(self):
def _run_import(self) -> None:
self.pre_check()
self.load_metadata()
self.load_manifest_files()

View File

@@ -12,7 +12,7 @@ from documents.models import Document
from documents.parsers import get_parser_class_for_mime_type
def _process_document(doc_id):
def _process_document(doc_id) -> None:
document: Document = Document.objects.get(id=doc_id)
parser_class = get_parser_class_for_mime_type(document.mime_type)
@@ -37,7 +37,7 @@ def _process_document(doc_id):
class Command(MultiProcessMixin, ProgressBarMixin, BaseCommand):
help = "This will regenerate the thumbnails for all documents."
def add_arguments(self, parser):
def add_arguments(self, parser) -> None:
parser.add_argument(
"-d",
"--document",

View File

@@ -25,7 +25,7 @@ class Command(BaseCommand):
parser.formatter_class = RawTextHelpFormatter
return parser
def handle(self, *args, **options):
def handle(self, *args, **options) -> None:
username = os.getenv("PAPERLESS_ADMIN_USER", "admin")
mail = os.getenv("PAPERLESS_ADMIN_MAIL", "root@localhost")
password = os.getenv("PAPERLESS_ADMIN_PASSWORD")

View File

@@ -27,7 +27,7 @@ class MultiProcessMixin:
for the use of multiple processes
"""
def add_argument_processes_mixin(self, parser: ArgumentParser):
def add_argument_processes_mixin(self, parser: ArgumentParser) -> None:
parser.add_argument(
"--processes",
default=max(1, os.cpu_count() // 4),
@@ -35,7 +35,7 @@ class MultiProcessMixin:
help="Number of processes to distribute work amongst",
)
def handle_processes_mixin(self, *args, **options):
def handle_processes_mixin(self, *args, **options) -> None:
self.process_count = options["processes"]
if self.process_count < 1:
raise CommandError("There must be at least 1 process")
@@ -47,7 +47,7 @@ class ProgressBarMixin:
via this class
"""
def add_argument_progress_bar_mixin(self, parser: ArgumentParser):
def add_argument_progress_bar_mixin(self, parser: ArgumentParser) -> None:
parser.add_argument(
"--no-progress-bar",
default=False,
@@ -55,7 +55,7 @@ class ProgressBarMixin:
help="If set, the progress bar will not be shown",
)
def handle_progress_bar_mixin(self, *args, **options):
def handle_progress_bar_mixin(self, *args, **options) -> None:
self.no_progress_bar = options["no_progress_bar"]
self.use_progress_bar = not self.no_progress_bar
@@ -120,7 +120,7 @@ class CryptMixin:
},
}
def load_crypt_params(self, metadata: dict):
def load_crypt_params(self, metadata: dict) -> None:
# Load up the values for setting up decryption
self.kdf_algorithm: str = metadata[EXPORTER_CRYPTO_SETTINGS_NAME][
EXPORTER_CRYPTO_ALGO_NAME
@@ -135,7 +135,7 @@ class CryptMixin:
EXPORTER_CRYPTO_SALT_NAME
]
def setup_crypto(self, *, passphrase: str, salt: str | None = None):
def setup_crypto(self, *, passphrase: str, salt: str | None = None) -> None:
"""
Constructs a class for encryption or decryption using the specified passphrase and salt