From: W. Trevor King Date: Sun, 11 Nov 2012 16:20:57 +0000 (-0500) Subject: pylint: update pylintrc based on the template from pylint 0.23.0 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=baae0536313e21d9680992d7f69371b6cae80195;p=gentoolkit.git pylint: update pylintrc based on the template from pylint 0.23.0 The previous version of pylintrc defined MASTER.ignore twice, which is illegal in Python 3: $ pylint --rcfile=pylintrc pym/gentoolkit/helpers.py Traceback (most recent call last): ... configparser.DuplicateOptionError: While reading from pylintrc [line 24]: option 'ignore' in section 'MASTER' already exists I kept other option values unchanged from the old pylintrc, and added "# was ..." comments for each non-default value. --- diff --git a/pylintrc b/pylintrc index 863a3f8..dafdddb 100644 --- a/pylintrc +++ b/pylintrc @@ -1,11 +1,5 @@ -# lint Python modules using external checkers. -# -# This is the main checker controlling the other ones and the reports -# generation. It is itself both a raw checker and an astng checker in order -# to: -# * handle message activation / deactivation at the module level -# * handle some basic but necessary stats'data (number of classes, methods...) -# +# lint Python modules + [MASTER] # Specify a configuration file. @@ -21,14 +15,10 @@ profile=no # Add to the black list. It should be a base name, not a # path. You may set this option multiple times. ignore=CVS -ignore=.svn # Pickle collected data for later comparisons. persistent=yes -# Set the cache size for astng objects. -cache-size=500 - # List of plugins (as comma separated values of python modules names) to load, # usually to register additional checkers. load-plugins= @@ -36,37 +26,31 @@ load-plugins= [MESSAGES CONTROL] -# Enable only checker(s) with the given id(s). This option conflicts with the -# disable-checker option -#enable-checker= - -# Enable all checker(s) except those with the given id(s). This option -# conflicts with the enable-checker option -#disable-checker= - -# Enable all messages in the listed categories (IRCWEF). -#enable-msg-cat= +# Enable the message, report, category or checker with the given id(s). You can +# either give multiple identifier separated by comma (,) or put this option +# multiple time. +#enable= -# Disable all messages in the listed categories (IRCWEF). -disable-msg-cat=I - -# Enable the message(s) with the given id(s). -#enable-msg= - -# Disable the message(s) with the given id(s). +# Disable the message, report, category or checker with the given id(s). You +# can either give multiple identifier separated by comma (,) or put this option +# multiple time (only on the command line, not in the configuration file where +# it should appear only once). +#disable= # :W0704: *Except doesn't do anything* # :W0231: *__init__ method from base class %r is not called* # :R0903: *Too few public methods (%s/%s)* -disable-msg=W0704,W0231,R0903 +disable=W0704,W0231,R0903 [REPORTS] # Set the output format. Available formats are text, parseable, colorized, msvs # (visual studio) and html +# was output-format=text output-format=colorized # Include message's id in output +# was include-ids=no include-ids=yes # Put messages in a separate file for each module / package specified on the @@ -74,39 +58,40 @@ include-ids=yes # written in a file name "pylint_global.[txt|html]". files-output=no -# Tells wether to display a full report or only the messages +# Tells whether to display a full report or only the messages reports=yes # Python expression which should return a note less than 10 (10 is the highest # note). You have access to the variables errors warning, statement which # respectively contain the number of errors / warnings messages and the total # number of statements analyzed. This is used by the global evaluation report -# (R0004). +# (RP0004). evaluation=10.0 - ((float(5 * error + warning + refactor + convention) / statement) * 10) # Add a comment according to your evaluation note. This is used by the global -# evaluation report (R0004). +# evaluation report (RP0004). comment=no -# Enable the report(s) with the given id(s). -#enable-report= -# Disable the report(s) with the given id(s). -#disable-report= +[SIMILARITIES] + +# Minimum lines number of a similarity. +min-similarity-lines=4 + +# Ignore comments when computing similarities. +ignore-comments=yes + +# Ignore docstrings when computing similarities. +ignore-docstrings=yes -# checks for -# * unused variables / imports -# * undefined variables -# * redefinition of variable from builtins or from an outer scope -# * use of variable before assignment -# [VARIABLES] # Tells whether we should check for unused import in __init__ files. init-import=no -# A regular expression matching names used for dummy variables (i.e. not used). +# A regular expression matching the beginning of the name of dummy variables +# (i.e. not used). dummy-variables-rgx=_|dummy # List of additional names supposed to be defined in builtins. Remember that @@ -114,25 +99,52 @@ dummy-variables-rgx=_|dummy additional-builtins= -# checks for : -# * doc strings -# * modules / classes / functions / methods / arguments / variables name -# * number of arguments, local variables, branches, returns and statements in -# functions, methods -# * required module attributes -# * dangerous default values as arguments -# * redefinition of function / method / class -# * uses of the global statement -# +[MISCELLANEOUS] + +# List of note tags to take in consideration, separated by a comma. +notes=FIXME,XXX,TODO + + +[TYPECHECK] + +# Tells whether missing members accessed in mixin class should be ignored. A +# mixin class is detected if its name ends with "mixin" (case insensitive). +ignore-mixin-members=yes + +# List of classes names for which member attributes should not be checked +# (useful for classes with attributes dynamically set). +ignored-classes=SQLObject + +# When zope mode is activated, add a predefined set of Zope acquired attributes +# to generated-members. +zope=no + +# List of members which are set dynamically and missed by pylint inference +# system, and so shouldn't trigger E0201 when accessed. +generated-members=REQUEST,acl_users,aq_parent + + +[FORMAT] + +# Maximum number of characters on a single line. +max-line-length=80 + +# Maximum number of lines in a module +max-module-lines=1000 + +# String used as indentation unit. This is usually " " (4 spaces) or "\t" (1 +# tab). +# was indent-string=' ' +indent-string="\t" + + [BASIC] # Required attributes for module, separated by a comma required-attributes= -# Regular expression which should only match functions or classes name which do -# not require a docstring -# was no-docstring-rgx=__.*__ -no-docstring-rgx=_.* +# List of builtins function names that should not be used, separated by a comma +bad-functions=map,filter,apply,input # Regular expression which should only match correct module names module-rgx=(([a-z_][a-z0-9_]*)|([A-Z][a-zA-Z0-9]+))$ @@ -171,83 +183,40 @@ good-names=i,j,k,ex,Run,_ # Bad variable names which should always be refused, separated by a comma bad-names=foo,bar,baz,toto,tutu,tata -# List of builtins function names that should not be used, separated by a comma -bad-functions=map,filter,apply,input - - -# try to find bugs in the code using type inference -# -[TYPECHECK] - -# Tells whether missing members accessed in mixin class should be ignored. A -# mixin class is detected if its name ends with "mixin" (case insensitive). -ignore-mixin-members=yes - -# List of classes names for which member attributes should not be checked -# (useful for classes with attributes dynamically set). -ignored-classes=SQLObject - -# When zope mode is activated, add a predefined set of Zope acquired attributes -# to generated-members. -zope=no - -# List of members which are set dynamically and missed by pylint inference -# system, and so shouldn't trigger E0201 when accessed. -generated-members=REQUEST,acl_users,aq_parent +# Regular expression which should only match functions or classes name which do +# not require a docstring +# was no-docstring-rgx=__.*__ +no-docstring-rgx=_.* -# checks for -# * external modules dependencies -# * relative / wildcard imports -# * cyclic imports -# * uses of deprecated modules -# [IMPORTS] # Deprecated modules which should not be used, separated by a comma deprecated-modules=regsub,string,TERMIOS,Bastion,rexec # Create a graph of every (i.e. internal and external) dependencies in the -# given file (report R0402 must not be disabled) +# given file (report RP0402 must not be disabled) import-graph= -# Create a graph of external dependencies in the given file (report R0402 must +# Create a graph of external dependencies in the given file (report RP0402 must # not be disabled) ext-import-graph= -# Create a graph of internal dependencies in the given file (report R0402 must +# Create a graph of internal dependencies in the given file (report RP0402 must # not be disabled) int-import-graph= -# checks for : -# * methods without self as first argument -# * overridden methods signature -# * access only to existent members via self -# * attributes not defined in the __init__ method -# * supported interfaces implementation -# * unreachable code -# -[CLASSES] - -# List of interface methods to ignore, separated by a comma. This is used for -# instance to not check methods defines in Zope's Interface base class. -ignore-iface-methods=isImplementedBy,deferred,extends,names,namesAndDescriptions,queryDescriptionFor,getBases,getDescriptionFor,getDoc,getName,getTaggedValue,getTaggedValueTags,isEqualOrExtendedBy,setTaggedValue,isImplementedByInstancesOf,adaptWith,is_implemented_by - -# List of method names used to declare (i.e. assign) instance attributes. -defining-attr-methods=__init__,__new__,setUp - - -# checks for sign of poor/misdesign: -# * number of methods, attributes, local variables... -# * size, complexity of functions, methods -# [DESIGN] # Maximum number of arguments for function / method # was max-args=5 max-args=10 +# Argument names that match this expression will be ignored. Default to name +# with leading underscore +ignored-argument-names=_.* + # Maximum number of locals for function / method body max-locals=15 @@ -275,47 +244,11 @@ min-public-methods=2 max-public-methods=20 -# checks for: -# * warning notes in the code like FIXME, XXX -# * PEP 263: source code with non ascii character but no encoding declaration -# -[MISCELLANEOUS] - -# List of note tags to take in consideration, separated by a comma. -notes=FIXME,XXX,TODO - - -# checks for similarities and duplicated code. This computation may be -# memory / CPU intensive, so you should disable it if you experiments some -# problems. -# -[SIMILARITIES] - -# Minimum lines number of a similarity. -min-similarity-lines=4 - -# Ignore comments when computing similarities. -ignore-comments=yes - -# Ignore docstrings when computing similarities. -ignore-docstrings=yes - - -# checks for : -# * unauthorized constructions -# * strict indentation -# * line length -# * use of <> instead of != -# -[FORMAT] - -# Maximum number of characters on a single line. -max-line-length=80 +[CLASSES] -# Maximum number of lines in a module -max-module-lines=1000 +# List of interface methods to ignore, separated by a comma. This is used for +# instance to not check methods defines in Zope's Interface base class. +ignore-iface-methods=isImplementedBy,deferred,extends,names,namesAndDescriptions,queryDescriptionFor,getBases,getDescriptionFor,getDoc,getName,getTaggedValue,getTaggedValueTags,isEqualOrExtendedBy,setTaggedValue,isImplementedByInstancesOf,adaptWith,is_implemented_by -# String used as indentation unit. This is usually " " (4 spaces) or "\t" (1 -# tab). -indent-string='\t' -#indent-string=' ' +# List of method names used to declare (i.e. assign) instance attributes. +defining-attr-methods=__init__,__new__,setUp