mirror of
				https://github.com/paperless-ngx/paperless-ngx.git
				synced 2025-10-30 03:56:23 -05:00 
			
		
		
		
	Chore: Backend bulk updates (#4509)
This commit is contained in:
		
							
								
								
									
										10
									
								
								.github/workflows/ci.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										10
									
								
								.github/workflows/ci.yml
									
									
									
									
										vendored
									
									
								
							| @@ -16,7 +16,7 @@ on: | ||||
| env: | ||||
|   # This is the version of pipenv all the steps will use | ||||
|   # If changing this, change Dockerfile | ||||
|   DEFAULT_PIP_ENV_VERSION: "2023.9.8" | ||||
|   DEFAULT_PIP_ENV_VERSION: "2023.10.24" | ||||
|   # This is the default version of Python to use in most steps which aren't specific | ||||
|   DEFAULT_PYTHON_VERSION: "3.10" | ||||
|  | ||||
| @@ -64,7 +64,7 @@ jobs: | ||||
|       - | ||||
|         name: Install pipenv | ||||
|         run: | | ||||
|           pip install --user pipenv==${DEFAULT_PIP_ENV_VERSION} | ||||
|           pip install --user pipenv==${{ env.DEFAULT_PIP_ENV_VERSION }} | ||||
|       - | ||||
|         name: Install dependencies | ||||
|         run: | | ||||
| @@ -133,7 +133,7 @@ jobs: | ||||
|       - | ||||
|         name: Install pipenv | ||||
|         run: | | ||||
|           pip install --user pipenv==${DEFAULT_PIP_ENV_VERSION} | ||||
|           pip install --user pipenv==${{ env.DEFAULT_PIP_ENV_VERSION }} | ||||
|       - | ||||
|         name: Install system dependencies | ||||
|         run: | | ||||
| @@ -453,7 +453,7 @@ jobs: | ||||
|       - | ||||
|         name: Install pipenv + tools | ||||
|         run: | | ||||
|           pip install --upgrade --user pipenv==${DEFAULT_PIP_ENV_VERSION} setuptools wheel | ||||
|           pip install --upgrade --user pipenv==${{ env.DEFAULT_PIP_ENV_VERSION }} setuptools wheel | ||||
|       - | ||||
|         name: Install Python dependencies | ||||
|         run: | | ||||
| @@ -621,7 +621,7 @@ jobs: | ||||
|       - | ||||
|         name: Install pipenv + tools | ||||
|         run: | | ||||
|           pip install --upgrade --user pipenv==${DEFAULT_PIP_ENV_VERSION} setuptools wheel | ||||
|           pip install --upgrade --user pipenv==${{ env.DEFAULT_PIP_ENV_VERSION }} setuptools wheel | ||||
|       - | ||||
|         name: Append Changelog to docs | ||||
|         id: append-Changelog | ||||
|   | ||||
| @@ -5,7 +5,7 @@ | ||||
| repos: | ||||
|   # General hooks | ||||
|   - repo: https://github.com/pre-commit/pre-commit-hooks | ||||
|     rev: v4.4.0 | ||||
|     rev: v4.5.0 | ||||
|     hooks: | ||||
|       - id: check-docstring-first | ||||
|       - id: check-json | ||||
| @@ -27,7 +27,7 @@ repos: | ||||
|       - id: check-case-conflict | ||||
|       - id: detect-private-key | ||||
|   - repo: https://github.com/pre-commit/mirrors-prettier | ||||
|     rev: 'v3.0.3' | ||||
|     rev: 'v3.1.0' | ||||
|     hooks: | ||||
|       - id: prettier | ||||
|         types_or: | ||||
| @@ -37,16 +37,16 @@ repos: | ||||
|         exclude: "(^Pipfile\\.lock$)" | ||||
|   # Python hooks | ||||
|   - repo: https://github.com/astral-sh/ruff-pre-commit | ||||
|     rev: 'v0.0.291' | ||||
|     rev: 'v0.1.5' | ||||
|     hooks: | ||||
|       - id: ruff | ||||
|   - repo: https://github.com/psf/black-pre-commit-mirror | ||||
|     rev: 23.9.1 | ||||
|     rev: 23.11.0 | ||||
|     hooks: | ||||
|       - id: black | ||||
|   # Dockerfile hooks | ||||
|   - repo: https://github.com/AleksaC/hadolint-py | ||||
|     rev: v2.12.0.2 | ||||
|     rev: v2.12.0.3 | ||||
|     hooks: | ||||
|       - id: hadolint | ||||
|   # Shell script hooks | ||||
|   | ||||
							
								
								
									
										28
									
								
								Dockerfile
									
									
									
									
									
								
							
							
						
						
									
										28
									
								
								Dockerfile
									
									
									
									
									
								
							| @@ -29,7 +29,7 @@ COPY Pipfile* ./ | ||||
|  | ||||
| RUN set -eux \ | ||||
|   && echo "Installing pipenv" \ | ||||
|     && python3 -m pip install --no-cache-dir --upgrade pipenv==2023.9.8 \ | ||||
|     && python3 -m pip install --no-cache-dir --upgrade pipenv==2023.10.24 \ | ||||
|   && echo "Generating requirement.txt" \ | ||||
|     && pipenv requirements > requirements.txt | ||||
|  | ||||
| @@ -52,7 +52,7 @@ ARG TARGETARCH | ||||
|  | ||||
| # Can be workflow provided, defaults set for manual building | ||||
| ARG JBIG2ENC_VERSION=0.29 | ||||
| ARG QPDF_VERSION=11.6.1 | ||||
| ARG QPDF_VERSION=11.6.3 | ||||
| ARG GS_VERSION=10.02.0 | ||||
|  | ||||
| # | ||||
| @@ -112,19 +112,31 @@ RUN set -eux \ | ||||
|     && apt-get install --yes --quiet --no-install-recommends ${RUNTIME_PACKAGES} \ | ||||
|     && echo "Installing pre-built updates" \ | ||||
|       && echo "Installing qpdf ${QPDF_VERSION}" \ | ||||
|         && curl --fail --silent --show-error --output libqpdf29_${QPDF_VERSION}-1_${TARGETARCH}.deb --location https://github.com/paperless-ngx/builder/releases/download/v0.0.0/libqpdf29_${QPDF_VERSION}-1_${TARGETARCH}.deb \ | ||||
|         && curl --fail --silent --show-error --output qpdf_${QPDF_VERSION}-1_${TARGETARCH}.deb --location https://github.com/paperless-ngx/builder/releases/download/v0.0.0/qpdf_${QPDF_VERSION}-1_${TARGETARCH}.deb \ | ||||
|         && curl --fail --silent --show-error --location \ | ||||
|           --output libqpdf29_${QPDF_VERSION}-1_${TARGETARCH}.deb \ | ||||
|           https://github.com/paperless-ngx/builder/releases/download/qpdf-${QPDF_VERSION}/libqpdf29_${QPDF_VERSION}-1_${TARGETARCH}.deb \ | ||||
|         && curl --fail --silent --show-error --location \ | ||||
|           --output qpdf_${QPDF_VERSION}-1_${TARGETARCH}.deb \ | ||||
|           https://github.com/paperless-ngx/builder/releases/download/qpdf-${QPDF_VERSION}/qpdf_${QPDF_VERSION}-1_${TARGETARCH}.deb \ | ||||
|         && dpkg --install ./libqpdf29_${QPDF_VERSION}-1_${TARGETARCH}.deb \ | ||||
|         && dpkg --install ./qpdf_${QPDF_VERSION}-1_${TARGETARCH}.deb \ | ||||
|       && echo "Installing Ghostscript ${GS_VERSION}" \ | ||||
|         && curl --fail --silent --show-error --output libgs10_${GS_VERSION}.dfsg-2_${TARGETARCH}.deb --location https://github.com/paperless-ngx/builder/releases/download/v0.0.0/libgs10_${GS_VERSION}.dfsg-2_${TARGETARCH}.deb \ | ||||
|         && curl --fail --silent --show-error --output ghostscript_${GS_VERSION}.dfsg-2_${TARGETARCH}.deb --location https://github.com/paperless-ngx/builder/releases/download/v0.0.0/ghostscript_${GS_VERSION}.dfsg-2_${TARGETARCH}.deb \ | ||||
|         && curl --fail --silent --show-error --output libgs10-common_${GS_VERSION}.dfsg-2_all.deb --location https://github.com/paperless-ngx/builder/releases/download/v0.0.0/libgs10-common_${GS_VERSION}.dfsg-2_all.deb \ | ||||
|         && curl --fail --silent --show-error --location \ | ||||
|           --output libgs10_${GS_VERSION}.dfsg-2_${TARGETARCH}.deb \ | ||||
|           https://github.com/paperless-ngx/builder/releases/download/ghostscript-${GS_VERSION}/libgs10_${GS_VERSION}.dfsg-2_${TARGETARCH}.deb \ | ||||
|         && curl --fail --silent --show-error --location \ | ||||
|           --output ghostscript_${GS_VERSION}.dfsg-2_${TARGETARCH}.deb \ | ||||
|           https://github.com/paperless-ngx/builder/releases/download/ghostscript-${GS_VERSION}/ghostscript_${GS_VERSION}.dfsg-2_${TARGETARCH}.deb \ | ||||
|         && curl --fail --silent --show-error --location \ | ||||
|           --output libgs10-common_${GS_VERSION}.dfsg-2_all.deb \ | ||||
|           https://github.com/paperless-ngx/builder/releases/download/ghostscript-${GS_VERSION}/libgs10-common_${GS_VERSION}.dfsg-2_all.deb \ | ||||
|         && dpkg --install ./libgs10-common_${GS_VERSION}.dfsg-2_all.deb \ | ||||
|         && dpkg --install ./libgs10_${GS_VERSION}.dfsg-2_${TARGETARCH}.deb \ | ||||
|         && dpkg --install ./ghostscript_${GS_VERSION}.dfsg-2_${TARGETARCH}.deb \ | ||||
|       && echo "Installing jbig2enc" \ | ||||
|         && curl --fail --silent --show-error --output jbig2enc_${JBIG2ENC_VERSION}-1_${TARGETARCH}.deb --location https://github.com/paperless-ngx/builder/releases/download/v0.0.0/jbig2enc_${JBIG2ENC_VERSION}-1_${TARGETARCH}.deb \ | ||||
|         && curl --fail --silent --show-error --location \ | ||||
|           --output jbig2enc_${JBIG2ENC_VERSION}-1_${TARGETARCH}.deb \ | ||||
|           https://github.com/paperless-ngx/builder/releases/download/jbig2enc-${JBIG2ENC_VERSION}/jbig2enc_${JBIG2ENC_VERSION}-1_${TARGETARCH}.deb \ | ||||
|         && dpkg --install ./jbig2enc_${JBIG2ENC_VERSION}-1_${TARGETARCH}.deb \ | ||||
|       && echo "Cleaning up image layer" \ | ||||
|         && rm --force --verbose *.deb \ | ||||
|   | ||||
							
								
								
									
										59
									
								
								Pipfile
									
									
									
									
									
								
							
							
						
						
									
										59
									
								
								Pipfile
									
									
									
									
									
								
							| @@ -7,53 +7,53 @@ name = "pypi" | ||||
| dateparser = "~=1.1" | ||||
| # WARNING: django does not use semver. | ||||
| #          Only patch versions are guaranteed to not introduce breaking changes. | ||||
| django = "~=4.2.5" | ||||
| django-cors-headers = "*" | ||||
| django = "~=4.2.7" | ||||
| django-auditlog = "*" | ||||
| django-celery-results = "*" | ||||
| django-compression-middleware = "*" | ||||
| django-guardian = "*" | ||||
| django-cors-headers = "*" | ||||
| django-extensions = "*" | ||||
| django-filter = "~=23.3" | ||||
| django-guardian = "*" | ||||
| django-multiselectfield = "*" | ||||
| djangorestframework = "~=3.14" | ||||
| djangorestframework-guardian = "*" | ||||
| drf-writable-nested = "*" | ||||
| bleach = "*" | ||||
| celery = "*" | ||||
| channels = "~=4.0" | ||||
| channels-redis = "*" | ||||
| concurrent-log-handler = "*" | ||||
| filelock = "*" | ||||
| flower = "*" | ||||
| gotenberg-client = "*" | ||||
| gunicorn = "*" | ||||
| imap-tools = "*" | ||||
| inotifyrecursive = "~=0.3" | ||||
| langdetect = "*" | ||||
| mysqlclient = "*" | ||||
| nltk = "*" | ||||
| ocrmypdf = "~=15.0" | ||||
| pathvalidate = "*" | ||||
| python-gnupg = "*" | ||||
| python-dotenv = "*" | ||||
| python-dateutil = "*" | ||||
| python-magic = "*" | ||||
| python-ipware = "*" | ||||
| pdf2image = "*" | ||||
| psycopg2 = "*" | ||||
| python-dateutil = "*" | ||||
| python-dotenv = "*" | ||||
| python-gnupg = "*" | ||||
| python-ipware = "*" | ||||
| python-magic = "*" | ||||
| pyzbar = "*" | ||||
| rapidfuzz = "*" | ||||
| redis = {extras = ["hiredis"], version = "*"} | ||||
| scikit-learn = "~=1.3" | ||||
| whitenoise = "~=6.5" | ||||
| watchdog = "~=3.0" | ||||
| whoosh="~=2.7" | ||||
| inotifyrecursive = "~=0.3" | ||||
| ocrmypdf = "~=14.0" | ||||
| tqdm = "*" | ||||
| tika-client = "*" | ||||
| channels = "~=4.0" | ||||
| channels-redis = "*" | ||||
| uvicorn = {extras = ["standard"], version = "*"} | ||||
| concurrent-log-handler = "*" | ||||
| pyzbar = "*" | ||||
| mysqlclient = "*" | ||||
| celery = {extras = ["redis"], version = "*"} | ||||
| setproctitle = "*" | ||||
| nltk = "*" | ||||
| pdf2image = "*" | ||||
| flower = "*" | ||||
| bleach = "*" | ||||
| tika-client = "*" | ||||
| tqdm = "*" | ||||
| uvicorn = {extras = ["standard"], version = "*"} | ||||
| watchdog = "~=3.0" | ||||
| whitenoise = "~=6.6" | ||||
| whoosh="~=2.7" | ||||
| zxing-cpp = {version = "*", platform_machine = "== 'x86_64'"} | ||||
| django-multiselectfield = "*" | ||||
| gotenberg-client = "*" | ||||
| django-auditlog = "*" | ||||
|  | ||||
| [dev-packages] | ||||
| # Linting | ||||
| @@ -70,7 +70,6 @@ pytest-env = "*" | ||||
| pytest-sugar = "*" | ||||
| pytest-xdist = "*" | ||||
| pytest-rerunfailures = "*" | ||||
| "pdfminer.six" = "*" | ||||
| imagehash = "*" | ||||
| daphne = "*" | ||||
| # Documentation | ||||
|   | ||||
							
								
								
									
										3190
									
								
								Pipfile.lock
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										3190
									
								
								Pipfile.lock
									
									
									
										generated
									
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							| @@ -58,7 +58,8 @@ export class PermissionsDialogComponent { | ||||
|   } | ||||
|  | ||||
|   @Input() | ||||
|   message = $localize`Note that permissions set here will override any existing permissions` | ||||
|   message = | ||||
|     $localize`Note that permissions set here will override any existing permissions` | ||||
|  | ||||
|   cancelClicked() { | ||||
|     this.activeModal.close() | ||||
|   | ||||
| @@ -476,8 +476,8 @@ export class BulkEditorComponent | ||||
|       this.downloadForm.get('downloadFileTypeOriginals').value | ||||
|         ? 'both' | ||||
|         : this.downloadForm.get('downloadFileTypeArchive').value | ||||
|         ? 'archive' | ||||
|         : 'originals' | ||||
|           ? 'archive' | ||||
|           : 'originals' | ||||
|     this.documentService | ||||
|       .bulkDownload( | ||||
|         Array.from(this.list.selected), | ||||
|   | ||||
| @@ -248,7 +248,7 @@ class DocumentClassifier: | ||||
|         data_vectorized = self.data_vectorizer.fit_transform(content_generator()) | ||||
|  | ||||
|         # See the notes here: | ||||
|         # https://scikit-learn.org/stable/modules/generated/sklearn.feature_extraction.text.CountVectorizer.html  # noqa: E501 | ||||
|         # https://scikit-learn.org/stable/modules/generated/sklearn.feature_extraction.text.CountVectorizer.html | ||||
|         # This attribute isn't needed to function and can be large | ||||
|         self.data_vectorizer.stop_words_ = None | ||||
|  | ||||
|   | ||||
| @@ -36,13 +36,13 @@ from documents.utils import copy_file_with_basic_stats | ||||
| # TODO: isnt there a date parsing library for this? | ||||
|  | ||||
| DATE_REGEX = re.compile( | ||||
|     r"(\b|(?!=([_-])))([0-9]{1,2})[\.\/-]([0-9]{1,2})[\.\/-]([0-9]{4}|[0-9]{2})(\b|(?=([_-])))|"  # noqa: E501 | ||||
|     r"(\b|(?!=([_-])))([0-9]{4}|[0-9]{2})[\.\/-]([0-9]{1,2})[\.\/-]([0-9]{1,2})(\b|(?=([_-])))|"  # noqa: E501 | ||||
|     r"(\b|(?!=([_-])))([0-9]{1,2}[\. ]+[a-zA-Z]{3,9} ([0-9]{4}|[0-9]{2}))(\b|(?=([_-])))|"  # noqa: E501 | ||||
|     r"(\b|(?!=([_-])))([0-9]{1,2})[\.\/-]([0-9]{1,2})[\.\/-]([0-9]{4}|[0-9]{2})(\b|(?=([_-])))|" | ||||
|     r"(\b|(?!=([_-])))([0-9]{4}|[0-9]{2})[\.\/-]([0-9]{1,2})[\.\/-]([0-9]{1,2})(\b|(?=([_-])))|" | ||||
|     r"(\b|(?!=([_-])))([0-9]{1,2}[\. ]+[a-zA-Z]{3,9} ([0-9]{4}|[0-9]{2}))(\b|(?=([_-])))|" | ||||
|     r"(\b|(?!=([_-])))([^\W\d_]{3,9} [0-9]{1,2}, ([0-9]{4}))(\b|(?=([_-])))|" | ||||
|     r"(\b|(?!=([_-])))([^\W\d_]{3,9} [0-9]{4})(\b|(?=([_-])))|" | ||||
|     r"(\b|(?!=([_-])))([0-9]{1,2}[^ ]{2}[\. ]+[^ ]{3,9}[ \.\/-][0-9]{4})(\b|(?=([_-])))|"  # noqa: E501 | ||||
|     r"(\b|(?!=([_-])))(\b[0-9]{1,2}[ \.\/-][a-zA-Z]{3}[ \.\/-][0-9]{4})(\b|(?=([_-])))",  # noqa: E501 | ||||
|     r"(\b|(?!=([_-])))([0-9]{1,2}[^ ]{2}[\. ]+[^ ]{3,9}[ \.\/-][0-9]{4})(\b|(?=([_-])))|" | ||||
|     r"(\b|(?!=([_-])))(\b[0-9]{1,2}[ \.\/-][a-zA-Z]{3}[ \.\/-][0-9]{4})(\b|(?=([_-])))", | ||||
| ) | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -1023,7 +1023,6 @@ class AcknowledgeTasksViewSerializer(serializers.Serializer): | ||||
|     ) | ||||
|  | ||||
|     def _validate_task_id_list(self, tasks, name="tasks"): | ||||
|         pass | ||||
|         if not isinstance(tasks, list): | ||||
|             raise serializers.ValidationError(f"{name} must be a list") | ||||
|         if not all(isinstance(i, int) for i in tasks): | ||||
|   | ||||
| @@ -158,10 +158,10 @@ class IndexView(TemplateView): | ||||
|         context["main_js"] = f"frontend/{self.get_frontend_language()}/main.js" | ||||
|         context[ | ||||
|             "webmanifest" | ||||
|         ] = f"frontend/{self.get_frontend_language()}/manifest.webmanifest"  # noqa: E501 | ||||
|         ] = f"frontend/{self.get_frontend_language()}/manifest.webmanifest" | ||||
|         context[ | ||||
|             "apple_touch_icon" | ||||
|         ] = f"frontend/{self.get_frontend_language()}/apple-touch-icon.png"  # noqa: E501 | ||||
|         ] = f"frontend/{self.get_frontend_language()}/apple-touch-icon.png" | ||||
|         return context | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -469,7 +469,7 @@ SECRET_KEY = os.getenv( | ||||
|  | ||||
| AUTH_PASSWORD_VALIDATORS = [ | ||||
|     { | ||||
|         "NAME": "django.contrib.auth.password_validation.UserAttributeSimilarityValidator",  # noqa: E501 | ||||
|         "NAME": "django.contrib.auth.password_validation.UserAttributeSimilarityValidator", | ||||
|     }, | ||||
|     { | ||||
|         "NAME": "django.contrib.auth.password_validation.MinimumLengthValidator", | ||||
| @@ -776,7 +776,7 @@ CONSUMER_IGNORE_PATTERNS = list( | ||||
|     json.loads( | ||||
|         os.getenv( | ||||
|             "PAPERLESS_CONSUMER_IGNORE_PATTERNS", | ||||
|             '[".DS_Store", ".DS_STORE", "._*", ".stfolder/*", ".stversions/*", ".localized/*", "desktop.ini", "@eaDir/*"]',  # noqa: E501 | ||||
|             '[".DS_Store", ".DS_STORE", "._*", ".stfolder/*", ".stversions/*", ".localized/*", "desktop.ini", "@eaDir/*"]', | ||||
|         ), | ||||
|     ), | ||||
| ) | ||||
|   | ||||
| @@ -338,7 +338,7 @@ class RasterisedDocumentParser(DocumentParser): | ||||
|             if "Ghostscript PDF/A rendering" in str(e): | ||||
|                 self.log.warning( | ||||
|                     "Ghostscript PDF/A rendering failed, consider setting " | ||||
|                     "PAPERLESS_OCR_USER_ARGS: '{\"continue_on_soft_render_error\": true}'",  # noqa: E501 | ||||
|                     "PAPERLESS_OCR_USER_ARGS: '{\"continue_on_soft_render_error\": true}'", | ||||
|                 ) | ||||
|  | ||||
|             raise ParseError( | ||||
|   | ||||
| @@ -10,12 +10,12 @@ def tika_consumer_declaration(sender, **kwargs): | ||||
|         "weight": 10, | ||||
|         "mime_types": { | ||||
|             "application/msword": ".doc", | ||||
|             "application/vnd.openxmlformats-officedocument.wordprocessingml.document": ".docx",  # noqa: E501 | ||||
|             "application/vnd.openxmlformats-officedocument.wordprocessingml.document": ".docx", | ||||
|             "application/vnd.ms-excel": ".xls", | ||||
|             "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": ".xlsx",  # noqa: E501 | ||||
|             "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": ".xlsx", | ||||
|             "application/vnd.ms-powerpoint": ".ppt", | ||||
|             "application/vnd.openxmlformats-officedocument.presentationml.presentation": ".pptx",  # noqa: E501 | ||||
|             "application/vnd.openxmlformats-officedocument.presentationml.slideshow": ".ppsx",  # noqa: E501 | ||||
|             "application/vnd.openxmlformats-officedocument.presentationml.presentation": ".pptx", | ||||
|             "application/vnd.openxmlformats-officedocument.presentationml.slideshow": ".ppsx", | ||||
|             "application/vnd.oasis.opendocument.presentation": ".odp", | ||||
|             "application/vnd.oasis.opendocument.spreadsheet": ".ods", | ||||
|             "application/vnd.oasis.opendocument.text": ".odt", | ||||
|   | ||||
| @@ -1,30 +1,23 @@ | ||||
| [flake8] | ||||
| extend-exclude = */migrations/*, */tests/* | ||||
| # E203 - https://www.flake8rules.com/rules/E203.html | ||||
| # W503 - https://www.flake8rules.com/rules/W503.html | ||||
| ignore = E203,W503 | ||||
| max-line-length = 88 | ||||
|  | ||||
| [tool:pytest] | ||||
| DJANGO_SETTINGS_MODULE=paperless.settings | ||||
| DJANGO_SETTINGS_MODULE = paperless.settings | ||||
| addopts = --pythonwarnings=all --cov --cov-report=html --cov-report=xml --numprocesses auto --maxprocesses=16 --quiet --durations=50 | ||||
| env = | ||||
|   PAPERLESS_DISABLE_DBHANDLER=true | ||||
|     PAPERLESS_DISABLE_DBHANDLER=true | ||||
|  | ||||
| [coverage:run] | ||||
| source = | ||||
|   ./ | ||||
|     ./ | ||||
| omit = | ||||
|   */tests/* | ||||
| 	manage.py | ||||
|   paperless/workers.py | ||||
| 	paperless/wsgi.py | ||||
| 	paperless/auth.py | ||||
|     */tests/* | ||||
|     manage.py | ||||
|     paperless/workers.py | ||||
|     paperless/wsgi.py | ||||
|     paperless/auth.py | ||||
|  | ||||
| [coverage:report] | ||||
| exclude_also = | ||||
|     if settings.AUDIT_LOG_ENABLED: | ||||
| 		if AUDIT_LOG_ENABLED: | ||||
|     if AUDIT_LOG_ENABLED: | ||||
|  | ||||
| [mypy] | ||||
| plugins = mypy_django_plugin.main, mypy_drf_plugin.main, numpy.typing.mypy_plugin | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Trenton H
					Trenton H