Bug#1054974: behave: FTBFS: dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p 3.11 returned exit code 13
Hi, On 2024-01-15 17:34, Christoph Berg wrote: Re: Andrius Merkys The patch proposed in #1042610 does not fix test failure. Interestingly, the failure seems to be nondeterministic: after patching #1042610 some builds succeed. However, I did not manage to find the root cause. The difference between a working and a failing run is this diff: dh_auto_test -O--buildsystem=pybuild -I: pybuild base:305: cd /home/myon/debian/nmu/behave/behave/.pybuild/cpython3_3.12_behave/build; python3.12 -m pytest test +I: pybuild base:305: cd /home/myon/debian/nmu/behave/behave/.pybuild/cpython3_3.12_behave/build; python3.12 -m pytest tests I.e. pybuild invokes either "python3.12 -m pytest test" (good) or "python3.12 -m pytest tests" (bad) Great catch! I tried diff'ing working and failing buildlogs as well, but probably was not that attentive to spot this. I tried to drill down where this decision is made but couldn't spot it. This might be a bug in dh-python. As a workaround, we can move the "tests" directory aside. Then it will reliably run the "test" target. (Not pretty, but I want to get the package unstuck.) Yes, this makes sense. Best, Andrius
Bug#1054974: behave: FTBFS: dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p 3.11 returned exit code 13
Re: Andrius Merkys > The patch proposed in #1042610 does not fix test failure. Interestingly, the > failure seems to be nondeterministic: after patching #1042610 some builds > succeed. However, I did not manage to find the root cause. The difference between a working and a failing run is this diff: dh_auto_test -O--buildsystem=pybuild -I: pybuild base:305: cd /home/myon/debian/nmu/behave/behave/.pybuild/cpython3_3.12_behave/build; python3.12 -m pytest test +I: pybuild base:305: cd /home/myon/debian/nmu/behave/behave/.pybuild/cpython3_3.12_behave/build; python3.12 -m pytest tests I.e. pybuild invokes either "python3.12 -m pytest test" (good) or "python3.12 -m pytest tests" (bad) I tried to drill down where this decision is made but couldn't spot it. As a workaround, we can move the "tests" directory aside. Then it will reliably run the "test" target. (Not pretty, but I want to get the package unstuck.) Christoph
Bug#1054974: behave: FTBFS: dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p 3.11 returned exit code 13
Hi, On Tue, 12 Dec 2023 19:35:09 +0100 s3v wrote: please see https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1042610 for a proposed patch. The patch proposed in #1042610 does not fix test failure. Interestingly, the failure seems to be nondeterministic: after patching #1042610 some builds succeed. However, I did not manage to find the root cause. Andrius
Bug#1054974: behave: FTBFS: dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p 3.11 returned exit code 13
Dear Maintainer, please see https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1042610 for a proposed patch. Kind Regards
Bug#1054974: behave: FTBFS: dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p 3.11 returned exit code 13
Source: behave Version: 1.2.6-4 Severity: serious Justification: FTBFS Tags: trixie sid ftbfs User: lu...@debian.org Usertags: ftbfs-20231028 ftbfs-trixie Hi, During a rebuild of all packages in sid, your package failed to build on amd64. Relevant part (hopefully): > make[1]: Entering directory '/<>' > dh_auto_build -i > I: pybuild base:310: /usr/bin/python3 setup.py build > /usr/lib/python3/dist-packages/setuptools/dist.py:744: > SetuptoolsDeprecationWarning: Invalid dash-separated options > !! > > > > Usage of dash-separated 'upload-dir' will not be supported in future > versions. Please use the underscore name 'upload_dir' instead. > > This deprecation is overdue, please update your project and remove > deprecated > calls to avoid build errors in the future. > > See > https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for > details. > > > > !! > opt = self.warn_dash_deprecation(opt, section) > running build > running build_py > copying setuptools_behave.py -> > /<>/.pybuild/cpython3_3.11_behave/build > creating /<>/.pybuild/cpython3_3.11_behave/build/behave > copying behave/configuration.py -> > /<>/.pybuild/cpython3_3.11_behave/build/behave > copying behave/model.py -> > /<>/.pybuild/cpython3_3.11_behave/build/behave > copying behave/_types.py -> > /<>/.pybuild/cpython3_3.11_behave/build/behave > copying behave/parser.py -> > /<>/.pybuild/cpython3_3.11_behave/build/behave > copying behave/userdata.py -> > /<>/.pybuild/cpython3_3.11_behave/build/behave > copying behave/__main__.py -> > /<>/.pybuild/cpython3_3.11_behave/build/behave > copying behave/tag_matcher.py -> > /<>/.pybuild/cpython3_3.11_behave/build/behave > copying behave/model_describe.py -> > /<>/.pybuild/cpython3_3.11_behave/build/behave > copying behave/log_capture.py -> > /<>/.pybuild/cpython3_3.11_behave/build/behave > copying behave/json_parser.py -> > /<>/.pybuild/cpython3_3.11_behave/build/behave > copying behave/__init__.py -> > /<>/.pybuild/cpython3_3.11_behave/build/behave > copying behave/textutil.py -> > /<>/.pybuild/cpython3_3.11_behave/build/behave > copying behave/runner_util.py -> > /<>/.pybuild/cpython3_3.11_behave/build/behave > copying behave/importer.py -> > /<>/.pybuild/cpython3_3.11_behave/build/behave > copying behave/i18n.py -> > /<>/.pybuild/cpython3_3.11_behave/build/behave > copying behave/runner.py -> > /<>/.pybuild/cpython3_3.11_behave/build/behave > copying behave/matchers.py -> > /<>/.pybuild/cpython3_3.11_behave/build/behave > copying behave/step_registry.py -> > /<>/.pybuild/cpython3_3.11_behave/build/behave > copying behave/capture.py -> > /<>/.pybuild/cpython3_3.11_behave/build/behave > copying behave/_stepimport.py -> > /<>/.pybuild/cpython3_3.11_behave/build/behave > copying behave/fixture.py -> > /<>/.pybuild/cpython3_3.11_behave/build/behave > copying behave/tag_expression.py -> > /<>/.pybuild/cpython3_3.11_behave/build/behave > copying behave/model_core.py -> > /<>/.pybuild/cpython3_3.11_behave/build/behave > creating /<>/.pybuild/cpython3_3.11_behave/build/behave/compat > copying behave/compat/__init__.py -> > /<>/.pybuild/cpython3_3.11_behave/build/behave/compat > copying behave/compat/collections.py -> > /<>/.pybuild/cpython3_3.11_behave/build/behave/compat > creating /<>/.pybuild/cpython3_3.11_behave/build/behave/api > copying behave/api/__init__.py -> > /<>/.pybuild/cpython3_3.11_behave/build/behave/api > copying behave/api/async_step.py -> > /<>/.pybuild/cpython3_3.11_behave/build/behave/api > creating /<>/.pybuild/cpython3_3.11_behave/build/behave/contrib > copying behave/contrib/formatter_missing_steps.py -> > /<>/.pybuild/cpython3_3.11_behave/build/behave/contrib > copying behave/contrib/scenario_autoretry.py -> > /<>/.pybuild/cpython3_3.11_behave/build/behave/contrib > copying behave/contrib/__init__.py -> > /<>/.pybuild/cpython3_3.11_behave/build/behave/contrib > copying behave/contrib/substep_dirs.py -> > /<>/.pybuild/cpython3_3.11_behave/build/behave/contrib > creating /<>/.pybuild/cpython3_3.11_behave/build/behave/formatter > copying behave/formatter/formatters.py -> > /<>/.pybuild/cpython3_3.11_behave/build/behave/formatter > copying behave/formatter/plain.py -> > /<>/.pybuild/cpython3_3.11_behave/build/behave/formatter > copying behave/formatter/_registry.py -> > /<>/.pybuild/cpython3_3.11_behave/build/behave/formatter > copying behave/formatter/base.py -> > /<>/.pybuild/cpython3_3.11_behave/build/behave/formatter > copying behave/formatter/rerun.py -> > /<>/.pybuild/cpython3_3.11_behave/build/behave/formatter > copying behave/formatter/__init__.py -> > /<>/.pybuild/cpython3_3.11_behave/build/behave/formatter > copying behave/formatter/pretty.py -> >