1# Pylint 2.6.x configuration file
2#
3# This file is generated by l2tdevtools update-dependencies.py, any dependency
4# related changes should be made in dependencies.ini.
5[MASTER]
6
7# A comma-separated list of package or module names from where C extensions may
8# be loaded. Extensions are loading into the active Python interpreter and may
9# run arbitrary code.
10extension-pkg-whitelist=
11
12# Specify a score threshold to be exceeded before program exits with error.
13fail-under=10.0
14
15# Add files or directories to the blacklist. They should be base names, not
16# paths.
17ignore=CVS
18
19# Add files or directories matching the regex patterns to the blacklist. The
20# regex matches against base names, not paths.
21ignore-patterns=
22
23# Python code to execute, usually for sys.path manipulation such as
24# pygtk.require().
25#init-hook=
26
27# Use multiple processes to speed up Pylint. Specifying 0 will auto-detect the
28# number of processors available to use.
29jobs=1
30
31# Control the amount of potential inferred values when inferring a single
32# object. This can help the performance when dealing with large functions or
33# complex, nested conditions.
34limit-inference-results=100
35
36# List of plugins (as comma separated values of python module names) to load,
37# usually to register additional checkers.
38load-plugins=pylint.extensions.docparams
39
40# Pickle collected data for later comparisons.
41persistent=yes
42
43# When enabled, pylint would attempt to guess common misconfiguration and emit
44# user-friendly hints instead of false-positive error messages.
45suggestion-mode=yes
46
47# Allow loading of arbitrary C extensions. Extensions are imported into the
48# active Python interpreter and may run arbitrary code.
49unsafe-load-any-extension=no
50
51
52[MESSAGES CONTROL]
53
54# Only show warnings with the listed confidence levels. Leave empty to show
55# all. Valid levels: HIGH, INFERENCE, INFERENCE_FAILURE, UNDEFINED.
56confidence=
57
58# Disable the message, report, category or checker with the given id(s). You
59# can either give multiple identifiers separated by comma (,) or put this
60# option multiple times (only on the command line, not in the configuration
61# file where it should appear only once). You can also use "--disable=all" to
62# disable everything first and then reenable specific checks. For example, if
63# you want to run only the similarities checker, you can use "--disable=all
64# --enable=similarities". If you want to run only the classes checker, but have
65# no Warning level messages displayed, use "--disable=all --enable=classes
66# --disable=W".
67disable=assignment-from-none,
68        bad-inline-option,
69        deprecated-pragma,
70        duplicate-code,
71        eq-without-hash,
72        file-ignored,
73        fixme,
74        locally-disabled,
75        locally-enabled,
76        logging-format-interpolation,
77        metaclass-assignment,
78        missing-param-doc,
79        no-absolute-import,
80        no-self-use,
81        parameter-unpacking,
82        raise-missing-from,
83        raw-checker-failed,
84        super-with-arguments,
85        suppressed-message,
86        too-few-public-methods,
87        too-many-ancestors,
88        too-many-boolean-expressions,
89        too-many-branches,
90        too-many-instance-attributes,
91        too-many-lines,
92        too-many-locals,
93        too-many-nested-blocks,
94        too-many-public-methods,
95        too-many-return-statements,
96        too-many-statements,
97        unsubscriptable-object,
98        useless-object-inheritance,
99        useless-suppression
100
101# Enable the message, report, category or checker with the given id(s). You can
102# either give multiple identifier separated by comma (,) or put this option
103# multiple time (only on the command line, not in the configuration file where
104# it should appear only once). See also the "--disable" option for examples.
105enable=
106
107
108[REPORTS]
109
110# Python expression which should return a score less than or equal to 10. You
111# have access to the variables 'error', 'warning', 'refactor', and 'convention'
112# which contain the number of messages in each category, as well as 'statement'
113# which is the total number of statements analyzed. This score is used by the
114# global evaluation report (RP0004).
115evaluation=10.0 - ((float(5 * error + warning + refactor + convention) / statement) * 10)
116
117# Template used to display messages. This is a python new-style format string
118# used to format the message information. See doc for all details.
119#msg-template=
120
121# Set the output format. Available formats are text, parseable, colorized, json
122# and msvs (visual studio). You can also give a reporter class, e.g.
123# mypackage.mymodule.MyReporterClass.
124output-format=text
125
126# Tells whether to display a full report or only the messages.
127reports=no
128
129# Activate the evaluation score.
130score=no
131
132
133[REFACTORING]
134
135# Maximum number of nested blocks for function / method body
136max-nested-blocks=5
137
138# Complete name of functions that never returns. When checking for
139# inconsistent-return-statements if a never returning function is called then
140# it will be considered as an explicit return statement and no message will be
141# printed.
142never-returning-functions=sys.exit
143
144
145[VARIABLES]
146
147# List of additional names supposed to be defined in builtins. Remember that
148# you should avoid defining new builtins when possible.
149additional-builtins=
150
151# Tells whether unused global variables should be treated as a violation.
152allow-global-unused-variables=yes
153
154# List of strings which can identify a callback function by name. A callback
155# name must start or end with one of those strings.
156callbacks=cb_,
157          _cb
158
159# A regular expression matching the name of dummy variables (i.e. expected to
160# not be used).
161dummy-variables-rgx=_+$|(_[a-zA-Z0-9_]*[a-zA-Z0-9]+?$)|dummy|^ignored_|^unused_
162
163# Argument names that match this expression will be ignored. Default to name
164# with leading underscore.
165ignored-argument-names=_.*|^ignored_|^unused_
166
167# Tells whether we should check for unused import in __init__ files.
168init-import=no
169
170# List of qualified module names which can have objects that can redefine
171# builtins.
172redefining-builtins-modules=six.moves,past.builtins,future.builtins,builtins,io
173
174
175[TYPECHECK]
176
177# List of decorators that produce context managers, such as
178# contextlib.contextmanager. Add to this list to register other decorators that
179# produce valid context managers.
180contextmanager-decorators=contextlib.contextmanager
181
182# List of members which are set dynamically and missed by pylint inference
183# system, and so shouldn't trigger E1101 when accessed. Python regular
184# expressions are accepted.
185generated-members=
186
187# Tells whether missing members accessed in mixin class should be ignored. A
188# mixin class is detected if its name ends with "mixin" (case insensitive).
189ignore-mixin-members=yes
190
191# Tells whether to warn about missing members when the owner of the attribute
192# is inferred to be None.
193ignore-none=yes
194
195# This flag controls whether pylint should warn about no-member and similar
196# checks whenever an opaque object is returned when inferring. The inference
197# can return multiple potential results while evaluating a Python object, but
198# some branches might not be evaluated, which results in partial inference. In
199# that case, it might be useful to still emit no-member and other checks for
200# the rest of the inferred objects.
201ignore-on-opaque-inference=yes
202
203# List of class names for which member attributes should not be checked (useful
204# for classes with dynamically set attributes). This supports the use of
205# qualified names.
206ignored-classes=optparse.Values,thread._local,_thread._local
207
208# List of module names for which member attributes should not be checked
209# (useful for modules/projects where namespaces are manipulated during runtime
210# and thus existing member attributes cannot be deduced by static analysis). It
211# supports qualified module names, as well as Unix pattern matching.
212ignored-modules=
213
214# Show a hint with possible names when a member name was not found. The aspect
215# of finding the hint is based on edit distance.
216missing-member-hint=yes
217
218# The minimum edit distance a name should have in order to be considered a
219# similar match for a missing member name.
220missing-member-hint-distance=1
221
222# The total number of similar names that should be taken in consideration when
223# showing a hint for a missing member.
224missing-member-max-choices=1
225
226# List of decorators that change the signature of a decorated function.
227signature-mutators=
228
229
230[LOGGING]
231
232# The type of string formatting that logging methods do. `old` means using %
233# formatting, `new` is for `{}` formatting.
234logging-format-style=old
235
236# Logging modules to check that the string format arguments are in logging
237# function parameter format.
238logging-modules=logging
239
240
241[BASIC]
242
243# Naming style matching correct argument names.
244argument-naming-style=snake_case
245
246# Regular expression matching correct argument names. Overrides argument-
247# naming-style.
248argument-rgx=(([a-z][a-z0-9_]*)|(_[a-z0-9_]*))$
249
250# Naming style matching correct attribute names.
251attr-naming-style=snake_case
252
253# Regular expression matching correct attribute names. Overrides attr-naming-
254# style.
255attr-rgx=(([a-z][a-z0-9_]*)|(_[a-z0-9_]*))$
256
257# Bad variable names which should always be refused, separated by a comma.
258bad-names=foo,
259          bar,
260          baz,
261          toto,
262          tutu,
263          tata
264
265# Bad variable names regexes, separated by a comma. If names match any regex,
266# they will always be refused
267bad-names-rgxs=
268
269# Naming style matching correct class attribute names.
270class-attribute-naming-style=any
271
272# Regular expression matching correct class attribute names. Overrides class-
273# attribute-naming-style.
274class-attribute-rgx=([A-Za-z_][A-Za-z0-9_]*|(__.*__))$
275
276# Naming style matching correct class names.
277class-naming-style=PascalCase
278
279# Regular expression matching correct class names. Overrides class-naming-
280# style.
281class-rgx=[A-Z_][a-zA-Z0-9]+$
282
283# Naming style matching correct constant names.
284const-naming-style=UPPER_CASE
285
286# Regular expression matching correct constant names. Overrides const-naming-
287# style.
288const-rgx=(([a-zA-Z_][a-zA-Z0-9_]*)|(__.*__))$
289
290# Minimum line length for functions/classes that require docstrings, shorter
291# ones are exempt.
292docstring-min-length=-1
293
294# Naming style matching correct function names.
295function-naming-style=snake_case
296
297# Regular expression matching correct function names. Overrides function-
298# naming-style.
299function-rgx=[A-Z_][a-zA-Z0-9_]*$
300
301# Good variable names which should always be accepted, separated by a comma.
302good-names=i,
303           j,
304           k,
305           ex,
306           Run,
307           _
308
309# Good variable names regexes, separated by a comma. If names match any regex,
310# they will always be accepted
311good-names-rgxs=
312
313# Include a hint for the correct naming format with invalid-name.
314include-naming-hint=no
315
316# Naming style matching correct inline iteration names.
317inlinevar-naming-style=any
318
319# Regular expression matching correct inline iteration names. Overrides
320# inlinevar-naming-style.
321inlinevar-rgx=[A-Za-z_][A-Za-z0-9_]*$
322
323# Naming style matching correct method names.
324method-naming-style=snake_case
325
326# Regular expression matching correct method names. Overrides method-naming-
327# style.
328method-rgx=(test|[A-Z_])[a-zA-Z0-9_]*$
329
330# Naming style matching correct module names.
331module-naming-style=snake_case
332
333# Regular expression matching correct module names. Overrides module-naming-
334# style.
335module-rgx=(([a-z_][a-z0-9_]*)|([A-Z][a-zA-Z0-9]+))$
336
337# Colon-delimited sets of names that determine each other's naming style when
338# the name regexes allow several styles.
339name-group=
340
341# Regular expression which should only match function or class names that do
342# not require a docstring.
343no-docstring-rgx=^_
344
345# List of decorators that produce properties, such as abc.abstractproperty. Add
346# to this list to register other decorators that produce valid properties.
347# These decorators are taken in consideration only for invalid-name.
348property-classes=abc.abstractproperty
349
350# Naming style matching correct variable names.
351variable-naming-style=snake_case
352
353# Regular expression matching correct variable names. Overrides variable-
354# naming-style.
355variable-rgx=(([a-z][a-z0-9_]*)|(_[a-z0-9_]*))$
356
357
358[MISCELLANEOUS]
359
360# List of note tags to take in consideration, separated by a comma.
361notes=FIXME,
362      XXX,
363      TODO
364
365# Regular expression of note tags to take in consideration.
366#notes-rgx=
367
368
369[FORMAT]
370
371# Expected format of line ending, e.g. empty (any line ending), LF or CRLF.
372expected-line-ending-format=
373
374# Regexp for a line that is allowed to be longer than the limit.
375ignore-long-lines=^\s*(# )?<?https?://\S+>?$
376
377# Number of spaces of indent required inside a hanging or continued line.
378indent-after-paren=4
379
380# String used as indentation unit. This is usually "    " (4 spaces) or "\t" (1
381# tab).
382indent-string='  '
383
384# Maximum number of characters on a single line.
385max-line-length=80
386
387# Maximum number of lines in a module.
388max-module-lines=1000
389
390# Allow the body of a class to be on the same line as the declaration if body
391# contains single statement.
392single-line-class-stmt=no
393
394# Allow the body of an if to be on the same line as the test if there is no
395# else.
396single-line-if-stmt=no
397
398
399[SPELLING]
400
401# Limits count of emitted suggestions for spelling mistakes.
402max-spelling-suggestions=4
403
404# Spelling dictionary name. Available dictionaries: en_AG (hunspell), en_AU
405# (hunspell), en_BS (hunspell), en_BW (hunspell), en_BZ (hunspell), en_CA
406# (hunspell), en_DK (hunspell), en_GB (hunspell), en_GH (hunspell), en_HK
407# (hunspell), en_IE (hunspell), en_IN (hunspell), en_JM (hunspell), en_MW
408# (hunspell), en_NA (hunspell), en_NG (hunspell), en_NZ (hunspell), en_PH
409# (hunspell), en_SG (hunspell), en_TT (hunspell), en_US (hunspell), en_ZA
410# (hunspell), en_ZM (hunspell), en_ZW (hunspell).
411spelling-dict=
412
413# List of comma separated words that should not be checked.
414spelling-ignore-words=
415
416# A path to a file that contains the private dictionary; one word per line.
417spelling-private-dict-file=
418
419# Tells whether to store unknown words to the private dictionary (see the
420# --spelling-private-dict-file option) instead of raising a message.
421spelling-store-unknown-words=no
422
423
424[SIMILARITIES]
425
426# Ignore comments when computing similarities.
427ignore-comments=yes
428
429# Ignore docstrings when computing similarities.
430ignore-docstrings=yes
431
432# Ignore imports when computing similarities.
433ignore-imports=no
434
435# Minimum lines number of a similarity.
436min-similarity-lines=4
437
438
439[STRING]
440
441# This flag controls whether inconsistent-quotes generates a warning when the
442# character used as a quote delimiter is used inconsistently within a module.
443check-quote-consistency=no
444
445# This flag controls whether the implicit-str-concat should generate a warning
446# on implicit string concatenation in sequences defined over several lines.
447check-str-concat-over-line-jumps=no
448
449
450[DESIGN]
451
452# Maximum number of arguments for function / method.
453max-args=10
454
455# Maximum number of attributes for a class (see R0902).
456max-attributes=7
457
458# Maximum number of boolean expressions in an if statement (see R0916).
459max-bool-expr=5
460
461# Maximum number of branch for function / method body.
462max-branches=12
463
464# Maximum number of locals for function / method body.
465max-locals=15
466
467# Maximum number of parents for a class (see R0901).
468max-parents=7
469
470# Maximum number of public methods for a class (see R0904).
471max-public-methods=20
472
473# Maximum number of return / yield for function / method body.
474max-returns=6
475
476# Maximum number of statements in function / method body.
477max-statements=50
478
479# Minimum number of public methods for a class (see R0903).
480min-public-methods=2
481
482
483[CLASSES]
484
485# List of method names used to declare (i.e. assign) instance attributes.
486defining-attr-methods=__init__,
487                      __new__,
488                      setUp,
489                      __post_init__
490
491# List of member names, which should be excluded from the protected access
492# warning.
493exclude-protected=_asdict,
494                  _fields,
495                  _replace,
496                  _source,
497                  _make
498
499# List of valid names for the first argument in a class method.
500valid-classmethod-first-arg=cls
501
502# List of valid names for the first argument in a metaclass class method.
503valid-metaclass-classmethod-first-arg=cls
504
505
506[IMPORTS]
507
508# List of modules that can be imported at any level, not just the top level
509# one.
510allow-any-import-level=
511
512# Allow wildcard imports from modules that define __all__.
513allow-wildcard-with-all=no
514
515# Analyse import fallback blocks. This can be used to support both Python 2 and
516# 3 compatible code, which means that the block might have code that exists
517# only in one or another interpreter, leading to false positives when analysed.
518analyse-fallback-blocks=no
519
520# Deprecated modules which should not be used, separated by a comma.
521deprecated-modules=optparse,tkinter.tix
522
523# Create a graph of external dependencies in the given file (report RP0402 must
524# not be disabled).
525ext-import-graph=
526
527# Create a graph of every (i.e. internal and external) dependencies in the
528# given file (report RP0402 must not be disabled).
529import-graph=
530
531# Create a graph of internal dependencies in the given file (report RP0402 must
532# not be disabled).
533int-import-graph=
534
535# Force import order to recognize a module as part of the standard
536# compatibility libraries.
537known-standard-library=
538
539# Force import order to recognize a module as part of a third party library.
540known-third-party=enchant
541
542# Couples of modules and preferred modules, separated by a comma.
543preferred-modules=
544
545
546[PARAMETER_DOCUMENTATION]
547
548# Whether to accept totally missing parameter documentation in the docstring of
549# a function that has parameters.
550accept-no-param-doc=yes
551
552# Whether to accept totally missing raises documentation in the docstring of a
553# function that raises an exception.
554accept-no-raise-doc=yes
555
556# Whether to accept totally missing return documentation in the docstring of a
557# function that returns a statement.
558accept-no-return-doc=yes
559
560# Whether to accept totally missing yields documentation in the docstring of a
561# generator.
562accept-no-yields-doc=yes
563
564# If the docstring type cannot be guessed the specified docstring type will be
565# used.
566default-docstring-type=default
567
568
569[EXCEPTIONS]
570
571# Exceptions that will emit a warning when being caught. Defaults to
572# "BaseException, Exception".
573overgeneral-exceptions=BaseException,
574                       Exception
575