From c514b3f9d128c64677a3e00f2f29085a9a649425 Mon Sep 17 00:00:00 2001 From: Harinn Date: Mon, 18 May 2026 19:43:54 +0700 Subject: [PATCH] python3Packages.pytest-pylint: fix tests with newer pytest --- .../python-modules/pytest-pylint/default.nix | 12 ++++++++++++ .../python-modules/pytest-pylint/pytest-9.patch | 13 +++++++++++++ 2 files changed, 25 insertions(+) create mode 100644 pkgs/development/python-modules/pytest-pylint/pytest-9.patch diff --git a/pkgs/development/python-modules/pytest-pylint/default.nix b/pkgs/development/python-modules/pytest-pylint/default.nix index 93e5f6cab127..f24ce58efcee 100644 --- a/pkgs/development/python-modules/pytest-pylint/default.nix +++ b/pkgs/development/python-modules/pytest-pylint/default.nix @@ -2,6 +2,7 @@ lib, buildPythonPackage, fetchPypi, + fetchpatch2, setuptools, pylint, pytest, @@ -19,6 +20,17 @@ buildPythonPackage rec { hash = "sha256-iHZLjh1c+hiAkkjgzML8BQNfCMNfCwIi3c/qHDxOVT4="; }; + patches = [ + # Use pathlib.Path in plugin hooks for pytest 8.1+ compatibility. + (fetchpatch2 { + url = "https://github.com/carsongee/pytest-pylint/commit/62457e8013df106116fb2a62c7c44870103ff393.patch?full_index=1"; + hash = "sha256-EnlHEe5uZkvrWO8B33xkQ3LCQ7Bj5/oLES//NP8vkwE="; + }) + # Handle test output difference in pytest 9. + # https://github.com/carsongee/pytest-pylint/pull/196 + ./pytest-9.patch + ]; + postPatch = '' substituteInPlace setup.py \ --replace-fail "pytest-runner" "" diff --git a/pkgs/development/python-modules/pytest-pylint/pytest-9.patch b/pkgs/development/python-modules/pytest-pylint/pytest-9.patch new file mode 100644 index 000000000000..fcfd449561c5 --- /dev/null +++ b/pkgs/development/python-modules/pytest-pylint/pytest-9.patch @@ -0,0 +1,13 @@ +diff --git a/pytest_pylint/tests/test_pytest_pylint.py b/pytest_pylint/tests/test_pytest_pylint.py +index 4c87ac336690defb2f2d472b389945c91fae5d31..f6478c018f5974acb2fdd95f1d461ca71e1302ba 100644 +--- a/pytest_pylint/tests/test_pytest_pylint.py ++++ b/pytest_pylint/tests/test_pytest_pylint.py +@@ -38,7 +38,7 @@ def test_nodeid_no_dupepath(testdir): + testdir.makepyfile(app="import sys") + result = testdir.runpytest("--pylint", "--verbose") + assert re.search( +- r"^FAILED\s+app\.py::PYLINT$", result.stdout.str(), flags=re.MULTILINE ++ r"^FAILED\s+app\.py::PYLINT( |$)", result.stdout.str(), flags=re.MULTILINE + ) + +