2021-04-26 15:00:31 by Adam Ciarcinski | Files touched by this commit (4) | |
Log message:
py-pylint: updated to 2.8.1
What's New in Pylint 2.8.1?
===========================
Release date: 2021-04-25
..
Put new features and bugfixes here and also in 'doc/whatsnew/2.9.rst'
* Add numversion back (temporarily) in ``__pkginfo__`` because it broke Pylama \
and revert the unnecessary
``pylint.version`` breaking change.
What's New in Pylint 2.8.0?
===========================
Release date: 2021-04-24
* New refactoring message ``consider-using-with``. This message is emitted if \
resource-allocating functions or methods of the
standard library (like ``open()`` or ``threading.Lock.acquire()``) that can be \
used as a context manager are called without
a ``with`` block.
* Resolve false positives on unused variables in decorator functions
* Add new extension ``ConfusingConsecutiveElifChecker``. This optional checker \
emits a refactoring message (R5601 ``confusing-consecutive-elif``)
if if/elif statements with different indentation levels follow directly one \
after the other.
* New option ``--output=<file>`` to output result to a file rather than \
printing to stdout.
* Use a prescriptive message for ``unidiomatic-typecheck``
* Apply ``const-naming-style`` to module constants annotated with
``typing.Final``
* The packaging is now done via setuptools exclusively. ``doc``, ``tests``, \
``man``, ``elisp`` and ``Changelog`` are
not packaged anymore - reducing the size of the package by 75%.
* Debian packaging is now (officially) done in \
https://salsa.debian.org/python-team/packages/pylint.
* The 'doc' extra-require has been removed.
* ``__pkginfo__`` now only contain ``__version__`` (also accessible with \
``pylint.__version__``), other meta-information are still
accessible with ``from importlib import metadata;metadata.metadata('pylint')``.
* COPYING has been renamed to LICENSE for standardization.
* Fix false-positive ``used-before-assignment`` in function returns.
* Updated ``astroid`` to 2.5.3
* Add ``consider-using-min-max-builtin`` check for if statement which could be \
replaced by Python builtin min or max
* Don't auto-enable postponed evaluation of type annotations with Python 3.10
* Update ``astroid`` to 2.5.4
* Add new extension ``TypingChecker``. This optional checker can detect the use \
of deprecated typing aliases
and can suggest the use of the alternative union syntax where possible.
(For example, 'typing.Dict' can be replaced by 'dict', and 'typing.Unions' by \
'|', etc.)
Make sure to check the config options if you plan on using it!
* Reactivates old counts in report mode.
* During detection of ``inconsistent-return-statements`` consider that ``assert \
False`` is a return node.
* Run will not fail if score exactly equals ``config.fail_under``.
* Functions that never returns may declare ``NoReturn`` as type hints, so that
``inconsistent-return-statements`` is not emitted.
* Improved protected access checks to allow access inside class methods
* Fix issue with PEP 585 syntax and the use of ``collections.abc.Set``
* Fix issue that caused class variables annotated with ``typing.ClassVar`` to be
identified as class constants. Now, class variables annotated with
``typing.Final`` are identified as such.
* Continuous integration with read the doc has been added.
* Don't show ``DuplicateBasesError`` for attribute access
* Fix crash when checking ``setup.cfg`` for pylint config when there are \
non-ascii characters in there
* Allow code flanked in backticks to be skipped by spellchecker
* Allow Python tool directives (for black, flake8, zimports, isort, mypy, \
bandit, pycharm) at beginning of comments to be skipped by spellchecker
* Fix issue that caused emacs pylint to fail when used with tramp
* Improve check for invalid PEP 585 syntax inside functions
if postponed evaluation of type annotations is enabled
* Improve check for invalid PEP 585 syntax as default function arguments
|
2021-03-31 10:06:53 by Adam Ciarcinski | Files touched by this commit (2) | |
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) | |
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 \
compatibility.
* 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) | |
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) | |
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) | |
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 \
arguments
* `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) | |
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) | |
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 = [
"use-symbolic-message-instead",
"useless-suppression",
]
* 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
|
2020-05-16 04:11:40 by Joerg Sonnenberger | Files touched by this commit (3) |
Log message:
Use explicit encoding in setup.py for unicode source.
|