GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GH-145278: freeze encodings (partially) and linecache by FFY00 · Pull Request #148347 · python/cpython

Conversation

@FFY00

@FFY00 FFY00 commented Apr 10, 2026 •
edited
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown
Member

GH-145279 re-do

  • Issue: Freeze modules used during startup #145278

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
@FFY00
pythonGH-145278: freeze encodings (partially) and linecache
719d17d
Signed-off-by: Filipe Laíns <[email protected]>
@FFY00
FFY00 requested review from AA-Turner, emmatyping, ericsnowcurrently and erlend-aasland as code owners April 10, 2026 16:51
@bedevere-app bedevere-app Bot added the awaiting core review label Apr 10, 2026
@bedevere-app bedevere-app Bot mentioned this pull request Apr 10, 2026
Freeze modules used during startup #145278
Closed
@FFY00 FFY00 added 🔨 test-with-buildbots Test PR w/ buildbots; report in status section and removed awaiting core review labels Apr 10, 2026
@bedevere-bot

bedevere-bot commented Apr 10, 2026

Copy link
Copy Markdown

🤖 New build scheduled with the buildbot fleet by @FFY00 for commit 719d17d 🤖

Results will be shown at:

https://buildbot.python.org/all/#/grid?branch=refs%2Fpull%2F148347%2Fmerge

If you want to schedule another build, you need to add the 🔨 test-with-buildbots label again.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@bedevere-bot bedevere-bot removed the 🔨 test-with-buildbots Test PR w/ buildbots; report in status section label Apr 10, 2026
@FFY00

FFY00 commented Apr 14, 2026

Copy link
Copy Markdown
Member Author

The raspbian buildbot failure is weird. Grasping straws, the only possible connection I can see is this PR touching the IO initialization.

Per previous Windows failure, it seems that when executing the encodings module, before it is finalized, trying to import a non-frozen submodule can cause failures. I don't see anything missing, but if the buildbot failure is indeed connected, my best guess is that this situation happens under the buildbot environment.

Since I cannot identify an actual connection here, I am gonna go ahead and merge, keeping an eye on the bug reports.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@FFY00
FFY00 merged commit 0012686 into python:main Apr 14, 2026
131 of 134 checks passed

Uh oh!

There was an error while loading. Please reload this page.

@bedevere-bot

bedevere-bot commented Apr 14, 2026

Copy link
Copy Markdown

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

Hi! The buildbot ARM Raspbian 3.x (tier-3) has failed when building commit 0012686.

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/424/builds/13416) and take a look at the build logs.
  4. Check if the failure is related to this commit (0012686) 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/424/builds/13416

Failed tests:

  • test.test_io.test_fileio

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

==

Click to see traceback logs
Traceback (most recent call last):
  File "/var/lib/buildbot/workers/3.x.gps-raspbian.nondebug/build/Lib/test/test_io/test_fileio.py", line 406, in check_readall
    self.assertIn(
    ~~~~~~~~~~~~~^
        fd_str,
        ^^^^^^^
        ev.args,
        ^^^^^^^^
        f"Looking for file descriptor in arguments|ev={ev}"
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
AssertionError: '3' not found in ['NULL', '135168', 'PROT_READ|PROT_WRITE', 'MAP_PRIVATE|MAP_ANONYMOUS', '-1', '0'] : Looking for file descriptor in arguments|ev=StraceEvent(syscall='mmap2', args=['NULL', '135168', 'PROT_READ|PROT_WRITE', 'MAP_PRIVATE|MAP_ANONYMOUS', '-1', '0'], returncode='0xf7490000')


Traceback (most recent call last):
  File "/var/lib/buildbot/workers/3.x.gps-raspbian.nondebug/build/Lib/test/test_io/test_fileio.py", line 406, in check_readall
    self.assertIn(
    ~~~~~~~~~~~~~^
        fd_str,
        ^^^^^^^
        ev.args,
        ^^^^^^^^
        f"Looking for file descriptor in arguments|ev={ev}"
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
AssertionError: '3' not found in ['NULL', '135168', 'PROT_READ|PROT_WRITE', 'MAP_PRIVATE|MAP_ANONYMOUS', '-1', '0'] : Looking for file descriptor in arguments|ev=StraceEvent(syscall='mmap2', args=['NULL', '135168', 'PROT_READ|PROT_WRITE', 'MAP_PRIVATE|MAP_ANONYMOUS', '-1', '0'], returncode='0xf7776000')


Traceback (most recent call last):
  File "/var/lib/buildbot/workers/3.x.gps-raspbian.nondebug/build/Lib/test/test_io/test_fileio.py", line 406, in check_readall
    self.assertIn(
    ~~~~~~~~~~~~~^
        fd_str,
        ^^^^^^^
        ev.args,
        ^^^^^^^^
        f"Looking for file descriptor in arguments|ev={ev}"
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
AssertionError: '3' not found in ['NULL', '135168', 'PROT_READ|PROT_WRITE', 'MAP_PRIVATE|MAP_ANONYMOUS', '-1', '0'] : Looking for file descriptor in arguments|ev=StraceEvent(syscall='mmap2', args=['NULL', '135168', 'PROT_READ|PROT_WRITE', 'MAP_PRIVATE|MAP_ANONYMOUS', '-1', '0'], returncode='0xf78a2000')


Traceback (most recent call last):
  File "/var/lib/buildbot/workers/3.x.gps-raspbian.nondebug/build/Lib/test/test_io/test_fileio.py", line 406, in check_readall
    self.assertIn(
    ~~~~~~~~~~~~~^
        fd_str,
        ^^^^^^^
        ev.args,
        ^^^^^^^^
        f"Looking for file descriptor in arguments|ev={ev}"
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
AssertionError: '3' not found in ['NULL', '135168', 'PROT_READ|PROT_WRITE', 'MAP_PRIVATE|MAP_ANONYMOUS', '-1', '0'] : Looking for file descriptor in arguments|ev=StraceEvent(syscall='mmap2', args=['NULL', '135168', 'PROT_READ|PROT_WRITE', 'MAP_PRIVATE|MAP_ANONYMOUS', '-1', '0'], returncode='0xf769e000')


Traceback (most recent call last):
  File "/var/lib/buildbot/workers/3.x.gps-raspbian.nondebug/build/Lib/test/test_io/test_fileio.py", line 406, in check_readall
    self.assertIn(
    ~~~~~~~~~~~~~^
        fd_str,
        ^^^^^^^
        ev.args,
        ^^^^^^^^
        f"Looking for file descriptor in arguments|ev={ev}"
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
AssertionError: '3' not found in ['NULL', '135168', 'PROT_READ|PROT_WRITE', 'MAP_PRIVATE|MAP_ANONYMOUS', '-1', '0'] : Looking for file descriptor in arguments|ev=StraceEvent(syscall='mmap2', args=['NULL', '135168', 'PROT_READ|PROT_WRITE', 'MAP_PRIVATE|MAP_ANONYMOUS', '-1', '0'], returncode='0xf77f6000')


Traceback (most recent call last):
  File "/var/lib/buildbot/workers/3.x.gps-raspbian.nondebug/build/Lib/test/test_io/test_fileio.py", line 406, in check_readall
    self.assertIn(
    ~~~~~~~~~~~~~^
        fd_str,
        ^^^^^^^
        ev.args,
        ^^^^^^^^
        f"Looking for file descriptor in arguments|ev={ev}"
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
AssertionError: '3' not found in ['NULL', '135168', 'PROT_READ|PROT_WRITE', 'MAP_PRIVATE|MAP_ANONYMOUS', '-1', '0'] : Looking for file descriptor in arguments|ev=StraceEvent(syscall='mmap2', args=['NULL', '135168', 'PROT_READ|PROT_WRITE', 'MAP_PRIVATE|MAP_ANONYMOUS', '-1', '0'], returncode='0xf7b30000')


Traceback (most recent call last):
  File "/var/lib/buildbot/workers/3.x.gps-raspbian.nondebug/build/Lib/test/test_io/test_fileio.py", line 406, in check_readall
    self.assertIn(
    ~~~~~~~~~~~~~^
        fd_str,
        ^^^^^^^
        ev.args,
        ^^^^^^^^
        f"Looking for file descriptor in arguments|ev={ev}"
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
AssertionError: '3' not found in ['NULL', '135168', 'PROT_READ|PROT_WRITE', 'MAP_PRIVATE|MAP_ANONYMOUS', '-1', '0'] : Looking for file descriptor in arguments|ev=StraceEvent(syscall='mmap2', args=['NULL', '135168', 'PROT_READ|PROT_WRITE', 'MAP_PRIVATE|MAP_ANONYMOUS', '-1', '0'], returncode='0xf76b0000')


Traceback (most recent call last):
  File "/var/lib/buildbot/workers/3.x.gps-raspbian.nondebug/build/Lib/test/test_io/test_fileio.py", line 406, in check_readall
    self.assertIn(
    ~~~~~~~~~~~~~^
        fd_str,
        ^^^^^^^
        ev.args,
        ^^^^^^^^
        f"Looking for file descriptor in arguments|ev={ev}"
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
AssertionError: '3' not found in ['NULL', '135168', 'PROT_READ|PROT_WRITE', 'MAP_PRIVATE|MAP_ANONYMOUS', '-1', '0'] : Looking for file descriptor in arguments|ev=StraceEvent(syscall='mmap2', args=['NULL', '135168', 'PROT_READ|PROT_WRITE', 'MAP_PRIVATE|MAP_ANONYMOUS', '-1', '0'], returncode='0xf79b0000')


Traceback (most recent call last):
  File "/var/lib/buildbot/workers/3.x.gps-raspbian.nondebug/build/Lib/test/test_io/test_fileio.py", line 406, in check_readall
    self.assertIn(
    ~~~~~~~~~~~~~^
        fd_str,
        ^^^^^^^
        ev.args,
        ^^^^^^^^
        f"Looking for file descriptor in arguments|ev={ev}"
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
AssertionError: '3' not found in ['NULL', '135168', 'PROT_READ|PROT_WRITE', 'MAP_PRIVATE|MAP_ANONYMOUS', '-1', '0'] : Looking for file descriptor in arguments|ev=StraceEvent(syscall='mmap2', args=['NULL', '135168', 'PROT_READ|PROT_WRITE', 'MAP_PRIVATE|MAP_ANONYMOUS', '-1', '0'], returncode='0xf74ca000')


Traceback (most recent call last):
  File "/var/lib/buildbot/workers/3.x.gps-raspbian.nondebug/build/Lib/test/test_io/test_fileio.py", line 406, in check_readall
    self.assertIn(
    ~~~~~~~~~~~~~^
        fd_str,
        ^^^^^^^
        ev.args,
        ^^^^^^^^
        f"Looking for file descriptor in arguments|ev={ev}"
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
AssertionError: '3' not found in ['NULL', '135168', 'PROT_READ|PROT_WRITE', 'MAP_PRIVATE|MAP_ANONYMOUS', '-1', '0'] : Looking for file descriptor in arguments|ev=StraceEvent(syscall='mmap2', args=['NULL', '135168', 'PROT_READ|PROT_WRITE', 'MAP_PRIVATE|MAP_ANONYMOUS', '-1', '0'], returncode='0xf7ae0000')


Traceback (most recent call last):
  File "/var/lib/buildbot/workers/3.x.gps-raspbian.nondebug/build/Lib/test/test_io/test_fileio.py", line 406, in check_readall
    self.assertIn(
    ~~~~~~~~~~~~~^
        fd_str,
        ^^^^^^^
        ev.args,
        ^^^^^^^^
        f"Looking for file descriptor in arguments|ev={ev}"
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
AssertionError: '3' not found in ['NULL', '135168', 'PROT_READ|PROT_WRITE', 'MAP_PRIVATE|MAP_ANONYMOUS', '-1', '0'] : Looking for file descriptor in arguments|ev=StraceEvent(syscall='mmap2', args=['NULL', '135168', 'PROT_READ|PROT_WRITE', 'MAP_PRIVATE|MAP_ANONYMOUS', '-1', '0'], returncode='0xf76ea000')


Traceback (most recent call last):
  File "/var/lib/buildbot/workers/3.x.gps-raspbian.nondebug/build/Lib/test/test_io/test_fileio.py", line 406, in check_readall
    self.assertIn(
    ~~~~~~~~~~~~~^
        fd_str,
        ^^^^^^^
        ev.args,
        ^^^^^^^^
        f"Looking for file descriptor in arguments|ev={ev}"
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
AssertionError: '3' not found in ['NULL', '135168', 'PROT_READ|PROT_WRITE', 'MAP_PRIVATE|MAP_ANONYMOUS', '-1', '0'] : Looking for file descriptor in arguments|ev=StraceEvent(syscall='mmap2', args=['NULL', '135168', 'PROT_READ|PROT_WRITE', 'MAP_PRIVATE|MAP_ANONYMOUS', '-1', '0'], returncode='0xf7a96000')
All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@vstinner

vstinner commented Apr 15, 2026

Copy link
Copy Markdown
Member

https://buildbot.python.org/#/builders/424/builds/13416

Example of test failure:

FAIL: test_syscalls_read (test.test_io.test_fileio.CAutoFileTests.test_syscalls_read) (name='open in binary mode')
Check set of system calls during common I/O patterns
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/var/lib/buildbot/workers/3.x.gps-raspbian.nondebug/build/Lib/test/test_io/test_fileio.py", line 406, in check_readall
    self.assertIn(
    ~~~~~~~~~~~~~^
        fd_str,
        ^^^^^^^
        ev.args,
        ^^^^^^^^
        f"Looking for file descriptor in arguments|ev={ev}"
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
AssertionError: '3' not found in ['NULL', '135168', 'PROT_READ|PROT_WRITE', 'MAP_PRIVATE|MAP_ANONYMOUS', '-1', '0'] : Looking for file descriptor in arguments|ev=StraceEvent(syscall='mmap2', args=['NULL', '135168', 'PROT_READ|PROT_WRITE', 'MAP_PRIVATE|MAP_ANONYMOUS', '-1', '0'], returncode='0xf769e000')

The test gets an unexpected mmap2(NULL, 135168, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) syscall. I suppose that it should be ignored.

cc @cmaloney

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@FFY00

FFY00 commented Apr 16, 2026

Copy link
Copy Markdown
Member Author

Yeah, looks like strace_helper.filter_memory is only filtering out mmap, but not mmap2.

vstinner reacted with thumbs up emoji
All reactions
  • 👍 1 reaction

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@FFY00

FFY00 commented Apr 16, 2026

Copy link
Copy Markdown
Member Author

To be clear, this test is checking for IO syscalls, which is not the case for that mmap2 call. It simply isn't being filtered out by strace_helper.filter_memory, so it shows up here unexpectedly. GH-148648 fixes strace_helper.filter_memory, also taking mmap2 into account.

vstinner and cmaloney reacted with thumbs up emoji
All reactions
  • 👍 2 reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

ljfp pushed a commit to ljfp/cpython that referenced this pull request Apr 25, 2026
@FFY00 @ljfp
pythonGH-145278: freeze encodings (partially) and linecache (python#1…
78c0693
…48347)
@chris-eibl chris-eibl mentioned this pull request Aug 11, 2026
test.pythoninfo fails on Windows in Azure CI #148750
Closed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

@ericsnowcurrently ericsnowcurrently Awaiting requested review from ericsnowcurrently ericsnowcurrently is a code owner
@erlend-aasland erlend-aasland Awaiting requested review from erlend-aasland erlend-aasland is a code owner
@AA-Turner AA-Turner Awaiting requested review from AA-Turner AA-Turner is a code owner
@emmatyping emmatyping Awaiting requested review from emmatyping emmatyping is a code owner

Uh oh!

There was an error while loading. Please reload this page.

Assignees

No one assigned

Labels

None yet

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

Uh oh!

There was an error while loading. Please reload this page.

3 participants

@FFY00 @bedevere-bot @vstinner
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.