./devel/py-pylint, Python source code analyzer

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]

Branch: CURRENT, Version: 2.7.4, Package name: py38-pylint-2.7.4, Maintainer: pkgsrc-users

Pylint is a Python source code analyzer which looks for programming
errors, helps enforcing a coding standard and sniffs for some code
smells (as defined in Martin Fowler's Refactoring book).
Pylint can be seen as another PyChecker since nearly all tests you
can do with PyChecker can also be done with Pylint. However, Pylint
offers some more features, like checking length of lines of code,
checking if variable names are well-formed according to your coding
standard, or checking if declared interfaces are truly implemented,
and much more. Additionally, it is possible to write plugins to
add your own checks.

Required to run:
[devel/py-setuptools] [devel/py-astroid] [devel/py-mccabe] [devel/py-isort] [lang/python37] [textproc/py-toml]

Required to build:
[pkgtools/cwrappers] [devel/py-test-runner]

Master sites:

SHA1: 7af89f2d28f20e0c4dd9d09a7319c09e9d4f28a9
RMD160: 668b3adc2ff5d1d419b350e970d9d5f52c258567
Filesize: 698.737 KB

Version history: (Expand)

CVS history: (Expand)

   2021-03-31 10:06:53 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-pylint: updated to 2.7.4

What's New in Pylint 2.7.4?
Put bug fixes that will be cherry-picked to latest major version here
* Fix a problem with disabled msgid not being ignored
* Fix issue with annotated class constants
   2021-03-30 11:22:45 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-pylint: updated to 2.7.3

What's New in Pylint 2.7.3?
* Introduce logic for checking deprecated attributes in DeprecationMixin.
* Reduce usage of blacklist/whitelist terminology. Notably, \ 
``extension-pkg-allow-list`` is an
  alternative to ``extension-pkg-whitelist`` and the message \ 
``blacklisted-name`` is now emitted as
  ``disallowed-name``. The previous names are accepted to maintain backward \ 
* Move deprecated checker to ``DeprecatedMixin``
* Bump ``astroid`` version to ``2.5.2``
* Fix false positive for ``method-hidden`` when using private attribute and method
* ``use-symbolic-message-instead`` now also works on legacy messages like \ 
``C0111`` (``missing-docstring``).
* Remove unwanted print to stdout from ``_emit_no_member``
* Introduce a command-line option to specify pyreverse output directory
* Fix issue with Enums and ``class-attribute-naming-style=snake_case``
* Add ``allowed-redefined-builtins`` option for fine tuning \ 
``redefined-builtin`` check.
* Fix issue when executing with ``python -m pylint``
* Exempt ``typing.TypedDict`` from ``too-few-public-methods`` check.
* Fix false-positive ``no-member`` for typed annotations without default value.
* Add ``--class-const-naming-style`` for Enum constants and class variables annotated
  with ``typing.ClassVar``
* Fix astroid.Inference error for undefined-variables with ``len()```
* Fix column index on FIXME warning messages
* Improve handling of assignment expressions, better edge case handling
* Improve check if class is subscriptable PEP585
* Fix documentation and filename handling of --import-graph
* Fix false-positive for ``unused-import`` on class keyword arguments
* Fix regression with plugins on PYTHONPATH if latter is cwd
   2021-03-01 09:59:07 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-pylint: updated to 2.7.2

What's New in Pylint 2.7.2?
* Fix False Positive on `Enum.__members__.items()`, `Enum.__members__.values`, \ 
and `Enum.__members__.keys`
* Properly strip dangerous sys.path entries (not just the first one)
   2021-02-24 14:00:25 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-pylint: updated to 2.7.1

Pylint 2.7.1
* Expose `UnittestLinter` in pylint.testutils
* Don't check directories starting with '.' when using register_plugins
   2021-02-22 10:24:34 by Adam Ciarcinski | Files touched by this commit (4) | Package updated
Log message:
py-pylint: updated to 2.7.0

What's New in Pylint 2.7.0?

* Introduce DeprecationMixin for reusable deprecation checks.
* Fix false positive for ``builtin-not-iterating`` when ``map`` receives iterable
* Python 3.6+ is now required.
* Fix false positive for ``builtin-not-iterating`` when ``zip`` receives iterable
* Add `nan-comparison` check for NaN comparisons
* Bug fix for empty-comment message line number.
* Only emit `bad-reversed-sequence` on dictionaries if below py3.8
* Handle class decorators applied to function.
* Add check for empty comments
* Fix minor documentation issue in contribute.rst
* Enums are now required to be named in UPPER_CASE by ``invalid-name``.
* Add missing checks for deprecated functions.
* Postponed evaluation of annotations are now recognized by default if python \ 
version is above 3.10
* Fix column metadata for anomalous backslash lints
* Drop support for Python 3.5
* Add support for pep585 with postponed evaluation
* Check alternative union syntax - PEP 604
* Fix multiple false positives with assignment expressions
* Fix TypedDict inherit-non-class false-positive Python 3.9+
* Fix issue with nested PEP 585 syntax
* Fix issue with nested PEP 604 syntax
* Fix a crash in `undefined-variable` caused by chained attributes in metaclass
* Fix false positive for `not-async-context-manager` when \ 
`contextlib.asynccontextmanager` is used
* Fix linter multiprocessing pool shutdown (triggered warnings when runned in \ 
parallels with other pytest plugins)
* Fix a false-positive emission of `no-self-use` and `unused-argument` for methods
  of generic structural types (`Protocol[T]`)
* Fix bug that lead to duplicate messages when using ``--jobs 2`` or more.
* Adds option ``check-protected-access-in-special-methods`` in the ClassChecker \ 
to activate/deactivate
  ``protected-access`` message emission for single underscore prefixed attribute \ 
in special methods.
* Fix vulnerable regular expressions in ``pyreverse``
* ``inconsistent-return-statements`` message is now emitted if one of \ 
``try/except`` statement
  is not returning explicitly while the other do.
* Fix ``useless-super-delegation`` false positive when default keyword argument \ 
is a dictionnary.
* Fix a crash when a specified config file does not exist
* Add support to ``ignored-argument-names`` in DocstringParameterChecker and \ 
adds `useless-param-doc` and `useless-type-doc` messages.
* Enforce docparams consistently when docstring is not present
* Fix ``duplicate-code`` false positive when lines only contain whitespace and \ 
non-alphanumeric characters (e.g. parentheses, bracket, comman, etc.)
* Improve lint message for `singleton-comparison` with bools
* Fix spell-checker crash on indented docstring lines that look like # comments
* Fix AttributeError in checkers/refactoring.py
* Improve sphinx directives spelling filter
* Fix a bug with postponed evaluation when using aliases for annotations.
* Fix minor documentation issues
* Improve the performance of the line length check.
* Removed incorrect deprecation of ``inspect.getfullargspec``
* Fix ``signature-differs`` false positive for functions with variadics
* Fix a crash in `consider-using-enumerate` when encountering `range()` without \ 
* `len-as-conditions` is now triggered only for classes that are inheriting \ 
directly from list, dict, or set and not implementing the `__bool__` function, \ 
or from generators like range or list/dict/set comprehension. This should reduce \ 
the false positives for other classes, like pandas's DataFrame or numpy's Array.
* Fixes duplicate-errors not working with -j2+
* `generated-members` now matches the qualified name of members
* Add check for bool function to `len-as-condition`
* Add `simplifiable-condition` check for extraneous constants in conditionals \ 
using and/or.
* Add `condition-evals-to-constant` check for conditionals using and/or that \ 
evaluate to a constant.
* Changed setup.py to work with [distlib](https://pypi.org/project/distlib)
* New check: ``consider-using-generator``
  This check warns when a comprehension is used inside an `any` or `all` function,
  since it is unnecessary and should be replaced by a generator instead.
  Using a generator would be less code and way faster.
* Add Github Actions to replace Travis and AppVeyor in the future
   2020-08-21 23:55:41 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
py-pylint: updated to 2.6.0

What's New in Pylint 2.6.0?

* Fix various scope-related bugs in ``undefined-variable`` checker

* bad-continuation and bad-whitespace have been removed, black or another \ 
formatter can help you with this better than Pylint

* The no-space-check option has been removed. It's no longer possible to \ 
consider empty line like a `trailing-whitespace` by using clever options

* ``missing-kwoa`` is no longer emitted when dealing with overload functions

* mixed-indentation has been removed, it is no longer useful since TabError is \ 
included directly in python3

* Add `super-with-arguments` check for flagging instances of Python 2 style \ 
super calls.

* Add an faq detailing which messages to disable to avoid duplicates w/ other \ 
popular linters

* Fix superfluous-parens false-positive for the walrus operator

* Fix `fail-under` not accepting floats

* Fix a bug with `ignore-docstrings` ignoring all lines in a module

* Fix `pre-commit` config that could lead to undetected duplicate lines of code

* Fix a crash in parallel mode when the module's filepath is not set

* Add `raise-missing-from` check for exceptions that should have a cause.

* Support both isort 4 and isort 5. If you have pinned isort 4 in your projet \ 
requirements, nothing changes. If you use isort 5, though, note that the \ 
`known-standard-library` option is not interpreted the same in isort 4 and isort \ 
5 (see the migration guide in isort documentation for further details). For \ 
compatibility's sake for most pylint users, the `known-standard-library` option \ 
in pylint now maps to `extra-standard-library` in isort 5. If you really want \ 
what `known-standard-library` now means in isort 5, you must disable the \ 
`wrong-import-order` check in pylint and run isort manually with a proper isort \ 
configuration file.
   2020-06-08 18:09:50 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-pylint: updated to 2.5.3

What's New in Pylint 2.5.3?
* Fix a regression where disable comments that have checker names with numbers \ 
in them are not parsed correctly
* `property-with-parameters` properly handles abstract properties
* `continue-in-finally` no longer emitted on Python 3.8 where it's now valid
* Fix a regression where messages with dash are not fully parsed
* Fix a regression where the score was not reported with multiple jobs
* In a TOML configuration file, it's now possible to use rich (non-string) \ 
types, such as list, integer or boolean instead of strings. For example, one can \ 
now define a *list* of message identifiers to enable like this::

    enable = [
* Protect against `AttributeError` when checking `cell-var-from-loop`
   2020-05-18 15:14:17 by Thomas Klausner | Files touched by this commit (2)
Log message:
py-pylint: merge some improvements from py-lint