python3Packages.deal: skip missing docstring-parser tests

docstring-parser 0.18 no longer ships its tests in built wheels, so deal's
test suite fails during collection when it tries to read
docstring_parser/tests. Skip generating the cross-check cases when the
directory is absent.

Assisted-by: OpenCode 2 (DeepSeek V4.1 Flash Free)
This commit is contained in:
André Lima
2026-10-20 18:49:57 +01:00
parent 09063bd1f2
commit 52ebd52fdf
2 changed files with 21 additions and 0 deletions

View File

@@ -30,6 +30,11 @@ buildPythonPackage rec {
hash = "sha256-nLZ06Xfa9Q+Saf8qPXG1Xo6y6oO6kifhfK/gryZ6q90=";
};
patches = [
# docstring-parser 0.18 no longer ships its tests, which this test reads.
./skip-missing-docstring-parser-tests.patch
];
build-system = [ flit-core ];
dependencies = [

View File

@@ -0,0 +1,16 @@
docstring_parser 0.18 excludes its tests from built wheels, so
`docstring_parser.__path__[0] / 'tests'` does not exist and test
collection fails with FileNotFoundError. Skip generating the cross-check
test cases when the directory is unavailable.
--- a/tests/test_linter/test_extractors/test_exceptions.py
+++ b/tests/test_linter/test_extractors/test_exceptions.py
@@ -293,6 +293,8 @@ def get_docstring_parser_tests():
tests_found = 0
if astroid is None:
return
+ if not root.is_dir():
+ return
for path in root.iterdir():
if path.suffix != '.py':
continue