mirror of
https://gitlab.com/fdroid/fdroidserver.git
synced 2024-11-10 01:10:11 +01:00
Merge branch 'pyproject.toml' into 'master'
Move lint tools configuration to pyproject.toml See merge request fdroid/fdroidserver!1196
This commit is contained in:
commit
6a4b7ba4c1
@ -219,7 +219,7 @@ lint_format_safety_bandit_checks:
|
|||||||
--ini .bandit
|
--ini .bandit
|
||||||
|| set_error
|
|| set_error
|
||||||
- safety check --full-report || set_error
|
- safety check --full-report || set_error
|
||||||
- pylint --rcfile=.pylint-rcfile --output-format=colorized --reports=n
|
- pylint --output-format=colorized --reports=n
|
||||||
fdroid
|
fdroid
|
||||||
makebuildserver
|
makebuildserver
|
||||||
setup.py
|
setup.py
|
||||||
@ -234,26 +234,11 @@ lint_format_safety_bandit_checks:
|
|||||||
- exit $EXITVALUE
|
- exit $EXITVALUE
|
||||||
|
|
||||||
|
|
||||||
lint_mypy:
|
|
||||||
image: debian:bullseye-backports
|
|
||||||
<<: *apt-template
|
|
||||||
script:
|
|
||||||
# use Debian packages to avoid building C/rust sources
|
|
||||||
- apt-get install
|
|
||||||
mypy
|
|
||||||
python3-cryptography
|
|
||||||
python3-pip
|
|
||||||
python3-wheel
|
|
||||||
- apt-get install -t bullseye-backports python3-pyjks
|
|
||||||
- pip install -e .[test]
|
|
||||||
- mypy
|
|
||||||
|
|
||||||
|
|
||||||
black:
|
black:
|
||||||
image: python:slim
|
image: python:slim
|
||||||
script:
|
script:
|
||||||
- pip install black
|
- pip install black
|
||||||
- black --check --diff --color --skip-string-normalization
|
- black --check --diff --color
|
||||||
examples/fdroid_extract_repo_pubkey.py
|
examples/fdroid_extract_repo_pubkey.py
|
||||||
examples/makebuildserver.config.py
|
examples/makebuildserver.config.py
|
||||||
fdroid
|
fdroid
|
||||||
|
@ -1,47 +0,0 @@
|
|||||||
[MASTER]
|
|
||||||
|
|
||||||
# Use multiple processes to speed up Pylint.
|
|
||||||
jobs=4
|
|
||||||
|
|
||||||
# Allow loading of arbitrary C extensions. Extensions are imported into the
|
|
||||||
# active Python interpreter and may run arbitrary code.
|
|
||||||
unsafe-load-any-extension=no
|
|
||||||
|
|
||||||
|
|
||||||
[MESSAGES CONTROL]
|
|
||||||
|
|
||||||
# Only show warnings with the listed confidence levels. Leave empty to show
|
|
||||||
# all. Valid levels: HIGH, INFERENCE, INFERENCE_FAILURE, UNDEFINED
|
|
||||||
confidence=HIGH,INFERENCE
|
|
||||||
|
|
||||||
# Disable the message, report, category or checker with the given id(s). You
|
|
||||||
# can either give multiple identifiers separated by comma (,) or put this
|
|
||||||
# option multiple times (only on the command line, not in the configuration
|
|
||||||
# file where it should appear only once).You can also use "--disable=all" to
|
|
||||||
# disable everything first and then reenable specific checks. For example, if
|
|
||||||
# you want to run only the similarities checker, you can use "--disable=all
|
|
||||||
# --enable=similarities". If you want to run only the classes checker, but have
|
|
||||||
# no Warning level messages displayed, use"--disable=all --enable=classes
|
|
||||||
# --disable=W"
|
|
||||||
disable=invalid-name,missing-docstring,no-member
|
|
||||||
|
|
||||||
|
|
||||||
[MISCELLANEOUS]
|
|
||||||
|
|
||||||
# List of note tags to take in consideration, separated by a comma.
|
|
||||||
notes=FIXME,XXX,TODO
|
|
||||||
|
|
||||||
|
|
||||||
[BASIC]
|
|
||||||
|
|
||||||
# Good variable names which should always be accepted, separated by a comma
|
|
||||||
good-names=i,j,k,ex,Run,f,fp
|
|
||||||
|
|
||||||
|
|
||||||
[ELIF]
|
|
||||||
|
|
||||||
# Maximum number of nested blocks for function / method body
|
|
||||||
max-nested-blocks=5
|
|
||||||
|
|
||||||
[FORMAT]
|
|
||||||
max-line-length=88
|
|
17
mypy.ini
17
mypy.ini
@ -1,17 +0,0 @@
|
|||||||
[mypy]
|
|
||||||
files = fdroidserver
|
|
||||||
# exclude vendored file
|
|
||||||
exclude = fdroidserver/apksigcopier.py
|
|
||||||
|
|
||||||
# this is de-facto the linter setting for this file
|
|
||||||
warn_unused_configs = True
|
|
||||||
|
|
||||||
# TODO: we should either upgrade the used packages to a version which includes type hints OR install/write stub packages for these libraries.
|
|
||||||
# Further details here: https://mypy.readthedocs.io/en/stable/running_mypy.html#missing-type-hints-for-third-party-library
|
|
||||||
ignore_missing_imports = True
|
|
||||||
|
|
||||||
# ignore the [no-redef] errors, as they collide with the bandit "# nosec" exclusion (common.py)
|
|
||||||
# unfortunately both tools expect their ignore flag as a comment in the same line
|
|
||||||
# [misc] is ignored for the "incompatible import"
|
|
||||||
# [arg-type] is ignored because when there are missing envs, everything will crash, not just the types
|
|
||||||
disable_error_code = no-redef, misc, arg-type
|
|
@ -1,2 +1,64 @@
|
|||||||
[tool.black]
|
[tool.black]
|
||||||
skip-string-normalization = true
|
skip-string-normalization = true
|
||||||
|
target-version = ["py35"]
|
||||||
|
|
||||||
|
|
||||||
|
[tool.mypy]
|
||||||
|
python_version = "3.5"
|
||||||
|
|
||||||
|
files = "fdroidserver"
|
||||||
|
|
||||||
|
# exclude vendored file
|
||||||
|
exclude = "fdroidserver/apksigcopier.py"
|
||||||
|
|
||||||
|
# this is de-facto the linter setting for this file
|
||||||
|
warn_unused_configs = true
|
||||||
|
|
||||||
|
# TODO: we should either upgrade the used packages to a version which includes type hints OR install/write stub packages for these libraries.
|
||||||
|
# Further details here: https://mypy.readthedocs.io/en/stable/running_mypy.html#missing-type-hints-for-third-party-library
|
||||||
|
ignore_missing_imports = true
|
||||||
|
|
||||||
|
# ignore the [no-redef] errors, as they collide with the bandit "# nosec" exclusion (common.py)
|
||||||
|
# unfortunately both tools expect their ignore flag as a comment in the same line
|
||||||
|
# [misc] is ignored for the "incompatible import"
|
||||||
|
# [arg-type] is ignored because when there are missing envs, everything will crash, not just the types
|
||||||
|
disable_error_code = "no-redef, misc, arg-type"
|
||||||
|
|
||||||
|
|
||||||
|
[tool.pylint.main]
|
||||||
|
# Use multiple processes to speed up Pylint. Specifying 0 will auto-detect the
|
||||||
|
# number of processors available to use, and will cap the count on Windows to
|
||||||
|
# avoid hangs.
|
||||||
|
jobs = 4
|
||||||
|
|
||||||
|
[tool.pylint.basic]
|
||||||
|
# Good variable names which should always be accepted, separated by a comma.
|
||||||
|
good-names = ["i", "j", "k", "ex", "Run", "f", "fp"]
|
||||||
|
|
||||||
|
[tool.pylint."messages control"]
|
||||||
|
# Only show warnings with the listed confidence levels. Leave empty to show all.
|
||||||
|
# Valid levels: HIGH, CONTROL_FLOW, INFERENCE, INFERENCE_FAILURE, UNDEFINED.
|
||||||
|
confidence = ["HIGH", "INFERENCE"]
|
||||||
|
|
||||||
|
# Disable the message, report, category or checker with the given id(s). You can
|
||||||
|
# either give multiple identifiers separated by comma (,) or put this option
|
||||||
|
# multiple times (only on the command line, not in the configuration file where
|
||||||
|
# it should appear only once). You can also use "--disable=all" to disable
|
||||||
|
# everything first and then re-enable specific checks. For example, if you want
|
||||||
|
# to run only the similarities checker, you can use "--disable=all
|
||||||
|
# --enable=similarities". If you want to run only the classes checker, but have
|
||||||
|
# no Warning level messages displayed, use "--disable=all --enable=classes
|
||||||
|
# --disable=W".
|
||||||
|
disable = ["invalid-name", "missing-module-docstring", "missing-class-docstring", "missing-function-docstring", "no-member"]
|
||||||
|
|
||||||
|
[tool.pylint.miscellaneous]
|
||||||
|
# List of note tags to take in consideration, separated by a comma.
|
||||||
|
notes = ["FIXME", "XXX", "TODO"]
|
||||||
|
|
||||||
|
[tool.pylint.refactoring]
|
||||||
|
# Maximum number of nested blocks for function / method body
|
||||||
|
max-nested-blocks = 5
|
||||||
|
|
||||||
|
[tool.pylint.format]
|
||||||
|
# Maximum number of characters on a single line.
|
||||||
|
max-line-length = 88
|
||||||
|
Loading…
Reference in New Issue
Block a user