Package: src:python-questionary Version: 2.1.0-1 Severity: serious Tags: ftbfs forky sid
Dear maintainer: During a rebuild of all packages in unstable, your package failed to build. Below you will find how the build ends (probably the most relevant part, but not necessarily). If required, the full build log is available here: https://people.debian.org/~sanvila/build-logs/202509/ About the archive rebuild: The build was made on virtual machines from AWS, using sbuild and a reduced chroot with only build-essential packages. If you could not reproduce the bug please contact me privately, as I am willing to provide ssh access to a virtual machine where the bug is fully reproducible. If this is really a bug in one of the build-depends, please use reassign and add an affects on src:python-questionary, so that this is still visible in the BTS web page for this package. Thanks. -------------------------------------------------------------------------------- [...] debian/rules clean dh clean --with python3,sphinxdoc --buildsystem=pybuild dh_auto_clean -O--buildsystem=pybuild dh_autoreconf_clean -O--buildsystem=pybuild dh_clean -O--buildsystem=pybuild debian/rules binary dh binary --with python3,sphinxdoc --buildsystem=pybuild dh_update_autotools_config -O--buildsystem=pybuild dh_autoreconf -O--buildsystem=pybuild dh_auto_configure -O--buildsystem=pybuild dh_auto_build -O--buildsystem=pybuild I: pybuild plugin_pyproject:129: Building wheel for python3.13 with "build" module I: pybuild base:311: python3.13 -m build --skip-dependency-check --no-isolation --wheel --outdir /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_questionary * Building wheel... [... snipped ...] questionary/prompts/common.py:591: AttributeError ______________________________ test_form_creation ______________________________ def test_form_creation(): text = "Y" + KeyInputs.ENTER + "\r" def run(inp): inp.send_text(text) f = example_form(inp) result = f.unsafe_ask() assert result == {"q1": True, "q2": "foo"} > execute_with_input_pipe(run) tests/test_form.py:37: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ tests/utils.py:90: in execute_with_input_pipe return func(inp) ^^^^^^^^^ tests/test_form.py:33: in run f = example_form(inp) ^^^^^^^^^^^^^^^^^ tests/test_form.py:13: in example_form q2=questionary.select( questionary/prompts/select.py:205: in select layout = common.create_inquirer_layout(ic, get_prompt_tokens, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ questionary/prompts/common.py:611: in create_inquirer_layout _fix_unecessary_blank_lines(ps) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ps = <prompt_toolkit.shortcuts.prompt.PromptSession object at 0x7f3030ef9950> def _fix_unecessary_blank_lines(ps: PromptSession) -> None: """This is a fix for additional empty lines added by prompt toolkit. This assumes the layout of the default session doesn't change, if it does, this needs an update.""" default_container = ps.layout.container default_buffer_window = ( > > default_container.get_children()[0].content.get_children()[1].content # > type: ignore[attr-defined] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ) E AttributeError: 'VSplit' object has no attribute 'content' questionary/prompts/common.py:591: AttributeError __________________________ test_form_skips_questions ___________________________ def test_form_skips_questions(): text = "Y" + KeyInputs.ENTER + "\r" def run(inp): inp.send_text(text) f = example_form_with_skip(inp) result = f.ask() assert result == {"q1": True, "q2": 42} > execute_with_input_pipe(run) tests/test_form.py:51: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ tests/utils.py:90: in execute_with_input_pipe return func(inp) ^^^^^^^^^ tests/test_form.py:45: in run f = example_form_with_skip(inp) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ tests/test_form.py:22: in example_form_with_skip q2=questionary.select( questionary/prompts/select.py:205: in select layout = common.create_inquirer_layout(ic, get_prompt_tokens, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ questionary/prompts/common.py:611: in create_inquirer_layout _fix_unecessary_blank_lines(ps) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ps = <prompt_toolkit.shortcuts.prompt.PromptSession object at 0x7f303095b890> def _fix_unecessary_blank_lines(ps: PromptSession) -> None: """This is a fix for additional empty lines added by prompt toolkit. This assumes the layout of the default session doesn't change, if it does, this needs an update.""" default_container = ps.layout.container default_buffer_window = ( > > default_container.get_children()[0].content.get_children()[1].content # > type: ignore[attr-defined] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ) E AttributeError: 'VSplit' object has no attribute 'content' questionary/prompts/common.py:591: AttributeError _____________________ test_form_skips_questions_unsafe_ask _____________________ def test_form_skips_questions_unsafe_ask(): text = "Y" + KeyInputs.ENTER + "\r" def run(inp): inp.send_text(text) f = example_form_with_skip(inp) result = f.unsafe_ask() assert result == {"q1": True, "q2": 42} > execute_with_input_pipe(run) tests/test_form.py:65: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ tests/utils.py:90: in execute_with_input_pipe return func(inp) ^^^^^^^^^ tests/test_form.py:59: in run f = example_form_with_skip(inp) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ tests/test_form.py:22: in example_form_with_skip q2=questionary.select( questionary/prompts/select.py:205: in select layout = common.create_inquirer_layout(ic, get_prompt_tokens, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ questionary/prompts/common.py:611: in create_inquirer_layout _fix_unecessary_blank_lines(ps) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ps = <prompt_toolkit.shortcuts.prompt.PromptSession object at 0x7f3030afca50> def _fix_unecessary_blank_lines(ps: PromptSession) -> None: """This is a fix for additional empty lines added by prompt toolkit. This assumes the layout of the default session doesn't change, if it does, this needs an update.""" default_container = ps.layout.container default_buffer_window = ( > > default_container.get_children()[0].content.get_children()[1].content # > type: ignore[attr-defined] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ) E AttributeError: 'VSplit' object has no attribute 'content' questionary/prompts/common.py:591: AttributeError ___________________ test_ask_should_catch_keyboard_exception ___________________ def test_ask_should_catch_keyboard_exception(): def run(inp): try: inp.send_text(KeyInputs.CONTROLC) f = example_form(inp) result = f.ask() assert result == {} except KeyboardInterrupt: fail("Keyboard Interrupt should be caught by `ask()`") > execute_with_input_pipe(run) tests/test_form.py:79: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ tests/utils.py:90: in execute_with_input_pipe return func(inp) ^^^^^^^^^ tests/test_form.py:72: in run f = example_form(inp) ^^^^^^^^^^^^^^^^^ tests/test_form.py:13: in example_form q2=questionary.select( questionary/prompts/select.py:205: in select layout = common.create_inquirer_layout(ic, get_prompt_tokens, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ questionary/prompts/common.py:611: in create_inquirer_layout _fix_unecessary_blank_lines(ps) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ps = <prompt_toolkit.shortcuts.prompt.PromptSession object at 0x7f3030a5b750> def _fix_unecessary_blank_lines(ps: PromptSession) -> None: """This is a fix for additional empty lines added by prompt toolkit. This assumes the layout of the default session doesn't change, if it does, this needs an update.""" default_container = ps.layout.container default_buffer_window = ( > > default_container.get_children()[0].content.get_children()[1].content # > type: ignore[attr-defined] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ) E AttributeError: 'VSplit' object has no attribute 'content' questionary/prompts/common.py:591: AttributeError =========================== short test summary info ============================ FAILED tests/prompts/test_checkbox.py::test_submit_empty - AttributeError: 'V... FAILED tests/prompts/test_checkbox.py::test_select_first_choice - AttributeEr... FAILED tests/prompts/test_checkbox.py::test_select_with_instruction - Attribu... FAILED tests/prompts/test_checkbox.py::test_select_first_choice_with_token_title FAILED tests/prompts/test_checkbox.py::test_select_disabled_choices_if_they_are_default FAILED tests/prompts/test_checkbox.py::test_select_and_deselct - AttributeErr... FAILED tests/prompts/test_checkbox.py::test_select_first_and_third_choice - A... FAILED tests/prompts/test_checkbox.py::test_select_first_and_third_choice_using_emacs_keys FAILED tests/prompts/test_checkbox.py::test_cycle_to_first_choice - Attribute... FAILED tests/prompts/test_checkbox.py::test_cycle_backwards - AttributeError:... FAILED tests/prompts/test_checkbox.py::test_cycle_backwards_using_emacs_keys FAILED tests/prompts/test_checkbox.py::test_separator_down - AttributeError: ... FAILED tests/prompts/test_checkbox.py::test_separator_up - AttributeError: 'V... FAILED tests/prompts/test_checkbox.py::test_select_all - AttributeError: 'VSp... FAILED tests/prompts/test_checkbox.py::test_select_all_deselect - AttributeEr... FAILED tests/prompts/test_checkbox.py::test_select_invert - AttributeError: '... FAILED tests/prompts/test_checkbox.py::test_list_random_input - AttributeErro... FAILED tests/prompts/test_checkbox.py::test_list_ctr_c - AttributeError: 'VSp... FAILED tests/prompts/test_checkbox.py::test_checkbox_initial_choice - Attribu... FAILED tests/prompts/test_checkbox.py::test_select_initial_choice_string - At... FAILED tests/prompts/test_checkbox.py::test_select_initial_choice_duplicate FAILED tests/prompts/test_checkbox.py::test_validate_default_message - Attrib... FAILED tests/prompts/test_checkbox.py::test_validate_with_message - Attribute... FAILED tests/prompts/test_checkbox.py::test_proper_type_returned - AttributeE... FAILED tests/prompts/test_checkbox.py::test_select_filter_first_choice - Attr... FAILED tests/prompts/test_checkbox.py::test_select_filter_multiple_after_search FAILED tests/prompts/test_common.py::test_blank_line_fix - AttributeError: 'V... FAILED tests/prompts/test_common.py::test_print_with_style - TypeError: Attrs... FAILED tests/prompts/test_rawselect.py::test_legacy_name - AttributeError: 'V... FAILED tests/prompts/test_rawselect.py::test_select_first_choice - AttributeE... FAILED tests/prompts/test_rawselect.py::test_select_second_choice - Attribute... FAILED tests/prompts/test_rawselect.py::test_select_third_choice - AttributeE... FAILED tests/prompts/test_rawselect.py::test_separator_shortcuts - AttributeE... FAILED tests/prompts/test_rawselect.py::test_select_random_input - AttributeE... FAILED tests/prompts/test_rawselect.py::test_select_ctr_c - AttributeError: '... FAILED tests/prompts/test_select.py::test_legacy_name - AttributeError: 'VSpl... FAILED tests/prompts/test_select.py::test_select_first_choice - AttributeErro... FAILED tests/prompts/test_select.py::test_select_first_choice_with_token_title FAILED tests/prompts/test_select.py::test_select_second_choice - AttributeErr... FAILED tests/prompts/test_select.py::test_select_third_choice - AttributeErro... FAILED tests/prompts/test_select.py::test_select_third_choice_using_shortcuts_and_arrows FAILED tests/prompts/test_select.py::test_select_second_choice_using_j_k - At... FAILED tests/prompts/test_select.py::test_select_second_choice_using_emacs_keys FAILED tests/prompts/test_select.py::test_select_with_instruction - Attribute... FAILED tests/prompts/test_select.py::test_cycle_to_first_choice - AttributeEr... FAILED tests/prompts/test_select.py::test_cycle_backwards - AttributeError: '... FAILED tests/prompts/test_select.py::test_cycle_backwards_using_k - Attribute... FAILED tests/prompts/test_select.py::test_separator_down - AttributeError: 'V... FAILED tests/prompts/test_select.py::test_separator_up - AttributeError: 'VSp... FAILED tests/prompts/test_select.py::test_select_random_input - AttributeErro... FAILED tests/prompts/test_select.py::test_select_ctr_c - AttributeError: 'VSp... FAILED tests/prompts/test_select.py::test_disallow_shortcut_key - AttributeEr... FAILED tests/prompts/test_select.py::test_allow_shortcut_key_with_True - Attr... FAILED tests/prompts/test_select.py::test_auto_shortcut_key_stable_in_loop - ... FAILED tests/prompts/test_select.py::test_select_initial_choice_with_value - ... FAILED tests/prompts/test_select.py::test_select_initial_choice - AttributeEr... FAILED tests/prompts/test_select.py::test_select_initial_choice_string - Attr... FAILED tests/prompts/test_select.py::test_select_initial_choice_duplicate - A... FAILED tests/prompts/test_select.py::test_no_invalid_parameters_are_forwarded FAILED tests/prompts/test_select.py::test_select_arrow_keys - AttributeError:... FAILED tests/prompts/test_select.py::test_fail_for_unreachable_choice - Attri... FAILED tests/prompts/test_select.py::test_jk_and_shortcut_conflict_avoided_by_disabling_ij_keys FAILED tests/prompts/test_select.py::test_select_shortcuts - AttributeError: ... FAILED tests/prompts/test_select.py::test_select_no_arrow_keys - AttributeErr... FAILED tests/prompts/test_select.py::test_select_no_shortcuts - AttributeErro... FAILED tests/prompts/test_select.py::test_select_default_has_arrow_keys - Att... FAILED tests/prompts/test_select.py::test_filter_prefix_one_letter - Attribut... FAILED tests/prompts/test_select.py::test_filter_prefix_multiple_letters - At... FAILED tests/prompts/test_select.py::test_select_filter_handle_backspace - At... FAILED tests/prompts/test_select.py::test_select_goes_back_to_top_after_filtering FAILED tests/test_examples.py::test_select_example - AttributeError: 'VSplit'... FAILED tests/test_examples.py::test_rawselect_example - AttributeError: 'VSpl... FAILED tests/test_examples.py::test_checkbox_example - AttributeError: 'VSpli... FAILED tests/test_examples.py::test_advanced_workflow_example - AttributeErro... FAILED tests/test_form.py::test_form_creation - AttributeError: 'VSplit' obje... FAILED tests/test_form.py::test_form_skips_questions - AttributeError: 'VSpli... FAILED tests/test_form.py::test_form_skips_questions_unsafe_ask - AttributeEr... FAILED tests/test_form.py::test_ask_should_catch_keyboard_exception - Attribu... ======================== 78 failed, 82 passed in 9.19s ========================= E: pybuild pybuild:389: test: plugin pyproject failed with: exit code=1: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_questionary/build; python3.13 -m pytest tests dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p 3.13 returned exit code 13 make: *** [debian/rules:8: binary] Error 25 dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2 --------------------------------------------------------------------------------

