diff --git a/devel/pylint/Makefile b/devel/pylint/Makefile index a2a2a94315f8..3b545b39b24c 100644 --- a/devel/pylint/Makefile +++ b/devel/pylint/Makefile @@ -1,38 +1,39 @@ PORTNAME= pylint PORTVERSION= 3.2.6 +PORTREVISION= 1 CATEGORIES= devel python MASTER_SITES= PYPI PKGNAMESUFFIX= ${PYTHON_PKGNAMESUFFIX} MAINTAINER= sunpoet@FreeBSD.org COMMENT= Analyzes python source code looking for bugs and signs of poor quality WWW= https://www.pylint.org/ \ https://pylint.readthedocs.io/en/latest/ \ https://github.com/pylint-dev/pylint LICENSE= GPLv2 LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=62.6:devel/py-setuptools@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}wheel>=0.37.1:devel/py-wheel@${PY_FLAVOR} -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}astroid>=3.2.4<3.3.0_99:devel/py-astroid@${PY_FLAVOR} \ +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}astroid>=3.3.1<3.4.0:devel/py-astroid@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}dill>=0.3.7:devel/py-dill@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}isort>=4.2.5<6:devel/py-isort@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}mccabe>=0.6<0.8:devel/py-mccabe@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}platformdirs>=2.2.0:devel/py-platformdirs@${PY_FLAVOR} \ ${PY_TOMLI} \ ${PYTHON_PKGNAMEPREFIX}tomlkit>=0.10.1:textproc/py-tomlkit@${PY_FLAVOR} TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pytest>=0:devel/py-pytest@${PY_FLAVOR} USES= python USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes .include .if ${PYTHON_REL} < 31000 RUN_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}typing-extensions>=3.10.0:devel/py-typing-extensions@${PY_FLAVOR} .endif .include diff --git a/devel/pylint/files/patch-astroid b/devel/pylint/files/patch-astroid new file mode 100644 index 000000000000..59f1b58709de --- /dev/null +++ b/devel/pylint/files/patch-astroid @@ -0,0 +1,58 @@ +Obtained from: https://github.com/pylint-dev/pylint/commit/466c671cbe5c4f23747b8684665cebefdf6d8fdf + +--- pyproject.toml.orig 2024-07-21 19:48:19 UTC ++++ pyproject.toml +@@ -41,7 +41,7 @@ dependencies = [ + # Also upgrade requirements_test_min.txt. + # Pinned to dev of second minor update to allow editable installs and fix primer issues, + # see https://github.com/pylint-dev/astroid/issues/1341 +- "astroid>=3.2.4,<=3.3.0-dev0", ++ "astroid>=3.3.1,<=3.4.0-dev0", + "isort>=4.2.5,<6,!=5.13.0", + "mccabe>=0.6,<0.8", + "tomli>=1.1.0;python_version<'3.11'", +--- README.rst.orig 2024-07-21 19:48:19 UTC ++++ README.rst +@@ -135,7 +135,7 @@ isort_ (auto-formatting), autoflake_ (automated remova + isort_ (auto-formatting), autoflake_ (automated removal of unused imports or variables), pyupgrade_ + (automated upgrade to newer python syntax) and pydocstringformatter_ (automated pep257). + +-.. _ruff: https://github.com/charliermarsh/ruff ++.. _ruff: https://github.com/astral-sh/ruff + .. _flake8: https://github.com/PyCQA/flake8 + .. _bandit: https://github.com/PyCQA/bandit + .. _mypy: https://github.com/python/mypy +--- requirements_test_min.txt.orig 2024-07-21 19:48:19 UTC ++++ requirements_test_min.txt +@@ -1,6 +1,6 @@ + .[testutils,spelling] + # astroid dependency is also defined in pyproject.toml +-astroid==3.2.4 # Pinned to a specific version for tests ++astroid==3.3.1 # Pinned to a specific version for tests + typing-extensions~=4.11 + py~=1.11.0 + pytest~=7.4 +--- tests/functional/i/inconsistent/inconsistent_quotes_fstring_py312_311.py.orig 2024-07-21 19:48:19 UTC ++++ tests/functional/i/inconsistent/inconsistent_quotes_fstring_py312_311.py +@@ -2,4 +2,4 @@ dictionary = {'0': 0} + + dictionary = {'0': 0} + # quotes are consistent when targetting 3.11 and earlier (cannot use single quotes here) +-f_string = f'{dictionary["0"]}' ++F_STRING = f'{dictionary["0"]}' +--- tests/functional/i/inconsistent/inconsistent_quotes_fstring_py312.py.orig 2024-07-21 19:48:19 UTC ++++ tests/functional/i/inconsistent/inconsistent_quotes_fstring_py312.py +@@ -2,4 +2,4 @@ dictionary = {'0': 0} + + dictionary = {'0': 0} + # quotes are inconsistent when targetting Python 3.12 (use single quotes) +-f_string = f'{dictionary["0"]}' # [inconsistent-quotes] ++F_STRING = f'{dictionary["0"]}' # [inconsistent-quotes] +--- tests/functional/i/inconsistent/inconsistent_quotes_fstring.py.orig 2024-07-21 19:48:19 UTC ++++ tests/functional/i/inconsistent/inconsistent_quotes_fstring.py +@@ -1,4 +1,4 @@ dictionary = {'0': 0} + # pylint: disable=missing-module-docstring + + dictionary = {'0': 0} +-f_string = f'{dictionary["0"]}' ++F_STRING = f'{dictionary["0"]}'