mirror of
https://gitlab.com/fdroid/fdroidserver.git
synced 2024-10-01 00:30:13 +02:00
update outdated pylint setup
The logilab-astng lib is dead, replaced by python-astroid. The crazy astng plugin is no longer needed also. #281
This commit is contained in:
parent
361ce5ca41
commit
12c80f9062
@ -1,39 +0,0 @@
|
|||||||
#
|
|
||||||
# started from http://www.logilab.org/blogentry/78354
|
|
||||||
#
|
|
||||||
|
|
||||||
from logilab.astng import MANAGER
|
|
||||||
from logilab.astng.builder import ASTNGBuilder
|
|
||||||
|
|
||||||
def hashlib_transform(module):
|
|
||||||
if module.name == 'hashlib':
|
|
||||||
fake = ASTNGBuilder(MANAGER).string_build('''
|
|
||||||
|
|
||||||
class fakehash(object):
|
|
||||||
digest_size = -1
|
|
||||||
def __init__(self, value): pass
|
|
||||||
def digest(self):
|
|
||||||
return u''
|
|
||||||
def hexdigest(self):
|
|
||||||
return u''
|
|
||||||
def update(self, value): pass
|
|
||||||
|
|
||||||
class md5(fakehash):
|
|
||||||
pass
|
|
||||||
|
|
||||||
class sha1(fakehash):
|
|
||||||
pass
|
|
||||||
|
|
||||||
class sha256(fakehash):
|
|
||||||
pass
|
|
||||||
|
|
||||||
''')
|
|
||||||
for hashfunc in ('sha256', 'sha1', 'md5'):
|
|
||||||
module.locals[hashfunc] = fake.locals[hashfunc]
|
|
||||||
|
|
||||||
def register(linter):
|
|
||||||
"""called when loaded by pylint --load-plugins, register our tranformation
|
|
||||||
function here
|
|
||||||
"""
|
|
||||||
MANAGER.register_transformer(hashlib_transform)
|
|
||||||
|
|
45
.pylint-rcfile
Normal file
45
.pylint-rcfile
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
[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,_,e,f,fp
|
||||||
|
|
||||||
|
|
||||||
|
[ELIF]
|
||||||
|
|
||||||
|
# Maximum number of nested blocks for function / method body
|
||||||
|
max-nested-blocks=5
|
||||||
|
|
@ -87,19 +87,14 @@ sh hooks/pre-commit
|
|||||||
#------------------------------------------------------------------------------#
|
#------------------------------------------------------------------------------#
|
||||||
# run pylint
|
# run pylint
|
||||||
|
|
||||||
cd $WORKSPACE
|
# only run it where it will work, for example, the pyvenvs above don't have pylint
|
||||||
set +e
|
if which pylint3 && python3 -c "import pylint" 2> /dev/null; then
|
||||||
# use the pyvenv so pylint checks against its installed libs
|
cd $WORKSPACE
|
||||||
PYTHONPATH=$WORKSPACE/.pylint-plugins python3 /usr/bin/pylint \
|
pylint3 --rcfile=.pylint-rcfile --output-format=colorized --reports=n \
|
||||||
--output-format=parseable --reports=n \
|
fdroid \
|
||||||
--load-plugins astng_hashlib \
|
makebuildserver \
|
||||||
fdroidserver/*.py fdroid makebuildserver setup.py > $WORKSPACE/pylint.parseable
|
setup.py \
|
||||||
|
fdroidserver/*.py \
|
||||||
# to only tell jenkins there was an error if we got ERROR or FATAL, uncomment these:
|
tests/*.py \
|
||||||
# running pylint in the pyvenv/virtualenv is causing this FATAL error, which is a bug:
|
tests/*.TestCase
|
||||||
# https://bitbucket.org/logilab/pylint/issue/73/pylint-is-unable-to-import
|
fi
|
||||||
[ $(($? & 1)) = "1" ] && echo "FATALs found"
|
|
||||||
[ $(($? & 2)) = "2" ] && exit 2
|
|
||||||
[ $(($? & 4)) = "4" ] && exit 4
|
|
||||||
set -e
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user