Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

gh-141473: Speed up subprocess test_communicate_timeout_large_input long tail#149003

Merged
gpshead merged 1 commit into
python:mainpython/cpython:mainfrom
gpshead:fix/test-communicate-timeout-loopbackgpshead/cpython:fix/test-communicate-timeout-loopbackCopy head branch name to clipboard
Apr 26, 2026
Merged

gh-141473: Speed up subprocess test_communicate_timeout_large_input long tail#149003
gpshead merged 1 commit into
python:mainpython/cpython:mainfrom
gpshead:fix/test-communicate-timeout-loopbackgpshead/cpython:fix/test-communicate-timeout-loopbackCopy head branch name to clipboard

Conversation

@gpshead

@gpshead gpshead commented Apr 26, 2026

Copy link
Copy Markdown
Member

Replace the slow reader's 30s sleep with a parent-driven wake over a loopback socket so post-timeout communicate() doesn't block waiting for the child to wake on its own. Worst-case runtime: ~30s -> <1s.

Replace the slow reader's 30s sleep with a parent-driven wake over a
loopback socket so post-timeout communicate() doesn't block waiting
for the child to wake on its own. Worst-case runtime: ~30s -> <1s.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@gpshead gpshead self-assigned this Apr 26, 2026
@bedevere-app bedevere-app Bot added awaiting core review tests Tests in the Lib/test dir labels Apr 26, 2026
@gpshead gpshead enabled auto-merge (squash) April 26, 2026 03:46
@gpshead gpshead disabled auto-merge April 26, 2026 03:46
@gpshead gpshead enabled auto-merge (squash) April 26, 2026 03:47
@gpshead gpshead added needs backport to 3.13 bugs and security fixes needs backport to 3.14 bugs and security fixes labels Apr 26, 2026
@gpshead gpshead merged commit e1384cf into python:main Apr 26, 2026
58 checks passed
@miss-islington-app

Copy link
Copy Markdown

Thanks @gpshead for the PR 🌮🎉.. I'm working now to backport this PR to: 3.13, 3.14.
🐍🍒⛏🤖

@bedevere-app

bedevere-app Bot commented Apr 26, 2026

Copy link
Copy Markdown

GH-149004 is a backport of this pull request to the 3.14 branch.

@bedevere-app bedevere-app Bot removed the needs backport to 3.14 bugs and security fixes label Apr 26, 2026
@bedevere-app

bedevere-app Bot commented Apr 26, 2026

Copy link
Copy Markdown

GH-149005 is a backport of this pull request to the 3.13 branch.

@bedevere-app bedevere-app Bot removed the needs backport to 3.13 bugs and security fixes label Apr 26, 2026
gpshead added a commit that referenced this pull request Apr 26, 2026
…input long tail (GH-149003) (#149005)

gh-141473: Speed up subprocess test_communicate_timeout_large_input long tail (GH-149003)

gh-141473: Speed up test_communicate_timeout_large_input

Replace the slow reader's 30s sleep with a parent-driven wake over a
loopback socket so post-timeout communicate() doesn't block waiting
for the child to wake on its own. Worst-case runtime: ~30s -> <1s.
(cherry picked from commit e1384cf)

Co-authored-by: Gregory P. Smith <68491+gpshead@users.noreply.github.com>
gpshead added a commit that referenced this pull request Apr 26, 2026
…input long tail (GH-149003) (#149004)

gh-141473: Speed up subprocess test_communicate_timeout_large_input long tail (GH-149003)

gh-141473: Speed up test_communicate_timeout_large_input

Replace the slow reader's 30s sleep with a parent-driven wake over a
loopback socket so post-timeout communicate() doesn't block waiting
for the child to wake on its own. Worst-case runtime: ~30s -> <1s.
(cherry picked from commit e1384cf)

Co-authored-by: Gregory P. Smith <68491+gpshead@users.noreply.github.com>
@bedevere-bot

Copy link
Copy Markdown

⚠️⚠️⚠️ Buildbot failure ⚠️⚠️⚠️

Hi! The buildbot AMD64 Debian root 3.14 (tier-1) has failed when building commit 5770df4.

What do you need to do:

  1. Don't panic.
  2. Check the buildbot page in the devguide if you don't know what the buildbots are or how they work.
  3. Go to the page of the buildbot that failed (https://buildbot.python.org/#/builders/1742/builds/1164) and take a look at the build logs.
  4. Check if the failure is related to this commit (5770df4) or if it is a false positive.
  5. If the failure is related to this commit, please, reflect that on the issue and make a new Pull Request with a fix.

You can take a look at the buildbot page here:

https://buildbot.python.org/#/builders/1742/builds/1164

Failed tests:

  • test_tools
  • test.test_concurrent_futures.test_thread_pool

Failed subtests:

  • test_freeze_simple_script - test.test_tools.test_freeze.TestFreeze.test_freeze_simple_script

Summary of the results of the build (if available):

==

Click to see traceback logs
Traceback (most recent call last):
  File "/root/buildarea/3.14.angelico-debian-amd64/build/Lib/test/support/__init__.py", line 859, in gc_collect
    gc.collect()
ResourceWarning: unclosed file <_io.FileIO name=11 mode='wb' closefd=True>


Traceback (most recent call last):
  File "/root/buildarea/3.14.angelico-debian-amd64/build/Tools/freeze/freeze.py", line 494, in <module>
    main()
    ~~~~^^
  File "/root/buildarea/3.14.angelico-debian-amd64/build/Tools/freeze/freeze.py", line 362, in main
    mf.import_hook(mod)
    ~~~~~~~~~~~~~~^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 170, in import_hook
    q, tail = self.find_head_package(parent, name)
              ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 226, in find_head_package
    q = self.import_module(head, qname, parent)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 320, in import_module
    m = self.load_module(fqname, fp, pathname, stuff)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 354, in load_module
    self.scan_code(co, m)
    ~~~~~~~~~~~~~~^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 416, in scan_code
    self._safe_import_hook(name, m, fromlist, level=0)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 372, in _safe_import_hook
    self.import_hook(name, caller, level=level)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 170, in import_hook
    q, tail = self.find_head_package(parent, name)
              ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 226, in find_head_package
    q = self.import_module(head, qname, parent)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 320, in import_module
    m = self.load_module(fqname, fp, pathname, stuff)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 354, in load_module
    self.scan_code(co, m)
    ~~~~~~~~~~~~~~^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 416, in scan_code
    self._safe_import_hook(name, m, fromlist, level=0)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 372, in _safe_import_hook
    self.import_hook(name, caller, level=level)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 170, in _safe_import_hook
    q, tail = self.find_head_package(parent, name)
              ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 226, in find_head_package
    q = self.import_module(head, qname, parent)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 320, in import_module
    m = self.load_module(fqname, fp, pathname, stuff)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 354, in load_module
    self.scan_code(co, m)
    ~~~~~~~~~~~~~~^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 416, in scan_code
    self._safe_import_hook(name, m, fromlist, level=0)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 372, in _safe_import_hook
    self.import_hook(name, caller, level=level)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 170, in import_hook
    q, tail = self.find_head_package(parent, name)
              ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 226, in find_head_package
    q = self.import_module(head, qname, parent)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 320, in import_module
    m = self.load_module(fqname, fp, pathname, stuff)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 354, in load_module
    self.scan_code(co, m)
    ~~~~~~~~~~~~~~^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 416, in scan_code
    self._safe_import_hook(name, m, fromlist, level=0)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 372, in _safe_import_hook
    self.import_hook(name, caller, level=level)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 170, in import_hook
    q, tail = self.find_head_package(parent, name)
              ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 226, in find_head_package
    q = self.import_module(head, qname, parent)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 320, in import_module
    m = self.load_module(fqname, fp, pathname, stuff)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 354, in load_module
    self.scan_code(co, m)
    ~~~~~~~~~~~~~~^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 416, in scan_code
    self._safe_import_hook(name, m, fromlist, level=0)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 372, in _safe_import_hook
    self.import_hook(name, caller, level=level)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 170, in import_hook
    q, tail = self.find_head_package(parent, name)
              ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 226, in find_head_package
    q = self.import_module(head, qname, parent)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 320, in import_module
    m = self.load_module(fqname, fp, pathname, stuff)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 354, in load_module
    self.scan_code(co, m)
    ~~~~~~~~~~~~~~^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 449, in scan_code
    self.scan_code(c, m)
    ~~~~~~~~~~~~~~^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 416, in scan_code
    self._safe_import_hook(name, m, fromlist, level=0)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 372, in _safe_import_hook
    self.import_hook(name, caller, level=level)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 170, in import_hook
    q, tail = self.find_head_package(parent, name)
              ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 226, in find_head_package
    q = self.import_module(head, qname, parent)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 320, in import_module
    m = self.load_module(fqname, fp, pathname, stuff)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 354, in load_module
    self.scan_code(co, m)
    ~~~~~~~~~~~~~~^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 416, in scan_code
    self._safe_import_hook(name, m, fromlist, level=0)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 372, in _safe_import_hook
    self.import_hook(name, caller, level=level)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 170, in import_hook
    q, tail = self.find_head_package(parent, name)
              ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 226, in find_head_package
    q = self.import_module(head, qname, parent)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 320, in import_module
    m = self.load_module(fqname, fp, pathname, stuff)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 333, in load_module
    m = self.load_package(fqname, pathname)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 465, in load_package
    self.load_module(fqname, fp, buf, stuff)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 354, in load_module
    self.scan_code(co, m)
    ~~~~~~~~~~~~~~^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 416, in scan_code
    self._safe_import_hook(name, m, fromlist, level=0)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 372, in _safe_import_hook
    self.import_hook(name, caller, level=level)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 170, in import_hook
    q, tail = self.find_head_package(parent, name)
              ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 226, in find_head_package
    q = self.import_module(head, qname, parent)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 320, in import_module
    m = self.load_module(fqname, fp, pathname, stuff)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 354, in load_module
    self.scan_code(co, m)
    ~~~~~~~~~~~~~~^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 449, in scan_code
    self.scan_code(c, m)
    ~~~~~~~~~~~~~~^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 449, in scan_code
    self.scan_code(c, m)
    ~~~~~~~~~~~~~~^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 416, in scan_code
    self._safe_import_hook(name, m, fromlist, level=0)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 372, in _safe_import_hook
    self.import_hook(name, caller, level=level)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 170, in import_hook
    q, tail = self.find_head_package(parent, name)
              ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 226, in find_head_package
    q = self.import_module(head, qname, parent)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 320, in import_module
    m = self.load_module(fqname, fp, pathname, stuff)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 354, in load_module
    self.scan_code(co, m)
    ~~~~~~~~~~~~~~^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 416, in scan_code
    self._safe_import_hook(name, m, fromlist, level=0)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 372, in _safe_import_hook
    self.import_hook(name, caller, level=level)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 170, in import_hook
    q, tail = self.find_head_package(parent, name)
              ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 226, in find_head_package
    q = self.import_module(head, qname, parent)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 320, in import_module
    m = self.load_module(fqname, fp, pathname, stuff)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 354, in load_module
    self.scan_code(co, m)
    ~~~~~~~~~~~~~~^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 449, in scan_code
    self.scan_code(c, m)
    ~~~~~~~~~~~~~~^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 416, in scan_code
    self._safe_import_hook(name, m, fromlist, level=0)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 372, in _safe_import_hook
    self.import_hook(name, caller, level=level)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 170, in import_hook
    q, tail = self.find_head_package(parent, name)
              ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 226, in find_head_package
    q = self.import_module(head, qname, parent)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 320, in import_module
    m = self.load_module(fqname, fp, pathname, stuff)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 354, in load_module
    self.scan_code(co, m)
    ~~~~~~~~~~~~~~^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 416, in scan_code
    self._safe_import_hook(name, m, fromlist, level=0)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 372, in _safe_import_hook
    self.import_hook(name, caller, level=level)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 170, in import_hook
    q, tail = self.find_head_package(parent, name)
              ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 226, in find_head_package
    q = self.import_module(head, qname, parent)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 320, in import_module
    m = self.load_module(fqname, fp, pathname, stuff)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 354, in load_module
    self.scan_code(co, m)
    ~~~~~~~~~~~~~~^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 449, in scan_code
    self.scan_code(c, m)
    ~~~~~~~~~~~~~~^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 416, in scan_code
    self._safe_import_hook(name, m, fromlist, level=0)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 372, in _safe_import_hook
    self.import_hook(name, caller, level=level)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 170, in import_hook
    q, tail = self.find_head_package(parent, name)
              ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 226, in find_head_package
    q = self.import_module(head, qname, parent)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 320, in import_module
    m = self.load_module(fqname, fp, pathname, stuff)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 354, in load_module
    self.scan_code(co, m)
    ~~~~~~~~~~~~~~^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 416, in scan_code
    self._safe_import_hook(name, m, fromlist, level=0)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 372, in _safe_import_hook
    self.import_hook(name, caller, level=level)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 170, in import_hook
    q, tail = self.find_head_package(parent, name)
              ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 226, in find_head_package
    q = self.import_module(head, qname, parent)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 320, in import_module
    m = self.load_module(fqname, fp, pathname, stuff)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 333, in load_module
    m = self.load_package(fqname, pathname)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 465, in load_package
    self.load_module(fqname, fp, buf, stuff)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 354, in load_module
    self.scan_code(co, m)
    ~~~~~~~~~~~~~~^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 442, in scan_code
    self._safe_import_hook(parent.__name__, None, fromlist, level=0)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 387, in _safe_import_hook
    self.import_hook(name, caller, [sub], level=level)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 175, in import_hook
    self.ensure_fromlist(m, fromlist)
    ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 265, in ensure_fromlist
    submod = self.import_module(sub, subname, m)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 320, in import_module
    m = self.load_module(fqname, fp, pathname, stuff)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 354, in load_module
    self.scan_code(co, m)
    ~~~~~~~~~~~~~~^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 442, in scan_code
    self._safe_import_hook(parent.__name__, None, fromlist, level=0)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 387, in _safe_import_hook
    self.import_hook(name, caller, [sub], level=level)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 175, in import_hook
    self.ensure_fromlist(m, fromlist)
    ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 265, in ensure_fromlist
    submod = self.import_module(sub, subname, m)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 320, in import_module
    m = self.load_module(fqname, fp, pathname, stuff)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 354, in load_module
    self.scan_code(co, m)
    ~~~~~~~~~~~~~~^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 449, in scan_code
    self.scan_code(c, m)
    ~~~~~~~~~~~~~~^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 416, in scan_code
    self._safe_import_hook(name, m, fromlist, level=0)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 372, in _safe_import_hook
    self.import_hook(name, caller, level=level)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 170, in import_hook
    q, tail = self.find_head_package(parent, name)
              ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 226, in find_head_package
    q = self.import_module(head, qname, parent)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 320, in import_module
    m = self.load_module(fqname, fp, pathname, stuff)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 354, in load_module
    self.scan_code(co, m)
    ~~~~~~~~~~~~~~^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 416, in scan_code
    self._safe_import_hook(name, m, fromlist, level=0)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 372, in _safe_import_hook
    self.import_hook(name, caller, level=level)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 170, in import_hook
    q, tail = self.find_head_package(parent, name)
              ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 226, in find_head_package
    q = self.import_module(head, qname, parent)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 320, in import_module
    m = self.load_module(fqname, fp, pathname, stuff)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 354, in load_module
    self.scan_code(co, m)
    ~~~~~~~~~~~~~~^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 449, in scan_code
    self.scan_code(c, m)
    ~~~~~~~~~~~~~~^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 416, in scan_code
    self._safe_import_hook(name, m, fromlist, level=0)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 372, in _safe_import_hook
    self.import_hook(name, caller, level=level)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 170, in import_hook
    q, tail = self.find_head_package(parent, name)
              ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 226, in find_head_package
    q = self.import_module(head, qname, parent)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 320, in import_module
    m = self.load_module(fqname, fp, pathname, stuff)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 354, in load_module
    self.scan_code(co, m)
    ~~~~~~~~~~~~~~^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 449, in scan_code
    self.scan_code(c, m)
    ~~~~~~~~~~~~~~^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 449, in scan_code
    self.scan_code(c, m)
    ~~~~~~~~~~~~~~^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 416, in scan_code
    self._safe_import_hook(name, m, fromlist, level=0)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 372, in _safe_import_hook
    self.import_hook(name, caller, level=level)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 170, in import_hook
    q, tail = self.find_head_package(parent, name)
              ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 226, in find_head_package
    q = self.import_module(head, qname, parent)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 320, in import_module
    m = self.load_module(fqname, fp, pathname, stuff)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 354, in load_module
    self.scan_code(co, m)
    ~~~~~~~~~~~~~~^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 416, in scan_code
    self._safe_import_hook(name, m, fromlist, level=0)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 372, in _safe_import_hook
    self.import_hook(name, caller, level=level)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 170, in import_hook
    q, tail = self.find_head_package(parent, name)
              ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 226, in find_head_package
    q = self.import_module(head, qname, parent)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 320, in import_module
    m = self.load_module(fqname, fp, pathname, stuff)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 354, in load_module
    self.scan_code(co, m)
    ~~~~~~~~~~~~~~^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 416, in scan_code
    self._safe_import_hook(name, m, fromlist, level=0)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 372, in _safe_import_hook
    self.import_hook(name, caller, level=level)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 170, in import_hook
    q, tail = self.find_head_package(parent, name)
              ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 226, in find_head_package
    q = self.import_module(head, qname, parent)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 320, in import_module
    m = self.load_module(fqname, fp, pathname, stuff)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 354, in load_module
    self.scan_code(co, m)
    ~~~~~~~~~~~~~~^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 416, in scan_code
    self._safe_import_hook(name, m, fromlist, level=0)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 372, in _safe_import_hook
    self.import_hook(name, caller, level=level)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 170, in import_hook
    q, tail = self.find_head_package(parent, name)
              ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 226, in find_head_package
    q = self.import_module(head, qname, parent)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 320, in import_module
    m = self.load_module(fqname, fp, pathname, stuff)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 354, in load_module
    self.scan_code(co, m)
    ~~~~~~~~~~~~~~^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 416, in scan_code
    self._safe_import_hook(name, m, fromlist, level=0)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 372, in _safe_import_hook
    self.import_hook(name, caller, level=level)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 170, in import_hook
    q, tail = self.find_head_package(parent, name)
              ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 226, in find_head_package
    q = self.import_module(head, qname, parent)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 320, in import_module
    m = self.load_module(fqname, fp, pathname, stuff)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 333, in load_module
    m = self.load_package(fqname, pathname)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 465, in load_package
    self.load_module(fqname, fp, buf, stuff)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 354, in load_module
    self.scan_code(co, m)
    ~~~~~~~~~~~~~~^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 439, in scan_code
    self._safe_import_hook(name, m, fromlist, level=level)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 372, in _safe_import_hook
    self.import_hook(name, caller, level=level)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 170, in import_hook
    q, tail = self.find_head_package(parent, name)
              ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 226, in find_head_package
    q = self.import_module(head, qname, parent)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 320, in import_module
    m = self.load_module(fqname, fp, pathname, stuff)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 354, in load_module
    self.scan_code(co, m)
    ~~~~~~~~~~~~~~^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 416, in scan_code
    self._safe_import_hook(name, m, fromlist, level=0)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 372, in _safe_import_hook
    self.import_hook(name, caller, level=level)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 171, in import_hook
    m = self.load_tail(q, tail)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 248, in load_tail
    m = self.import_module(head, mname, m)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 320, in import_module
    m = self.load_module(fqname, fp, pathname, stuff)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 333, in load_module
    m = self.load_package(fqname, pathname)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 465, in load_package
    self.load_module(fqname, fp, buf, stuff)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 354, in load_module
    self.scan_code(co, m)
    ~~~~~~~~~~~~~~^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 449, in scan_code
    self.scan_code(c, m)
    ~~~~~~~~~~~~~~^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 439, in scan_code
    self._safe_import_hook(name, m, fromlist, level=level)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 372, in _safe_import_hook
    self.import_hook(name, caller, level=level)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 170, in import_hook
    q, tail = self.find_head_package(parent, name)
              ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 226, in find_head_package
    q = self.import_module(head, qname, parent)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 320, in import_module
    m = self.load_module(fqname, fp, pathname, stuff)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 354, in load_module
    self.scan_code(co, m)
    ~~~~~~~~~~~~~~^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 416, in scan_code
    self._safe_import_hook(name, m, fromlist, level=0)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 372, in _safe_import_hook
    self.import_hook(name, caller, level=level)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 170, in import_hook
    q, tail = self.find_head_package(parent, name)
              ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 226, in find_head_package
    q = self.import_module(head, qname, parent)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 320, in import_module
    m = self.load_module(fqname, fp, pathname, stuff)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 333, in load_module
    m = self.load_package(fqname, pathname)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 465, in load_package
    self.load_module(fqname, fp, buf, stuff)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 354, in load_module
    self.scan_code(co, m)
    ~~~~~~~~~~~~~~^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 442, in scan_code
    self._safe_import_hook(parent.__name__, None, fromlist, level=0)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 387, in _safe_import_hook
    self.import_hook(name, caller, [sub], level=level)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 175, in import_hook
    self.ensure_fromlist(m, fromlist)
    ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 265, in ensure_fromlist
    submod = self.import_module(sub, subname, m)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 320, in import_module
    m = self.load_module(fqname, fp, pathname, stuff)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 354, in load_module
    self.scan_code(co, m)
    ~~~~~~~~~~~~~~^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 442, in scan_code
    self._safe_import_hook(parent.__name__, None, fromlist, level=0)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 387, in _safe_import_hook
    self.import_hook(name, caller, [sub], level=level)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 175, in import_hook
    self.ensure_fromlist(m, fromlist)
    ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 265, in ensure_fromlist
    submod = self.import_module(sub, subname, m)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 320, in import_module
    m = self.load_module(fqname, fp, pathname, stuff)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 354, in load_module
    self.scan_code(co, m)
    ~~~~~~~~~~~~~~^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 449, in scan_code
    self.scan_code(c, m)
    ~~~~~~~~~~~~~~^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 449, in scan_code
    self.scan_code(c, m)
    ~~~~~~~~~~~~~~^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 442, in scan_code
    self._safe_import_hook(parent.__name__, None, fromlist, level=0)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 387, in _safe_import_hook
    self.import_hook(name, caller, [sub], level=level)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 175, in import_hook
    self.ensure_fromlist(m, fromlist)
    ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 265, in ensure_fromlist
    submod = self.import_module(sub, subname, m)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 320, in import_module
    m = self.load_module(fqname, fp, pathname, stuff)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 354, in load_module
    self.scan_code(co, m)
    ~~~~~~~~~~~~~~^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 449, in scan_code
    self.scan_code(c, m)
    ~~~~~~~~~~~~~~^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 416, in scan_code
    self._safe_import_hook(name, m, fromlist, level=0)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 372, in _safe_import_hook
    self.import_hook(name, caller, level=level)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 170, in import_hook
    q, tail = self.find_head_package(parent, name)
              ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 226, in find_head_package
    q = self.import_module(head, qname, parent)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 320, in import_module
    m = self.load_module(fqname, fp, pathname, stuff)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 354, in load_module
    self.scan_code(co, m)
    ~~~~~~~~~~~~~~^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 449, in scan_code
    self.scan_code(c, m)
    ~~~~~~~~~~~~~~^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 416, in scan_code
    self._safe_import_hook(name, m, fromlist, level=0)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 372, in _safe_import_hook
    self.import_hook(name, caller, level=level)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 170, in import_hook
    q, tail = self.find_head_package(parent, name)
              ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 226, in find_head_package
    q = self.import_module(head, qname, parent)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 320, in import_module
    m = self.load_module(fqname, fp, pathname, stuff)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 333, in load_module
    m = self.load_package(fqname, pathname)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 465, in load_package
    self.load_module(fqname, fp, buf, stuff)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 354, in load_module
    self.scan_code(co, m)
    ~~~~~~~~~~~~~~^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 416, in scan_code
    self._safe_import_hook(name, m, fromlist, level=0)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 372, in _safe_import_hook
    self.import_hook(name, caller, level=level)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 170, in import_hook
    q, tail = self.find_head_package(parent, name)
              ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 226, in find_head_package
    q = self.import_module(head, qname, parent)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 320, in import_module
    m = self.load_module(fqname, fp, pathname, stuff)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 333, in load_module
    m = self.load_package(fqname, pathname)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 465, in load_package
    self.load_module(fqname, fp, buf, stuff)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 354, in load_module
    self.scan_code(co, m)
    ~~~~~~~~~~~~~~^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 439, in scan_code
    self._safe_import_hook(name, m, fromlist, level=level)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 372, in _safe_import_hook
    self.import_hook(name, caller, level=level)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 170, in import_hook
    q, tail = self.find_head_package(parent, name)
              ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 226, in find_head_package
    q = self.import_module(head, qname, parent)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 320, in import_module
    m = self.load_module(fqname, fp, pathname, stuff)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 354, in load_module
    self.scan_code(co, m)
    ~~~~~~~~~~~~~~^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 449, in scan_code
    self.scan_code(c, m)
    ~~~~~~~~~~~~~~^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 449, in scan_code
    self.scan_code(c, m)
    ~~~~~~~~~~~~~~^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 405, in scan_code
    for what, args in scanner(co):
                      ~~~~~~~^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/modulefinder.py", line 396, in scan_opcodes
    for name, level, fromlist in dis._find_imports(co):
                                 ~~~~~~~~~~~~~~~~~^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/dis.py", line 1006, in _find_imports
    opargs = [(op, arg) for _, _, op, arg in _unpack_opargs(co.co_code)
                                             ~~~~~~~~~~~~~~^^^^^^^^^^^^
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/dis.py", line 944, in _unpack_opargs
    deop = _deoptop(op)
  File "/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/lib/python3.14/dis.py", line 216, in _deoptop
    return _all_opmap[deoptmap[name]] if name in deoptmap else op
                      ~~~~~~~~^^^^^^
KeyError: 'LOAD_ATTR'


Traceback (most recent call last):
  File "/root/buildarea/3.14.angelico-debian-amd64/build/Lib/test/test_tools/test_freeze.py", line 35, in test_freeze_simple_script
    executable = helper.freeze(python, scriptfile, outdir)
  File "/root/buildarea/3.14.angelico-debian-amd64/build/Tools/freeze/test/freeze.py", line 169, in freeze
    _run_quiet([python, '-E', FREEZE, '-o', outdir, scriptfile], cwd=outdir)
    ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/buildarea/3.14.angelico-debian-amd64/build/Tools/freeze/test/freeze.py", line 35, in _run_quiet
    return subprocess.run(
           ~~~~~~~~~~~~~~^
        cmd,
        ^^^^
    ...<3 lines>...
        check=True,
        ^^^^^^^^^^^
    )
    ^
  File "/root/buildarea/3.14.angelico-debian-amd64/build/Lib/subprocess.py", line 578, in run
    raise CalledProcessError(retcode, process.args,
                             output=stdout, stderr=stderr)
subprocess.CalledProcessError: Command '['/tmp/test_python_hmjt8a18/tmpvlxh32ch/python-installation/bin/python3', '-E', '/root/buildarea/3.14.angelico-debian-amd64/build/Tools/freeze/freeze.py', '-o', '/tmp/test_python_hmjt8a18/tmpvlxh32ch', '/tmp/test_python_hmjt8a18/tmpvlxh32ch/app.py']' returned non-zero exit status 1.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

skip news tests Tests in the Lib/test dir

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

Morty Proxy This is a proxified and sanitized view of the page, visit original site.