nathanwilliams-ct opened a new issue, #2180: URL: https://github.com/apache/buildstream/issues/2180
See: https://gitlab.com/BuildStream/buildstream-docker-images/-/merge_requests/238#note_3715370970 TLDR from matrix: CI failing because the latest fedora 43 container had python 3.14.2, and now it's 3.14.7, and buildstream doesn't work with 3.14.7? Looks like [!240 (merged)](https://gitlab.com/BuildStream/buildstream-docker-images/-/merge_requests/240) is potential fix, to later fix Buildstream compatibility with 3.14.7 Which means this MR is blocked until [!240 (merged)](https://github.com/BuildStream/buildstream-docker-images/-/merge_requests/240) or other MR fixes the CI job. Interesting running the test locally against Buildstream master, we don't hit the same failure with python 3.14.7 $ uvx --python 3.14.7 tox -e py314 run -- tests/integration/interactive_build.py::test_failed_build_log --no-cov --integration *snip setup* ===================================================================================== test session starts ====================================================================================== platform linux -- Python 3.14.7, pytest-9.0.3, pluggy-1.6.0 -- /var/home/nathanwilliams/buildstream/.tox/py314/bin/python cachedir: .tox/py314/.pytest_cache rootdir: /var/home/nathanwilliams/buildstream configfile: setup.cfg plugins: xdist-3.8.0, timeout-2.4.0, env-1.6.0, datafiles-3.0.1, cov-7.1.0 timeout: 1800.0s timeout method: signal timeout func_only: False collected 1 item tests/integration/interactive_build.py::test_failed_build_log[interactive/failed-build.bst] PASSED [100%] ===================================================================================== slowest 20 durations ===================================================================================== 9.05s call tests/integration/interactive_build.py::test_failed_build_log[interactive/failed-build.bst] 0.08s setup tests/integration/interactive_build.py::test_failed_build_log[interactive/failed-build.bst] (1 durations < 0.005s hidden. Use -vv to show these durations.) ====================================================================================== 1 passed in 9.18s ======================================================================================= *snip teardown* compared to: https://gitlab.com/BuildStream/buildstream-docker-images/-/jobs/16010720616#L3798 Interesting. Did you try it without the console? (e.g. tox ... | cat) Dead: $ uvx --python 3.14.7 tox -e py314 run -- tests/integration/interactive_build.py::test_failed_build_log --no-cov --integration | cat *snip setup* ============================= test session starts ============================== platform linux -- Python 3.14.7, pytest-9.0.3, pluggy-1.6.0 -- /var/home/nathanwilliams/buildstream/.tox/py314/bin/python cachedir: .tox/py314/.pytest_cache rootdir: /var/home/nathanwilliams/buildstream configfile: setup.cfg plugins: xdist-3.8.0, timeout-2.4.0, env-1.6.0, datafiles-3.0.1, cov-7.1.0 timeout: 1800.0s timeout method: signal timeout func_only: False collecting ... collected 1 item tests/integration/interactive_build.py::test_failed_build_log[interactive/failed-build.bst] FAILED [100%] =================================== FAILURES =================================== _____________ test_failed_build_log[interactive/failed-build.bst] ______________ element_name = 'interactive/failed-build.bst' build_session = <pexpect.pty_spawn.spawn object at 0x7fcd1ccef8c0> @pytest.mark.skipif(not HAVE_SANDBOX, reason="Only available with a functioning sandbox") @pytest.mark.datafiles(DATA_DIR) @pytest.mark.parametrize("element_name", ["interactive/failed-build.bst"]) def test_failed_build_log(element_name, build_session): build_session.expect_exact("Choice: [continue]:", timeout=PEXPECT_TIMEOUT_LONG) build_session.sendline("log") # Send a few carriage returns to get to the end of the pager build_session.sendline(os.linesep * 20) # Assert that we got something from the logs build_session.expect("FAILURE interactive/failed-build.bst: Running (build-)?commands") # Quit the pager build_session.send("q") # Quit the session > build_session.expect_exact("Choice: [continue]:") tests/integration/interactive_build.py:108: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ .tox/py314/lib/python3.14/site-packages/pexpect/spawnbase.py:432: in expect_exact return exp.expect_loop(timeout) ^^^^^^^^^^^^^^^^^^^^^^^^ .tox/py314/lib/python3.14/site-packages/pexpect/expect.py:179: in expect_loop return self.eof(e) ^^^^^^^^^^^ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <pexpect.expect.Expecter object at 0x7fcd1cb8ca50> err = EOF('End Of File (EOF). Exception style platform.') def eof(self, err=None): spawn = self.spawn spawn.before = spawn._before.getvalue() spawn._buffer = spawn.buffer_type() spawn._before = spawn.buffer_type() spawn.after = EOF index = self.searcher.eof_index if index >= 0: spawn.match = EOF spawn.match_index = index return index else: spawn.match = None spawn.match_index = None msg = str(spawn) msg += '\nsearcher: %s' % self.searcher if err is not None: msg = str(err) + '\n' + msg exc = EOF(msg) exc.__cause__ = None # in Python 3.x we can use "raise exc from None" > raise exc E pexpect.exceptions.EOF: End Of File (EOF). Exception style platform. E <pexpect.pty_spawn.spawn object at 0x7fcd1ccef8c0> E command: /var/home/nathanwilliams/buildstream/.tox/py314/bin/bst E args: ['/var/home/nathanwilliams/buildstream/.tox/py314/bin/bst', '--directory', '/var/home/nathanwilliams/buildstream/.tox/py314/tmp/test_failed_build_log_interact0', '--config', '/var/home/nathanwilliams/buildstream/.tox/py314/tmp/test_failed_build_log_interact0/buildstream.conf', '--no-colors', 'build', 'interactive/failed-build.bst'] E buffer (last 100 chars): b'' E before (last 100 chars): b' Queue: processed 3, skipped 0, failed 0 \r\n Build Queue: processed 2, skipped 0, failed 1 \r\n\r\n\r\nq' E after: <class 'pexpect.exceptions.EOF'> E match: None E match_index: None E exitstatus: None E flag_eof: True E pid: 67734 E child_fd: 13 E closed: False E timeout: 30 E delimiter: <class 'pexpect.exceptions.EOF'> E logfile: None E logfile_read: None E logfile_send: None E maxread: 2000 E ignorecase: False E searchwindowsize: None E delaybeforesend: 0.05 E delayafterclose: 0.1 E delayafterterminate: 0.1 E searcher: searcher_string: E 0: b'Choice: [continue]:' .tox/py314/lib/python3.14/site-packages/pexpect/expect.py:122: EOF ============================= slowest 20 durations ============================= 8.79s call tests/integration/interactive_build.py::test_failed_build_log[interactive/failed-build.bst] 0.09s setup tests/integration/interactive_build.py::test_failed_build_log[interactive/failed-build.bst] (1 durations < 0.005s hidden. Use -vv to show these durations.) =========================== short test summary info ============================ FAILED tests/integration/interactive_build.py::test_failed_build_log[interactive/failed-build.bst] ============================== 1 failed in 9.01s =============================== *snip teardown* Fails same way in 3.14.6, 3.14.5, 3.14.4, 3.14.3 and 3.14.2 A change in buildstream? -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
