Wed Dec 8 16:23:48 2021 UTC ()
py-pylint: updated to 2.12.2

v2.12.2
Fixed a false positive for unused-import where everything was not analyzed properly inside typing guards.

Fixed a false-positive regression for used-before-assignment for
typed variables in the body of class methods that reference the same class

Specified that the ignore-paths option considers "" to represent a
windows directory delimiter instead of a regular expression escape
character.

Fixed a crash with the ignore-paths option when invoking the option
via the command line.

Fixed handling of Sphinx-style parameter docstrings with asterisks. These
should be escaped with by prepending a "".

Add endLine and endColumn keys to output of JSONReporter.

Fixed handling of Google-style parameter specifications where descriptions
are on the line following the parameter name. These were generating
false positives for missing-param-doc.

Fix false negative for consider-iterating-dictionary during membership checks encapsulated in iterables
or not in checks

unused-import now check all ancestors for typing guards

2.12.1
Require Python 3.6.2 to run pylint.

2.12.0
Upgrade astroid to 2.9.0

Add ability to add end_line and end_column to the --msg-template option.
With the standard TextReporter this will add the line and column number of the
end of a node to the output of Pylint. If these numbers are unknown, they are represented
by an empty string.

Introduced primer tests and a configuration tests framework. The helper classes available in
pylint/testutil/ are still unstable and might be modified in the near future.

Fix install graphiz message which isn't needed for puml output format.

MessageTest of the unittest testutil now requires the confidence attribute
to match the expected value. If none is provided it is set to UNDEFINED.

add_message of the unittest testutil now actually handles the col_offset parameter
and allows it to be checked against actual output in a test.

Fix a crash in the check_elif extensions where an undetected if in a comprehension
with an if statement within a f-string resulted in an out of range error. The checker no
longer relies on counting if statements anymore and uses known if statements locations instead.
It should not crash on badly parsed if statements anymore.

Fix simplify-boolean-expression when condition can be inferred as False.

Fix exception when pyreverse parses property function of a class.

The functional testutils now accept end_lineno and end_column. Expected
output files without these will trigger a DeprecationWarning. Expected output files
can be easily updated with the python tests/test_functional.py --update-functional-output command.

The functional testutils now correctly check the distinction betweeen HIGH and
UNDEFINED confidence. Expected output files without defiend confidence levels will now
trigger a DeprecationWarning. Expected output files can be easily updated with the
python tests/test_functional.py --update-functional-output command.

The functional test runner now supports the option min_pyver_end_position to control on which python
versions the end_lineno and end_column attributes should be checked. The default value is 3.8.

Fix accept-no-yields-doc and accept-no-return-doc not allowing missing yield or
return documentation when a docstring is partially correct

Add an optional extension consider-using-any-or-all : Emitted when a for loop only
produces a boolean and could be replaced by any or all using a generator. Also suggests
a suitable any or all statement.

Properly identify parameters with no documentation and add new message called missing-any-param-doc

Add checkers overridden-final-method & subclassed-final-class

Fixed protected-access for accessing of attributes and methods of inner classes

Added support for ModuleNotFoundError (import-error and no-name-in-module).
ModuleNotFoundError inherits from ImportError and was added in Python 3.6

undefined-variable now correctly flags variables which only receive a type annotations
and never get assigned a value

undefined-variable now correctly considers the line numbering and order of classes
used in metaclass declarations

used-before-assignment now correctly considers references to classes as type annotation
or default values in first-level methods

undefined-variable and unused-variable now correctly trigger for assignment expressions
in functions defaults

undefined-variable now correctly triggers for assignment expressions in if ... else statements
This includes a basic form of control flow inference for if ... else statements using
constant boolean values

Added the --enable-all-extensions command line option. It will load all available extensions
which can be listed by running --list-extensions

Fix bug with importing namespace packages with relative imports

Improve and flatten unused-wildcard-import message

In length checker, len-as-condition has been renamed as
use-implicit-booleaness-not-len in order to be consistent with
use-implicit-booleaness-not-comparison.

Created new UnsupportedVersionChecker checker class that includes checks for features
not supported by all versions indicated by a py-version.

Added using-f-string-in-unsupported-version checker. Issued when py-version
is set to a version that does not support f-strings (< 3.6)
Fix useless-super-delegation false positive when default keyword argument is a variable.

Properly emit duplicate-key when Enum members are duplicate dictionary keys

Use py-version setting for alternative union syntax check (PEP 604),
instead of the Python interpreter version.

Subclasses of dict are regarded as reversible by the bad-reversed-sequence checker
(Python 3.8 onwards).

Support configuring mixin class pattern via mixin-class-rgx

Added new checker use-implicit-booleaness-not-comparison: Emitted when
collection literal comparison is being used to check for emptiness.

mising-param-doc now correctly parses asterisks for variable length and
keyword parameters

mising-param-doc now correctly handles Numpy parameter documentation without
explicit typing

pylint no longer crashes when checking assignment expressions within if-statements

Update ``literal-comparison``` checker to ignore tuple literals

Normalize the input to the ignore-paths option to allow both Posix and
Windows paths

Fix double emitting of not-callable on inferrable properties

self-cls-assignment now also considers tuple assignment

Fix missing-function-docstring not being able to check __init__ and other
magic methods even if the no-docstring-rgx setting was set to do so

Added using-final-decorator-in-unsupported-version checker. Issued when py-version
is set to a version that does not support typing.final (< 3.8)

Added configuration option exclude-too-few-public-methods to allow excluding
classes from the min-public-methods checker.

The --jobs parameter now fallbacks to 1 if the host operating system does not
have functioning shared semaphore implementation.

Fix crash for unused-private-member when checking private members on __class__

Crashes when a list is encountered in a toml configuration do not happen anymore.

Moved misplaced-comparison-constant to its own extension comparison_placement.
This checker was opinionated and now no longer a default. It can be reactived by adding
pylint.extensions.comparison_placement to load-plugins in your config.

A new bad-configuration-section checker was added that will emit for misplaced option
in pylint's top level namespace for toml configuration. Top-level dictionaries or option defined
in the wrong section will still silently not be taken into account, which is tracked in a
follow-up issue.

Fix crash for protected-access on (outer) class traversal

Added new checker useless-with-lock to find incorrect usage of with statement and threading module locks.
Emitted when with threading.Lock(): is used instead of with lock_instance:.

Make yn validator case insensitive, to allow for True and False in config files.

Fix crash on open() calls when the mode argument is not a simple string.

Inheriting from a class that implements __class_getitem__ no longer raises inherit-non-class.

Pyreverse - Add the project root directory to sys.path

Don't emit consider-using-f-string if py-version is set to Python < 3.6.
f-strings were added in Python 3.6

Fix regression for unspecified-encoding with pathlib.Path.read_text()

Don't emit consider-using-f-string if the variables to be interpolated include a backslash

Fixed false positive for cell-var-from-loop when variable is used as the default
value for a keyword-only parameter.

Fix false-positive undefined-variable with Lambda, IfExp, and
assignment expression.

Fix false-positive useless-suppression for wrong-import-order

Fixed toml dependency issue

Fix false-positive useless-suppression for line-too-long

Fixed invalid-name not checking parameters of overwritten base object methods

Fixed crash in consider-using-f-string if format is not called

Fix crash with AssignAttr in if TYPE_CHECKING blocks.

Improve node information for invalid-name on function argument.

Prevent return type checkers being called on functions with ellipses as body

Add is_sys_guard and is_typing_guard helper functions from astroid
to pylint.checkers.utils.

Fix regression on ClassDef inference

Fix regression on Compare node inference

Fix false-positive isinstance-second-argument-not-valid-type with typing.Callable.

It is now recommended to do pylint development on Python 3.8 or higher. This
allows using the latest ast parser.

All standard jobs in the pylint CI now run on Python 3.8 by default. We still
support python 3.6 and 3.7 and run tests for those interpreters.

TypingChecker

Fix false-negative for deprecated-typing-alias and consider-using-alias
with typing.Type + typing.Callable.


(adam)
diff -r1.56 -r1.57 pkgsrc/devel/py-pylint/Makefile
diff -r1.24 -r1.25 pkgsrc/devel/py-pylint/PLIST
diff -r1.47 -r1.48 pkgsrc/devel/py-pylint/distinfo

cvs diff -r1.56 -r1.57 pkgsrc/devel/py-pylint/Makefile (expand / switch to unified diff)

--- pkgsrc/devel/py-pylint/Makefile 2021/10/26 12:22:15 1.56
+++ pkgsrc/devel/py-pylint/Makefile 2021/12/08 16:23:48 1.57
@@ -1,35 +1,35 @@ @@ -1,35 +1,35 @@
1# $NetBSD: Makefile,v 1.56 2021/10/26 12:22:15 adam Exp $ 1# $NetBSD: Makefile,v 1.57 2021/12/08 16:23:48 adam Exp $
2 2
3DISTNAME= pylint-2.11.1 3DISTNAME= pylint-2.12.2
4PKGNAME= ${PYPKGPREFIX}-${DISTNAME} 4PKGNAME= ${PYPKGPREFIX}-${DISTNAME}
5CATEGORIES= devel python 5CATEGORIES= devel python
6MASTER_SITES= ${MASTER_SITE_PYPI:=p/pylint/} 6MASTER_SITES= ${MASTER_SITE_PYPI:=p/pylint/}
7 7
8MAINTAINER= pkgsrc-users@NetBSD.org 8MAINTAINER= pkgsrc-users@NetBSD.org
9HOMEPAGE= https://www.pylint.org/ 9HOMEPAGE= https://www.pylint.org/
10COMMENT= Python source code analyzer 10COMMENT= Python source code analyzer
11LICENSE= gnu-gpl-v2 11LICENSE= gnu-gpl-v2
12 12
13DEPENDS+= ${PYPKGPREFIX}-astroid>=2.8.0:../../devel/py-astroid 13DEPENDS+= ${PYPKGPREFIX}-astroid>=2.9.0:../../devel/py-astroid
14DEPENDS+= ${PYPKGPREFIX}-isort>=4.2.5:../../devel/py-isort 14DEPENDS+= ${PYPKGPREFIX}-isort>=4.2.5:../../devel/py-isort
15DEPENDS+= ${PYPKGPREFIX}-mccabe>=0.6:../../devel/py-mccabe 15DEPENDS+= ${PYPKGPREFIX}-mccabe>=0.6:../../devel/py-mccabe
16DEPENDS+= ${PYPKGPREFIX}-platformdirs>=2.2.0:../../misc/py-platformdirs 16DEPENDS+= ${PYPKGPREFIX}-platformdirs>=2.2.0:../../misc/py-platformdirs
17DEPENDS+= ${PYPKGPREFIX}-toml>=0.7.1:../../textproc/py-toml 17DEPENDS+= ${PYPKGPREFIX}-toml>=0.9.2:../../textproc/py-toml
18 18
19USE_LANGUAGES= # none 19USE_LANGUAGES= # none
20 20
21PYTHON_VERSIONS_INCOMPATIBLE= 27 21PYTHON_VERSIONS_INCOMPATIBLE= 27
22 22
23.include "../../lang/python/pyversion.mk" 23.include "../../lang/python/pyversion.mk"
24.if ${_PYTHON_VERSION} < 310 24.if ${_PYTHON_VERSION} < 310
25DEPENDS+= ${PYPKGPREFIX}-typing-extensions>=3.10:../../devel/py-typing-extensions 25DEPENDS+= ${PYPKGPREFIX}-typing-extensions>=3.10.0:../../devel/py-typing-extensions
26.endif 26.endif
27 27
28post-install: 28post-install:
29.for file in epylint pylint pyreverse symilar 29.for file in epylint pylint pyreverse symilar
30 cd ${DESTDIR}${PREFIX}/bin && \ 30 cd ${DESTDIR}${PREFIX}/bin && \
31 ${MV} ${file} ${file}-${PYVERSSUFFIX} || ${TRUE} 31 ${MV} ${file} ${file}-${PYVERSSUFFIX} || ${TRUE}
32.endfor 32.endfor
33 33
34.include "../../lang/python/egg.mk" 34.include "../../lang/python/egg.mk"
35.include "../../mk/bsd.pkg.mk" 35.include "../../mk/bsd.pkg.mk"

cvs diff -r1.24 -r1.25 pkgsrc/devel/py-pylint/PLIST (expand / switch to unified diff)

--- pkgsrc/devel/py-pylint/PLIST 2021/10/26 12:22:15 1.24
+++ pkgsrc/devel/py-pylint/PLIST 2021/12/08 16:23:48 1.25
@@ -1,14 +1,14 @@ @@ -1,14 +1,14 @@
1@comment $NetBSD: PLIST,v 1.24 2021/10/26 12:22:15 adam Exp $ 1@comment $NetBSD: PLIST,v 1.25 2021/12/08 16:23:48 adam Exp $
2bin/epylint-${PYVERSSUFFIX} 2bin/epylint-${PYVERSSUFFIX}
3bin/pylint-${PYVERSSUFFIX} 3bin/pylint-${PYVERSSUFFIX}
4bin/pyreverse-${PYVERSSUFFIX} 4bin/pyreverse-${PYVERSSUFFIX}
5bin/symilar-${PYVERSSUFFIX} 5bin/symilar-${PYVERSSUFFIX}
6${PYSITELIB}/${EGG_INFODIR}/PKG-INFO 6${PYSITELIB}/${EGG_INFODIR}/PKG-INFO
7${PYSITELIB}/${EGG_INFODIR}/SOURCES.txt 7${PYSITELIB}/${EGG_INFODIR}/SOURCES.txt
8${PYSITELIB}/${EGG_INFODIR}/dependency_links.txt 8${PYSITELIB}/${EGG_INFODIR}/dependency_links.txt
9${PYSITELIB}/${EGG_INFODIR}/entry_points.txt 9${PYSITELIB}/${EGG_INFODIR}/entry_points.txt
10${PYSITELIB}/${EGG_INFODIR}/requires.txt 10${PYSITELIB}/${EGG_INFODIR}/requires.txt
11${PYSITELIB}/${EGG_INFODIR}/top_level.txt 11${PYSITELIB}/${EGG_INFODIR}/top_level.txt
12${PYSITELIB}/pylint/__init__.py 12${PYSITELIB}/pylint/__init__.py
13${PYSITELIB}/pylint/__init__.pyc 13${PYSITELIB}/pylint/__init__.pyc
14${PYSITELIB}/pylint/__init__.pyo 14${PYSITELIB}/pylint/__init__.pyo
@@ -56,53 +56,59 @@ ${PYSITELIB}/pylint/checkers/mapreduce_c @@ -56,53 +56,59 @@ ${PYSITELIB}/pylint/checkers/mapreduce_c
56${PYSITELIB}/pylint/checkers/mapreduce_checker.pyo 56${PYSITELIB}/pylint/checkers/mapreduce_checker.pyo
57${PYSITELIB}/pylint/checkers/misc.py 57${PYSITELIB}/pylint/checkers/misc.py
58${PYSITELIB}/pylint/checkers/misc.pyc 58${PYSITELIB}/pylint/checkers/misc.pyc
59${PYSITELIB}/pylint/checkers/misc.pyo 59${PYSITELIB}/pylint/checkers/misc.pyo
60${PYSITELIB}/pylint/checkers/newstyle.py 60${PYSITELIB}/pylint/checkers/newstyle.py
61${PYSITELIB}/pylint/checkers/newstyle.pyc 61${PYSITELIB}/pylint/checkers/newstyle.pyc
62${PYSITELIB}/pylint/checkers/newstyle.pyo 62${PYSITELIB}/pylint/checkers/newstyle.pyo
63${PYSITELIB}/pylint/checkers/raw_metrics.py 63${PYSITELIB}/pylint/checkers/raw_metrics.py
64${PYSITELIB}/pylint/checkers/raw_metrics.pyc 64${PYSITELIB}/pylint/checkers/raw_metrics.pyc
65${PYSITELIB}/pylint/checkers/raw_metrics.pyo 65${PYSITELIB}/pylint/checkers/raw_metrics.pyo
66${PYSITELIB}/pylint/checkers/refactoring/__init__.py 66${PYSITELIB}/pylint/checkers/refactoring/__init__.py
67${PYSITELIB}/pylint/checkers/refactoring/__init__.pyc 67${PYSITELIB}/pylint/checkers/refactoring/__init__.pyc
68${PYSITELIB}/pylint/checkers/refactoring/__init__.pyo 68${PYSITELIB}/pylint/checkers/refactoring/__init__.pyo
69${PYSITELIB}/pylint/checkers/refactoring/len_checker.py 69${PYSITELIB}/pylint/checkers/refactoring/implicit_booleaness_checker.py
70${PYSITELIB}/pylint/checkers/refactoring/len_checker.pyc 70${PYSITELIB}/pylint/checkers/refactoring/implicit_booleaness_checker.pyc
71${PYSITELIB}/pylint/checkers/refactoring/len_checker.pyo 71${PYSITELIB}/pylint/checkers/refactoring/implicit_booleaness_checker.pyo
72${PYSITELIB}/pylint/checkers/refactoring/not_checker.py 72${PYSITELIB}/pylint/checkers/refactoring/not_checker.py
73${PYSITELIB}/pylint/checkers/refactoring/not_checker.pyc 73${PYSITELIB}/pylint/checkers/refactoring/not_checker.pyc
74${PYSITELIB}/pylint/checkers/refactoring/not_checker.pyo 74${PYSITELIB}/pylint/checkers/refactoring/not_checker.pyo
75${PYSITELIB}/pylint/checkers/refactoring/recommendation_checker.py 75${PYSITELIB}/pylint/checkers/refactoring/recommendation_checker.py
76${PYSITELIB}/pylint/checkers/refactoring/recommendation_checker.pyc 76${PYSITELIB}/pylint/checkers/refactoring/recommendation_checker.pyc
77${PYSITELIB}/pylint/checkers/refactoring/recommendation_checker.pyo 77${PYSITELIB}/pylint/checkers/refactoring/recommendation_checker.pyo
78${PYSITELIB}/pylint/checkers/refactoring/refactoring_checker.py 78${PYSITELIB}/pylint/checkers/refactoring/refactoring_checker.py
79${PYSITELIB}/pylint/checkers/refactoring/refactoring_checker.pyc 79${PYSITELIB}/pylint/checkers/refactoring/refactoring_checker.pyc
80${PYSITELIB}/pylint/checkers/refactoring/refactoring_checker.pyo 80${PYSITELIB}/pylint/checkers/refactoring/refactoring_checker.pyo
81${PYSITELIB}/pylint/checkers/similar.py 81${PYSITELIB}/pylint/checkers/similar.py
82${PYSITELIB}/pylint/checkers/similar.pyc 82${PYSITELIB}/pylint/checkers/similar.pyc
83${PYSITELIB}/pylint/checkers/similar.pyo 83${PYSITELIB}/pylint/checkers/similar.pyo
84${PYSITELIB}/pylint/checkers/spelling.py 84${PYSITELIB}/pylint/checkers/spelling.py
85${PYSITELIB}/pylint/checkers/spelling.pyc 85${PYSITELIB}/pylint/checkers/spelling.pyc
86${PYSITELIB}/pylint/checkers/spelling.pyo 86${PYSITELIB}/pylint/checkers/spelling.pyo
87${PYSITELIB}/pylint/checkers/stdlib.py 87${PYSITELIB}/pylint/checkers/stdlib.py
88${PYSITELIB}/pylint/checkers/stdlib.pyc 88${PYSITELIB}/pylint/checkers/stdlib.pyc
89${PYSITELIB}/pylint/checkers/stdlib.pyo 89${PYSITELIB}/pylint/checkers/stdlib.pyo
90${PYSITELIB}/pylint/checkers/strings.py 90${PYSITELIB}/pylint/checkers/strings.py
91${PYSITELIB}/pylint/checkers/strings.pyc 91${PYSITELIB}/pylint/checkers/strings.pyc
92${PYSITELIB}/pylint/checkers/strings.pyo 92${PYSITELIB}/pylint/checkers/strings.pyo
 93${PYSITELIB}/pylint/checkers/threading_checker.py
 94${PYSITELIB}/pylint/checkers/threading_checker.pyc
 95${PYSITELIB}/pylint/checkers/threading_checker.pyo
93${PYSITELIB}/pylint/checkers/typecheck.py 96${PYSITELIB}/pylint/checkers/typecheck.py
94${PYSITELIB}/pylint/checkers/typecheck.pyc 97${PYSITELIB}/pylint/checkers/typecheck.pyc
95${PYSITELIB}/pylint/checkers/typecheck.pyo 98${PYSITELIB}/pylint/checkers/typecheck.pyo
 99${PYSITELIB}/pylint/checkers/unsupported_version.py
 100${PYSITELIB}/pylint/checkers/unsupported_version.pyc
 101${PYSITELIB}/pylint/checkers/unsupported_version.pyo
96${PYSITELIB}/pylint/checkers/utils.py 102${PYSITELIB}/pylint/checkers/utils.py
97${PYSITELIB}/pylint/checkers/utils.pyc 103${PYSITELIB}/pylint/checkers/utils.pyc
98${PYSITELIB}/pylint/checkers/utils.pyo 104${PYSITELIB}/pylint/checkers/utils.pyo
99${PYSITELIB}/pylint/checkers/variables.py 105${PYSITELIB}/pylint/checkers/variables.py
100${PYSITELIB}/pylint/checkers/variables.pyc 106${PYSITELIB}/pylint/checkers/variables.pyc
101${PYSITELIB}/pylint/checkers/variables.pyo 107${PYSITELIB}/pylint/checkers/variables.pyo
102${PYSITELIB}/pylint/config/__init__.py 108${PYSITELIB}/pylint/config/__init__.py
103${PYSITELIB}/pylint/config/__init__.pyc 109${PYSITELIB}/pylint/config/__init__.pyc
104${PYSITELIB}/pylint/config/__init__.pyo 110${PYSITELIB}/pylint/config/__init__.pyo
105${PYSITELIB}/pylint/config/configuration_mixin.py 111${PYSITELIB}/pylint/config/configuration_mixin.py
106${PYSITELIB}/pylint/config/configuration_mixin.pyc 112${PYSITELIB}/pylint/config/configuration_mixin.pyc
107${PYSITELIB}/pylint/config/configuration_mixin.pyo 113${PYSITELIB}/pylint/config/configuration_mixin.pyo
108${PYSITELIB}/pylint/config/find_default_config_files.py 114${PYSITELIB}/pylint/config/find_default_config_files.py
@@ -146,44 +152,50 @@ ${PYSITELIB}/pylint/extensions/broad_try @@ -146,44 +152,50 @@ ${PYSITELIB}/pylint/extensions/broad_try
146${PYSITELIB}/pylint/extensions/broad_try_clause.pyo 152${PYSITELIB}/pylint/extensions/broad_try_clause.pyo
147${PYSITELIB}/pylint/extensions/check_docs.py 153${PYSITELIB}/pylint/extensions/check_docs.py
148${PYSITELIB}/pylint/extensions/check_docs.pyc 154${PYSITELIB}/pylint/extensions/check_docs.pyc
149${PYSITELIB}/pylint/extensions/check_docs.pyo 155${PYSITELIB}/pylint/extensions/check_docs.pyo
150${PYSITELIB}/pylint/extensions/check_elif.py 156${PYSITELIB}/pylint/extensions/check_elif.py
151${PYSITELIB}/pylint/extensions/check_elif.pyc 157${PYSITELIB}/pylint/extensions/check_elif.pyc
152${PYSITELIB}/pylint/extensions/check_elif.pyo 158${PYSITELIB}/pylint/extensions/check_elif.pyo
153${PYSITELIB}/pylint/extensions/code_style.py 159${PYSITELIB}/pylint/extensions/code_style.py
154${PYSITELIB}/pylint/extensions/code_style.pyc 160${PYSITELIB}/pylint/extensions/code_style.pyc
155${PYSITELIB}/pylint/extensions/code_style.pyo 161${PYSITELIB}/pylint/extensions/code_style.pyo
156${PYSITELIB}/pylint/extensions/comparetozero.py 162${PYSITELIB}/pylint/extensions/comparetozero.py
157${PYSITELIB}/pylint/extensions/comparetozero.pyc 163${PYSITELIB}/pylint/extensions/comparetozero.pyc
158${PYSITELIB}/pylint/extensions/comparetozero.pyo 164${PYSITELIB}/pylint/extensions/comparetozero.pyo
 165${PYSITELIB}/pylint/extensions/comparison_placement.py
 166${PYSITELIB}/pylint/extensions/comparison_placement.pyc
 167${PYSITELIB}/pylint/extensions/comparison_placement.pyo
159${PYSITELIB}/pylint/extensions/confusing_elif.py 168${PYSITELIB}/pylint/extensions/confusing_elif.py
160${PYSITELIB}/pylint/extensions/confusing_elif.pyc 169${PYSITELIB}/pylint/extensions/confusing_elif.pyc
161${PYSITELIB}/pylint/extensions/confusing_elif.pyo 170${PYSITELIB}/pylint/extensions/confusing_elif.pyo
162${PYSITELIB}/pylint/extensions/consider_ternary_expression.py 171${PYSITELIB}/pylint/extensions/consider_ternary_expression.py
163${PYSITELIB}/pylint/extensions/consider_ternary_expression.pyc 172${PYSITELIB}/pylint/extensions/consider_ternary_expression.pyc
164${PYSITELIB}/pylint/extensions/consider_ternary_expression.pyo 173${PYSITELIB}/pylint/extensions/consider_ternary_expression.pyo
165${PYSITELIB}/pylint/extensions/docparams.py 174${PYSITELIB}/pylint/extensions/docparams.py
166${PYSITELIB}/pylint/extensions/docparams.pyc 175${PYSITELIB}/pylint/extensions/docparams.pyc
167${PYSITELIB}/pylint/extensions/docparams.pyo 176${PYSITELIB}/pylint/extensions/docparams.pyo
168${PYSITELIB}/pylint/extensions/docstyle.py 177${PYSITELIB}/pylint/extensions/docstyle.py
169${PYSITELIB}/pylint/extensions/docstyle.pyc 178${PYSITELIB}/pylint/extensions/docstyle.pyc
170${PYSITELIB}/pylint/extensions/docstyle.pyo 179${PYSITELIB}/pylint/extensions/docstyle.pyo
171${PYSITELIB}/pylint/extensions/empty_comment.py 180${PYSITELIB}/pylint/extensions/empty_comment.py
172${PYSITELIB}/pylint/extensions/empty_comment.pyc 181${PYSITELIB}/pylint/extensions/empty_comment.pyc
173${PYSITELIB}/pylint/extensions/empty_comment.pyo 182${PYSITELIB}/pylint/extensions/empty_comment.pyo
174${PYSITELIB}/pylint/extensions/emptystring.py 183${PYSITELIB}/pylint/extensions/emptystring.py
175${PYSITELIB}/pylint/extensions/emptystring.pyc 184${PYSITELIB}/pylint/extensions/emptystring.pyc
176${PYSITELIB}/pylint/extensions/emptystring.pyo 185${PYSITELIB}/pylint/extensions/emptystring.pyo
 186${PYSITELIB}/pylint/extensions/for_any_all.py
 187${PYSITELIB}/pylint/extensions/for_any_all.pyc
 188${PYSITELIB}/pylint/extensions/for_any_all.pyo
177${PYSITELIB}/pylint/extensions/mccabe.py 189${PYSITELIB}/pylint/extensions/mccabe.py
178${PYSITELIB}/pylint/extensions/mccabe.pyc 190${PYSITELIB}/pylint/extensions/mccabe.pyc
179${PYSITELIB}/pylint/extensions/mccabe.pyo 191${PYSITELIB}/pylint/extensions/mccabe.pyo
180${PYSITELIB}/pylint/extensions/overlapping_exceptions.py 192${PYSITELIB}/pylint/extensions/overlapping_exceptions.py
181${PYSITELIB}/pylint/extensions/overlapping_exceptions.pyc 193${PYSITELIB}/pylint/extensions/overlapping_exceptions.pyc
182${PYSITELIB}/pylint/extensions/overlapping_exceptions.pyo 194${PYSITELIB}/pylint/extensions/overlapping_exceptions.pyo
183${PYSITELIB}/pylint/extensions/redefined_variable_type.py 195${PYSITELIB}/pylint/extensions/redefined_variable_type.py
184${PYSITELIB}/pylint/extensions/redefined_variable_type.pyc 196${PYSITELIB}/pylint/extensions/redefined_variable_type.pyc
185${PYSITELIB}/pylint/extensions/redefined_variable_type.pyo 197${PYSITELIB}/pylint/extensions/redefined_variable_type.pyo
186${PYSITELIB}/pylint/extensions/set_membership.py 198${PYSITELIB}/pylint/extensions/set_membership.py
187${PYSITELIB}/pylint/extensions/set_membership.pyc 199${PYSITELIB}/pylint/extensions/set_membership.pyc
188${PYSITELIB}/pylint/extensions/set_membership.pyo 200${PYSITELIB}/pylint/extensions/set_membership.pyo
189${PYSITELIB}/pylint/extensions/typing.py 201${PYSITELIB}/pylint/extensions/typing.py
@@ -221,29 +233,26 @@ ${PYSITELIB}/pylint/lint/utils.pyc @@ -221,29 +233,26 @@ ${PYSITELIB}/pylint/lint/utils.pyc
221${PYSITELIB}/pylint/lint/utils.pyo 233${PYSITELIB}/pylint/lint/utils.pyo
222${PYSITELIB}/pylint/message/__init__.py 234${PYSITELIB}/pylint/message/__init__.py
223${PYSITELIB}/pylint/message/__init__.pyc 235${PYSITELIB}/pylint/message/__init__.pyc
224${PYSITELIB}/pylint/message/__init__.pyo 236${PYSITELIB}/pylint/message/__init__.pyo
225${PYSITELIB}/pylint/message/message.py 237${PYSITELIB}/pylint/message/message.py
226${PYSITELIB}/pylint/message/message.pyc 238${PYSITELIB}/pylint/message/message.pyc
227${PYSITELIB}/pylint/message/message.pyo 239${PYSITELIB}/pylint/message/message.pyo
228${PYSITELIB}/pylint/message/message_definition.py 240${PYSITELIB}/pylint/message/message_definition.py
229${PYSITELIB}/pylint/message/message_definition.pyc 241${PYSITELIB}/pylint/message/message_definition.pyc
230${PYSITELIB}/pylint/message/message_definition.pyo 242${PYSITELIB}/pylint/message/message_definition.pyo
231${PYSITELIB}/pylint/message/message_definition_store.py 243${PYSITELIB}/pylint/message/message_definition_store.py
232${PYSITELIB}/pylint/message/message_definition_store.pyc 244${PYSITELIB}/pylint/message/message_definition_store.pyc
233${PYSITELIB}/pylint/message/message_definition_store.pyo 245${PYSITELIB}/pylint/message/message_definition_store.pyo
234${PYSITELIB}/pylint/message/message_handler_mix_in.py 
235${PYSITELIB}/pylint/message/message_handler_mix_in.pyc 
236${PYSITELIB}/pylint/message/message_handler_mix_in.pyo 
237${PYSITELIB}/pylint/message/message_id_store.py 246${PYSITELIB}/pylint/message/message_id_store.py
238${PYSITELIB}/pylint/message/message_id_store.pyc 247${PYSITELIB}/pylint/message/message_id_store.pyc
239${PYSITELIB}/pylint/message/message_id_store.pyo 248${PYSITELIB}/pylint/message/message_id_store.pyo
240${PYSITELIB}/pylint/pyreverse/__init__.py 249${PYSITELIB}/pylint/pyreverse/__init__.py
241${PYSITELIB}/pylint/pyreverse/__init__.pyc 250${PYSITELIB}/pylint/pyreverse/__init__.pyc
242${PYSITELIB}/pylint/pyreverse/__init__.pyo 251${PYSITELIB}/pylint/pyreverse/__init__.pyo
243${PYSITELIB}/pylint/pyreverse/diadefslib.py 252${PYSITELIB}/pylint/pyreverse/diadefslib.py
244${PYSITELIB}/pylint/pyreverse/diadefslib.pyc 253${PYSITELIB}/pylint/pyreverse/diadefslib.pyc
245${PYSITELIB}/pylint/pyreverse/diadefslib.pyo 254${PYSITELIB}/pylint/pyreverse/diadefslib.pyo
246${PYSITELIB}/pylint/pyreverse/diagrams.py 255${PYSITELIB}/pylint/pyreverse/diagrams.py
247${PYSITELIB}/pylint/pyreverse/diagrams.pyc 256${PYSITELIB}/pylint/pyreverse/diagrams.pyc
248${PYSITELIB}/pylint/pyreverse/diagrams.pyo 257${PYSITELIB}/pylint/pyreverse/diagrams.pyo
249${PYSITELIB}/pylint/pyreverse/dot_printer.py 258${PYSITELIB}/pylint/pyreverse/dot_printer.py
@@ -302,64 +311,76 @@ ${PYSITELIB}/pylint/reporters/ureports/b @@ -302,64 +311,76 @@ ${PYSITELIB}/pylint/reporters/ureports/b
302${PYSITELIB}/pylint/reporters/ureports/base_writer.pyo 311${PYSITELIB}/pylint/reporters/ureports/base_writer.pyo
303${PYSITELIB}/pylint/reporters/ureports/nodes.py 312${PYSITELIB}/pylint/reporters/ureports/nodes.py
304${PYSITELIB}/pylint/reporters/ureports/nodes.pyc 313${PYSITELIB}/pylint/reporters/ureports/nodes.pyc
305${PYSITELIB}/pylint/reporters/ureports/nodes.pyo 314${PYSITELIB}/pylint/reporters/ureports/nodes.pyo
306${PYSITELIB}/pylint/reporters/ureports/text_writer.py 315${PYSITELIB}/pylint/reporters/ureports/text_writer.py
307${PYSITELIB}/pylint/reporters/ureports/text_writer.pyc 316${PYSITELIB}/pylint/reporters/ureports/text_writer.pyc
308${PYSITELIB}/pylint/reporters/ureports/text_writer.pyo 317${PYSITELIB}/pylint/reporters/ureports/text_writer.pyo
309${PYSITELIB}/pylint/testutils/__init__.py 318${PYSITELIB}/pylint/testutils/__init__.py
310${PYSITELIB}/pylint/testutils/__init__.pyc 319${PYSITELIB}/pylint/testutils/__init__.pyc
311${PYSITELIB}/pylint/testutils/__init__.pyo 320${PYSITELIB}/pylint/testutils/__init__.pyo
312${PYSITELIB}/pylint/testutils/checker_test_case.py 321${PYSITELIB}/pylint/testutils/checker_test_case.py
313${PYSITELIB}/pylint/testutils/checker_test_case.pyc 322${PYSITELIB}/pylint/testutils/checker_test_case.pyc
314${PYSITELIB}/pylint/testutils/checker_test_case.pyo 323${PYSITELIB}/pylint/testutils/checker_test_case.pyo
 324${PYSITELIB}/pylint/testutils/configuration_test.py
 325${PYSITELIB}/pylint/testutils/configuration_test.pyc
 326${PYSITELIB}/pylint/testutils/configuration_test.pyo
315${PYSITELIB}/pylint/testutils/constants.py 327${PYSITELIB}/pylint/testutils/constants.py
316${PYSITELIB}/pylint/testutils/constants.pyc 328${PYSITELIB}/pylint/testutils/constants.pyc
317${PYSITELIB}/pylint/testutils/constants.pyo 329${PYSITELIB}/pylint/testutils/constants.pyo
318${PYSITELIB}/pylint/testutils/decorator.py 330${PYSITELIB}/pylint/testutils/decorator.py
319${PYSITELIB}/pylint/testutils/decorator.pyc 331${PYSITELIB}/pylint/testutils/decorator.pyc
320${PYSITELIB}/pylint/testutils/decorator.pyo 332${PYSITELIB}/pylint/testutils/decorator.pyo
321${PYSITELIB}/pylint/testutils/functional_test_file.py 333${PYSITELIB}/pylint/testutils/functional_test_file.py
322${PYSITELIB}/pylint/testutils/functional_test_file.pyc 334${PYSITELIB}/pylint/testutils/functional_test_file.pyc
323${PYSITELIB}/pylint/testutils/functional_test_file.pyo 335${PYSITELIB}/pylint/testutils/functional_test_file.pyo
324${PYSITELIB}/pylint/testutils/get_test_info.py 336${PYSITELIB}/pylint/testutils/get_test_info.py
325${PYSITELIB}/pylint/testutils/get_test_info.pyc 337${PYSITELIB}/pylint/testutils/get_test_info.pyc
326${PYSITELIB}/pylint/testutils/get_test_info.pyo 338${PYSITELIB}/pylint/testutils/get_test_info.pyo
327${PYSITELIB}/pylint/testutils/global_test_linter.py 339${PYSITELIB}/pylint/testutils/global_test_linter.py
328${PYSITELIB}/pylint/testutils/global_test_linter.pyc 340${PYSITELIB}/pylint/testutils/global_test_linter.pyc
329${PYSITELIB}/pylint/testutils/global_test_linter.pyo 341${PYSITELIB}/pylint/testutils/global_test_linter.pyo
330${PYSITELIB}/pylint/testutils/lint_module_test.py 342${PYSITELIB}/pylint/testutils/lint_module_test.py
331${PYSITELIB}/pylint/testutils/lint_module_test.pyc 343${PYSITELIB}/pylint/testutils/lint_module_test.pyc
332${PYSITELIB}/pylint/testutils/lint_module_test.pyo 344${PYSITELIB}/pylint/testutils/lint_module_test.pyo
333${PYSITELIB}/pylint/testutils/output_line.py 345${PYSITELIB}/pylint/testutils/output_line.py
334${PYSITELIB}/pylint/testutils/output_line.pyc 346${PYSITELIB}/pylint/testutils/output_line.pyc
335${PYSITELIB}/pylint/testutils/output_line.pyo 347${PYSITELIB}/pylint/testutils/output_line.pyo
 348${PYSITELIB}/pylint/testutils/primer.py
 349${PYSITELIB}/pylint/testutils/primer.pyc
 350${PYSITELIB}/pylint/testutils/primer.pyo
336${PYSITELIB}/pylint/testutils/pyreverse.py 351${PYSITELIB}/pylint/testutils/pyreverse.py
337${PYSITELIB}/pylint/testutils/pyreverse.pyc 352${PYSITELIB}/pylint/testutils/pyreverse.pyc
338${PYSITELIB}/pylint/testutils/pyreverse.pyo 353${PYSITELIB}/pylint/testutils/pyreverse.pyo
339${PYSITELIB}/pylint/testutils/reporter_for_tests.py 354${PYSITELIB}/pylint/testutils/reporter_for_tests.py
340${PYSITELIB}/pylint/testutils/reporter_for_tests.pyc 355${PYSITELIB}/pylint/testutils/reporter_for_tests.pyc
341${PYSITELIB}/pylint/testutils/reporter_for_tests.pyo 356${PYSITELIB}/pylint/testutils/reporter_for_tests.pyo
342${PYSITELIB}/pylint/testutils/tokenize_str.py 357${PYSITELIB}/pylint/testutils/tokenize_str.py
343${PYSITELIB}/pylint/testutils/tokenize_str.pyc 358${PYSITELIB}/pylint/testutils/tokenize_str.pyc
344${PYSITELIB}/pylint/testutils/tokenize_str.pyo 359${PYSITELIB}/pylint/testutils/tokenize_str.pyo
345${PYSITELIB}/pylint/testutils/unittest_linter.py 360${PYSITELIB}/pylint/testutils/unittest_linter.py
346${PYSITELIB}/pylint/testutils/unittest_linter.pyc 361${PYSITELIB}/pylint/testutils/unittest_linter.pyc
347${PYSITELIB}/pylint/testutils/unittest_linter.pyo 362${PYSITELIB}/pylint/testutils/unittest_linter.pyo
348${PYSITELIB}/pylint/typing.py 363${PYSITELIB}/pylint/typing.py
349${PYSITELIB}/pylint/typing.pyc 364${PYSITELIB}/pylint/typing.pyc
350${PYSITELIB}/pylint/typing.pyo 365${PYSITELIB}/pylint/typing.pyo
351${PYSITELIB}/pylint/utils/__init__.py 366${PYSITELIB}/pylint/utils/__init__.py
352${PYSITELIB}/pylint/utils/__init__.pyc 367${PYSITELIB}/pylint/utils/__init__.pyc
353${PYSITELIB}/pylint/utils/__init__.pyo 368${PYSITELIB}/pylint/utils/__init__.pyo
354${PYSITELIB}/pylint/utils/ast_walker.py 369${PYSITELIB}/pylint/utils/ast_walker.py
355${PYSITELIB}/pylint/utils/ast_walker.pyc 370${PYSITELIB}/pylint/utils/ast_walker.pyc
356${PYSITELIB}/pylint/utils/ast_walker.pyo 371${PYSITELIB}/pylint/utils/ast_walker.pyo
 372${PYSITELIB}/pylint/utils/docs.py
 373${PYSITELIB}/pylint/utils/docs.pyc
 374${PYSITELIB}/pylint/utils/docs.pyo
357${PYSITELIB}/pylint/utils/file_state.py 375${PYSITELIB}/pylint/utils/file_state.py
358${PYSITELIB}/pylint/utils/file_state.pyc 376${PYSITELIB}/pylint/utils/file_state.pyc
359${PYSITELIB}/pylint/utils/file_state.pyo 377${PYSITELIB}/pylint/utils/file_state.pyo
 378${PYSITELIB}/pylint/utils/linterstats.py
 379${PYSITELIB}/pylint/utils/linterstats.pyc
 380${PYSITELIB}/pylint/utils/linterstats.pyo
360${PYSITELIB}/pylint/utils/pragma_parser.py 381${PYSITELIB}/pylint/utils/pragma_parser.py
361${PYSITELIB}/pylint/utils/pragma_parser.pyc 382${PYSITELIB}/pylint/utils/pragma_parser.pyc
362${PYSITELIB}/pylint/utils/pragma_parser.pyo 383${PYSITELIB}/pylint/utils/pragma_parser.pyo
363${PYSITELIB}/pylint/utils/utils.py 384${PYSITELIB}/pylint/utils/utils.py
364${PYSITELIB}/pylint/utils/utils.pyc 385${PYSITELIB}/pylint/utils/utils.pyc
365${PYSITELIB}/pylint/utils/utils.pyo 386${PYSITELIB}/pylint/utils/utils.pyo

cvs diff -r1.47 -r1.48 pkgsrc/devel/py-pylint/distinfo (expand / switch to unified diff)

--- pkgsrc/devel/py-pylint/distinfo 2021/10/26 12:22:15 1.47
+++ pkgsrc/devel/py-pylint/distinfo 2021/12/08 16:23:48 1.48
@@ -1,5 +1,5 @@ @@ -1,5 +1,5 @@
1$NetBSD: distinfo,v 1.47 2021/10/26 12:22:15 adam Exp $ 1$NetBSD: distinfo,v 1.48 2021/12/08 16:23:48 adam Exp $
2 2
3BLAKE2s (pylint-2.11.1.tar.gz) = fc0f7ad05d74be93e2881757e59acaa0660b94071a4bc105f0b094063816f30e 3BLAKE2s (pylint-2.12.2.tar.gz) = 449ea8443f7a66ac2811143c5efda726dff06bfc60749e97eb24bd395ce59fae
4SHA512 (pylint-2.11.1.tar.gz) = 511fae0a7778d4f7337947983ae7972d4b0caeca475f11955b3e359bc1347163e213cd25c095bc76ef2ae20e3fdfbcbcdce0607a8e62a776c57e5410536edfbf 4SHA512 (pylint-2.12.2.tar.gz) = 16369eee4387bc1070dce4fc497bd7592d17c6346f3aa32f38eeab6e2b6faccc7c6a6981e7058c85fa0e458e08603fb2c230cb69204d2bb46b79152e479b36b4
5Size (pylint-2.11.1.tar.gz) = 327130 bytes 5Size (pylint-2.12.2.tar.gz) = 344956 bytes