py-pylint: updated to 2.4.2
What's New in Pylint 2.4.2?
* ``ignored-modules`` can skip submodules.
* ``self-assigning-variable`` skips class level assignments.
* ``consider-using-sys-exit`` is exempted when `exit()` is imported from `sys`
* Exempt annotated assignments without variable from ``class-variable-slots-conflict``
* Fix ``utils.is_error`` to account for functions returning early.
This fixes a false negative with ``unused-variable`` which was no longer triggered
when a function raised an exception as the last instruction, but the body of the function
still had unused variables.
What's New in Pylint 2.4.1?
* Exempt type checking definitions defined in both clauses of a type checking guard
* Exempt type checking definitions inside the type check guard
In a7f236528bb3758886b97285a56f3f9ce5b13a99 we added basic support
for emitting `used-before-assignment` if a variable was only defined
inside a type checking guard (using `TYPE_CHECKING` variable from `typing`)
Unfortunately that missed the case of using those type checking imports
inside the guard itself, which triggered spurious used-before-assignment errors.
* Require astroid >= 2.3 to avoid any compatibility issues.
What's New in Pylint 2.4.0?
* New check: ``import-outside-toplevel``
This check warns when modules are imported from places other than a
module toplevel, e.g. inside a function or a class.
* Handle inference ambiguity for ``invalid-format-index``
* Removed Python 2 specific checks such as ``relative-import``,
``invalid-encoded-data``, ``missing-super-argument``.
* Support forward references for ``function-redefined`` check.
* Handle redefinitions in case of type checking imports.
* Added a new check, ``consider-using-sys-exit``
This check is emitted when we detect that a quit() or exit() is invoked
instead of sys.exit(), which is the preferred way of exiting in program.
* ``useless-suppression`` check now ignores ``cyclic-import`` suppressions,
which could lead to false postiives due to incomplete context at the time
of the check.
* Added new checks, ``no-else-break`` and ``no-else-continue``
These checks highlight unnecessary ``else`` and ``elif`` blocks after
``break`` and ``continue`` statements.
* Don't emit ``protected-access`` when a single underscore prefixed attribute
is used inside a special method
* Fix the "statement" values in the PyLinter's stats reports by module.
* Added a new check, ``invalid-overridden-method``
This check is emitted when we detect that a method is overridden
as a property or a property is overridden as a method. This can indicate
a bug in the application code that will trigger a runtime error.
* Added a new check, ``arguments-out-of-order``
This check warns if you have arguments with names that match those in
a function's signature but you are passing them in to the function
in a different order.
* Added a new check, ``redeclared-assigned-name``
This check is emitted when ``pylint`` detects that a name
was assigned one or multiple times in the same assignment,
which indicate a potential bug.
* Ignore lambda calls with variadic arguments without a context.
Inferring variadic positional arguments and keyword arguments
will result into empty Tuples and Dicts, which can lead in
some cases to false positives with regard to no-value-for-parameter.
In order to avoid this, until we'll have support for call context
propagation, we're ignoring such cases if detected.
We already did that for function calls, but the previous fix
was not taking in consideration ``lambdas``
* Added a new check, ``self-assigning-variable``
This check is emitted when we detect that a variable is assigned
to itself, which might indicate a potential bug in the code application.
* Added a new check, ``property-with-parameters``.
This check is emitted when we detect that a defined property also
has parameters, which are useless.
* Excluded protocol classes from a couple of checks.
* Add a check `unnecessary-comprehension` that detects unnecessary comprehensions.
This check is emitted when ``pylint`` finds list-, set- or dict-comprehensions,
that are unnecessary and can be rewritten with the list-, set- or dict-constructors.
* Excluded PEP 526 instance and class variables from ``no-member``.
* Excluded `attrs` from `too-few-public-methods` check.
* ``unused-import`` emitted for the right import names in function scopes.
* Dropped support for Python 3.4.
* ``assignment-from-no-return`` not triggered for async methods.
* Don't emit ``attribute-defined-outside-init`` for variables defined in setters.
* Syntax errors report the column number.
* Support fully qualified typing imports for type annotations.
* Exclude ``__dict__`` from ``attribute-defined-outside-init``
* Fix pointer on spelling check when the error are more than one time in the same line.
* Fix crash happening when parent of called object cannot be determined
* Allow of in `GoogleDocstring.re_multiple_type`
* Added `subprocess-run-check` to handle subrocess.run without explicitly set `check` keyword.
* When we can't infer bare except handlers, skip ``try-except-raise``
* Handle more `unnecessary-lambda` cases when dealing with additional kwargs in wrapped calls
* Better postponed evaluation of annotations handling
* Support postponed evaluation of annotations for variable annotations.
* ``epylint.py_run`` defaults to ``python`` in case the current executable is not a Python one.
* Ignore raw docstrings when running Similarities checker with `ignore-docstrings=yes` option
* Fix crash when calling ``inherit_from_std_ex`` on a class which is its own ancestor
* Added a new check that warns the user if a function call is used inside a test but parentheses are missing.
* ``len-as-condition`` now only fires when a ``len(x)`` call is made without an explicit comparison
The message and description accompanying this checker has been changed
reflect this new behavior, by explicitly asking to either rely on the
fact that empty sequence are false or to compare the length with a scalar.
* Add ``preferred-module`` checker that notify if an import has a replacement module that should be used.
This check is emitted when ``pylint`` finds an imported module that has a
preferred replacement listed in ``preferred-modules``.
* ``assigning-non-slot`` not emitted for classes with unknown base classes.
* ``old-division`` is not emitted for non-Const nodes.
* Added method arguments to the dot writer for pyreverse.
* Support for linting file from stdin.
IDEs may benefit from the support for linting from an in-memory file.
* Added a new check `class-variable-slots-conflict`
This check is emitted when ``pylint`` finds a class variable that conflicts with a slot
name, which would raise a ``ValueError`` at runtime.
* Added new check: dict-iter-missing-items (E1141)
* Fix issue with pylint name in output of python -m pylint --version
* Relicense logo material under the CC BY-SA 4.0 license.
* Skip `if` expressions from f-strings for the `check_elif` checker
* C0412 (ungrouped-import) is now compatible with isort.
* Added new extension to detect too much code in a try clause
* ``signature-mutators`` option was added
With this option, users can choose to ignore `too-many-function-args`, `unexpected-keyword-arg`,
and `no-value-for-parameter` for functions decorated with decorators that change
the signature of a decorated function.
* Fixed a pragma comment on its own physical line being ignored when part
of a logical line with the previous physical line.
* Fixed false `undefined-loop-variable` for a function defined in the loop,
that uses the variable defined in that loop.
* Fixed `unused-argument` and `function-redefined` getting raised for
functions decorated with `typing.overload`.
* Fixed a false positive with ``consider-using-dict-comprehension`` for constructions that can't be converted to a comprehension
* Added ``__post_init__`` to ``defining-attr-methods`` in order to avoid ``attribute-defined-outside-init`` in dataclasses.
* Changed description of W0199 to use the term 2-item-tuple instead of 2-uple.
* Allow a `.` as a prefix for Sphinx name resolution.
* Checkers must now keep a 1 to 1 relationship between "msgid" (ie: C1234) and "symbol" (ie : human-readable-symbol)
* In checkers, an old_names can now be used for multiple new messages and pylint is now a little faster
* Allow the choice of f-strings as a valid way of formatting logging strings.
* Added ``--list-msgs-enabled`` command to list all enabled and disabled messages given the current RC file and command line arguments.
2019-10-01 13:38:06 +02:00
|
|
|
@comment $NetBSD: PLIST,v 1.17 2019/10/01 11:38:06 adam Exp $
|
py-pylint: updated to 2.2.0
What's New in Pylint 2.2?
* Consider range() objects for undefined-loop-variable leaking from iteration.
* deprecated-method can use the attribute name for identifying a deprecated method
Previously we were using the fully qualified name, which we still do, but the fully
qualified name for some unittest deprecated aliases leads to a generic
deprecation function. Instead on relying on that, we now also rely on the attribute
name, which should solve some false positives.
* Fix compatibility with changes to stdlib tokenizer.
* pylint is less eager to consume the whole line for pragmas
* Obtain the correct number of CPUs for virtualized or containerized environments.
* Change unbalanced-tuple-unpacking back to a warning.
It used to be a warning until a couple of years ago, after it was promoted to
an error. But the check might be suggesting the wrong thing in some cases,
for instance when checking against sys.argv which cannot be known at static
analysis time. Given it might rely on potential unknown data, it's best to
have it as a warning.
* Remove enumerate usage suggestion when defining __iter__ (C0200)
* Emit too-many-starred-assignment only when the number of Starred nodes is per assignment elements
* try-except-raise checker now handles multilevel inheritance hirerachy for exceptions correctly.
* Add a new check, simplifiable-if-expression for expressions like True if cond else False.
* too-few-public-methods is not reported for typing.NamedTuple
* too-few-public-methods is not reported for dataclasses created with options.
* Remove wrong modules from 'bad-python3-import'.
* The json reporter prints an empty list when no messages are emitted
* Add a new check, duplicate-string-formatting-argument
This new check is emitted whenever a duplicate string formatting argument
is found.
* assignment-from-no-return is not emitted for coroutines.
* Report format string type mismatches.
* consider-using-ternary and simplified-boolean-expression no longer emit for sequence based checks
* Handle AstroidSyntaxError when trying to import a module.
* Allow __module__ to be redefined at a class level.
* pylint used to emit a unused-variable error if unused import was found in the function. Now instead of
unused-variable, unused-import is emitted.
* Handle asyncio.coroutine when looking for not-an-iterable check.
* The locally-enabled check is gone.
* Infer decorated methods when looking for method-hidden
* Pick the latest value from the inferred values when looking for raising-non-exception
* Extend the TYPE_CHECKING guard to TYPE_CHECKING name as well, not just the attribute
* Ignore import x.y.z as z cases for checker useless-import-alias.
* Fix false positive undefined-variable and used-before-assignment with nonlocal keyword usage.
* Stop protected-access exception for missing class attributes
* Don't emit assignment-from-no-return for decorated function nodes
* unnecessary-pass is now also emitted when a function or class contains only docstring and pass statement.
In Python, stubbed functions often have a body that contains just a single pass statement,
indicating that the function doesn't do anything. However, a stubbed function can also have just a
docstring, and function with a docstring and no body also does nothing.
* duplicate-argument-name is emitted for more than one duplicate argument per function
* Allow double indentation levels for more distinguishable indentations
* Consider tuples in exception handler for try-except-raise.
* Fix astroid.ClassDef check in checkers.utils.is_subclass_of
* Fix wildcard imports being ignored by the import checker
* Fix external/internal distinction being broken in the import graph
* Fix wildcard import check not skipping __init__.py
* Fix --ignore-imports to understand multi-line imports
* Add a new check 'implicit-str-concat-in-sequence' to spot string concatenation inside lists, sets & tuples.
* literal-comparison is now emitted for 0 and 1 literals.
2018-11-26 10:09:34 +01:00
|
|
|
bin/epylint-${PYVERSSUFFIX}
|
|
|
|
bin/pylint-${PYVERSSUFFIX}
|
|
|
|
bin/pyreverse-${PYVERSSUFFIX}
|
|
|
|
bin/symilar-${PYVERSSUFFIX}
|
2014-03-12 02:26:03 +01:00
|
|
|
${PYSITELIB}/${EGG_INFODIR}/PKG-INFO
|
|
|
|
${PYSITELIB}/${EGG_INFODIR}/SOURCES.txt
|
|
|
|
${PYSITELIB}/${EGG_INFODIR}/dependency_links.txt
|
|
|
|
${PYSITELIB}/${EGG_INFODIR}/entry_points.txt
|
|
|
|
${PYSITELIB}/${EGG_INFODIR}/requires.txt
|
|
|
|
${PYSITELIB}/${EGG_INFODIR}/top_level.txt
|
|
|
|
${PYSITELIB}/pylint/__init__.py
|
2016-08-29 17:58:58 +02:00
|
|
|
${PYSITELIB}/pylint/__init__.pyc
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/__init__.pyo
|
|
|
|
${PYSITELIB}/pylint/__main__.py
|
2016-08-29 17:58:58 +02:00
|
|
|
${PYSITELIB}/pylint/__main__.pyc
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/__main__.pyo
|
|
|
|
${PYSITELIB}/pylint/__pkginfo__.py
|
2016-08-29 17:58:58 +02:00
|
|
|
${PYSITELIB}/pylint/__pkginfo__.pyc
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/__pkginfo__.pyo
|
2014-03-12 02:26:03 +01:00
|
|
|
${PYSITELIB}/pylint/checkers/__init__.py
|
2016-08-29 17:58:58 +02:00
|
|
|
${PYSITELIB}/pylint/checkers/__init__.pyc
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/checkers/__init__.pyo
|
2016-08-29 17:58:58 +02:00
|
|
|
${PYSITELIB}/pylint/checkers/async.py
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/checkers/async.pyc
|
|
|
|
${PYSITELIB}/pylint/checkers/async.pyo
|
2016-08-29 17:58:58 +02:00
|
|
|
${PYSITELIB}/pylint/checkers/base.py
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/checkers/base.pyc
|
|
|
|
${PYSITELIB}/pylint/checkers/base.pyo
|
py-pylint: updated to 2.4.2
What's New in Pylint 2.4.2?
* ``ignored-modules`` can skip submodules.
* ``self-assigning-variable`` skips class level assignments.
* ``consider-using-sys-exit`` is exempted when `exit()` is imported from `sys`
* Exempt annotated assignments without variable from ``class-variable-slots-conflict``
* Fix ``utils.is_error`` to account for functions returning early.
This fixes a false negative with ``unused-variable`` which was no longer triggered
when a function raised an exception as the last instruction, but the body of the function
still had unused variables.
What's New in Pylint 2.4.1?
* Exempt type checking definitions defined in both clauses of a type checking guard
* Exempt type checking definitions inside the type check guard
In a7f236528bb3758886b97285a56f3f9ce5b13a99 we added basic support
for emitting `used-before-assignment` if a variable was only defined
inside a type checking guard (using `TYPE_CHECKING` variable from `typing`)
Unfortunately that missed the case of using those type checking imports
inside the guard itself, which triggered spurious used-before-assignment errors.
* Require astroid >= 2.3 to avoid any compatibility issues.
What's New in Pylint 2.4.0?
* New check: ``import-outside-toplevel``
This check warns when modules are imported from places other than a
module toplevel, e.g. inside a function or a class.
* Handle inference ambiguity for ``invalid-format-index``
* Removed Python 2 specific checks such as ``relative-import``,
``invalid-encoded-data``, ``missing-super-argument``.
* Support forward references for ``function-redefined`` check.
* Handle redefinitions in case of type checking imports.
* Added a new check, ``consider-using-sys-exit``
This check is emitted when we detect that a quit() or exit() is invoked
instead of sys.exit(), which is the preferred way of exiting in program.
* ``useless-suppression`` check now ignores ``cyclic-import`` suppressions,
which could lead to false postiives due to incomplete context at the time
of the check.
* Added new checks, ``no-else-break`` and ``no-else-continue``
These checks highlight unnecessary ``else`` and ``elif`` blocks after
``break`` and ``continue`` statements.
* Don't emit ``protected-access`` when a single underscore prefixed attribute
is used inside a special method
* Fix the "statement" values in the PyLinter's stats reports by module.
* Added a new check, ``invalid-overridden-method``
This check is emitted when we detect that a method is overridden
as a property or a property is overridden as a method. This can indicate
a bug in the application code that will trigger a runtime error.
* Added a new check, ``arguments-out-of-order``
This check warns if you have arguments with names that match those in
a function's signature but you are passing them in to the function
in a different order.
* Added a new check, ``redeclared-assigned-name``
This check is emitted when ``pylint`` detects that a name
was assigned one or multiple times in the same assignment,
which indicate a potential bug.
* Ignore lambda calls with variadic arguments without a context.
Inferring variadic positional arguments and keyword arguments
will result into empty Tuples and Dicts, which can lead in
some cases to false positives with regard to no-value-for-parameter.
In order to avoid this, until we'll have support for call context
propagation, we're ignoring such cases if detected.
We already did that for function calls, but the previous fix
was not taking in consideration ``lambdas``
* Added a new check, ``self-assigning-variable``
This check is emitted when we detect that a variable is assigned
to itself, which might indicate a potential bug in the code application.
* Added a new check, ``property-with-parameters``.
This check is emitted when we detect that a defined property also
has parameters, which are useless.
* Excluded protocol classes from a couple of checks.
* Add a check `unnecessary-comprehension` that detects unnecessary comprehensions.
This check is emitted when ``pylint`` finds list-, set- or dict-comprehensions,
that are unnecessary and can be rewritten with the list-, set- or dict-constructors.
* Excluded PEP 526 instance and class variables from ``no-member``.
* Excluded `attrs` from `too-few-public-methods` check.
* ``unused-import`` emitted for the right import names in function scopes.
* Dropped support for Python 3.4.
* ``assignment-from-no-return`` not triggered for async methods.
* Don't emit ``attribute-defined-outside-init`` for variables defined in setters.
* Syntax errors report the column number.
* Support fully qualified typing imports for type annotations.
* Exclude ``__dict__`` from ``attribute-defined-outside-init``
* Fix pointer on spelling check when the error are more than one time in the same line.
* Fix crash happening when parent of called object cannot be determined
* Allow of in `GoogleDocstring.re_multiple_type`
* Added `subprocess-run-check` to handle subrocess.run without explicitly set `check` keyword.
* When we can't infer bare except handlers, skip ``try-except-raise``
* Handle more `unnecessary-lambda` cases when dealing with additional kwargs in wrapped calls
* Better postponed evaluation of annotations handling
* Support postponed evaluation of annotations for variable annotations.
* ``epylint.py_run`` defaults to ``python`` in case the current executable is not a Python one.
* Ignore raw docstrings when running Similarities checker with `ignore-docstrings=yes` option
* Fix crash when calling ``inherit_from_std_ex`` on a class which is its own ancestor
* Added a new check that warns the user if a function call is used inside a test but parentheses are missing.
* ``len-as-condition`` now only fires when a ``len(x)`` call is made without an explicit comparison
The message and description accompanying this checker has been changed
reflect this new behavior, by explicitly asking to either rely on the
fact that empty sequence are false or to compare the length with a scalar.
* Add ``preferred-module`` checker that notify if an import has a replacement module that should be used.
This check is emitted when ``pylint`` finds an imported module that has a
preferred replacement listed in ``preferred-modules``.
* ``assigning-non-slot`` not emitted for classes with unknown base classes.
* ``old-division`` is not emitted for non-Const nodes.
* Added method arguments to the dot writer for pyreverse.
* Support for linting file from stdin.
IDEs may benefit from the support for linting from an in-memory file.
* Added a new check `class-variable-slots-conflict`
This check is emitted when ``pylint`` finds a class variable that conflicts with a slot
name, which would raise a ``ValueError`` at runtime.
* Added new check: dict-iter-missing-items (E1141)
* Fix issue with pylint name in output of python -m pylint --version
* Relicense logo material under the CC BY-SA 4.0 license.
* Skip `if` expressions from f-strings for the `check_elif` checker
* C0412 (ungrouped-import) is now compatible with isort.
* Added new extension to detect too much code in a try clause
* ``signature-mutators`` option was added
With this option, users can choose to ignore `too-many-function-args`, `unexpected-keyword-arg`,
and `no-value-for-parameter` for functions decorated with decorators that change
the signature of a decorated function.
* Fixed a pragma comment on its own physical line being ignored when part
of a logical line with the previous physical line.
* Fixed false `undefined-loop-variable` for a function defined in the loop,
that uses the variable defined in that loop.
* Fixed `unused-argument` and `function-redefined` getting raised for
functions decorated with `typing.overload`.
* Fixed a false positive with ``consider-using-dict-comprehension`` for constructions that can't be converted to a comprehension
* Added ``__post_init__`` to ``defining-attr-methods`` in order to avoid ``attribute-defined-outside-init`` in dataclasses.
* Changed description of W0199 to use the term 2-item-tuple instead of 2-uple.
* Allow a `.` as a prefix for Sphinx name resolution.
* Checkers must now keep a 1 to 1 relationship between "msgid" (ie: C1234) and "symbol" (ie : human-readable-symbol)
* In checkers, an old_names can now be used for multiple new messages and pylint is now a little faster
* Allow the choice of f-strings as a valid way of formatting logging strings.
* Added ``--list-msgs-enabled`` command to list all enabled and disabled messages given the current RC file and command line arguments.
2019-10-01 13:38:06 +02:00
|
|
|
${PYSITELIB}/pylint/checkers/base_checker.py
|
|
|
|
${PYSITELIB}/pylint/checkers/base_checker.pyc
|
|
|
|
${PYSITELIB}/pylint/checkers/base_checker.pyo
|
2016-08-29 17:58:58 +02:00
|
|
|
${PYSITELIB}/pylint/checkers/classes.py
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/checkers/classes.pyc
|
|
|
|
${PYSITELIB}/pylint/checkers/classes.pyo
|
2016-08-29 17:58:58 +02:00
|
|
|
${PYSITELIB}/pylint/checkers/design_analysis.py
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/checkers/design_analysis.pyc
|
|
|
|
${PYSITELIB}/pylint/checkers/design_analysis.pyo
|
2016-08-29 17:58:58 +02:00
|
|
|
${PYSITELIB}/pylint/checkers/exceptions.py
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/checkers/exceptions.pyc
|
|
|
|
${PYSITELIB}/pylint/checkers/exceptions.pyo
|
2016-08-29 17:58:58 +02:00
|
|
|
${PYSITELIB}/pylint/checkers/format.py
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/checkers/format.pyc
|
|
|
|
${PYSITELIB}/pylint/checkers/format.pyo
|
2016-08-29 17:58:58 +02:00
|
|
|
${PYSITELIB}/pylint/checkers/imports.py
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/checkers/imports.pyc
|
|
|
|
${PYSITELIB}/pylint/checkers/imports.pyo
|
2016-08-29 17:58:58 +02:00
|
|
|
${PYSITELIB}/pylint/checkers/logging.py
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/checkers/logging.pyc
|
|
|
|
${PYSITELIB}/pylint/checkers/logging.pyo
|
2016-08-29 17:58:58 +02:00
|
|
|
${PYSITELIB}/pylint/checkers/misc.py
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/checkers/misc.pyc
|
|
|
|
${PYSITELIB}/pylint/checkers/misc.pyo
|
2016-08-29 17:58:58 +02:00
|
|
|
${PYSITELIB}/pylint/checkers/newstyle.py
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/checkers/newstyle.pyc
|
|
|
|
${PYSITELIB}/pylint/checkers/newstyle.pyo
|
2016-08-29 17:58:58 +02:00
|
|
|
${PYSITELIB}/pylint/checkers/python3.py
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/checkers/python3.pyc
|
|
|
|
${PYSITELIB}/pylint/checkers/python3.pyo
|
2016-08-29 17:58:58 +02:00
|
|
|
${PYSITELIB}/pylint/checkers/raw_metrics.py
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/checkers/raw_metrics.pyc
|
|
|
|
${PYSITELIB}/pylint/checkers/raw_metrics.pyo
|
2017-07-16 22:33:32 +02:00
|
|
|
${PYSITELIB}/pylint/checkers/refactoring.py
|
|
|
|
${PYSITELIB}/pylint/checkers/refactoring.pyc
|
|
|
|
${PYSITELIB}/pylint/checkers/refactoring.pyo
|
2016-08-29 17:58:58 +02:00
|
|
|
${PYSITELIB}/pylint/checkers/similar.py
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/checkers/similar.pyc
|
|
|
|
${PYSITELIB}/pylint/checkers/similar.pyo
|
2016-08-29 17:58:58 +02:00
|
|
|
${PYSITELIB}/pylint/checkers/spelling.py
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/checkers/spelling.pyc
|
|
|
|
${PYSITELIB}/pylint/checkers/spelling.pyo
|
2016-08-29 17:58:58 +02:00
|
|
|
${PYSITELIB}/pylint/checkers/stdlib.py
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/checkers/stdlib.pyc
|
|
|
|
${PYSITELIB}/pylint/checkers/stdlib.pyo
|
2016-08-29 17:58:58 +02:00
|
|
|
${PYSITELIB}/pylint/checkers/strings.py
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/checkers/strings.pyc
|
|
|
|
${PYSITELIB}/pylint/checkers/strings.pyo
|
2016-08-29 17:58:58 +02:00
|
|
|
${PYSITELIB}/pylint/checkers/typecheck.py
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/checkers/typecheck.pyc
|
|
|
|
${PYSITELIB}/pylint/checkers/typecheck.pyo
|
2016-08-29 17:58:58 +02:00
|
|
|
${PYSITELIB}/pylint/checkers/utils.py
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/checkers/utils.pyc
|
|
|
|
${PYSITELIB}/pylint/checkers/utils.pyo
|
2016-08-29 17:58:58 +02:00
|
|
|
${PYSITELIB}/pylint/checkers/variables.py
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/checkers/variables.pyc
|
|
|
|
${PYSITELIB}/pylint/checkers/variables.pyo
|
2014-03-12 02:26:03 +01:00
|
|
|
${PYSITELIB}/pylint/config.py
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/config.pyc
|
|
|
|
${PYSITELIB}/pylint/config.pyo
|
py-pylint: updated to 2.4.2
What's New in Pylint 2.4.2?
* ``ignored-modules`` can skip submodules.
* ``self-assigning-variable`` skips class level assignments.
* ``consider-using-sys-exit`` is exempted when `exit()` is imported from `sys`
* Exempt annotated assignments without variable from ``class-variable-slots-conflict``
* Fix ``utils.is_error`` to account for functions returning early.
This fixes a false negative with ``unused-variable`` which was no longer triggered
when a function raised an exception as the last instruction, but the body of the function
still had unused variables.
What's New in Pylint 2.4.1?
* Exempt type checking definitions defined in both clauses of a type checking guard
* Exempt type checking definitions inside the type check guard
In a7f236528bb3758886b97285a56f3f9ce5b13a99 we added basic support
for emitting `used-before-assignment` if a variable was only defined
inside a type checking guard (using `TYPE_CHECKING` variable from `typing`)
Unfortunately that missed the case of using those type checking imports
inside the guard itself, which triggered spurious used-before-assignment errors.
* Require astroid >= 2.3 to avoid any compatibility issues.
What's New in Pylint 2.4.0?
* New check: ``import-outside-toplevel``
This check warns when modules are imported from places other than a
module toplevel, e.g. inside a function or a class.
* Handle inference ambiguity for ``invalid-format-index``
* Removed Python 2 specific checks such as ``relative-import``,
``invalid-encoded-data``, ``missing-super-argument``.
* Support forward references for ``function-redefined`` check.
* Handle redefinitions in case of type checking imports.
* Added a new check, ``consider-using-sys-exit``
This check is emitted when we detect that a quit() or exit() is invoked
instead of sys.exit(), which is the preferred way of exiting in program.
* ``useless-suppression`` check now ignores ``cyclic-import`` suppressions,
which could lead to false postiives due to incomplete context at the time
of the check.
* Added new checks, ``no-else-break`` and ``no-else-continue``
These checks highlight unnecessary ``else`` and ``elif`` blocks after
``break`` and ``continue`` statements.
* Don't emit ``protected-access`` when a single underscore prefixed attribute
is used inside a special method
* Fix the "statement" values in the PyLinter's stats reports by module.
* Added a new check, ``invalid-overridden-method``
This check is emitted when we detect that a method is overridden
as a property or a property is overridden as a method. This can indicate
a bug in the application code that will trigger a runtime error.
* Added a new check, ``arguments-out-of-order``
This check warns if you have arguments with names that match those in
a function's signature but you are passing them in to the function
in a different order.
* Added a new check, ``redeclared-assigned-name``
This check is emitted when ``pylint`` detects that a name
was assigned one or multiple times in the same assignment,
which indicate a potential bug.
* Ignore lambda calls with variadic arguments without a context.
Inferring variadic positional arguments and keyword arguments
will result into empty Tuples and Dicts, which can lead in
some cases to false positives with regard to no-value-for-parameter.
In order to avoid this, until we'll have support for call context
propagation, we're ignoring such cases if detected.
We already did that for function calls, but the previous fix
was not taking in consideration ``lambdas``
* Added a new check, ``self-assigning-variable``
This check is emitted when we detect that a variable is assigned
to itself, which might indicate a potential bug in the code application.
* Added a new check, ``property-with-parameters``.
This check is emitted when we detect that a defined property also
has parameters, which are useless.
* Excluded protocol classes from a couple of checks.
* Add a check `unnecessary-comprehension` that detects unnecessary comprehensions.
This check is emitted when ``pylint`` finds list-, set- or dict-comprehensions,
that are unnecessary and can be rewritten with the list-, set- or dict-constructors.
* Excluded PEP 526 instance and class variables from ``no-member``.
* Excluded `attrs` from `too-few-public-methods` check.
* ``unused-import`` emitted for the right import names in function scopes.
* Dropped support for Python 3.4.
* ``assignment-from-no-return`` not triggered for async methods.
* Don't emit ``attribute-defined-outside-init`` for variables defined in setters.
* Syntax errors report the column number.
* Support fully qualified typing imports for type annotations.
* Exclude ``__dict__`` from ``attribute-defined-outside-init``
* Fix pointer on spelling check when the error are more than one time in the same line.
* Fix crash happening when parent of called object cannot be determined
* Allow of in `GoogleDocstring.re_multiple_type`
* Added `subprocess-run-check` to handle subrocess.run without explicitly set `check` keyword.
* When we can't infer bare except handlers, skip ``try-except-raise``
* Handle more `unnecessary-lambda` cases when dealing with additional kwargs in wrapped calls
* Better postponed evaluation of annotations handling
* Support postponed evaluation of annotations for variable annotations.
* ``epylint.py_run`` defaults to ``python`` in case the current executable is not a Python one.
* Ignore raw docstrings when running Similarities checker with `ignore-docstrings=yes` option
* Fix crash when calling ``inherit_from_std_ex`` on a class which is its own ancestor
* Added a new check that warns the user if a function call is used inside a test but parentheses are missing.
* ``len-as-condition`` now only fires when a ``len(x)`` call is made without an explicit comparison
The message and description accompanying this checker has been changed
reflect this new behavior, by explicitly asking to either rely on the
fact that empty sequence are false or to compare the length with a scalar.
* Add ``preferred-module`` checker that notify if an import has a replacement module that should be used.
This check is emitted when ``pylint`` finds an imported module that has a
preferred replacement listed in ``preferred-modules``.
* ``assigning-non-slot`` not emitted for classes with unknown base classes.
* ``old-division`` is not emitted for non-Const nodes.
* Added method arguments to the dot writer for pyreverse.
* Support for linting file from stdin.
IDEs may benefit from the support for linting from an in-memory file.
* Added a new check `class-variable-slots-conflict`
This check is emitted when ``pylint`` finds a class variable that conflicts with a slot
name, which would raise a ``ValueError`` at runtime.
* Added new check: dict-iter-missing-items (E1141)
* Fix issue with pylint name in output of python -m pylint --version
* Relicense logo material under the CC BY-SA 4.0 license.
* Skip `if` expressions from f-strings for the `check_elif` checker
* C0412 (ungrouped-import) is now compatible with isort.
* Added new extension to detect too much code in a try clause
* ``signature-mutators`` option was added
With this option, users can choose to ignore `too-many-function-args`, `unexpected-keyword-arg`,
and `no-value-for-parameter` for functions decorated with decorators that change
the signature of a decorated function.
* Fixed a pragma comment on its own physical line being ignored when part
of a logical line with the previous physical line.
* Fixed false `undefined-loop-variable` for a function defined in the loop,
that uses the variable defined in that loop.
* Fixed `unused-argument` and `function-redefined` getting raised for
functions decorated with `typing.overload`.
* Fixed a false positive with ``consider-using-dict-comprehension`` for constructions that can't be converted to a comprehension
* Added ``__post_init__`` to ``defining-attr-methods`` in order to avoid ``attribute-defined-outside-init`` in dataclasses.
* Changed description of W0199 to use the term 2-item-tuple instead of 2-uple.
* Allow a `.` as a prefix for Sphinx name resolution.
* Checkers must now keep a 1 to 1 relationship between "msgid" (ie: C1234) and "symbol" (ie : human-readable-symbol)
* In checkers, an old_names can now be used for multiple new messages and pylint is now a little faster
* Allow the choice of f-strings as a valid way of formatting logging strings.
* Added ``--list-msgs-enabled`` command to list all enabled and disabled messages given the current RC file and command line arguments.
2019-10-01 13:38:06 +02:00
|
|
|
${PYSITELIB}/pylint/constants.py
|
|
|
|
${PYSITELIB}/pylint/constants.pyc
|
|
|
|
${PYSITELIB}/pylint/constants.pyo
|
2014-03-12 02:26:03 +01:00
|
|
|
${PYSITELIB}/pylint/epylint.py
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/epylint.pyc
|
|
|
|
${PYSITELIB}/pylint/epylint.pyo
|
2017-07-16 22:33:32 +02:00
|
|
|
${PYSITELIB}/pylint/exceptions.py
|
|
|
|
${PYSITELIB}/pylint/exceptions.pyc
|
|
|
|
${PYSITELIB}/pylint/exceptions.pyo
|
Updated py-pylint to 1.6.1.
What's new in Pylint 1.6.1?
===========================
Release date: 2016-07-07
* Use environment markers for supporting conditional dependencies.
What's New in Pylint 1.6.0?
===========================
Release date: 2016-07-07
* Added a new extension, `pylint.extensions.mccabe`, for warning
about complexity in code.
* Deprecate support for --optimize-ast. Part of #975.
* Deprecate support for the HTML output. Part of #975.
* Deprecate support for --output-files. Part of #975.
* Fixed a documentation error for the check_docs extension. Fixes #735.
* Made the list of property-defining decorators configurable.
* Fix a bug where the top name of a qualified import was detected as unused variable.
Close #923.
* bad-builtin is now an extension check.
* generated-members support qualified name through regular expressions.
For instance, one can specify a regular expression as --generated-members=astroid.node_classes.*
for ignoring every no-member error that is accessed as in `astroid.node_classes.missing.object`.
* Add the ability to ignore files based on regex matching, with the new ``--ignore-patterns``
option.
This addresses issue #156 by allowing for multiple ignore patterns
to be specified. Rather than clobber the existing ignore option, we
introduced a new one called ignore-patterns.
* Added a new error, 'trailing-newlines', which is emitted when a file
has trailing new lines.
Closes issue #682.
* Add a new option, 'redefining-builtins-modules', for controlling the modules
which can redefine builtins, such as six.moves and future.builtins.
Close #464.
* 'reimported' is emitted when the same name is imported from different module.
Close #162.
* Add a new recommendation checker, 'consider-iterating-dictionary', which is emitted
which is emitted when a dictionary is iterated through .keys().
Close #699
* Use the configparser backport for Python 2
This fixes a problem we were having with comments inside values, which is fixed
in Python 3's configparser.
Close #828
* A new error was added, 'invalid-length-returned', when the `__len__`
special method returned something else than a non-negative number.
Close issue #557
* Switch to using isort internally for wrong-import-order.
Closes #879.
* check_docs extension can find constructor parameters in __init__.
Closes #887.
* Don't warn about invalid-sequence-index if the indexed object has unknown base
classes.
Closes #867
* Don't crash when checking, for super-init-not-called, a method defined in an if block.
* Do not emit import-error or no-name-in-module for fallback import blocks by default.
Until now, we warned with these errors when a fallback import block (a TryExcept block
that contained imports for Python 2 and 3) was found, but this gets cumbersome when
trying to write compatible code. As such, we don't check these blocks by default,
but the analysis can be enforced by using the new ``--analyse-fallback-block`` flag.
Close #769.
What's New in Pylint 1.5.6?
===========================
Release date: 2016-06-06
* config files with BOM markers can now be read.
Close #864.
* epylint.py_run does not crash on big files, using .communicate() instead of .wait()
Close #599
What's New in Pylint 1.5.5?
===========================
Release date: 2016-03-21
* Let visit_importfrom from Python 3 porting checker be called when everything is disabled
Because the visit method was filtering the patterns it was expecting to be activated,
it didn't run when everything but one pattern was disabled, leading to spurious false
positives
Close #852
* Don't emit unsubscriptable-value for classes with unknown
base classes.
Close #776.
* Use an OrderedDict for storing the configuration elements
This fixes an issue related to impredictible order of the disable / enable
elements from a config file. In certain cases, the disable was coming before
the enable which resulted in classes of errors to be enabled, even though the intention
was to disable them. The best example for this was in the context of running multiple
processes, each one of it having different enables / disables that affected the output.
Close #815
* Don't consider bare and broad except handlers as ignoring NameError,
AttributeError and similar exceptions, in the context of checkers for
these issues.
Closes issue #826
What's New in Pylint 1.5.4?
===========================
Release date: 2016-01-15
* Merge StringMethodChecker with StringFormatChecker. This fixes a
bug where disabling all the messages and enabling only a handful of
messages from the StringFormatChecker would have resulted in no
messages at all.
* Don't apply unneeded-not over sets.
What's New in Pylint 1.5.3?
===========================
Release date: 2016-01-11
* Handle the import fallback idiom with regard to wrong-import-order.
Closes issue #750.
* Decouple the displaying of reports from the displaying of messages
Some reporters are aggregating the messages instead of displaying
them when they are available. The actual displaying was conflatted
in the generate_reports. Unfortunately this behaviour was flaky
and in the case of the JSON reporter, the messages weren't shown
at all if a file had syntax errors or if it was missing.
In order to fix this, the aggregated messages can now be
displayed with Reporter.display_message, while the reports are
displayed with display_reports.
Closes issues #766 and #765.
* Ignore function calls with variadic arguments without a context.
Inferring variadic positional arguments and keyword arguments
will result into empty Tuples and Dicts, which can lead in
some cases to false positives with regard to no-value-for-parameter.
In order to avoid this, until we'll have support for call context
propagation, we're ignoring such cases if detected.
Closes issue #722.
* Treat AsyncFunctionDef just like FunctionDef nodes,
by implementing visit_asyncfunctiondef in terms of
visit_functiondef.
Closes issue #767.
* Take in account kwonlyargs when verifying that arguments
are defined with the check_docs extension.
Closes issue #745.
* Suppress reporting 'unneeded-not' inside `__ne__` methods
Closes issue #749.
What's New in Pylint 1.5.2?
===========================
Release date: 2015-12-21
* Don't crash if graphviz is not installed, instead emit a
warning letting the user to know.
Closes issue #168.
* Accept only functions and methods for the deprecated-method checker.
This prevents a crash which can occur when an object doesn't have
.qname() method after the inference.
* Don't emit super-on-old-class on classes with unknown bases.
Closes issue #721.
* Allow statements in `if` or `try` blocks containing imports.
Closes issue #714.
What's New in Pylint 1.5.1?
===========================
Release date: 2015-12-02
* Don't emit unsubscriptable-object if the node is found
inside an abstract class. Closes issue #685.
* Add wrong-import-position to check_messages's decorator arguments
for ImportChecker.leave_module
This fixes an esoteric bug which occurs when ungrouped-imports and
wrong-import-order are disabled and pylint is executed on multiple files.
What happens is that without wrong-import-position in check_messages,
leave_module will never be called, which means that the first non-import node
from other files might leak into the current file,
leading to wrong-import-position being emitted by pylint.
* Fix a crash which occurred when old visit methods are encountered
in plugin modules. Closes issue #711.
* Don't emit import-self and cyclic-import for relative imports
of modules with the same name as the package itself.
Closes issues #708 and #706.
What's New in Pylint 1.5.0?
===========================
Release date: 2015-11-29
* Added multiple warnings related to imports. 'wrong-import-order'
is emitted when PEP 8 recommendations regarding imports are not
respected (that is, standard imports should be followed by third-party
imports and then by local imports). 'ungrouped-imports' is emitted
when imports from the same package or module are not placed
together, but scattered around in the code. 'wrong-import-position'
is emitted when code is mixed with imports, being recommended for the
latter to be at the top of the file, in order to figure out easier by
a human reader what dependencies a module has.
Closes issue #692.
* Added a new refactoring warning, 'unneeded-not', emitted
when an expression with the not operator could be simplified.
Closes issue #670.
* Added a new refactoring warning, 'simplifiable-if-statement',
used when an if statement could be reduced to a boolean evaluation
of its test. Closes issue #698.
* Added a new refactoring warning, 'too-many-boolean-expressions',
used when a if statement contains too many boolean expressions,
which makes the code less maintainable and harder to understand.
Closes issue #677.
* Property methods are shown as attributes instead of functions in
pyreverse class diagrams. Closes Issue #284
* Add a new refactoring error, 'too-many-nested-blocks', which is emitted
when a function or a method has too many nested blocks, which makes the
code less readable and harder to understand. Closes issue #668.
* Add a new error, 'unsubscriptable-object', that is emitted when
value used in subscription expression doesn't support subscription
(i.e. doesn't define __getitem__ method).
* Don't warn about abstract classes instantiated in their own
body. Closes issue #627.
* Obsolete options are not present by default in the generated
configuration file. Closes issue #632.
* non-iterator-returned can detect classes with iterator-metaclasses.
Closes issue #679.
* Add a new error, 'unsupported-membership-test', emitted when value
to the right of the 'in' operator doesn't support membership test
protocol (i.e. doesn't define __contains__/__iter__/__getitem__)
* Add new errors, 'not-an-iterable', emitted when non-iterable value
is used in an iterating context (starargs, for-statement,
comprehensions, etc), and 'not-a-mapping', emitted when non-mapping
value is used in a mapping context. Closes issue #563.
* Make 'no-self-use' checker not emit a warning if there is a 'super()'
call inside the method.
Closes issue #667.
* Add checker to identify multiple imports on one line.
Closes issue #598.
* Fix unused-argument false positive when the "+=" operator is used.
Closes issue #518.
* Don't emit import-error for ignored modules. PyLint will not emit import
errors for any import which is, or is a subpackage of, a module in
the ignored-modules list. Closes issue #223.
* Fix unused-import false positive when the import is used in a
class assignment. Closes issue #475
* Add a new error, 'not-context-manager', emitted when something
that doesn't implement __enter__ and __exit__ is used in a with
statement.
* Add a new warning, 'confusing-with-statement', emitted by the
base checker, when an ambiguous looking with statement is used.
For example `with open() as first, second` which looks like a
tuple assignment but is actually 2 context managers.
* Add a new warning, 'duplicate-except', emitted when there is an
exception handler which handles an exception type that was handled
before. Closes issue #485.
* A couple of warnings got promoted to errors, since they could uncover
potential bugs in the code. These warnings are: assignment-from-none,
unbalanced-tuple-unpacking, unpacking-non-sequence, non-iterator-returned.
Closes issue #388.
* Allow ending a pragma control with a semicolon. In this way, users
can continue a pragma control with a reason for why it is used,
as in `# pylint: disable=old-style-class;reason=...`.
Closes issue #449.
* --jobs can be used with --load-plugins now. Closes issue #456.
* Improve the performance of --jobs when dealing only with a package
name. Closes issue #479.
* Don't emit an unused-wildcard-import when the imported name comes
from another module and it is in fact a __future__ name.
* The colorized reporter now works on Windows. Closes issue #96.
* Remove pointless-except warning. It was previously disabled by
default and it wasn't very useful. Closes issue #506.
* Fix a crash on Python 3 related to the string checker, which
crashed when it encountered a bytes string with a .format
method called.
* Don't warn about no-self-use for builtin properties.
* Fix a false positive for bad-reversed-sequence, when a subclass
of a `dict` provides a __reversed__ method.
* Change the default no-docstring-rgx so missing-docstring isn't
emitted for private functions.
* Don't emit redefined-outer-name for __future__ directives.
Closes issue #520.
* Provide some hints for the bad-builtin message. Closes issue #522.
* When checking for invalid arguments to a callable, in typecheck.py,
look up for the __init__ in case the found __new__ comes from builtins.
Since the __new__ comes from builtins, it will not have attached any
information regarding what parameters it expects, so the check
will be useless. Retrieving __init__ in that case will at least
detect a couple of false negatives. Closes issue #429.
* Don't emit no-member for classes with unknown bases.
Since we don't know what those bases might add, we simply ignore
the error in this case.
* Lookup in the implicit metaclass when checking for no-member,
if the class in question has an implicit metaclass, which is
True for new style classes. Closes issue #438.
* Add two new warnings, duplicate-bases and inconsistent-mro.
duplicate-bases is emitted when a class has the same bases
listed more than once in its bases definition, while inconsistent-mro
is emitted when no sane mro hierarchy can be determined. Closes issue #526.
* Remove interface-not-implemented warning. Closes issue #532.
* Remove the rest of interface checks: interface-is-not-class,
missing-interface-method, unresolved-interface. The reason is that
its better to start recommending ABCs instead of the old Zope era
of interfaces. One side effect of this change is that ignore-iface-methods
becomes a noop, it's deprecated and it will be removed at some time.
* Emit a proper deprecation warning for reporters.BaseReporter.add_message.
The alternative way is to use handle_message. add_message will be removed in
Pylint 1.6.
* Added new module 'extensions' for optional checkers with the test
directory 'test/extensions' and documentation file 'doc/extensions.rst'.
* Added new checker 'extensions.check_docs' that verifies parameter
documention in Sphinx, Google, and Numpy style.
* Detect undefined variable cases, where the "definition" of an undefined
variable was in del statement. Instead of emitting used-before-assignment,
which is totally misleading, it now emits undefined-variable.
Closes issue #528.
* Don't emit attribute-defined-outside-init and access-member-before-definition
for mixin classes. Actual errors can occur in mixin classes, but this is
controlled by the ignore-mixin-members option. Closes issue #412.
* Improve the detection of undefined variables and variables used before
assignment for variables used as default arguments to function,
where the variable was first defined in the class scope.
Closes issue #342 and issue #404.
* Add a new warning, 'unexpected-special-method-signature', which is emitted
when a special method (dunder method) doesn't have the expected signature,
which can lead to actual errors in the application code.
Closes issue #253.
* Remove 'bad-context-manager' due to the inclusion of 'unexpected-special-method-signature'.
* Don't emit no-name-in-module if the import is guarded by an ImportError, Exception or
a bare except clause.
* Don't emit no-member if the attribute access node is protected by an
except handler, which handles AttributeError, Exception or it is a
bare except.
* Don't emit import-error if the import is guarded by an ImportError, Exception or a
bare except clause.
* Don't emit undefined-variable if the node is guarded by a NameError, Exception
or bare except clause.
* Add a new warning, 'using-constant-test', which is emitted when a conditional
statement (If, IfExp) uses a test which is always constant, such as numbers,
classes, functions etc. This is most likely an error from the user's part.
Closes issue #524.
* Don't emit 'raising-non-exception' when the exception has unknown
bases. We don't know what those bases actually are and it's better
to assume that the user knows what he is doing rather than emitting
a message which can be considered a false positive.
* Look for a .pylintrc configuration file in the current folder,
if pylintrc is not found. Dotted pylintrc files will not be searched
in the parents of the current folder, as it is done for pylintrc.
* Add a new error, 'invalid-unary-type-operand', emitted when
an unary operand is used on something which doesn't support that
operation (for instance, using the unary bitwise inversion operator
on an instance which doesn't implement __invert__).
* Take in consideration differences between arguments of various
type of functions (classmethods, staticmethods, properties)
when checking for `arguments-differ`. Closes issue #548.
* astroid.inspector was moved to pylint.pyreverse, since it belongs
there and it doesn't need to be in astroid.
* astroid.utils.LocalsVisitor was moved to pylint.pyreverse.LocalsVisitor.
* pylint.checkers.utils.excepts_import_error was removed.
Use pylint.chekcers.utils.error_of_type instead.
* Don't emit undefined-all-variables for nodes which can't be
inferred (YES nodes).
* yield-outside-func is also emitted for `yield from`.
* Add a new error, 'too-many-star-expressions', emitted when
there are more than one starred expression (`*x`) in an assignment.
The warning is emitted only on Python 3.
* Add a new error, 'invalid-star-assignment-target', emitted when
a starred expression (`*x`) is used as the lhs side of an assignment,
as in `*x = [1, 2]`. This is not a SyntaxError on Python 3 though.
* Detect a couple of objects which can't be base classes (bool,
slice, range and memoryview, which weren't detected until now).
* Add a new error for the Python 3 porting checker, `import-star-module-level`,
which is used when a star import is detected in another scope than the
module level, which is an error on Python 3. Using this will emit a
SyntaxWarning on Python 2.
* Add a new error, 'star-needs-assignment-target', emitted on Python 3 when
a Starred expression (`*x`) is not used in an assignment target. This is not
caught when parsing the AST on Python 3, so it needs to be a separate check.
* Add a new error, 'unsupported-binary-operation', emitted when
two a binary arithmetic operation is executed between two objects
which don't support it (a number plus a string for instance).
This is currently disabled, since the it exhibits way too many false
positives, but it will be reenabled as soon as possible.
* New imported features from astroid into pyreverse: pyreverse.inspector.Project,
pyreverse.inspector.project_from_files and pyreverse.inspector.interfaces.
These were moved since they didn't belong in astroid.
* Enable misplaced-future for Python 3. Closes issue #580.
* Add a new error, 'nonlocal-and-global', which is emitted when a
name is found to be both nonlocal and global in the same scope.
Closes issue #581.
* ignored-classes option can work with qualified names (ignored-classes=optparse.Values)
Closes issue #297.
* ignored-modules can work with qualified names as well as with Unix pattern
matching for recursive ignoring. Closes issues #244.
* Improve detection of relative imports in non-packages, as well as importing
missing modules with a relative import from a package.
* Don't emit no-init if not all the bases from a class are known.
Closes issue #604.
* --no-space-check option accepts `empty-line` as a possible option.
Closes issue #541.
* --generate-rcfile generates by default human readable symbols
for the --disable option. Closes issue #608.
* Improved the not-in-loop checker to properly detect more cases.
* Add a new error, 'continue-in-finally', which is emitted when
the `continue` keyword is found inside a `finally` clause, which
is a SyntaxError.
* The --zope flag is deprecated and it is slated for removal
in Pylint 1.6.
The reason behind this removal is the fact that it's a specialized
flag and there are solutions for the original problem:
use --generated-members with the members that causes problems
when using Zope or add AST transforms tailored to the zope
project.
At the same time, --include-ids and --symbols will also be removed
in Pylint 1.6. Closes issue #570.
* missing-module-attribute was removed and the corresponding
CLI option, required-attributes, which is slated for removal
in Pylint 1.6.
* missing-reversed-argument was removed.
The reason behind this is that this kind of errors should be
detected by the type checker for *all* the builtins and not
as a special case for the reversed builtin. This will happen
shortly in the future.
* --comment flag is obsolete and it will be removed in Pylint 1.6.
* --profile flag is obsolete and it will be removed in Pylint 1.6.
* Add a new error, 'misplaced-bare-raise'.
The error is used when a bare raise is not used inside an except clause.
This can generate a RuntimeError in Python, if there are no active exceptions
to be reraised. While it works in Python 2 due to the fact that the exception
leaks outside of the except block, it's nevertheless a behaviour that
an user shouldn't depend upon, since it's not obvious to the reader of the code
what exception will be raised and it will not be compatible with Python 3 anyhow.
Closes issue #633.
* Bring logilab-common's ureports into pylint.reporters.
With this change, we moved away from depending on logilab-common,
having in Pylint all the components that were used from logilab-common.
The API should be considered an implementation detail and can change at
some point in the future.
Closes issue #621.
* `reimported` is emitted for reimported objects on the same line.
Closes issue #639.
* Abbreviations of command line options are not supported anymore.
Using abbreviations for CLI options was never considered to be
a feature of pylint, this fact being only a side effect of using optparse.
As this was the case, using --load-plugin or other abbreviation
for --load-plugins never actually worked, while it also didn't raise
an error. Closes issue #424.
* Add a new error, 'nonlocal-without-binding'
The error is emitted on Python 3 when a nonlocal name is not bound
to any variable in the parents scopes. Closes issue #582.
* 'deprecated-module' can be shown for modules which aren't
available. Closes issue #362.
* Don't consider a class abstract if its members can't
be properly inferred.
This fixes a false positive related to abstract-class-instantiated.
Closes issue #648.
* Add a new checker for the async features added by PEP 492.
* Add a new error, 'yield-inside-async-function', emitted on
Python 3.5 and upwards when the `yield` statement is found inside
a new coroutine function (PEP 492).
* Add a new error, 'not-async-context-manager', emitted when
an async context manager block is used with an object which doesn't
support this protocol (PEP 492).
* Add a new convention warning, 'singleton-comparison', emitted when
comparison to True, False or None is found.
* Don't emit 'assigning-non-slot' for descriptors. Closes issue #652.
* Add a new error, 'repeated-keyword', when a keyword argument is passed
multiple times into a function call.
This is similar with redundant-keyword-arg, but it's mildly different
that it needs to be a separate error.
* --enable=all can now be used. Closes issue #142.
* Add a new convention message, 'misplaced-comparison-constant',
emitted when a constant is placed in the left hand side of a comparison,
as in '5 == func()'. This is also called Yoda condition, since the
flow of code reminds of the Star Wars green character, conditions usually
encountered in languages with variabile assignments in conditional
statements.
* Add a new convention message, 'consider-using-enumerate', which is
emitted when code that uses `range` and `len` for iterating is encountered.
Closes issue #684.
* Added two new refactoring messages, 'no-classmethod-decorator' and
'no-staticmethod-decorator', which are emitted when a static method or a class
method is declared without using decorators syntax.
Closes issue #675.
2016-07-12 11:32:14 +02:00
|
|
|
${PYSITELIB}/pylint/extensions/__init__.py
|
2016-08-29 17:58:58 +02:00
|
|
|
${PYSITELIB}/pylint/extensions/__init__.pyc
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/extensions/__init__.pyo
|
2016-08-29 17:58:58 +02:00
|
|
|
${PYSITELIB}/pylint/extensions/_check_docs_utils.py
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/extensions/_check_docs_utils.pyc
|
|
|
|
${PYSITELIB}/pylint/extensions/_check_docs_utils.pyo
|
2016-08-29 17:58:58 +02:00
|
|
|
${PYSITELIB}/pylint/extensions/bad_builtin.py
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/extensions/bad_builtin.pyc
|
|
|
|
${PYSITELIB}/pylint/extensions/bad_builtin.pyo
|
py-pylint: updated to 2.4.2
What's New in Pylint 2.4.2?
* ``ignored-modules`` can skip submodules.
* ``self-assigning-variable`` skips class level assignments.
* ``consider-using-sys-exit`` is exempted when `exit()` is imported from `sys`
* Exempt annotated assignments without variable from ``class-variable-slots-conflict``
* Fix ``utils.is_error`` to account for functions returning early.
This fixes a false negative with ``unused-variable`` which was no longer triggered
when a function raised an exception as the last instruction, but the body of the function
still had unused variables.
What's New in Pylint 2.4.1?
* Exempt type checking definitions defined in both clauses of a type checking guard
* Exempt type checking definitions inside the type check guard
In a7f236528bb3758886b97285a56f3f9ce5b13a99 we added basic support
for emitting `used-before-assignment` if a variable was only defined
inside a type checking guard (using `TYPE_CHECKING` variable from `typing`)
Unfortunately that missed the case of using those type checking imports
inside the guard itself, which triggered spurious used-before-assignment errors.
* Require astroid >= 2.3 to avoid any compatibility issues.
What's New in Pylint 2.4.0?
* New check: ``import-outside-toplevel``
This check warns when modules are imported from places other than a
module toplevel, e.g. inside a function or a class.
* Handle inference ambiguity for ``invalid-format-index``
* Removed Python 2 specific checks such as ``relative-import``,
``invalid-encoded-data``, ``missing-super-argument``.
* Support forward references for ``function-redefined`` check.
* Handle redefinitions in case of type checking imports.
* Added a new check, ``consider-using-sys-exit``
This check is emitted when we detect that a quit() or exit() is invoked
instead of sys.exit(), which is the preferred way of exiting in program.
* ``useless-suppression`` check now ignores ``cyclic-import`` suppressions,
which could lead to false postiives due to incomplete context at the time
of the check.
* Added new checks, ``no-else-break`` and ``no-else-continue``
These checks highlight unnecessary ``else`` and ``elif`` blocks after
``break`` and ``continue`` statements.
* Don't emit ``protected-access`` when a single underscore prefixed attribute
is used inside a special method
* Fix the "statement" values in the PyLinter's stats reports by module.
* Added a new check, ``invalid-overridden-method``
This check is emitted when we detect that a method is overridden
as a property or a property is overridden as a method. This can indicate
a bug in the application code that will trigger a runtime error.
* Added a new check, ``arguments-out-of-order``
This check warns if you have arguments with names that match those in
a function's signature but you are passing them in to the function
in a different order.
* Added a new check, ``redeclared-assigned-name``
This check is emitted when ``pylint`` detects that a name
was assigned one or multiple times in the same assignment,
which indicate a potential bug.
* Ignore lambda calls with variadic arguments without a context.
Inferring variadic positional arguments and keyword arguments
will result into empty Tuples and Dicts, which can lead in
some cases to false positives with regard to no-value-for-parameter.
In order to avoid this, until we'll have support for call context
propagation, we're ignoring such cases if detected.
We already did that for function calls, but the previous fix
was not taking in consideration ``lambdas``
* Added a new check, ``self-assigning-variable``
This check is emitted when we detect that a variable is assigned
to itself, which might indicate a potential bug in the code application.
* Added a new check, ``property-with-parameters``.
This check is emitted when we detect that a defined property also
has parameters, which are useless.
* Excluded protocol classes from a couple of checks.
* Add a check `unnecessary-comprehension` that detects unnecessary comprehensions.
This check is emitted when ``pylint`` finds list-, set- or dict-comprehensions,
that are unnecessary and can be rewritten with the list-, set- or dict-constructors.
* Excluded PEP 526 instance and class variables from ``no-member``.
* Excluded `attrs` from `too-few-public-methods` check.
* ``unused-import`` emitted for the right import names in function scopes.
* Dropped support for Python 3.4.
* ``assignment-from-no-return`` not triggered for async methods.
* Don't emit ``attribute-defined-outside-init`` for variables defined in setters.
* Syntax errors report the column number.
* Support fully qualified typing imports for type annotations.
* Exclude ``__dict__`` from ``attribute-defined-outside-init``
* Fix pointer on spelling check when the error are more than one time in the same line.
* Fix crash happening when parent of called object cannot be determined
* Allow of in `GoogleDocstring.re_multiple_type`
* Added `subprocess-run-check` to handle subrocess.run without explicitly set `check` keyword.
* When we can't infer bare except handlers, skip ``try-except-raise``
* Handle more `unnecessary-lambda` cases when dealing with additional kwargs in wrapped calls
* Better postponed evaluation of annotations handling
* Support postponed evaluation of annotations for variable annotations.
* ``epylint.py_run`` defaults to ``python`` in case the current executable is not a Python one.
* Ignore raw docstrings when running Similarities checker with `ignore-docstrings=yes` option
* Fix crash when calling ``inherit_from_std_ex`` on a class which is its own ancestor
* Added a new check that warns the user if a function call is used inside a test but parentheses are missing.
* ``len-as-condition`` now only fires when a ``len(x)`` call is made without an explicit comparison
The message and description accompanying this checker has been changed
reflect this new behavior, by explicitly asking to either rely on the
fact that empty sequence are false or to compare the length with a scalar.
* Add ``preferred-module`` checker that notify if an import has a replacement module that should be used.
This check is emitted when ``pylint`` finds an imported module that has a
preferred replacement listed in ``preferred-modules``.
* ``assigning-non-slot`` not emitted for classes with unknown base classes.
* ``old-division`` is not emitted for non-Const nodes.
* Added method arguments to the dot writer for pyreverse.
* Support for linting file from stdin.
IDEs may benefit from the support for linting from an in-memory file.
* Added a new check `class-variable-slots-conflict`
This check is emitted when ``pylint`` finds a class variable that conflicts with a slot
name, which would raise a ``ValueError`` at runtime.
* Added new check: dict-iter-missing-items (E1141)
* Fix issue with pylint name in output of python -m pylint --version
* Relicense logo material under the CC BY-SA 4.0 license.
* Skip `if` expressions from f-strings for the `check_elif` checker
* C0412 (ungrouped-import) is now compatible with isort.
* Added new extension to detect too much code in a try clause
* ``signature-mutators`` option was added
With this option, users can choose to ignore `too-many-function-args`, `unexpected-keyword-arg`,
and `no-value-for-parameter` for functions decorated with decorators that change
the signature of a decorated function.
* Fixed a pragma comment on its own physical line being ignored when part
of a logical line with the previous physical line.
* Fixed false `undefined-loop-variable` for a function defined in the loop,
that uses the variable defined in that loop.
* Fixed `unused-argument` and `function-redefined` getting raised for
functions decorated with `typing.overload`.
* Fixed a false positive with ``consider-using-dict-comprehension`` for constructions that can't be converted to a comprehension
* Added ``__post_init__`` to ``defining-attr-methods`` in order to avoid ``attribute-defined-outside-init`` in dataclasses.
* Changed description of W0199 to use the term 2-item-tuple instead of 2-uple.
* Allow a `.` as a prefix for Sphinx name resolution.
* Checkers must now keep a 1 to 1 relationship between "msgid" (ie: C1234) and "symbol" (ie : human-readable-symbol)
* In checkers, an old_names can now be used for multiple new messages and pylint is now a little faster
* Allow the choice of f-strings as a valid way of formatting logging strings.
* Added ``--list-msgs-enabled`` command to list all enabled and disabled messages given the current RC file and command line arguments.
2019-10-01 13:38:06 +02:00
|
|
|
${PYSITELIB}/pylint/extensions/broad_try_clause.py
|
|
|
|
${PYSITELIB}/pylint/extensions/broad_try_clause.pyc
|
|
|
|
${PYSITELIB}/pylint/extensions/broad_try_clause.pyo
|
2016-08-29 17:58:58 +02:00
|
|
|
${PYSITELIB}/pylint/extensions/check_docs.py
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/extensions/check_docs.pyc
|
|
|
|
${PYSITELIB}/pylint/extensions/check_docs.pyo
|
2016-08-29 17:58:58 +02:00
|
|
|
${PYSITELIB}/pylint/extensions/check_elif.py
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/extensions/check_elif.pyc
|
|
|
|
${PYSITELIB}/pylint/extensions/check_elif.pyo
|
2017-07-16 22:33:32 +02:00
|
|
|
${PYSITELIB}/pylint/extensions/comparetozero.py
|
|
|
|
${PYSITELIB}/pylint/extensions/comparetozero.pyc
|
|
|
|
${PYSITELIB}/pylint/extensions/comparetozero.pyo
|
2016-08-29 17:58:58 +02:00
|
|
|
${PYSITELIB}/pylint/extensions/docparams.py
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/extensions/docparams.pyc
|
|
|
|
${PYSITELIB}/pylint/extensions/docparams.pyo
|
2016-08-29 17:58:58 +02:00
|
|
|
${PYSITELIB}/pylint/extensions/docstyle.py
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/extensions/docstyle.pyc
|
|
|
|
${PYSITELIB}/pylint/extensions/docstyle.pyo
|
2017-07-16 22:33:32 +02:00
|
|
|
${PYSITELIB}/pylint/extensions/emptystring.py
|
|
|
|
${PYSITELIB}/pylint/extensions/emptystring.pyc
|
|
|
|
${PYSITELIB}/pylint/extensions/emptystring.pyo
|
2016-08-29 17:58:58 +02:00
|
|
|
${PYSITELIB}/pylint/extensions/mccabe.py
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/extensions/mccabe.pyc
|
|
|
|
${PYSITELIB}/pylint/extensions/mccabe.pyo
|
2017-07-16 22:33:32 +02:00
|
|
|
${PYSITELIB}/pylint/extensions/overlapping_exceptions.py
|
|
|
|
${PYSITELIB}/pylint/extensions/overlapping_exceptions.pyc
|
|
|
|
${PYSITELIB}/pylint/extensions/overlapping_exceptions.pyo
|
|
|
|
${PYSITELIB}/pylint/extensions/redefined_variable_type.py
|
|
|
|
${PYSITELIB}/pylint/extensions/redefined_variable_type.pyc
|
|
|
|
${PYSITELIB}/pylint/extensions/redefined_variable_type.pyo
|
Updated py-pylint to 1.6.1.
What's new in Pylint 1.6.1?
===========================
Release date: 2016-07-07
* Use environment markers for supporting conditional dependencies.
What's New in Pylint 1.6.0?
===========================
Release date: 2016-07-07
* Added a new extension, `pylint.extensions.mccabe`, for warning
about complexity in code.
* Deprecate support for --optimize-ast. Part of #975.
* Deprecate support for the HTML output. Part of #975.
* Deprecate support for --output-files. Part of #975.
* Fixed a documentation error for the check_docs extension. Fixes #735.
* Made the list of property-defining decorators configurable.
* Fix a bug where the top name of a qualified import was detected as unused variable.
Close #923.
* bad-builtin is now an extension check.
* generated-members support qualified name through regular expressions.
For instance, one can specify a regular expression as --generated-members=astroid.node_classes.*
for ignoring every no-member error that is accessed as in `astroid.node_classes.missing.object`.
* Add the ability to ignore files based on regex matching, with the new ``--ignore-patterns``
option.
This addresses issue #156 by allowing for multiple ignore patterns
to be specified. Rather than clobber the existing ignore option, we
introduced a new one called ignore-patterns.
* Added a new error, 'trailing-newlines', which is emitted when a file
has trailing new lines.
Closes issue #682.
* Add a new option, 'redefining-builtins-modules', for controlling the modules
which can redefine builtins, such as six.moves and future.builtins.
Close #464.
* 'reimported' is emitted when the same name is imported from different module.
Close #162.
* Add a new recommendation checker, 'consider-iterating-dictionary', which is emitted
which is emitted when a dictionary is iterated through .keys().
Close #699
* Use the configparser backport for Python 2
This fixes a problem we were having with comments inside values, which is fixed
in Python 3's configparser.
Close #828
* A new error was added, 'invalid-length-returned', when the `__len__`
special method returned something else than a non-negative number.
Close issue #557
* Switch to using isort internally for wrong-import-order.
Closes #879.
* check_docs extension can find constructor parameters in __init__.
Closes #887.
* Don't warn about invalid-sequence-index if the indexed object has unknown base
classes.
Closes #867
* Don't crash when checking, for super-init-not-called, a method defined in an if block.
* Do not emit import-error or no-name-in-module for fallback import blocks by default.
Until now, we warned with these errors when a fallback import block (a TryExcept block
that contained imports for Python 2 and 3) was found, but this gets cumbersome when
trying to write compatible code. As such, we don't check these blocks by default,
but the analysis can be enforced by using the new ``--analyse-fallback-block`` flag.
Close #769.
What's New in Pylint 1.5.6?
===========================
Release date: 2016-06-06
* config files with BOM markers can now be read.
Close #864.
* epylint.py_run does not crash on big files, using .communicate() instead of .wait()
Close #599
What's New in Pylint 1.5.5?
===========================
Release date: 2016-03-21
* Let visit_importfrom from Python 3 porting checker be called when everything is disabled
Because the visit method was filtering the patterns it was expecting to be activated,
it didn't run when everything but one pattern was disabled, leading to spurious false
positives
Close #852
* Don't emit unsubscriptable-value for classes with unknown
base classes.
Close #776.
* Use an OrderedDict for storing the configuration elements
This fixes an issue related to impredictible order of the disable / enable
elements from a config file. In certain cases, the disable was coming before
the enable which resulted in classes of errors to be enabled, even though the intention
was to disable them. The best example for this was in the context of running multiple
processes, each one of it having different enables / disables that affected the output.
Close #815
* Don't consider bare and broad except handlers as ignoring NameError,
AttributeError and similar exceptions, in the context of checkers for
these issues.
Closes issue #826
What's New in Pylint 1.5.4?
===========================
Release date: 2016-01-15
* Merge StringMethodChecker with StringFormatChecker. This fixes a
bug where disabling all the messages and enabling only a handful of
messages from the StringFormatChecker would have resulted in no
messages at all.
* Don't apply unneeded-not over sets.
What's New in Pylint 1.5.3?
===========================
Release date: 2016-01-11
* Handle the import fallback idiom with regard to wrong-import-order.
Closes issue #750.
* Decouple the displaying of reports from the displaying of messages
Some reporters are aggregating the messages instead of displaying
them when they are available. The actual displaying was conflatted
in the generate_reports. Unfortunately this behaviour was flaky
and in the case of the JSON reporter, the messages weren't shown
at all if a file had syntax errors or if it was missing.
In order to fix this, the aggregated messages can now be
displayed with Reporter.display_message, while the reports are
displayed with display_reports.
Closes issues #766 and #765.
* Ignore function calls with variadic arguments without a context.
Inferring variadic positional arguments and keyword arguments
will result into empty Tuples and Dicts, which can lead in
some cases to false positives with regard to no-value-for-parameter.
In order to avoid this, until we'll have support for call context
propagation, we're ignoring such cases if detected.
Closes issue #722.
* Treat AsyncFunctionDef just like FunctionDef nodes,
by implementing visit_asyncfunctiondef in terms of
visit_functiondef.
Closes issue #767.
* Take in account kwonlyargs when verifying that arguments
are defined with the check_docs extension.
Closes issue #745.
* Suppress reporting 'unneeded-not' inside `__ne__` methods
Closes issue #749.
What's New in Pylint 1.5.2?
===========================
Release date: 2015-12-21
* Don't crash if graphviz is not installed, instead emit a
warning letting the user to know.
Closes issue #168.
* Accept only functions and methods for the deprecated-method checker.
This prevents a crash which can occur when an object doesn't have
.qname() method after the inference.
* Don't emit super-on-old-class on classes with unknown bases.
Closes issue #721.
* Allow statements in `if` or `try` blocks containing imports.
Closes issue #714.
What's New in Pylint 1.5.1?
===========================
Release date: 2015-12-02
* Don't emit unsubscriptable-object if the node is found
inside an abstract class. Closes issue #685.
* Add wrong-import-position to check_messages's decorator arguments
for ImportChecker.leave_module
This fixes an esoteric bug which occurs when ungrouped-imports and
wrong-import-order are disabled and pylint is executed on multiple files.
What happens is that without wrong-import-position in check_messages,
leave_module will never be called, which means that the first non-import node
from other files might leak into the current file,
leading to wrong-import-position being emitted by pylint.
* Fix a crash which occurred when old visit methods are encountered
in plugin modules. Closes issue #711.
* Don't emit import-self and cyclic-import for relative imports
of modules with the same name as the package itself.
Closes issues #708 and #706.
What's New in Pylint 1.5.0?
===========================
Release date: 2015-11-29
* Added multiple warnings related to imports. 'wrong-import-order'
is emitted when PEP 8 recommendations regarding imports are not
respected (that is, standard imports should be followed by third-party
imports and then by local imports). 'ungrouped-imports' is emitted
when imports from the same package or module are not placed
together, but scattered around in the code. 'wrong-import-position'
is emitted when code is mixed with imports, being recommended for the
latter to be at the top of the file, in order to figure out easier by
a human reader what dependencies a module has.
Closes issue #692.
* Added a new refactoring warning, 'unneeded-not', emitted
when an expression with the not operator could be simplified.
Closes issue #670.
* Added a new refactoring warning, 'simplifiable-if-statement',
used when an if statement could be reduced to a boolean evaluation
of its test. Closes issue #698.
* Added a new refactoring warning, 'too-many-boolean-expressions',
used when a if statement contains too many boolean expressions,
which makes the code less maintainable and harder to understand.
Closes issue #677.
* Property methods are shown as attributes instead of functions in
pyreverse class diagrams. Closes Issue #284
* Add a new refactoring error, 'too-many-nested-blocks', which is emitted
when a function or a method has too many nested blocks, which makes the
code less readable and harder to understand. Closes issue #668.
* Add a new error, 'unsubscriptable-object', that is emitted when
value used in subscription expression doesn't support subscription
(i.e. doesn't define __getitem__ method).
* Don't warn about abstract classes instantiated in their own
body. Closes issue #627.
* Obsolete options are not present by default in the generated
configuration file. Closes issue #632.
* non-iterator-returned can detect classes with iterator-metaclasses.
Closes issue #679.
* Add a new error, 'unsupported-membership-test', emitted when value
to the right of the 'in' operator doesn't support membership test
protocol (i.e. doesn't define __contains__/__iter__/__getitem__)
* Add new errors, 'not-an-iterable', emitted when non-iterable value
is used in an iterating context (starargs, for-statement,
comprehensions, etc), and 'not-a-mapping', emitted when non-mapping
value is used in a mapping context. Closes issue #563.
* Make 'no-self-use' checker not emit a warning if there is a 'super()'
call inside the method.
Closes issue #667.
* Add checker to identify multiple imports on one line.
Closes issue #598.
* Fix unused-argument false positive when the "+=" operator is used.
Closes issue #518.
* Don't emit import-error for ignored modules. PyLint will not emit import
errors for any import which is, or is a subpackage of, a module in
the ignored-modules list. Closes issue #223.
* Fix unused-import false positive when the import is used in a
class assignment. Closes issue #475
* Add a new error, 'not-context-manager', emitted when something
that doesn't implement __enter__ and __exit__ is used in a with
statement.
* Add a new warning, 'confusing-with-statement', emitted by the
base checker, when an ambiguous looking with statement is used.
For example `with open() as first, second` which looks like a
tuple assignment but is actually 2 context managers.
* Add a new warning, 'duplicate-except', emitted when there is an
exception handler which handles an exception type that was handled
before. Closes issue #485.
* A couple of warnings got promoted to errors, since they could uncover
potential bugs in the code. These warnings are: assignment-from-none,
unbalanced-tuple-unpacking, unpacking-non-sequence, non-iterator-returned.
Closes issue #388.
* Allow ending a pragma control with a semicolon. In this way, users
can continue a pragma control with a reason for why it is used,
as in `# pylint: disable=old-style-class;reason=...`.
Closes issue #449.
* --jobs can be used with --load-plugins now. Closes issue #456.
* Improve the performance of --jobs when dealing only with a package
name. Closes issue #479.
* Don't emit an unused-wildcard-import when the imported name comes
from another module and it is in fact a __future__ name.
* The colorized reporter now works on Windows. Closes issue #96.
* Remove pointless-except warning. It was previously disabled by
default and it wasn't very useful. Closes issue #506.
* Fix a crash on Python 3 related to the string checker, which
crashed when it encountered a bytes string with a .format
method called.
* Don't warn about no-self-use for builtin properties.
* Fix a false positive for bad-reversed-sequence, when a subclass
of a `dict` provides a __reversed__ method.
* Change the default no-docstring-rgx so missing-docstring isn't
emitted for private functions.
* Don't emit redefined-outer-name for __future__ directives.
Closes issue #520.
* Provide some hints for the bad-builtin message. Closes issue #522.
* When checking for invalid arguments to a callable, in typecheck.py,
look up for the __init__ in case the found __new__ comes from builtins.
Since the __new__ comes from builtins, it will not have attached any
information regarding what parameters it expects, so the check
will be useless. Retrieving __init__ in that case will at least
detect a couple of false negatives. Closes issue #429.
* Don't emit no-member for classes with unknown bases.
Since we don't know what those bases might add, we simply ignore
the error in this case.
* Lookup in the implicit metaclass when checking for no-member,
if the class in question has an implicit metaclass, which is
True for new style classes. Closes issue #438.
* Add two new warnings, duplicate-bases and inconsistent-mro.
duplicate-bases is emitted when a class has the same bases
listed more than once in its bases definition, while inconsistent-mro
is emitted when no sane mro hierarchy can be determined. Closes issue #526.
* Remove interface-not-implemented warning. Closes issue #532.
* Remove the rest of interface checks: interface-is-not-class,
missing-interface-method, unresolved-interface. The reason is that
its better to start recommending ABCs instead of the old Zope era
of interfaces. One side effect of this change is that ignore-iface-methods
becomes a noop, it's deprecated and it will be removed at some time.
* Emit a proper deprecation warning for reporters.BaseReporter.add_message.
The alternative way is to use handle_message. add_message will be removed in
Pylint 1.6.
* Added new module 'extensions' for optional checkers with the test
directory 'test/extensions' and documentation file 'doc/extensions.rst'.
* Added new checker 'extensions.check_docs' that verifies parameter
documention in Sphinx, Google, and Numpy style.
* Detect undefined variable cases, where the "definition" of an undefined
variable was in del statement. Instead of emitting used-before-assignment,
which is totally misleading, it now emits undefined-variable.
Closes issue #528.
* Don't emit attribute-defined-outside-init and access-member-before-definition
for mixin classes. Actual errors can occur in mixin classes, but this is
controlled by the ignore-mixin-members option. Closes issue #412.
* Improve the detection of undefined variables and variables used before
assignment for variables used as default arguments to function,
where the variable was first defined in the class scope.
Closes issue #342 and issue #404.
* Add a new warning, 'unexpected-special-method-signature', which is emitted
when a special method (dunder method) doesn't have the expected signature,
which can lead to actual errors in the application code.
Closes issue #253.
* Remove 'bad-context-manager' due to the inclusion of 'unexpected-special-method-signature'.
* Don't emit no-name-in-module if the import is guarded by an ImportError, Exception or
a bare except clause.
* Don't emit no-member if the attribute access node is protected by an
except handler, which handles AttributeError, Exception or it is a
bare except.
* Don't emit import-error if the import is guarded by an ImportError, Exception or a
bare except clause.
* Don't emit undefined-variable if the node is guarded by a NameError, Exception
or bare except clause.
* Add a new warning, 'using-constant-test', which is emitted when a conditional
statement (If, IfExp) uses a test which is always constant, such as numbers,
classes, functions etc. This is most likely an error from the user's part.
Closes issue #524.
* Don't emit 'raising-non-exception' when the exception has unknown
bases. We don't know what those bases actually are and it's better
to assume that the user knows what he is doing rather than emitting
a message which can be considered a false positive.
* Look for a .pylintrc configuration file in the current folder,
if pylintrc is not found. Dotted pylintrc files will not be searched
in the parents of the current folder, as it is done for pylintrc.
* Add a new error, 'invalid-unary-type-operand', emitted when
an unary operand is used on something which doesn't support that
operation (for instance, using the unary bitwise inversion operator
on an instance which doesn't implement __invert__).
* Take in consideration differences between arguments of various
type of functions (classmethods, staticmethods, properties)
when checking for `arguments-differ`. Closes issue #548.
* astroid.inspector was moved to pylint.pyreverse, since it belongs
there and it doesn't need to be in astroid.
* astroid.utils.LocalsVisitor was moved to pylint.pyreverse.LocalsVisitor.
* pylint.checkers.utils.excepts_import_error was removed.
Use pylint.chekcers.utils.error_of_type instead.
* Don't emit undefined-all-variables for nodes which can't be
inferred (YES nodes).
* yield-outside-func is also emitted for `yield from`.
* Add a new error, 'too-many-star-expressions', emitted when
there are more than one starred expression (`*x`) in an assignment.
The warning is emitted only on Python 3.
* Add a new error, 'invalid-star-assignment-target', emitted when
a starred expression (`*x`) is used as the lhs side of an assignment,
as in `*x = [1, 2]`. This is not a SyntaxError on Python 3 though.
* Detect a couple of objects which can't be base classes (bool,
slice, range and memoryview, which weren't detected until now).
* Add a new error for the Python 3 porting checker, `import-star-module-level`,
which is used when a star import is detected in another scope than the
module level, which is an error on Python 3. Using this will emit a
SyntaxWarning on Python 2.
* Add a new error, 'star-needs-assignment-target', emitted on Python 3 when
a Starred expression (`*x`) is not used in an assignment target. This is not
caught when parsing the AST on Python 3, so it needs to be a separate check.
* Add a new error, 'unsupported-binary-operation', emitted when
two a binary arithmetic operation is executed between two objects
which don't support it (a number plus a string for instance).
This is currently disabled, since the it exhibits way too many false
positives, but it will be reenabled as soon as possible.
* New imported features from astroid into pyreverse: pyreverse.inspector.Project,
pyreverse.inspector.project_from_files and pyreverse.inspector.interfaces.
These were moved since they didn't belong in astroid.
* Enable misplaced-future for Python 3. Closes issue #580.
* Add a new error, 'nonlocal-and-global', which is emitted when a
name is found to be both nonlocal and global in the same scope.
Closes issue #581.
* ignored-classes option can work with qualified names (ignored-classes=optparse.Values)
Closes issue #297.
* ignored-modules can work with qualified names as well as with Unix pattern
matching for recursive ignoring. Closes issues #244.
* Improve detection of relative imports in non-packages, as well as importing
missing modules with a relative import from a package.
* Don't emit no-init if not all the bases from a class are known.
Closes issue #604.
* --no-space-check option accepts `empty-line` as a possible option.
Closes issue #541.
* --generate-rcfile generates by default human readable symbols
for the --disable option. Closes issue #608.
* Improved the not-in-loop checker to properly detect more cases.
* Add a new error, 'continue-in-finally', which is emitted when
the `continue` keyword is found inside a `finally` clause, which
is a SyntaxError.
* The --zope flag is deprecated and it is slated for removal
in Pylint 1.6.
The reason behind this removal is the fact that it's a specialized
flag and there are solutions for the original problem:
use --generated-members with the members that causes problems
when using Zope or add AST transforms tailored to the zope
project.
At the same time, --include-ids and --symbols will also be removed
in Pylint 1.6. Closes issue #570.
* missing-module-attribute was removed and the corresponding
CLI option, required-attributes, which is slated for removal
in Pylint 1.6.
* missing-reversed-argument was removed.
The reason behind this is that this kind of errors should be
detected by the type checker for *all* the builtins and not
as a special case for the reversed builtin. This will happen
shortly in the future.
* --comment flag is obsolete and it will be removed in Pylint 1.6.
* --profile flag is obsolete and it will be removed in Pylint 1.6.
* Add a new error, 'misplaced-bare-raise'.
The error is used when a bare raise is not used inside an except clause.
This can generate a RuntimeError in Python, if there are no active exceptions
to be reraised. While it works in Python 2 due to the fact that the exception
leaks outside of the except block, it's nevertheless a behaviour that
an user shouldn't depend upon, since it's not obvious to the reader of the code
what exception will be raised and it will not be compatible with Python 3 anyhow.
Closes issue #633.
* Bring logilab-common's ureports into pylint.reporters.
With this change, we moved away from depending on logilab-common,
having in Pylint all the components that were used from logilab-common.
The API should be considered an implementation detail and can change at
some point in the future.
Closes issue #621.
* `reimported` is emitted for reimported objects on the same line.
Closes issue #639.
* Abbreviations of command line options are not supported anymore.
Using abbreviations for CLI options was never considered to be
a feature of pylint, this fact being only a side effect of using optparse.
As this was the case, using --load-plugin or other abbreviation
for --load-plugins never actually worked, while it also didn't raise
an error. Closes issue #424.
* Add a new error, 'nonlocal-without-binding'
The error is emitted on Python 3 when a nonlocal name is not bound
to any variable in the parents scopes. Closes issue #582.
* 'deprecated-module' can be shown for modules which aren't
available. Closes issue #362.
* Don't consider a class abstract if its members can't
be properly inferred.
This fixes a false positive related to abstract-class-instantiated.
Closes issue #648.
* Add a new checker for the async features added by PEP 492.
* Add a new error, 'yield-inside-async-function', emitted on
Python 3.5 and upwards when the `yield` statement is found inside
a new coroutine function (PEP 492).
* Add a new error, 'not-async-context-manager', emitted when
an async context manager block is used with an object which doesn't
support this protocol (PEP 492).
* Add a new convention warning, 'singleton-comparison', emitted when
comparison to True, False or None is found.
* Don't emit 'assigning-non-slot' for descriptors. Closes issue #652.
* Add a new error, 'repeated-keyword', when a keyword argument is passed
multiple times into a function call.
This is similar with redundant-keyword-arg, but it's mildly different
that it needs to be a separate error.
* --enable=all can now be used. Closes issue #142.
* Add a new convention message, 'misplaced-comparison-constant',
emitted when a constant is placed in the left hand side of a comparison,
as in '5 == func()'. This is also called Yoda condition, since the
flow of code reminds of the Star Wars green character, conditions usually
encountered in languages with variabile assignments in conditional
statements.
* Add a new convention message, 'consider-using-enumerate', which is
emitted when code that uses `range` and `len` for iterating is encountered.
Closes issue #684.
* Added two new refactoring messages, 'no-classmethod-decorator' and
'no-staticmethod-decorator', which are emitted when a static method or a class
method is declared without using decorators syntax.
Closes issue #675.
2016-07-12 11:32:14 +02:00
|
|
|
${PYSITELIB}/pylint/graph.py
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/graph.pyc
|
|
|
|
${PYSITELIB}/pylint/graph.pyo
|
2014-03-12 02:26:03 +01:00
|
|
|
${PYSITELIB}/pylint/interfaces.py
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/interfaces.pyc
|
|
|
|
${PYSITELIB}/pylint/interfaces.pyo
|
2014-03-12 02:26:03 +01:00
|
|
|
${PYSITELIB}/pylint/lint.py
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/lint.pyc
|
|
|
|
${PYSITELIB}/pylint/lint.pyo
|
py-pylint: updated to 2.4.2
What's New in Pylint 2.4.2?
* ``ignored-modules`` can skip submodules.
* ``self-assigning-variable`` skips class level assignments.
* ``consider-using-sys-exit`` is exempted when `exit()` is imported from `sys`
* Exempt annotated assignments without variable from ``class-variable-slots-conflict``
* Fix ``utils.is_error`` to account for functions returning early.
This fixes a false negative with ``unused-variable`` which was no longer triggered
when a function raised an exception as the last instruction, but the body of the function
still had unused variables.
What's New in Pylint 2.4.1?
* Exempt type checking definitions defined in both clauses of a type checking guard
* Exempt type checking definitions inside the type check guard
In a7f236528bb3758886b97285a56f3f9ce5b13a99 we added basic support
for emitting `used-before-assignment` if a variable was only defined
inside a type checking guard (using `TYPE_CHECKING` variable from `typing`)
Unfortunately that missed the case of using those type checking imports
inside the guard itself, which triggered spurious used-before-assignment errors.
* Require astroid >= 2.3 to avoid any compatibility issues.
What's New in Pylint 2.4.0?
* New check: ``import-outside-toplevel``
This check warns when modules are imported from places other than a
module toplevel, e.g. inside a function or a class.
* Handle inference ambiguity for ``invalid-format-index``
* Removed Python 2 specific checks such as ``relative-import``,
``invalid-encoded-data``, ``missing-super-argument``.
* Support forward references for ``function-redefined`` check.
* Handle redefinitions in case of type checking imports.
* Added a new check, ``consider-using-sys-exit``
This check is emitted when we detect that a quit() or exit() is invoked
instead of sys.exit(), which is the preferred way of exiting in program.
* ``useless-suppression`` check now ignores ``cyclic-import`` suppressions,
which could lead to false postiives due to incomplete context at the time
of the check.
* Added new checks, ``no-else-break`` and ``no-else-continue``
These checks highlight unnecessary ``else`` and ``elif`` blocks after
``break`` and ``continue`` statements.
* Don't emit ``protected-access`` when a single underscore prefixed attribute
is used inside a special method
* Fix the "statement" values in the PyLinter's stats reports by module.
* Added a new check, ``invalid-overridden-method``
This check is emitted when we detect that a method is overridden
as a property or a property is overridden as a method. This can indicate
a bug in the application code that will trigger a runtime error.
* Added a new check, ``arguments-out-of-order``
This check warns if you have arguments with names that match those in
a function's signature but you are passing them in to the function
in a different order.
* Added a new check, ``redeclared-assigned-name``
This check is emitted when ``pylint`` detects that a name
was assigned one or multiple times in the same assignment,
which indicate a potential bug.
* Ignore lambda calls with variadic arguments without a context.
Inferring variadic positional arguments and keyword arguments
will result into empty Tuples and Dicts, which can lead in
some cases to false positives with regard to no-value-for-parameter.
In order to avoid this, until we'll have support for call context
propagation, we're ignoring such cases if detected.
We already did that for function calls, but the previous fix
was not taking in consideration ``lambdas``
* Added a new check, ``self-assigning-variable``
This check is emitted when we detect that a variable is assigned
to itself, which might indicate a potential bug in the code application.
* Added a new check, ``property-with-parameters``.
This check is emitted when we detect that a defined property also
has parameters, which are useless.
* Excluded protocol classes from a couple of checks.
* Add a check `unnecessary-comprehension` that detects unnecessary comprehensions.
This check is emitted when ``pylint`` finds list-, set- or dict-comprehensions,
that are unnecessary and can be rewritten with the list-, set- or dict-constructors.
* Excluded PEP 526 instance and class variables from ``no-member``.
* Excluded `attrs` from `too-few-public-methods` check.
* ``unused-import`` emitted for the right import names in function scopes.
* Dropped support for Python 3.4.
* ``assignment-from-no-return`` not triggered for async methods.
* Don't emit ``attribute-defined-outside-init`` for variables defined in setters.
* Syntax errors report the column number.
* Support fully qualified typing imports for type annotations.
* Exclude ``__dict__`` from ``attribute-defined-outside-init``
* Fix pointer on spelling check when the error are more than one time in the same line.
* Fix crash happening when parent of called object cannot be determined
* Allow of in `GoogleDocstring.re_multiple_type`
* Added `subprocess-run-check` to handle subrocess.run without explicitly set `check` keyword.
* When we can't infer bare except handlers, skip ``try-except-raise``
* Handle more `unnecessary-lambda` cases when dealing with additional kwargs in wrapped calls
* Better postponed evaluation of annotations handling
* Support postponed evaluation of annotations for variable annotations.
* ``epylint.py_run`` defaults to ``python`` in case the current executable is not a Python one.
* Ignore raw docstrings when running Similarities checker with `ignore-docstrings=yes` option
* Fix crash when calling ``inherit_from_std_ex`` on a class which is its own ancestor
* Added a new check that warns the user if a function call is used inside a test but parentheses are missing.
* ``len-as-condition`` now only fires when a ``len(x)`` call is made without an explicit comparison
The message and description accompanying this checker has been changed
reflect this new behavior, by explicitly asking to either rely on the
fact that empty sequence are false or to compare the length with a scalar.
* Add ``preferred-module`` checker that notify if an import has a replacement module that should be used.
This check is emitted when ``pylint`` finds an imported module that has a
preferred replacement listed in ``preferred-modules``.
* ``assigning-non-slot`` not emitted for classes with unknown base classes.
* ``old-division`` is not emitted for non-Const nodes.
* Added method arguments to the dot writer for pyreverse.
* Support for linting file from stdin.
IDEs may benefit from the support for linting from an in-memory file.
* Added a new check `class-variable-slots-conflict`
This check is emitted when ``pylint`` finds a class variable that conflicts with a slot
name, which would raise a ``ValueError`` at runtime.
* Added new check: dict-iter-missing-items (E1141)
* Fix issue with pylint name in output of python -m pylint --version
* Relicense logo material under the CC BY-SA 4.0 license.
* Skip `if` expressions from f-strings for the `check_elif` checker
* C0412 (ungrouped-import) is now compatible with isort.
* Added new extension to detect too much code in a try clause
* ``signature-mutators`` option was added
With this option, users can choose to ignore `too-many-function-args`, `unexpected-keyword-arg`,
and `no-value-for-parameter` for functions decorated with decorators that change
the signature of a decorated function.
* Fixed a pragma comment on its own physical line being ignored when part
of a logical line with the previous physical line.
* Fixed false `undefined-loop-variable` for a function defined in the loop,
that uses the variable defined in that loop.
* Fixed `unused-argument` and `function-redefined` getting raised for
functions decorated with `typing.overload`.
* Fixed a false positive with ``consider-using-dict-comprehension`` for constructions that can't be converted to a comprehension
* Added ``__post_init__`` to ``defining-attr-methods`` in order to avoid ``attribute-defined-outside-init`` in dataclasses.
* Changed description of W0199 to use the term 2-item-tuple instead of 2-uple.
* Allow a `.` as a prefix for Sphinx name resolution.
* Checkers must now keep a 1 to 1 relationship between "msgid" (ie: C1234) and "symbol" (ie : human-readable-symbol)
* In checkers, an old_names can now be used for multiple new messages and pylint is now a little faster
* Allow the choice of f-strings as a valid way of formatting logging strings.
* Added ``--list-msgs-enabled`` command to list all enabled and disabled messages given the current RC file and command line arguments.
2019-10-01 13:38:06 +02:00
|
|
|
${PYSITELIB}/pylint/message/__init__.py
|
|
|
|
${PYSITELIB}/pylint/message/__init__.pyc
|
|
|
|
${PYSITELIB}/pylint/message/__init__.pyo
|
|
|
|
${PYSITELIB}/pylint/message/message.py
|
|
|
|
${PYSITELIB}/pylint/message/message.pyc
|
|
|
|
${PYSITELIB}/pylint/message/message.pyo
|
|
|
|
${PYSITELIB}/pylint/message/message_definition.py
|
|
|
|
${PYSITELIB}/pylint/message/message_definition.pyc
|
|
|
|
${PYSITELIB}/pylint/message/message_definition.pyo
|
|
|
|
${PYSITELIB}/pylint/message/message_definition_store.py
|
|
|
|
${PYSITELIB}/pylint/message/message_definition_store.pyc
|
|
|
|
${PYSITELIB}/pylint/message/message_definition_store.pyo
|
|
|
|
${PYSITELIB}/pylint/message/message_handler_mix_in.py
|
|
|
|
${PYSITELIB}/pylint/message/message_handler_mix_in.pyc
|
|
|
|
${PYSITELIB}/pylint/message/message_handler_mix_in.pyo
|
|
|
|
${PYSITELIB}/pylint/message/message_id_store.py
|
|
|
|
${PYSITELIB}/pylint/message/message_id_store.pyc
|
|
|
|
${PYSITELIB}/pylint/message/message_id_store.pyo
|
2014-03-12 02:26:03 +01:00
|
|
|
${PYSITELIB}/pylint/pyreverse/__init__.py
|
2016-08-29 17:58:58 +02:00
|
|
|
${PYSITELIB}/pylint/pyreverse/__init__.pyc
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/pyreverse/__init__.pyo
|
2016-08-29 17:58:58 +02:00
|
|
|
${PYSITELIB}/pylint/pyreverse/diadefslib.py
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/pyreverse/diadefslib.pyc
|
|
|
|
${PYSITELIB}/pylint/pyreverse/diadefslib.pyo
|
2016-08-29 17:58:58 +02:00
|
|
|
${PYSITELIB}/pylint/pyreverse/diagrams.py
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/pyreverse/diagrams.pyc
|
|
|
|
${PYSITELIB}/pylint/pyreverse/diagrams.pyo
|
2016-08-29 17:58:58 +02:00
|
|
|
${PYSITELIB}/pylint/pyreverse/inspector.py
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/pyreverse/inspector.pyc
|
|
|
|
${PYSITELIB}/pylint/pyreverse/inspector.pyo
|
2016-08-29 17:58:58 +02:00
|
|
|
${PYSITELIB}/pylint/pyreverse/main.py
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/pyreverse/main.pyc
|
|
|
|
${PYSITELIB}/pylint/pyreverse/main.pyo
|
2016-08-29 17:58:58 +02:00
|
|
|
${PYSITELIB}/pylint/pyreverse/utils.py
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/pyreverse/utils.pyc
|
|
|
|
${PYSITELIB}/pylint/pyreverse/utils.pyo
|
2016-08-29 17:58:58 +02:00
|
|
|
${PYSITELIB}/pylint/pyreverse/vcgutils.py
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/pyreverse/vcgutils.pyc
|
|
|
|
${PYSITELIB}/pylint/pyreverse/vcgutils.pyo
|
2016-08-29 17:58:58 +02:00
|
|
|
${PYSITELIB}/pylint/pyreverse/writer.py
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/pyreverse/writer.pyc
|
|
|
|
${PYSITELIB}/pylint/pyreverse/writer.pyo
|
2014-03-12 02:26:03 +01:00
|
|
|
${PYSITELIB}/pylint/reporters/__init__.py
|
2016-08-29 17:58:58 +02:00
|
|
|
${PYSITELIB}/pylint/reporters/__init__.pyc
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/reporters/__init__.pyo
|
py-pylint: updated to 2.4.2
What's New in Pylint 2.4.2?
* ``ignored-modules`` can skip submodules.
* ``self-assigning-variable`` skips class level assignments.
* ``consider-using-sys-exit`` is exempted when `exit()` is imported from `sys`
* Exempt annotated assignments without variable from ``class-variable-slots-conflict``
* Fix ``utils.is_error`` to account for functions returning early.
This fixes a false negative with ``unused-variable`` which was no longer triggered
when a function raised an exception as the last instruction, but the body of the function
still had unused variables.
What's New in Pylint 2.4.1?
* Exempt type checking definitions defined in both clauses of a type checking guard
* Exempt type checking definitions inside the type check guard
In a7f236528bb3758886b97285a56f3f9ce5b13a99 we added basic support
for emitting `used-before-assignment` if a variable was only defined
inside a type checking guard (using `TYPE_CHECKING` variable from `typing`)
Unfortunately that missed the case of using those type checking imports
inside the guard itself, which triggered spurious used-before-assignment errors.
* Require astroid >= 2.3 to avoid any compatibility issues.
What's New in Pylint 2.4.0?
* New check: ``import-outside-toplevel``
This check warns when modules are imported from places other than a
module toplevel, e.g. inside a function or a class.
* Handle inference ambiguity for ``invalid-format-index``
* Removed Python 2 specific checks such as ``relative-import``,
``invalid-encoded-data``, ``missing-super-argument``.
* Support forward references for ``function-redefined`` check.
* Handle redefinitions in case of type checking imports.
* Added a new check, ``consider-using-sys-exit``
This check is emitted when we detect that a quit() or exit() is invoked
instead of sys.exit(), which is the preferred way of exiting in program.
* ``useless-suppression`` check now ignores ``cyclic-import`` suppressions,
which could lead to false postiives due to incomplete context at the time
of the check.
* Added new checks, ``no-else-break`` and ``no-else-continue``
These checks highlight unnecessary ``else`` and ``elif`` blocks after
``break`` and ``continue`` statements.
* Don't emit ``protected-access`` when a single underscore prefixed attribute
is used inside a special method
* Fix the "statement" values in the PyLinter's stats reports by module.
* Added a new check, ``invalid-overridden-method``
This check is emitted when we detect that a method is overridden
as a property or a property is overridden as a method. This can indicate
a bug in the application code that will trigger a runtime error.
* Added a new check, ``arguments-out-of-order``
This check warns if you have arguments with names that match those in
a function's signature but you are passing them in to the function
in a different order.
* Added a new check, ``redeclared-assigned-name``
This check is emitted when ``pylint`` detects that a name
was assigned one or multiple times in the same assignment,
which indicate a potential bug.
* Ignore lambda calls with variadic arguments without a context.
Inferring variadic positional arguments and keyword arguments
will result into empty Tuples and Dicts, which can lead in
some cases to false positives with regard to no-value-for-parameter.
In order to avoid this, until we'll have support for call context
propagation, we're ignoring such cases if detected.
We already did that for function calls, but the previous fix
was not taking in consideration ``lambdas``
* Added a new check, ``self-assigning-variable``
This check is emitted when we detect that a variable is assigned
to itself, which might indicate a potential bug in the code application.
* Added a new check, ``property-with-parameters``.
This check is emitted when we detect that a defined property also
has parameters, which are useless.
* Excluded protocol classes from a couple of checks.
* Add a check `unnecessary-comprehension` that detects unnecessary comprehensions.
This check is emitted when ``pylint`` finds list-, set- or dict-comprehensions,
that are unnecessary and can be rewritten with the list-, set- or dict-constructors.
* Excluded PEP 526 instance and class variables from ``no-member``.
* Excluded `attrs` from `too-few-public-methods` check.
* ``unused-import`` emitted for the right import names in function scopes.
* Dropped support for Python 3.4.
* ``assignment-from-no-return`` not triggered for async methods.
* Don't emit ``attribute-defined-outside-init`` for variables defined in setters.
* Syntax errors report the column number.
* Support fully qualified typing imports for type annotations.
* Exclude ``__dict__`` from ``attribute-defined-outside-init``
* Fix pointer on spelling check when the error are more than one time in the same line.
* Fix crash happening when parent of called object cannot be determined
* Allow of in `GoogleDocstring.re_multiple_type`
* Added `subprocess-run-check` to handle subrocess.run without explicitly set `check` keyword.
* When we can't infer bare except handlers, skip ``try-except-raise``
* Handle more `unnecessary-lambda` cases when dealing with additional kwargs in wrapped calls
* Better postponed evaluation of annotations handling
* Support postponed evaluation of annotations for variable annotations.
* ``epylint.py_run`` defaults to ``python`` in case the current executable is not a Python one.
* Ignore raw docstrings when running Similarities checker with `ignore-docstrings=yes` option
* Fix crash when calling ``inherit_from_std_ex`` on a class which is its own ancestor
* Added a new check that warns the user if a function call is used inside a test but parentheses are missing.
* ``len-as-condition`` now only fires when a ``len(x)`` call is made without an explicit comparison
The message and description accompanying this checker has been changed
reflect this new behavior, by explicitly asking to either rely on the
fact that empty sequence are false or to compare the length with a scalar.
* Add ``preferred-module`` checker that notify if an import has a replacement module that should be used.
This check is emitted when ``pylint`` finds an imported module that has a
preferred replacement listed in ``preferred-modules``.
* ``assigning-non-slot`` not emitted for classes with unknown base classes.
* ``old-division`` is not emitted for non-Const nodes.
* Added method arguments to the dot writer for pyreverse.
* Support for linting file from stdin.
IDEs may benefit from the support for linting from an in-memory file.
* Added a new check `class-variable-slots-conflict`
This check is emitted when ``pylint`` finds a class variable that conflicts with a slot
name, which would raise a ``ValueError`` at runtime.
* Added new check: dict-iter-missing-items (E1141)
* Fix issue with pylint name in output of python -m pylint --version
* Relicense logo material under the CC BY-SA 4.0 license.
* Skip `if` expressions from f-strings for the `check_elif` checker
* C0412 (ungrouped-import) is now compatible with isort.
* Added new extension to detect too much code in a try clause
* ``signature-mutators`` option was added
With this option, users can choose to ignore `too-many-function-args`, `unexpected-keyword-arg`,
and `no-value-for-parameter` for functions decorated with decorators that change
the signature of a decorated function.
* Fixed a pragma comment on its own physical line being ignored when part
of a logical line with the previous physical line.
* Fixed false `undefined-loop-variable` for a function defined in the loop,
that uses the variable defined in that loop.
* Fixed `unused-argument` and `function-redefined` getting raised for
functions decorated with `typing.overload`.
* Fixed a false positive with ``consider-using-dict-comprehension`` for constructions that can't be converted to a comprehension
* Added ``__post_init__`` to ``defining-attr-methods`` in order to avoid ``attribute-defined-outside-init`` in dataclasses.
* Changed description of W0199 to use the term 2-item-tuple instead of 2-uple.
* Allow a `.` as a prefix for Sphinx name resolution.
* Checkers must now keep a 1 to 1 relationship between "msgid" (ie: C1234) and "symbol" (ie : human-readable-symbol)
* In checkers, an old_names can now be used for multiple new messages and pylint is now a little faster
* Allow the choice of f-strings as a valid way of formatting logging strings.
* Added ``--list-msgs-enabled`` command to list all enabled and disabled messages given the current RC file and command line arguments.
2019-10-01 13:38:06 +02:00
|
|
|
${PYSITELIB}/pylint/reporters/base_reporter.py
|
|
|
|
${PYSITELIB}/pylint/reporters/base_reporter.pyc
|
|
|
|
${PYSITELIB}/pylint/reporters/base_reporter.pyo
|
|
|
|
${PYSITELIB}/pylint/reporters/collecting_reporter.py
|
|
|
|
${PYSITELIB}/pylint/reporters/collecting_reporter.pyc
|
|
|
|
${PYSITELIB}/pylint/reporters/collecting_reporter.pyo
|
|
|
|
${PYSITELIB}/pylint/reporters/json_reporter.py
|
|
|
|
${PYSITELIB}/pylint/reporters/json_reporter.pyc
|
|
|
|
${PYSITELIB}/pylint/reporters/json_reporter.pyo
|
|
|
|
${PYSITELIB}/pylint/reporters/reports_handler_mix_in.py
|
|
|
|
${PYSITELIB}/pylint/reporters/reports_handler_mix_in.pyc
|
|
|
|
${PYSITELIB}/pylint/reporters/reports_handler_mix_in.pyo
|
2016-08-29 17:58:58 +02:00
|
|
|
${PYSITELIB}/pylint/reporters/text.py
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/reporters/text.pyc
|
|
|
|
${PYSITELIB}/pylint/reporters/text.pyo
|
Updated py-pylint to 1.6.1.
What's new in Pylint 1.6.1?
===========================
Release date: 2016-07-07
* Use environment markers for supporting conditional dependencies.
What's New in Pylint 1.6.0?
===========================
Release date: 2016-07-07
* Added a new extension, `pylint.extensions.mccabe`, for warning
about complexity in code.
* Deprecate support for --optimize-ast. Part of #975.
* Deprecate support for the HTML output. Part of #975.
* Deprecate support for --output-files. Part of #975.
* Fixed a documentation error for the check_docs extension. Fixes #735.
* Made the list of property-defining decorators configurable.
* Fix a bug where the top name of a qualified import was detected as unused variable.
Close #923.
* bad-builtin is now an extension check.
* generated-members support qualified name through regular expressions.
For instance, one can specify a regular expression as --generated-members=astroid.node_classes.*
for ignoring every no-member error that is accessed as in `astroid.node_classes.missing.object`.
* Add the ability to ignore files based on regex matching, with the new ``--ignore-patterns``
option.
This addresses issue #156 by allowing for multiple ignore patterns
to be specified. Rather than clobber the existing ignore option, we
introduced a new one called ignore-patterns.
* Added a new error, 'trailing-newlines', which is emitted when a file
has trailing new lines.
Closes issue #682.
* Add a new option, 'redefining-builtins-modules', for controlling the modules
which can redefine builtins, such as six.moves and future.builtins.
Close #464.
* 'reimported' is emitted when the same name is imported from different module.
Close #162.
* Add a new recommendation checker, 'consider-iterating-dictionary', which is emitted
which is emitted when a dictionary is iterated through .keys().
Close #699
* Use the configparser backport for Python 2
This fixes a problem we were having with comments inside values, which is fixed
in Python 3's configparser.
Close #828
* A new error was added, 'invalid-length-returned', when the `__len__`
special method returned something else than a non-negative number.
Close issue #557
* Switch to using isort internally for wrong-import-order.
Closes #879.
* check_docs extension can find constructor parameters in __init__.
Closes #887.
* Don't warn about invalid-sequence-index if the indexed object has unknown base
classes.
Closes #867
* Don't crash when checking, for super-init-not-called, a method defined in an if block.
* Do not emit import-error or no-name-in-module for fallback import blocks by default.
Until now, we warned with these errors when a fallback import block (a TryExcept block
that contained imports for Python 2 and 3) was found, but this gets cumbersome when
trying to write compatible code. As such, we don't check these blocks by default,
but the analysis can be enforced by using the new ``--analyse-fallback-block`` flag.
Close #769.
What's New in Pylint 1.5.6?
===========================
Release date: 2016-06-06
* config files with BOM markers can now be read.
Close #864.
* epylint.py_run does not crash on big files, using .communicate() instead of .wait()
Close #599
What's New in Pylint 1.5.5?
===========================
Release date: 2016-03-21
* Let visit_importfrom from Python 3 porting checker be called when everything is disabled
Because the visit method was filtering the patterns it was expecting to be activated,
it didn't run when everything but one pattern was disabled, leading to spurious false
positives
Close #852
* Don't emit unsubscriptable-value for classes with unknown
base classes.
Close #776.
* Use an OrderedDict for storing the configuration elements
This fixes an issue related to impredictible order of the disable / enable
elements from a config file. In certain cases, the disable was coming before
the enable which resulted in classes of errors to be enabled, even though the intention
was to disable them. The best example for this was in the context of running multiple
processes, each one of it having different enables / disables that affected the output.
Close #815
* Don't consider bare and broad except handlers as ignoring NameError,
AttributeError and similar exceptions, in the context of checkers for
these issues.
Closes issue #826
What's New in Pylint 1.5.4?
===========================
Release date: 2016-01-15
* Merge StringMethodChecker with StringFormatChecker. This fixes a
bug where disabling all the messages and enabling only a handful of
messages from the StringFormatChecker would have resulted in no
messages at all.
* Don't apply unneeded-not over sets.
What's New in Pylint 1.5.3?
===========================
Release date: 2016-01-11
* Handle the import fallback idiom with regard to wrong-import-order.
Closes issue #750.
* Decouple the displaying of reports from the displaying of messages
Some reporters are aggregating the messages instead of displaying
them when they are available. The actual displaying was conflatted
in the generate_reports. Unfortunately this behaviour was flaky
and in the case of the JSON reporter, the messages weren't shown
at all if a file had syntax errors or if it was missing.
In order to fix this, the aggregated messages can now be
displayed with Reporter.display_message, while the reports are
displayed with display_reports.
Closes issues #766 and #765.
* Ignore function calls with variadic arguments without a context.
Inferring variadic positional arguments and keyword arguments
will result into empty Tuples and Dicts, which can lead in
some cases to false positives with regard to no-value-for-parameter.
In order to avoid this, until we'll have support for call context
propagation, we're ignoring such cases if detected.
Closes issue #722.
* Treat AsyncFunctionDef just like FunctionDef nodes,
by implementing visit_asyncfunctiondef in terms of
visit_functiondef.
Closes issue #767.
* Take in account kwonlyargs when verifying that arguments
are defined with the check_docs extension.
Closes issue #745.
* Suppress reporting 'unneeded-not' inside `__ne__` methods
Closes issue #749.
What's New in Pylint 1.5.2?
===========================
Release date: 2015-12-21
* Don't crash if graphviz is not installed, instead emit a
warning letting the user to know.
Closes issue #168.
* Accept only functions and methods for the deprecated-method checker.
This prevents a crash which can occur when an object doesn't have
.qname() method after the inference.
* Don't emit super-on-old-class on classes with unknown bases.
Closes issue #721.
* Allow statements in `if` or `try` blocks containing imports.
Closes issue #714.
What's New in Pylint 1.5.1?
===========================
Release date: 2015-12-02
* Don't emit unsubscriptable-object if the node is found
inside an abstract class. Closes issue #685.
* Add wrong-import-position to check_messages's decorator arguments
for ImportChecker.leave_module
This fixes an esoteric bug which occurs when ungrouped-imports and
wrong-import-order are disabled and pylint is executed on multiple files.
What happens is that without wrong-import-position in check_messages,
leave_module will never be called, which means that the first non-import node
from other files might leak into the current file,
leading to wrong-import-position being emitted by pylint.
* Fix a crash which occurred when old visit methods are encountered
in plugin modules. Closes issue #711.
* Don't emit import-self and cyclic-import for relative imports
of modules with the same name as the package itself.
Closes issues #708 and #706.
What's New in Pylint 1.5.0?
===========================
Release date: 2015-11-29
* Added multiple warnings related to imports. 'wrong-import-order'
is emitted when PEP 8 recommendations regarding imports are not
respected (that is, standard imports should be followed by third-party
imports and then by local imports). 'ungrouped-imports' is emitted
when imports from the same package or module are not placed
together, but scattered around in the code. 'wrong-import-position'
is emitted when code is mixed with imports, being recommended for the
latter to be at the top of the file, in order to figure out easier by
a human reader what dependencies a module has.
Closes issue #692.
* Added a new refactoring warning, 'unneeded-not', emitted
when an expression with the not operator could be simplified.
Closes issue #670.
* Added a new refactoring warning, 'simplifiable-if-statement',
used when an if statement could be reduced to a boolean evaluation
of its test. Closes issue #698.
* Added a new refactoring warning, 'too-many-boolean-expressions',
used when a if statement contains too many boolean expressions,
which makes the code less maintainable and harder to understand.
Closes issue #677.
* Property methods are shown as attributes instead of functions in
pyreverse class diagrams. Closes Issue #284
* Add a new refactoring error, 'too-many-nested-blocks', which is emitted
when a function or a method has too many nested blocks, which makes the
code less readable and harder to understand. Closes issue #668.
* Add a new error, 'unsubscriptable-object', that is emitted when
value used in subscription expression doesn't support subscription
(i.e. doesn't define __getitem__ method).
* Don't warn about abstract classes instantiated in their own
body. Closes issue #627.
* Obsolete options are not present by default in the generated
configuration file. Closes issue #632.
* non-iterator-returned can detect classes with iterator-metaclasses.
Closes issue #679.
* Add a new error, 'unsupported-membership-test', emitted when value
to the right of the 'in' operator doesn't support membership test
protocol (i.e. doesn't define __contains__/__iter__/__getitem__)
* Add new errors, 'not-an-iterable', emitted when non-iterable value
is used in an iterating context (starargs, for-statement,
comprehensions, etc), and 'not-a-mapping', emitted when non-mapping
value is used in a mapping context. Closes issue #563.
* Make 'no-self-use' checker not emit a warning if there is a 'super()'
call inside the method.
Closes issue #667.
* Add checker to identify multiple imports on one line.
Closes issue #598.
* Fix unused-argument false positive when the "+=" operator is used.
Closes issue #518.
* Don't emit import-error for ignored modules. PyLint will not emit import
errors for any import which is, or is a subpackage of, a module in
the ignored-modules list. Closes issue #223.
* Fix unused-import false positive when the import is used in a
class assignment. Closes issue #475
* Add a new error, 'not-context-manager', emitted when something
that doesn't implement __enter__ and __exit__ is used in a with
statement.
* Add a new warning, 'confusing-with-statement', emitted by the
base checker, when an ambiguous looking with statement is used.
For example `with open() as first, second` which looks like a
tuple assignment but is actually 2 context managers.
* Add a new warning, 'duplicate-except', emitted when there is an
exception handler which handles an exception type that was handled
before. Closes issue #485.
* A couple of warnings got promoted to errors, since they could uncover
potential bugs in the code. These warnings are: assignment-from-none,
unbalanced-tuple-unpacking, unpacking-non-sequence, non-iterator-returned.
Closes issue #388.
* Allow ending a pragma control with a semicolon. In this way, users
can continue a pragma control with a reason for why it is used,
as in `# pylint: disable=old-style-class;reason=...`.
Closes issue #449.
* --jobs can be used with --load-plugins now. Closes issue #456.
* Improve the performance of --jobs when dealing only with a package
name. Closes issue #479.
* Don't emit an unused-wildcard-import when the imported name comes
from another module and it is in fact a __future__ name.
* The colorized reporter now works on Windows. Closes issue #96.
* Remove pointless-except warning. It was previously disabled by
default and it wasn't very useful. Closes issue #506.
* Fix a crash on Python 3 related to the string checker, which
crashed when it encountered a bytes string with a .format
method called.
* Don't warn about no-self-use for builtin properties.
* Fix a false positive for bad-reversed-sequence, when a subclass
of a `dict` provides a __reversed__ method.
* Change the default no-docstring-rgx so missing-docstring isn't
emitted for private functions.
* Don't emit redefined-outer-name for __future__ directives.
Closes issue #520.
* Provide some hints for the bad-builtin message. Closes issue #522.
* When checking for invalid arguments to a callable, in typecheck.py,
look up for the __init__ in case the found __new__ comes from builtins.
Since the __new__ comes from builtins, it will not have attached any
information regarding what parameters it expects, so the check
will be useless. Retrieving __init__ in that case will at least
detect a couple of false negatives. Closes issue #429.
* Don't emit no-member for classes with unknown bases.
Since we don't know what those bases might add, we simply ignore
the error in this case.
* Lookup in the implicit metaclass when checking for no-member,
if the class in question has an implicit metaclass, which is
True for new style classes. Closes issue #438.
* Add two new warnings, duplicate-bases and inconsistent-mro.
duplicate-bases is emitted when a class has the same bases
listed more than once in its bases definition, while inconsistent-mro
is emitted when no sane mro hierarchy can be determined. Closes issue #526.
* Remove interface-not-implemented warning. Closes issue #532.
* Remove the rest of interface checks: interface-is-not-class,
missing-interface-method, unresolved-interface. The reason is that
its better to start recommending ABCs instead of the old Zope era
of interfaces. One side effect of this change is that ignore-iface-methods
becomes a noop, it's deprecated and it will be removed at some time.
* Emit a proper deprecation warning for reporters.BaseReporter.add_message.
The alternative way is to use handle_message. add_message will be removed in
Pylint 1.6.
* Added new module 'extensions' for optional checkers with the test
directory 'test/extensions' and documentation file 'doc/extensions.rst'.
* Added new checker 'extensions.check_docs' that verifies parameter
documention in Sphinx, Google, and Numpy style.
* Detect undefined variable cases, where the "definition" of an undefined
variable was in del statement. Instead of emitting used-before-assignment,
which is totally misleading, it now emits undefined-variable.
Closes issue #528.
* Don't emit attribute-defined-outside-init and access-member-before-definition
for mixin classes. Actual errors can occur in mixin classes, but this is
controlled by the ignore-mixin-members option. Closes issue #412.
* Improve the detection of undefined variables and variables used before
assignment for variables used as default arguments to function,
where the variable was first defined in the class scope.
Closes issue #342 and issue #404.
* Add a new warning, 'unexpected-special-method-signature', which is emitted
when a special method (dunder method) doesn't have the expected signature,
which can lead to actual errors in the application code.
Closes issue #253.
* Remove 'bad-context-manager' due to the inclusion of 'unexpected-special-method-signature'.
* Don't emit no-name-in-module if the import is guarded by an ImportError, Exception or
a bare except clause.
* Don't emit no-member if the attribute access node is protected by an
except handler, which handles AttributeError, Exception or it is a
bare except.
* Don't emit import-error if the import is guarded by an ImportError, Exception or a
bare except clause.
* Don't emit undefined-variable if the node is guarded by a NameError, Exception
or bare except clause.
* Add a new warning, 'using-constant-test', which is emitted when a conditional
statement (If, IfExp) uses a test which is always constant, such as numbers,
classes, functions etc. This is most likely an error from the user's part.
Closes issue #524.
* Don't emit 'raising-non-exception' when the exception has unknown
bases. We don't know what those bases actually are and it's better
to assume that the user knows what he is doing rather than emitting
a message which can be considered a false positive.
* Look for a .pylintrc configuration file in the current folder,
if pylintrc is not found. Dotted pylintrc files will not be searched
in the parents of the current folder, as it is done for pylintrc.
* Add a new error, 'invalid-unary-type-operand', emitted when
an unary operand is used on something which doesn't support that
operation (for instance, using the unary bitwise inversion operator
on an instance which doesn't implement __invert__).
* Take in consideration differences between arguments of various
type of functions (classmethods, staticmethods, properties)
when checking for `arguments-differ`. Closes issue #548.
* astroid.inspector was moved to pylint.pyreverse, since it belongs
there and it doesn't need to be in astroid.
* astroid.utils.LocalsVisitor was moved to pylint.pyreverse.LocalsVisitor.
* pylint.checkers.utils.excepts_import_error was removed.
Use pylint.chekcers.utils.error_of_type instead.
* Don't emit undefined-all-variables for nodes which can't be
inferred (YES nodes).
* yield-outside-func is also emitted for `yield from`.
* Add a new error, 'too-many-star-expressions', emitted when
there are more than one starred expression (`*x`) in an assignment.
The warning is emitted only on Python 3.
* Add a new error, 'invalid-star-assignment-target', emitted when
a starred expression (`*x`) is used as the lhs side of an assignment,
as in `*x = [1, 2]`. This is not a SyntaxError on Python 3 though.
* Detect a couple of objects which can't be base classes (bool,
slice, range and memoryview, which weren't detected until now).
* Add a new error for the Python 3 porting checker, `import-star-module-level`,
which is used when a star import is detected in another scope than the
module level, which is an error on Python 3. Using this will emit a
SyntaxWarning on Python 2.
* Add a new error, 'star-needs-assignment-target', emitted on Python 3 when
a Starred expression (`*x`) is not used in an assignment target. This is not
caught when parsing the AST on Python 3, so it needs to be a separate check.
* Add a new error, 'unsupported-binary-operation', emitted when
two a binary arithmetic operation is executed between two objects
which don't support it (a number plus a string for instance).
This is currently disabled, since the it exhibits way too many false
positives, but it will be reenabled as soon as possible.
* New imported features from astroid into pyreverse: pyreverse.inspector.Project,
pyreverse.inspector.project_from_files and pyreverse.inspector.interfaces.
These were moved since they didn't belong in astroid.
* Enable misplaced-future for Python 3. Closes issue #580.
* Add a new error, 'nonlocal-and-global', which is emitted when a
name is found to be both nonlocal and global in the same scope.
Closes issue #581.
* ignored-classes option can work with qualified names (ignored-classes=optparse.Values)
Closes issue #297.
* ignored-modules can work with qualified names as well as with Unix pattern
matching for recursive ignoring. Closes issues #244.
* Improve detection of relative imports in non-packages, as well as importing
missing modules with a relative import from a package.
* Don't emit no-init if not all the bases from a class are known.
Closes issue #604.
* --no-space-check option accepts `empty-line` as a possible option.
Closes issue #541.
* --generate-rcfile generates by default human readable symbols
for the --disable option. Closes issue #608.
* Improved the not-in-loop checker to properly detect more cases.
* Add a new error, 'continue-in-finally', which is emitted when
the `continue` keyword is found inside a `finally` clause, which
is a SyntaxError.
* The --zope flag is deprecated and it is slated for removal
in Pylint 1.6.
The reason behind this removal is the fact that it's a specialized
flag and there are solutions for the original problem:
use --generated-members with the members that causes problems
when using Zope or add AST transforms tailored to the zope
project.
At the same time, --include-ids and --symbols will also be removed
in Pylint 1.6. Closes issue #570.
* missing-module-attribute was removed and the corresponding
CLI option, required-attributes, which is slated for removal
in Pylint 1.6.
* missing-reversed-argument was removed.
The reason behind this is that this kind of errors should be
detected by the type checker for *all* the builtins and not
as a special case for the reversed builtin. This will happen
shortly in the future.
* --comment flag is obsolete and it will be removed in Pylint 1.6.
* --profile flag is obsolete and it will be removed in Pylint 1.6.
* Add a new error, 'misplaced-bare-raise'.
The error is used when a bare raise is not used inside an except clause.
This can generate a RuntimeError in Python, if there are no active exceptions
to be reraised. While it works in Python 2 due to the fact that the exception
leaks outside of the except block, it's nevertheless a behaviour that
an user shouldn't depend upon, since it's not obvious to the reader of the code
what exception will be raised and it will not be compatible with Python 3 anyhow.
Closes issue #633.
* Bring logilab-common's ureports into pylint.reporters.
With this change, we moved away from depending on logilab-common,
having in Pylint all the components that were used from logilab-common.
The API should be considered an implementation detail and can change at
some point in the future.
Closes issue #621.
* `reimported` is emitted for reimported objects on the same line.
Closes issue #639.
* Abbreviations of command line options are not supported anymore.
Using abbreviations for CLI options was never considered to be
a feature of pylint, this fact being only a side effect of using optparse.
As this was the case, using --load-plugin or other abbreviation
for --load-plugins never actually worked, while it also didn't raise
an error. Closes issue #424.
* Add a new error, 'nonlocal-without-binding'
The error is emitted on Python 3 when a nonlocal name is not bound
to any variable in the parents scopes. Closes issue #582.
* 'deprecated-module' can be shown for modules which aren't
available. Closes issue #362.
* Don't consider a class abstract if its members can't
be properly inferred.
This fixes a false positive related to abstract-class-instantiated.
Closes issue #648.
* Add a new checker for the async features added by PEP 492.
* Add a new error, 'yield-inside-async-function', emitted on
Python 3.5 and upwards when the `yield` statement is found inside
a new coroutine function (PEP 492).
* Add a new error, 'not-async-context-manager', emitted when
an async context manager block is used with an object which doesn't
support this protocol (PEP 492).
* Add a new convention warning, 'singleton-comparison', emitted when
comparison to True, False or None is found.
* Don't emit 'assigning-non-slot' for descriptors. Closes issue #652.
* Add a new error, 'repeated-keyword', when a keyword argument is passed
multiple times into a function call.
This is similar with redundant-keyword-arg, but it's mildly different
that it needs to be a separate error.
* --enable=all can now be used. Closes issue #142.
* Add a new convention message, 'misplaced-comparison-constant',
emitted when a constant is placed in the left hand side of a comparison,
as in '5 == func()'. This is also called Yoda condition, since the
flow of code reminds of the Star Wars green character, conditions usually
encountered in languages with variabile assignments in conditional
statements.
* Add a new convention message, 'consider-using-enumerate', which is
emitted when code that uses `range` and `len` for iterating is encountered.
Closes issue #684.
* Added two new refactoring messages, 'no-classmethod-decorator' and
'no-staticmethod-decorator', which are emitted when a static method or a class
method is declared without using decorators syntax.
Closes issue #675.
2016-07-12 11:32:14 +02:00
|
|
|
${PYSITELIB}/pylint/reporters/ureports/__init__.py
|
2016-08-29 17:58:58 +02:00
|
|
|
${PYSITELIB}/pylint/reporters/ureports/__init__.pyc
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/reporters/ureports/__init__.pyo
|
2016-08-29 17:58:58 +02:00
|
|
|
${PYSITELIB}/pylint/reporters/ureports/nodes.py
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/reporters/ureports/nodes.pyc
|
|
|
|
${PYSITELIB}/pylint/reporters/ureports/nodes.pyo
|
2016-08-29 17:58:58 +02:00
|
|
|
${PYSITELIB}/pylint/reporters/ureports/text_writer.py
|
2016-08-29 18:19:04 +02:00
|
|
|
${PYSITELIB}/pylint/reporters/ureports/text_writer.pyc
|
|
|
|
${PYSITELIB}/pylint/reporters/ureports/text_writer.pyo
|
2014-03-12 02:26:03 +01:00
|
|
|
${PYSITELIB}/pylint/testutils.py
|
py-pylint: updated to 2.4.2
What's New in Pylint 2.4.2?
* ``ignored-modules`` can skip submodules.
* ``self-assigning-variable`` skips class level assignments.
* ``consider-using-sys-exit`` is exempted when `exit()` is imported from `sys`
* Exempt annotated assignments without variable from ``class-variable-slots-conflict``
* Fix ``utils.is_error`` to account for functions returning early.
This fixes a false negative with ``unused-variable`` which was no longer triggered
when a function raised an exception as the last instruction, but the body of the function
still had unused variables.
What's New in Pylint 2.4.1?
* Exempt type checking definitions defined in both clauses of a type checking guard
* Exempt type checking definitions inside the type check guard
In a7f236528bb3758886b97285a56f3f9ce5b13a99 we added basic support
for emitting `used-before-assignment` if a variable was only defined
inside a type checking guard (using `TYPE_CHECKING` variable from `typing`)
Unfortunately that missed the case of using those type checking imports
inside the guard itself, which triggered spurious used-before-assignment errors.
* Require astroid >= 2.3 to avoid any compatibility issues.
What's New in Pylint 2.4.0?
* New check: ``import-outside-toplevel``
This check warns when modules are imported from places other than a
module toplevel, e.g. inside a function or a class.
* Handle inference ambiguity for ``invalid-format-index``
* Removed Python 2 specific checks such as ``relative-import``,
``invalid-encoded-data``, ``missing-super-argument``.
* Support forward references for ``function-redefined`` check.
* Handle redefinitions in case of type checking imports.
* Added a new check, ``consider-using-sys-exit``
This check is emitted when we detect that a quit() or exit() is invoked
instead of sys.exit(), which is the preferred way of exiting in program.
* ``useless-suppression`` check now ignores ``cyclic-import`` suppressions,
which could lead to false postiives due to incomplete context at the time
of the check.
* Added new checks, ``no-else-break`` and ``no-else-continue``
These checks highlight unnecessary ``else`` and ``elif`` blocks after
``break`` and ``continue`` statements.
* Don't emit ``protected-access`` when a single underscore prefixed attribute
is used inside a special method
* Fix the "statement" values in the PyLinter's stats reports by module.
* Added a new check, ``invalid-overridden-method``
This check is emitted when we detect that a method is overridden
as a property or a property is overridden as a method. This can indicate
a bug in the application code that will trigger a runtime error.
* Added a new check, ``arguments-out-of-order``
This check warns if you have arguments with names that match those in
a function's signature but you are passing them in to the function
in a different order.
* Added a new check, ``redeclared-assigned-name``
This check is emitted when ``pylint`` detects that a name
was assigned one or multiple times in the same assignment,
which indicate a potential bug.
* Ignore lambda calls with variadic arguments without a context.
Inferring variadic positional arguments and keyword arguments
will result into empty Tuples and Dicts, which can lead in
some cases to false positives with regard to no-value-for-parameter.
In order to avoid this, until we'll have support for call context
propagation, we're ignoring such cases if detected.
We already did that for function calls, but the previous fix
was not taking in consideration ``lambdas``
* Added a new check, ``self-assigning-variable``
This check is emitted when we detect that a variable is assigned
to itself, which might indicate a potential bug in the code application.
* Added a new check, ``property-with-parameters``.
This check is emitted when we detect that a defined property also
has parameters, which are useless.
* Excluded protocol classes from a couple of checks.
* Add a check `unnecessary-comprehension` that detects unnecessary comprehensions.
This check is emitted when ``pylint`` finds list-, set- or dict-comprehensions,
that are unnecessary and can be rewritten with the list-, set- or dict-constructors.
* Excluded PEP 526 instance and class variables from ``no-member``.
* Excluded `attrs` from `too-few-public-methods` check.
* ``unused-import`` emitted for the right import names in function scopes.
* Dropped support for Python 3.4.
* ``assignment-from-no-return`` not triggered for async methods.
* Don't emit ``attribute-defined-outside-init`` for variables defined in setters.
* Syntax errors report the column number.
* Support fully qualified typing imports for type annotations.
* Exclude ``__dict__`` from ``attribute-defined-outside-init``
* Fix pointer on spelling check when the error are more than one time in the same line.
* Fix crash happening when parent of called object cannot be determined
* Allow of in `GoogleDocstring.re_multiple_type`
* Added `subprocess-run-check` to handle subrocess.run without explicitly set `check` keyword.
* When we can't infer bare except handlers, skip ``try-except-raise``
* Handle more `unnecessary-lambda` cases when dealing with additional kwargs in wrapped calls
* Better postponed evaluation of annotations handling
* Support postponed evaluation of annotations for variable annotations.
* ``epylint.py_run`` defaults to ``python`` in case the current executable is not a Python one.
* Ignore raw docstrings when running Similarities checker with `ignore-docstrings=yes` option
* Fix crash when calling ``inherit_from_std_ex`` on a class which is its own ancestor
* Added a new check that warns the user if a function call is used inside a test but parentheses are missing.
* ``len-as-condition`` now only fires when a ``len(x)`` call is made without an explicit comparison
The message and description accompanying this checker has been changed
reflect this new behavior, by explicitly asking to either rely on the
fact that empty sequence are false or to compare the length with a scalar.
* Add ``preferred-module`` checker that notify if an import has a replacement module that should be used.
This check is emitted when ``pylint`` finds an imported module that has a
preferred replacement listed in ``preferred-modules``.
* ``assigning-non-slot`` not emitted for classes with unknown base classes.
* ``old-division`` is not emitted for non-Const nodes.
* Added method arguments to the dot writer for pyreverse.
* Support for linting file from stdin.
IDEs may benefit from the support for linting from an in-memory file.
* Added a new check `class-variable-slots-conflict`
This check is emitted when ``pylint`` finds a class variable that conflicts with a slot
name, which would raise a ``ValueError`` at runtime.
* Added new check: dict-iter-missing-items (E1141)
* Fix issue with pylint name in output of python -m pylint --version
* Relicense logo material under the CC BY-SA 4.0 license.
* Skip `if` expressions from f-strings for the `check_elif` checker
* C0412 (ungrouped-import) is now compatible with isort.
* Added new extension to detect too much code in a try clause
* ``signature-mutators`` option was added
With this option, users can choose to ignore `too-many-function-args`, `unexpected-keyword-arg`,
and `no-value-for-parameter` for functions decorated with decorators that change
the signature of a decorated function.
* Fixed a pragma comment on its own physical line being ignored when part
of a logical line with the previous physical line.
* Fixed false `undefined-loop-variable` for a function defined in the loop,
that uses the variable defined in that loop.
* Fixed `unused-argument` and `function-redefined` getting raised for
functions decorated with `typing.overload`.
* Fixed a false positive with ``consider-using-dict-comprehension`` for constructions that can't be converted to a comprehension
* Added ``__post_init__`` to ``defining-attr-methods`` in order to avoid ``attribute-defined-outside-init`` in dataclasses.
* Changed description of W0199 to use the term 2-item-tuple instead of 2-uple.
* Allow a `.` as a prefix for Sphinx name resolution.
* Checkers must now keep a 1 to 1 relationship between "msgid" (ie: C1234) and "symbol" (ie : human-readable-symbol)
* In checkers, an old_names can now be used for multiple new messages and pylint is now a little faster
* Allow the choice of f-strings as a valid way of formatting logging strings.
* Added ``--list-msgs-enabled`` command to list all enabled and disabled messages given the current RC file and command line arguments.
2019-10-01 13:38:06 +02:00
|
|
|
${PYSITELIB}/pylint/testutils.pyc
|
|
|
|
${PYSITELIB}/pylint/testutils.pyo
|
|
|
|
${PYSITELIB}/pylint/utils/__init__.py
|
|
|
|
${PYSITELIB}/pylint/utils/__init__.pyc
|
|
|
|
${PYSITELIB}/pylint/utils/__init__.pyo
|
|
|
|
${PYSITELIB}/pylint/utils/ast_walker.py
|
|
|
|
${PYSITELIB}/pylint/utils/ast_walker.pyc
|
|
|
|
${PYSITELIB}/pylint/utils/ast_walker.pyo
|
|
|
|
${PYSITELIB}/pylint/utils/file_state.py
|
|
|
|
${PYSITELIB}/pylint/utils/file_state.pyc
|
|
|
|
${PYSITELIB}/pylint/utils/file_state.pyo
|
|
|
|
${PYSITELIB}/pylint/utils/utils.py
|
|
|
|
${PYSITELIB}/pylint/utils/utils.pyc
|
|
|
|
${PYSITELIB}/pylint/utils/utils.pyo
|
py-pylint: updated to 2.2.0
What's New in Pylint 2.2?
* Consider range() objects for undefined-loop-variable leaking from iteration.
* deprecated-method can use the attribute name for identifying a deprecated method
Previously we were using the fully qualified name, which we still do, but the fully
qualified name for some unittest deprecated aliases leads to a generic
deprecation function. Instead on relying on that, we now also rely on the attribute
name, which should solve some false positives.
* Fix compatibility with changes to stdlib tokenizer.
* pylint is less eager to consume the whole line for pragmas
* Obtain the correct number of CPUs for virtualized or containerized environments.
* Change unbalanced-tuple-unpacking back to a warning.
It used to be a warning until a couple of years ago, after it was promoted to
an error. But the check might be suggesting the wrong thing in some cases,
for instance when checking against sys.argv which cannot be known at static
analysis time. Given it might rely on potential unknown data, it's best to
have it as a warning.
* Remove enumerate usage suggestion when defining __iter__ (C0200)
* Emit too-many-starred-assignment only when the number of Starred nodes is per assignment elements
* try-except-raise checker now handles multilevel inheritance hirerachy for exceptions correctly.
* Add a new check, simplifiable-if-expression for expressions like True if cond else False.
* too-few-public-methods is not reported for typing.NamedTuple
* too-few-public-methods is not reported for dataclasses created with options.
* Remove wrong modules from 'bad-python3-import'.
* The json reporter prints an empty list when no messages are emitted
* Add a new check, duplicate-string-formatting-argument
This new check is emitted whenever a duplicate string formatting argument
is found.
* assignment-from-no-return is not emitted for coroutines.
* Report format string type mismatches.
* consider-using-ternary and simplified-boolean-expression no longer emit for sequence based checks
* Handle AstroidSyntaxError when trying to import a module.
* Allow __module__ to be redefined at a class level.
* pylint used to emit a unused-variable error if unused import was found in the function. Now instead of
unused-variable, unused-import is emitted.
* Handle asyncio.coroutine when looking for not-an-iterable check.
* The locally-enabled check is gone.
* Infer decorated methods when looking for method-hidden
* Pick the latest value from the inferred values when looking for raising-non-exception
* Extend the TYPE_CHECKING guard to TYPE_CHECKING name as well, not just the attribute
* Ignore import x.y.z as z cases for checker useless-import-alias.
* Fix false positive undefined-variable and used-before-assignment with nonlocal keyword usage.
* Stop protected-access exception for missing class attributes
* Don't emit assignment-from-no-return for decorated function nodes
* unnecessary-pass is now also emitted when a function or class contains only docstring and pass statement.
In Python, stubbed functions often have a body that contains just a single pass statement,
indicating that the function doesn't do anything. However, a stubbed function can also have just a
docstring, and function with a docstring and no body also does nothing.
* duplicate-argument-name is emitted for more than one duplicate argument per function
* Allow double indentation levels for more distinguishable indentations
* Consider tuples in exception handler for try-except-raise.
* Fix astroid.ClassDef check in checkers.utils.is_subclass_of
* Fix wildcard imports being ignored by the import checker
* Fix external/internal distinction being broken in the import graph
* Fix wildcard import check not skipping __init__.py
* Fix --ignore-imports to understand multi-line imports
* Add a new check 'implicit-str-concat-in-sequence' to spot string concatenation inside lists, sets & tuples.
* literal-comparison is now emitted for 0 and 1 literals.
2018-11-26 10:09:34 +01:00
|
|
|
man/man1/epylint-${PYVERSSUFFIX}.1
|
|
|
|
man/man1/pylint-${PYVERSSUFFIX}.1
|
|
|
|
man/man1/pyreverse-${PYVERSSUFFIX}.1
|
|
|
|
man/man1/symilar-${PYVERSSUFFIX}.1
|