add some more checks.

This commit is contained in:
Jonas Winkler 2020-11-12 21:20:12 +01:00
parent 2e04ba1c04
commit 0421031128
3 changed files with 29 additions and 2 deletions

View File

@ -4,6 +4,8 @@ from django.conf import settings
from django.core.checks import Error, register
from django.db.utils import OperationalError, ProgrammingError
from documents.signals import document_consumer_declaration
@register()
def changed_password_check(app_configs, **kwargs):
@ -37,3 +39,17 @@ def changed_password_check(app_configs, **kwargs):
"""))]
return []
@register()
def parser_check(app_configs, **kwargs):
parsers = []
for response in document_consumer_declaration.send(None):
parsers.append(response[1])
if len(parsers) == 0:
return [Error("No parsers found. This is a bug. The consumer won't be "
"able to onsume any documents without parsers.")]
else:
return []

View File

@ -45,8 +45,6 @@ def get_parser_class(doc):
for response in document_consumer_declaration.send(None):
parsers.append(response[1])
# TODO: add a check that checks parser availability.
options = []
for parser in parsers:
result = parser(doc)

View File

@ -67,3 +67,16 @@ def binaries_check(app_configs, **kwargs):
check_messages.append(Warning(error.format(binary), hint))
return check_messages
@register()
def debug_mode_check(app_configs, **kwargs):
if settings.DEBUG:
return [Warning("DEBUG mode is enabled. Disable Debug mode. "
"This is a serious security "
"issue, since it puts security overides in place which"
"are meant to be only used during development. This"
"also means that paperless will tell anyone various"
"debugging information when something goes wrong.")]
else:
return []