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-118908: Use __main__ for the default PyREPL namespace by ambv · Pull Request #121054 · python/cpython

Conversation

@ambv

@ambv ambv commented Jun 26, 2024 •
edited by bedevere-app Bot
Loading

Uh oh!

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

Copy link
Copy Markdown
Contributor

This allows for PYTHONSTARTUP to execute in the same namespace that the interpreter later operates in.

Looks like Eugene was right in his initial implementation of the fix. We can't create a synthetic namespace because then Modules/main.c:pymain_run_startup is running in a namespace that isn't used later. There's probably more edge cases that using a synthetic namespace created; in Python __main__ is clearly expected as the namespace for interaction.

Since -i exposes a different module as __main__, I see no reason why regular REPL execution shouldn't expose __file__ pointing at _pyrepl.__main__. Therefore, I adapted the test.

  • Issue: New REPL exposes its internal imports/definitions to top-level environment #118908

Sorry, something went wrong.

Uh oh!

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

All reactions
@ambv
pythongh-118908: Use __main__ for the default PyREPL namespace
3f82ebc
This allows for PYTHONSTARTUP to execute in the right namespace.
@ambv
ambv requested review from lysnikolaou and pablogsal as code owners June 26, 2024 16:12
@bedevere-app bedevere-app Bot mentioned this pull request Jun 26, 2024
New REPL exposes its internal imports/definitions to top-level environment #118908
Open
@bedevere-app bedevere-app Bot added the awaiting core review label Jun 26, 2024
@ambv ambv added the skip news label Jun 26, 2024
ambv
ambv commented Jun 26, 2024
View reviewed changes
Comment thread Lib/_pyrepl/main.py
import tokenize
with tokenize.open(startup_path) as f:
startup_code = compile(f.read(), startup_path, "exec")
exec(startup_code, namespace)

@ambv ambv Jun 26, 2024 •
edited
Loading

Uh oh!

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

Copy link
Copy Markdown
Contributor Author

There was a problem hiding this comment.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note: manual PYTHONSTARTUP also executes in our custom namespace, otherwise it doesn't work. That's why namespace extraction from the optional mainmodule passed happens here already.

Sorry, something went wrong.

Uh oh!

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

All reactions
ambv
ambv commented Jun 26, 2024
View reviewed changes
Comment thread Lib/test/test_pyrepl/test_pyrepl.py
# if `__main__` is a cached .pyc file but there's no .py source file
case4 = f"{pre}, '__cached__', '__doc__', {post}" in output

self.assertTrue(case1 or case2 or case3 or case4, output)

@ambv ambv Jun 26, 2024

Copy link
Copy Markdown
Contributor Author

There was a problem hiding this comment.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LMK if you know a more elegant solution for "one of these needs to pass".

Sorry, something went wrong.

Uh oh!

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

All reactions

@lysnikolaou lysnikolaou Jun 26, 2024

Copy link
Copy Markdown
Member

There was a problem hiding this comment.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I guess this is what I would have done, but I like yours better.

cases = [
    f"{pre}, '__doc__', {post}",  # if `__main__` is not a file (impossible with pyrepl)
    ...
]
self.assertTrue(any(case in output for case in cases), output)

Sorry, something went wrong.

Uh oh!

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

All reactions
lysnikolaou
lysnikolaou reviewed Jun 26, 2024
View reviewed changes
Comment thread Lib/_pyrepl/main.py Resolved

Uh oh!

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

Comment thread Lib/test/test_pyrepl/test_pyrepl.py
# if `__main__` is a cached .pyc file but there's no .py source file
case4 = f"{pre}, '__cached__', '__doc__', {post}" in output

self.assertTrue(case1 or case2 or case3 or case4, output)

@lysnikolaou lysnikolaou Jun 26, 2024

Copy link
Copy Markdown
Member

There was a problem hiding this comment.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I guess this is what I would have done, but I like yours better.

cases = [
    f"{pre}, '__doc__', {post}",  # if `__main__` is not a file (impossible with pyrepl)
    ...
]
self.assertTrue(any(case in output for case in cases), output)

Sorry, something went wrong.

Uh oh!

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

All reactions
lysnikolaou
lysnikolaou approved these changes Jun 26, 2024
View reviewed changes

@lysnikolaou lysnikolaou left a comment

Copy link
Copy Markdown
Member

There was a problem hiding this comment.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

Sorry, something went wrong.

Uh oh!

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

All reactions
@bedevere-app bedevere-app Bot added awaiting merge and removed awaiting core review labels Jun 26, 2024
@lysnikolaou lysnikolaou added needs backport to 3.13 only security fixes topic-repl Related to the interactive shell labels Jun 26, 2024
@ambv
ambv merged commit d611c4c into python:main Jun 26, 2024
@bedevere-app bedevere-app Bot removed the awaiting merge label Jun 26, 2024
@miss-islington-app

miss-islington-app Bot commented Jun 26, 2024

Copy link
Copy Markdown

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

All reactions

Sorry, something went wrong.

Uh oh!

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

miss-islington pushed a commit to miss-islington/cpython that referenced this pull request Jun 26, 2024
@ambv @miss-islington
pythongh-118908: Use __main__ for the default PyREPL namespace (pytho…
34c417c
…nGH-121054)

(cherry picked from commit d611c4c)

Co-authored-by: Łukasz Langa <[email protected]>
@bedevere-app

bedevere-app Bot commented Jun 26, 2024

Copy link
Copy Markdown

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

All reactions

Sorry, something went wrong.

Uh oh!

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

@bedevere-app bedevere-app Bot removed the needs backport to 3.13 only security fixes label Jun 26, 2024
@ambv ambv mentioned this pull request Jun 26, 2024
gh-120678: pyrepl: Include globals from modules passed with -i #120904
Merged
@bedevere-bot

bedevere-bot commented Jun 26, 2024

Copy link
Copy Markdown

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

Hi! The buildbot s390x SLES 3.x has failed when building commit d611c4c.

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/all/#builders/540/builds/9345) and take a look at the build logs.
  4. Check if the failure is related to this commit (d611c4c) 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/all/#builders/540/builds/9345

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

Click to see traceback logs
remote: Enumerating objects: 18, done.        
remote: Counting objects:   5% (1/18)        
remote: Counting objects:  11% (2/18)        
remote: Counting objects:  16% (3/18)        
remote: Counting objects:  22% (4/18)        
remote: Counting objects:  27% (5/18)        
remote: Counting objects:  33% (6/18)        
remote: Counting objects:  38% (7/18)        
remote: Counting objects:  44% (8/18)        
remote: Counting objects:  50% (9/18)        
remote: Counting objects:  55% (10/18)        
remote: Counting objects:  61% (11/18)        
remote: Counting objects:  66% (12/18)        
remote: Counting objects:  72% (13/18)        
remote: Counting objects:  77% (14/18)        
remote: Counting objects:  83% (15/18)        
remote: Counting objects:  88% (16/18)        
remote: Counting objects:  94% (17/18)        
remote: Counting objects: 100% (18/18)        
remote: Counting objects: 100% (18/18), done.        
remote: Compressing objects:  25% (1/4)        
remote: Compressing objects:  50% (2/4)        
remote: Compressing objects:  75% (3/4)        
remote: Compressing objects: 100% (4/4)        
remote: Compressing objects: 100% (4/4), done.        
remote: Total 10 (delta 7), reused 8 (delta 6), pack-reused 0        
From https://github.com/python/cpython
 * branch                    main       -> FETCH_HEAD
Note: switching to 'd611c4c8e9893c0816969e19ab6ca4992a3a15e3'.

You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by switching back to a branch.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -c with the switch command. Example:

  git switch -c <new-branch-name>

Or undo this operation with:

  git switch -

Turn off this advice by setting config variable advice.detachedHead to false

HEAD is now at d611c4c8e98 gh-118908: Use __main__ for the default PyREPL namespace (#121054)
Switched to and reset branch 'main'

configure: WARNING: no system libmpdecimal found; falling back to bundled libmpdecimal (deprecated and scheduled for removal in Python 3.15)

['<testsuite start="2024-06-26 19:12:43.305593" tests="117" errors="0" failures="1"><testcase name="test.test_pyrepl.test_input.KeymapTranslatorTests.test_empty" status="run" result="completed" time="0.000078" /><testcase name="test.test_pyrepl.test_input.KeymapTranslatorTests.test_push_character_key" status="run" result="completed" time="0.000068" /><testcase name="test.test_pyrepl.test_input.KeymapTranslatorTests.test_push_character_key_with_stack" status="run" result="completed" time="0.000078" /><testcase name="test.test_pyrepl.test_input.KeymapTranslatorTests.test_push_invalid_key" status="run" result="completed" time="0.000050" /><testcase name="test.test_pyrepl.test_input.KeymapTranslatorTests.test_push_invalid_key_with_stack" status="run" result="completed" time="0.000056" /><testcase name="test.test_pyrepl.test_input.KeymapTranslatorTests.test_push_invalid_key_with_unicode_category" status="run" result="completed" time="0.000046" /><testcase name="test.test_pyrepl.test_input.KeymapTranslatorTests.test_push_multiple_keys" status="run" result="completed" time="0.000050" /><testcase name="test.test_pyrepl.test_input.KeymapTranslatorTests.test_push_single_key" status="run" result="completed" time="0.000047" /><testcase name="test.test_pyrepl.test_input.KeymapTranslatorTests.test_push_transition_key" status="run" result="completed" time="0.000047" /><testcase name="test.test_pyrepl.test_input.KeymapTranslatorTests.test_push_transition_key_interrupted" status="run" result="completed" time="0.000050" /><testcase name="test.test_pyrepl.test_interact.TestSimpleInteract.test_empty" status="run" result="completed" time="0.000079" /><testcase name="test.test_pyrepl.test_interact.TestSimpleInteract.test_multiple_statements" status="run" result="completed" time="0.001006" /><testcase name="test.test_pyrepl.test_interact.TestSimpleInteract.test_multiple_statements_output" status="run" result="completed" time="0.000235" /><testcase name="test.test_pyrepl.test_interact.TestSimpleInteract.test_no_active_future" status="run" result="completed" time="0.000210" /><testcase name="test.test_pyrepl.test_interact.TestSimpleInteract.test_runsource_compiles_and_runs_code" status="run" result="completed" time="0.013731" /><testcase name="test.test_pyrepl.test_interact.TestSimpleInteract.test_runsource_returns_false_for_failed_compilation" status="run" result="completed" time="0.000176" /><testcase name="test.test_pyrepl.test_interact.TestSimpleInteract.test_runsource_returns_false_for_successful_compilation" status="run" result="completed" time="0.000125" /><testcase name="test.test_pyrepl.test_interact.TestSimpleInteract.test_runsource_shows_syntax_error_for_failed_compilation" status="run" result="completed" time="0.000911" /><testcase name="test.test_pyrepl.test_keymap.TestCompileKeymap.test_clashing_definitions" status="run" result="completed" time="0.000064" /><testcase name="test.test_pyrepl.test_keymap.TestCompileKeymap.test_empty_keymap" status="run" result="completed" time="0.000036" /><testcase name="test.test_pyrepl.test_keymap.TestCompileKeymap.test_empty_value" status="run" result="completed" time="0.000038" /><testcase name="test.test_pyrepl.test_keymap.TestCompileKeymap.test_multiple_empty_values" status="run" result="completed" time="0.000037" /><testcase name="test.test_pyrepl.test_keymap.TestCompileKeymap.test_multiple_keymaps" status="run" result="completed" time="0.000036" /><testcase name="test.test_pyrepl.test_keymap.TestCompileKeymap.test_nested_keymap" status="run" result="completed" time="0.000036" /><testcase name="test.test_pyrepl.test_keymap.TestCompileKeymap.test_nested_multiple_keymaps" status="run" result="completed" time="0.000036" /><testcase name="test.test_pyrepl.test_keymap.TestCompileKeymap.test_non_bytes_key" status="run" result="completed" time="0.000047" /><testcase name="test.test_pyrepl.test_keymap.TestCompileKeymap.test_single_keymap" status="run" result="completed" time="0.000035" /><testcase name="test.test_pyrepl.test_keymap.TestParseKeys.test_combinations" status="run" result="completed" time="0.000065" /><testcase name="test.test_pyrepl.test_keymap.TestParseKeys.test_control_sequences" status="run" result="completed" time="0.000032" /><testcase name="test.test_pyrepl.test_keymap.TestParseKeys.test_escape_sequences" status="run" result="completed" time="0.000300" /><testcase name="test.test_pyrepl.test_keymap.TestParseKeys.test_index_errors" status="run" result="completed" time="0.000071" /><testcase name="test.test_pyrepl.test_keymap.TestParseKeys.test_keynames" status="run" result="completed" time="0.000924" /><testcase name="test.test_pyrepl.test_keymap.TestParseKeys.test_keyspec_errors" status="run" result="completed" time="0.000337" /><testcase name="test.test_pyrepl.test_keymap.TestParseKeys.test_meta_sequences" status="run" result="completed" time="0.000046" /><testcase name="test.test_pyrepl.test_keymap.TestParseKeys.test_single_character" status="run" result="completed" time="0.001267" /><testcase name="test.test_pyrepl.test_pyrepl.TestCursorPosition.test_cursor_position_after_wrap_and_move_up" status="run" result="completed" time="0.008279" /><testcase name="test.test_pyrepl.test_pyrepl.TestCursorPosition.test_cursor_position_double_width_character" status="run" result="completed" time="0.004290" /><testcase name="test.test_pyrepl.test_pyrepl.TestCursorPosition.test_cursor_position_double_width_character_move_left" status="run" result="completed" time="0.004361" /><testcase name="test.test_pyrepl.test_pyrepl.TestCursorPosition.test_cursor_position_double_width_character_move_left_right" status="run" result="completed" time="0.005104" /><testcase name="test.test_pyrepl.test_pyrepl.TestCursorPosition.test_cursor_position_double_width_characters_move_up" status="run" result="completed" time="0.066151" /><testcase name="test.test_pyrepl.test_pyrepl.TestCursorPosition.test_cursor_position_double_width_characters_move_up_down" status="run" result="completed" time="0.010166" /><testcase name="test.test_pyrepl.test_pyrepl.TestCursorPosition.test_cursor_position_move_down_to_eol" status="run" result="completed" time="0.010746" /><testcase name="test.test_pyrepl.test_pyrepl.TestCursorPosition.test_cursor_position_move_up_to_eol" status="run" result="completed" time="0.010677" /><testcase name="test.test_pyrepl.test_pyrepl.TestCursorPosition.test_cursor_position_multiple_double_width_characters_move_left" status="run" result="completed" time="0.007667" /><testcase name="test.test_pyrepl.test_pyrepl.TestCursorPosition.test_cursor_position_multiple_mixed_lines_move_up" status="run" result="completed" time="0.068500" /><testcase name="test.test_pyrepl.test_pyrepl.TestCursorPosition.test_cursor_position_simple_character" status="run" result="completed" time="0.003933" /><testcase name="test.test_pyrepl.test_pyrepl.TestCursorPosition.test_down_arrow_end_of_input" status="run" result="completed" time="0.007778" /><testcase name="test.test_pyrepl.test_pyrepl.TestCursorPosition.test_left_arrow_simple" status="run" result="completed" time="0.005568" /><testcase name="test.test_pyrepl.test_pyrepl.TestCursorPosition.test_right_arrow_end_of_line" status="run" result="completed" time="0.018375" /><testcase name="test.test_pyrepl.test_pyrepl.TestCursorPosition.test_up_arrow_simple" status="run" result="completed" time="0.007641" /><testcase name="test.test_pyrepl.test_pyrepl.TestMain.test_dumb_terminal_exits_cleanly" status="run" result="completed" time="0.616455" /><testcase name="test.test_pyrepl.test_pyrepl.TestMain.test_exposed_globals_in_repl" status="run" result="completed" time="0.599804"><system-out /><system-err /><failure type="AssertionError" message="AssertionError: False is not true : sorted(dir())&#13;&#10;exit&#13;&#10;&#10;Python 3.14.0a0 (heads/main:d611c4c8e98, Jun 26 2024, 15:07:05) [GCC 7.5.0] on linux&#13;&#10;Type &quot;help&quot;, &quot;copyright&quot;, &quot;credits&quot; or &quot;license&quot; for more information.&#13;&#10;&#10;\x1b[?2004h\x1b[?1h\x1b=\x1b[?25l\x1b[1A&#10;\x1b[1;35m&gt;&gt;&gt; \x1b[0m\x1b[4D\x1b[?12l\x1b[?25h\x1b[4C\x1b[?25l\x1b[4D\x1b[1;35m&gt;&gt;&gt; \x1b[0ms\x1b[5D\x1b[?12l\x1b[?25h\x1b[5C\x1b[?25l\x1b[5D\x1b[1;35m&gt;&gt;&gt; \x1b[0mso\x1b[6D\x1b[?12l\x1b[?25h\x1b[6C\x1b[?25l\x1b[6D\x1b[1;35m&gt;&gt;&gt; \x1b[0msor\x1b[7D\x1b[?12l\x1b[?25h\x1b[7C\x1b[?25l\x1b[7D\x1b[1;35m&gt;&gt;&gt; \x1b[0msort\x1b[8D\x1b[?12l\x1b[?25h\x1b[8C\x1b[?25l\x1b[8D\x1b[1;35m&gt;&gt;&gt; \x1b[0msorte\x1b[9D\x1b[?12l\x1b[?25h\x1b[9C\x1b[?25l\x1b[9D\x1b[1;35m&gt;&gt;&gt; \x1b[0msorted\x1b[10D\x1b[?12l\x1b[?25h\x1b[10C\x1b[?25l\x1b[10D\x1b[1;35m&gt;&gt;&gt; \x1b[0msorted(\x1b[11D\x1b[?12l\x1b[?25h\x1b[11C\x1b[?25l\x1b[11D\x1b[1;35m&gt;&gt;&gt; \x1b[0msorted(d\x1b[12D\x1b[?12l\x1b[?25h\x1b[12C\x1b[?25l\x1b[12D\x1b[1;35m&gt;&gt;&gt; \x1b[0msorted(di\x1b[13D\x1b[?12l\x1b[?25h\x1b[13C\x1b[?25l\x1b[13D\x1b[1;35m&gt;&gt;&gt; \x1b[0msorted(dir\x1b[14D\x1b[?12l\x1b[?25h\x1b[14C\x1b[?25l\x1b[14D\x1b[1;35m&gt;&gt;&gt; \x1b[0msorted(dir(\x1b[15D\x1b[?12l\x1b[?25h\x1b[15C\x1b[?25l\x1b[15D\x1b[1;35m&gt;&gt;&gt; \x1b[0msorted(dir()\x1b[16D\x1b[?12l\x1b[?25h\x1b[16C\x1b[?25l\x1b[16D\x1b[1;35m&gt;&gt;&gt; \x1b[0msorted(dir())\x1b[17D\x1b[?12l\x1b[?25h\x1b[17C\x1b[17D&#10;&#13;\x1b[?2004l\x1b[?1l\x1b&gt;[\'__annotations__\', \'__builtins__\', \'__cached__\', \'__doc__\', \'__file__\', \'__loader__\', \'__name__\', \'__package__\', \'__spec__\', \'sys\', \'ver\']&#13;&#10;\x1b[?2004h\x1b[?1h\x1b=\x1b[?25l\x1b[1A&#10;\x1b[1;35m&gt;&gt;&gt; \x1b[0m\x1b[4D\x1b[?12l\x1b[?25h\x1b[4C\x1b[?25l\x1b[4D\x1b[1;35m&gt;&gt;&gt; \x1b[0me\x1b[5D\x1b[?12l\x1b[?2&#10;5h\x1b[5C\x1b[?25l\x1b[5D\x1b[1;35m&gt;&gt;&gt; \x1b[0mex\x1b[6D\x1b[?12l\x1b[?25h\x1b[6C\x1b[?25l\x1b[6D\x1b[1;35m&gt;&gt;&gt; \x1b[0mexi\x1b[7D\x1b[?12l\x1b[?25h\x1b[7C\x1b[?25l\x1b[7D\x1b[1;35m&gt;&gt;&gt; \x1b[0mexit\x1b[8D\x1b[?12l\x1b[?25h\x1b[8C\x1b[8D&#10;&#13;\x1b[?2004l\x1b[?1l\x1b&gt;&#10;">Traceback (most recent call last):\n  File "/home/dje/cpython-buildarea/3.x.edelsohn-sles-z/build/Lib/unittest/case.py", line 58, in testPartExecutor\n    yield\n  File "/home/dje/cpython-buildarea/3.x.edelsohn-sles-z/build/Lib/unittest/case.py", line 660, in run\n    self._callTestMethod(testMethod)\n    ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^\n  File "/home/dje/cpython-buildarea/3.x.edelsohn-sles-z/build/Lib/unittest/case.py", line 606, in _callTestMethod\n    result = method()\n  File "/home/dje/cpython-buildarea/3.x.edelsohn-sles-z/build/Lib/test/support/__init__.py", line 2622, in wrapper\n    return func(*args, **kwargs)\n  File "/home/dje/cpython-buildarea/3.x.edelsohn-sles-z/build/Lib/test/test_pyrepl/test_pyrepl.py", line 865, in test_exposed_globals_in_repl\n    self.assertTrue(case1 or case2 or case3 or case4, output)\n    ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File "/home/dje/cpython-buildarea/3.x.edelsohn-sles-z/build/Lib/unittest/case.py", line 753, in assertTrue\n    raise self.failureException(msg)\nAssertionError: False is not true : sorted(dir())\r\nexit\r\n\nPython 3.14.0a0 (heads/main:d611c4c8e98, Jun 26 2024, 15:07:05) [GCC 7.5.0] on linux\r\nType "help", "copyright", "credits" or "license" for more information.\r\n\n\x1b[?2004h\x1b[?1h\x1b=\x1b[?25l\x1b[1A\n\x1b[1;35m&gt;&gt;&gt; \x1b[0m\x1b[4D\x1b[?12l\x1b[?25h\x1b[4C\x1b[?25l\x1b[4D\x1b[1;35m&gt;&gt;&gt; \x1b[0ms\x1b[5D\x1b[?12l\x1b[?25h\x1b[5C\x1b[?25l\x1b[5D\x1b[1;35m&gt;&gt;&gt; \x1b[0mso\x1b[6D\x1b[?12l\x1b[?25h\x1b[6C\x1b[?25l\x1b[6D\x1b[1;35m&gt;&gt;&gt; \x1b[0msor\x1b[7D\x1b[?12l\x1b[?25h\x1b[7C\x1b[?25l\x1b[7D\x1b[1;35m&gt;&gt;&gt; \x1b[0msort\x1b[8D\x1b[?12l\x1b[?25h\x1b[8C\x1b[?25l\x1b[8D\x1b[1;35m&gt;&gt;&gt; \x1b[0msorte\x1b[9D\x1b[?12l\x1b[?25h\x1b[9C\x1b[?25l\x1b[9D\x1b[1;35m&gt;&gt;&gt; \x1b[0msorted\x1b[10D\x1b[?12l\x1b[?25h\x1b[10C\x1b[?25l\x1b[10D\x1b[1;35m&gt;&gt;&gt; \x1b[0msorted(\x1b[11D\x1b[?12l\x1b[?25h\x1b[11C\x1b[?25l\x1b[11D\x1b[1;35m&gt;&gt;&gt; \x1b[0msorted(d\x1b[12D\x1b[?12l\x1b[?25h\x1b[12C\x1b[?25l\x1b[12D\x1b[1;35m&gt;&gt;&gt; \x1b[0msorted(di\x1b[13D\x1b[?12l\x1b[?25h\x1b[13C\x1b[?25l\x1b[13D\x1b[1;35m&gt;&gt;&gt; \x1b[0msorted(dir\x1b[14D\x1b[?12l\x1b[?25h\x1b[14C\x1b[?25l\x1b[14D\x1b[1;35m&gt;&gt;&gt; \x1b[0msorted(dir(\x1b[15D\x1b[?12l\x1b[?25h\x1b[15C\x1b[?25l\x1b[15D\x1b[1;35m&gt;&gt;&gt; \x1b[0msorted(dir()\x1b[16D\x1b[?12l\x1b[?25h\x1b[16C\x1b[?25l\x1b[16D\x1b[1;35m&gt;&gt;&gt; \x1b[0msorted(dir())\x1b[17D\x1b[?12l\x1b[?25h\x1b[17C\x1b[17D\n\r\x1b[?2004l\x1b[?1l\x1b&gt;[\'__annotations__\', \'__builtins__\', \'__cached__\', \'__doc__\', \'__file__\', \'__loader__\', \'__name__\', \'__package__\', \'__spec__\', \'sys\', \'ver\']\r\n\x1b[?2004h\x1b[?1h\x1b=\x1b[?25l\x1b[1A\n\x1b[1;35m&gt;&gt;&gt; \x1b[0m\x1b[4D\x1b[?12l\x1b[?25h\x1b[4C\x1b[?25l\x1b[4D\x1b[1;35m&gt;&gt;&gt; \x1b[0me\x1b[5D\x1b[?12l\x1b[?2\n5h\x1b[5C\x1b[?25l\x1b[5D\x1b[1;35m&gt;&gt;&gt; \x1b[0mex\x1b[6D\x1b[?12l\x1b[?25h\x1b[6C\x1b[?25l\x1b[6D\x1b[1;35m&gt;&gt;&gt; \x1b[0mexi\x1b[7D\x1b[?12l\x1b[?25h\x1b[7C\x1b[?25l\x1b[7D\x1b[1;35m&gt;&gt;&gt; \x1b[0mexit\x1b[8D\x1b[?12l\x1b[?25h\x1b[8C\x1b[8D\n\r\x1b[?2004l\x1b[?1l\x1b&gt;\n</failure></testcase><testcase name="test.test_pyrepl.test_pyrepl.TestMain.test_python_basic_repl" status="run" result="completed" time="1.205764" /><testcase name="test.test_pyrepl.test_pyrepl.TestPasteEvent.test_bracketed_paste" status="run" result="completed" time="0.004351" /><testcase name="test.test_pyrepl.test_pyrepl.TestPasteEvent.test_bracketed_paste_single_line" status="run" result="completed" time="0.002461" /><testcase name="test.test_pyrepl.test_pyrepl.TestPasteEvent.test_paste" status="run" result="completed" time="0.006166" /><testcase name="test.test_pyrepl.test_pyrepl.TestPasteEvent.test_paste_mid_newlines" status="run" result="completed" time="0.003842" /><testcase name="test.test_pyrepl.test_pyrepl.TestPasteEvent.test_paste_mid_newlines_not_in_paste_mode" status="run" result="completed" time="0.003042" /><testcase name="test.test_pyrepl.test_pyrepl.TestPasteEvent.test_paste_not_in_paste_mode" status="run" result="completed" time="0.005030" /><testcase name="test.test_pyrepl.test_pyrepl.TestPyReplAutoindent.test_auto_indent_continuation" status="run" result="completed" time="0.003409" /><testcase name="test.test_pyrepl.test_pyrepl.TestPyReplAutoindent.test_auto_indent_default" status="run" result="completed" time="0.000031" /><testcase name="test.test_pyrepl.test_pyrepl.TestPyReplAutoindent.test_auto_indent_ignore_comments" status="run" result="completed" time="0.002515" /><testcase name="test.test_pyrepl.test_pyrepl.TestPyReplAutoindent.test_auto_indent_multiline" status="run" result="completed" time="0.003399" /><testcase name="test.test_pyrepl.test_pyrepl.TestPyReplAutoindent.test_auto_indent_prev_block" status="run" result="completed" time="0.004220" /><testcase name="test.test_pyrepl.test_pyrepl.TestPyReplAutoindent.test_auto_indent_with_comment" status="run" result="completed" time="0.003230" /><testcase name="test.test_pyrepl.test_pyrepl.TestPyReplCompleter.test_completion_with_many_options" status="run" result="completed" time="0.121575" /><testcase name="test.test_pyrepl.test_pyrepl.TestPyReplCompleter.test_completion_with_warnings" status="run" result="completed" time="0.060719" /><testcase name="test.test_pyrepl.test_pyrepl.TestPyReplCompleter.test_empty_namespace_completion" status="run" result="completed" time="0.002640" /><testcase name="test.test_pyrepl.test_pyrepl.TestPyReplCompleter.test_global_namespace_completion" status="run" result="completed" time="0.002461" /><testcase name="test.test_pyrepl.test_pyrepl.TestPyReplCompleter.test_simple_completion" status="run" result="completed" time="0.003173" /><testcase name="test.test_pyrepl.test_pyrepl.TestPyReplCompleter.test_updown_arrow_with_completion_menu" status="run" result="completed" time="0.124690" /><testcase name="test.test_pyrepl.test_pyrepl.TestPyReplOutput.test_basic" status="run" result="completed" time="0.002418" /><testcase name="test.test_pyrepl.test_pyrepl.TestPyReplOutput.test_control_character" status="run" result="completed" time="0.002428" /><testcase name="test.test_pyrepl.test_pyrepl.TestPyReplOutput.test_history_navigation_with_down_arrow" status="run" result="completed" time="0.002439" /><testcase name="test.test_pyrepl.test_pyrepl.TestPyReplOutput.test_history_navigation_with_up_arrow" status="run" result="completed" time="0.003125" /><testcase name="test.test_pyrepl.test_pyrepl.TestPyReplOutput.test_history_search" status="run" result="completed" time="0.003172" /><testcase name="test.test_pyrepl.test_pyrepl.TestPyReplOutput.test_multiline_edit" status="run" result="completed" time="0.003935" /><testcase name="test.test_pyrepl.test_reader.TestReader.test_calc_screen_backspace" status="run" result="completed" time="0.008718" /><testcase name="test.test_pyrepl.test_reader.TestReader.test_calc_screen_backspace_in_second_line_after_wrap" status="run" result="completed" time="0.005899" /><testcase name="test.test_pyrepl.test_reader.TestReader.test_calc_screen_wrap_removes_after_backspace" status="run" result="completed" time="0.006404" /><testcase name="test.test_pyrepl.test_reader.TestReader.test_calc_screen_wrap_simple" status="run" result="completed" time="0.012169" /><testcase name="test.test_pyrepl.test_reader.TestReader.test_calc_screen_wrap_three_lines" status="run" result="completed" time="0.008180" /><testcase name="test.test_pyrepl.test_reader.TestReader.test_calc_screen_wrap_three_lines_mixed_character" status="run" result="completed" time="0.009257" /><testcase name="test.test_pyrepl.test_reader.TestReader.test_calc_screen_wrap_wide_characters" status="run" result="completed" time="0.005808" /><testcase name="test.test_pyrepl.test_reader.TestReader.test_completions_updated_on_key_press" status="run" result="completed" time="0.012835" /><testcase name="test.test_pyrepl.test_reader.TestReader.test_input_hook_is_called_if_set" status="run" result="completed" time="0.004863" /><testcase name="test.test_pyrepl.test_reader.TestReader.test_key_press_on_tab_press_once" status="run" result="completed" time="0.008922" /><testcase name="test.test_pyrepl.test_reader.TestReader.test_keyboard_interrupt_clears_screen" status="run" result="completed" time="0.017426" /><testcase name="test.test_pyrepl.test_reader.TestReader.test_newline_within_block_trailing_whitespace" status="run" result="completed" time="0.010918" /><testcase name="test.test_pyrepl.test_reader.TestReader.test_prompt_length" status="run" result="completed" time="0.000110" /><testcase name="test.test_pyrepl.test_reader.TestReader.test_setpos_for_xy_simple" status="run" result="completed" time="0.004631" /><testcase name="test.test_pyrepl.test_reader.TestReader.test_setpos_from_xy_after_wrap" status="run" result="completed" time="0.007730" /><testcase name="test.test_pyrepl.test_reader.TestReader.test_setpos_from_xy_multiple_lines" status="run" result="completed" time="0.008099" /><testcase name="test.test_pyrepl.test_reader.TestReader.test_setpos_fromxy_in_wrapped_line" status="run" result="completed" time="0.007893" /><testcase name="test.test_pyrepl.test_reader.TestReader.test_up_arrow_after_ctrl_r" status="run" result="completed" time="0.004981" /><testcase name="test.test_pyrepl.test_unix_console.TestConsole.test_cursor_back_write" status="run" result="completed" time="0.003791" /><testcase name="test.test_pyrepl.test_unix_console.TestConsole.test_cursor_left" status="run" result="completed" time="0.003443" /><testcase name="test.test_pyrepl.test_unix_console.TestConsole.test_cursor_left_right" status="run" result="completed" time="0.004260" /><testcase name="test.test_pyrepl.test_unix_console.TestConsole.test_cursor_up" status="run" result="completed" time="0.003952" /><testcase name="test.test_pyrepl.test_unix_console.TestConsole.test_cursor_up_down" status="run" result="completed" time="0.004117" /><testcase name="test.test_pyrepl.test_unix_console.TestConsole.test_multiline_function_move_up_down_short_terminal" status="run" result="completed" time="0.006589" /><testcase name="test.test_pyrepl.test_unix_console.TestConsole.test_multiline_function_move_up_short_terminal" status="run" result="completed" time="0.005404" /><testcase name="test.test_pyrepl.test_unix_console.TestConsole.test_resize_bigger_on_multiline_function" status="run" result="completed" time="0.006536" /><testcase name="test.test_pyrepl.test_unix_console.TestConsole.test_resize_smaller_on_multiline_function" status="run" result="completed" time="0.007235" /><testcase name="test.test_pyrepl.test_unix_console.TestConsole.test_simple_addition" status="run" result="completed" time="0.003953" /><testcase name="test.test_pyrepl.test_unix_console.TestConsole.test_wrap" status="run" result="completed" time="0.004261" /><testcase name="test.test_pyrepl.test_unix_eventqueue.TestUnixEventQueue.test_empty" status="run" result="completed" time="0.000394" /><testcase name="test.test_pyrepl.test_unix_eventqueue.TestUnixEventQueue.test_flush_buf" status="run" result="completed" time="0.000221" /><testcase name="test.test_pyrepl.test_unix_eventqueue.TestUnixEventQueue.test_get" status="run" result="completed" time="0.000211" /><testcase name="test.test_pyrepl.test_unix_eventqueue.TestUnixEventQueue.test_insert" status="run" result="completed" time="0.000206" /><testcase name="test.test_pyrepl.test_unix_eventqueue.TestUnixEventQueue.test_push_special_key" status="run" result="completed" time="0.000235" /><testcase name="test.test_pyrepl.test_unix_eventqueue.TestUnixEventQueue.test_push_unrecognized_escape_sequence" status="run" result="completed" time="0.000233" /><testcase name="test.test_pyrepl.test_unix_eventqueue.TestUnixEventQueue.test_push_with_key_in_keymap" status="run" result="completed" time="0.000580" /><testcase name="test.test_pyrepl.test_unix_eventqueue.TestUnixEventQueue.test_push_with_keymap_in_keymap" status="run" result="completed" time="0.000579" /><testcase name="test.test_pyrepl.test_unix_eventqueue.TestUnixEventQueue.test_push_with_keymap_in_keymap_and_escape" status="run" result="completed" time="0.001634" /><testcase name="test.test_pyrepl.test_unix_eventqueue.TestUnixEventQueue.test_push_without_key_in_keymap" status="run" result="completed" time="0.000560" /><testcase name="unittest.loader.ModuleSkipped.test.test_pyrepl.test_windows_console" status="run" result="completed" time="0.000010"><skipped>test only relevant on win32</skipped></testcase></testsuite>']
Kill <WorkerThread #2 running test=test_tools pid=16695 time=2 min 13 sec> process group
Kill <WorkerThread #3 running test=test_tarfile pid=37114 time=3.5 sec> process group
Kill <WorkerThread #4 running test=test_capi pid=29899 time=1 min 1 sec> process group
Kill <WorkerThread #5 running test=test.test_asyncio.test_ssl pid=36233 time=8.1 sec> process group
Kill <WorkerThread #6 running test=test.test_multiprocessing_spawn.test_processes pid=32273 time=33.5 sec> process group
Kill <WorkerThread #1 running test=test_interpreters pid=37182 time=11 ms> process group
Traceback (most recent call last):
  File "/home/dje/cpython-buildarea/3.x.edelsohn-sles-z/build/Lib/runpy.py", line 198, in _run_module_as_main
    return _run_code(code, main_globals, None,
                     "__main__", mod_spec)
  File "/home/dje/cpython-buildarea/3.x.edelsohn-sles-z/build/Lib/runpy.py", line 88, in _run_code
    exec(code, run_globals)
    ~~~~^^^^^^^^^^^^^^^^^^^
  File "/home/dje/cpython-buildarea/3.x.edelsohn-sles-z/build/Lib/test/__main__.py", line 2, in <module>
    main(_add_python_opts=True)
    ~~~~^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/dje/cpython-buildarea/3.x.edelsohn-sles-z/build/Lib/test/libregrtest/main.py", line 747, in main
    Regrtest(ns, _add_python_opts=_add_python_opts).main(tests=tests)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
  File "/home/dje/cpython-buildarea/3.x.edelsohn-sles-z/build/Lib/test/libregrtest/main.py", line 739, in main
    exitcode = self.run_tests(selected, tests)
  File "/home/dje/cpython-buildarea/3.x.edelsohn-sles-z/build/Lib/test/libregrtest/main.py", line 576, in run_tests
    return self._run_tests(selected, tests)
           ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
  File "/home/dje/cpython-buildarea/3.x.edelsohn-sles-z/build/Lib/test/libregrtest/main.py", line 536, in _run_tests
    self._run_tests_mp(runtests, self.num_workers)
    ~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/dje/cpython-buildarea/3.x.edelsohn-sles-z/build/Lib/test/libregrtest/main.py", line 434, in _run_tests_mp
    RunWorkers(num_workers, runtests, self.logger, self.results).run()
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/home/dje/cpython-buildarea/3.x.edelsohn-sles-z/build/Lib/test/libregrtest/run_workers.py", line 606, in run
    result = self._process_result(item)
  File "/home/dje/cpython-buildarea/3.x.edelsohn-sles-z/build/Lib/test/libregrtest/run_workers.py", line 577, in _process_result
    self.results.accumulate_result(result, self.runtests)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/dje/cpython-buildarea/3.x.edelsohn-sles-z/build/Lib/test/libregrtest/results.py", line 132, in accumulate_result
    self.add_junit(xml_data)
    ~~~~~~~~~~~~~~^^^^^^^^^^
  File "/home/dje/cpython-buildarea/3.x.edelsohn-sles-z/build/Lib/test/libregrtest/results.py", line 165, in add_junit
    self.testsuite_xml.append(ET.fromstring(e))
                              ~~~~~~~~~~~~~^^^
  File "/home/dje/cpython-buildarea/3.x.edelsohn-sles-z/build/Lib/xml/etree/ElementTree.py", line 1342, in XML
    parser.feed(text)
    ~~~~~~~~~~~^^^^^^
xml.etree.ElementTree.ParseError: not well-formed (invalid token): line 1, column 8017
make: *** [Makefile:2246: buildbottest] Error 1

Cannot open file '/home/dje/cpython-buildarea/3.x.edelsohn-sles-z/build/test-results.xml' for upload
All reactions

Sorry, something went wrong.

Uh oh!

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

ambv pushed a commit that referenced this pull request Jun 26, 2024
@miss-islington
[3.13] gh-118908: Use __main__ for the default PyREPL namespace (GH-1…
38cfa92
…21054) (#121059)
@bedevere-bot

bedevere-bot commented Jun 26, 2024

Copy link
Copy Markdown

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

Hi! The buildbot s390x SLES 3.13 has failed when building commit 38cfa92.

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/all/#builders/1437/builds/258) and take a look at the build logs.
  4. Check if the failure is related to this commit (38cfa92) 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/all/#builders/1437/builds/258

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

Click to see traceback logs
remote: Enumerating objects: 10, done.        
remote: Counting objects:  10% (1/10)        
remote: Counting objects:  20% (2/10)        
remote: Counting objects:  30% (3/10)        
remote: Counting objects:  40% (4/10)        
remote: Counting objects:  50% (5/10)        
remote: Counting objects:  60% (6/10)        
remote: Counting objects:  70% (7/10)        
remote: Counting objects:  80% (8/10)        
remote: Counting objects:  90% (9/10)        
remote: Counting objects: 100% (10/10)        
remote: Counting objects: 100% (10/10), done.        
remote: Compressing objects:  11% (1/9)        
remote: Compressing objects:  22% (2/9)        
remote: Compressing objects:  33% (3/9)        
remote: Compressing objects:  44% (4/9)        
remote: Compressing objects:  55% (5/9)        
remote: Compressing objects:  66% (6/9)        
remote: Compressing objects:  77% (7/9)        
remote: Compressing objects:  88% (8/9)        
remote: Compressing objects: 100% (9/9)        
remote: Compressing objects: 100% (9/9), done.        
remote: Total 10 (delta 1), reused 4 (delta 1), pack-reused 0        
From https://github.com/python/cpython
 * branch                  3.13       -> FETCH_HEAD
Note: switching to '38cfa92880a19d03a4ada4cd843870a8602c13a0'.

You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by switching back to a branch.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -c with the switch command. Example:

  git switch -c <new-branch-name>

Or undo this operation with:

  git switch -

Turn off this advice by setting config variable advice.detachedHead to false

HEAD is now at 38cfa92880 [3.13] gh-118908: Use __main__ for the default PyREPL namespace (GH-121054) (#121059)
Switched to and reset branch '3.13'

configure: WARNING: no system libmpdecimal found; falling back to bundled libmpdecimal (deprecated and scheduled for removal in Python 3.15)

['<testsuite start="2024-06-26 19:42:58.785807" tests="116" errors="0" failures="1"><testcase name="test.test_pyrepl.test_input.KeymapTranslatorTests.test_empty" status="run" result="completed" time="0.000082" /><testcase name="test.test_pyrepl.test_input.KeymapTranslatorTests.test_push_character_key" status="run" result="completed" time="0.000067" /><testcase name="test.test_pyrepl.test_input.KeymapTranslatorTests.test_push_character_key_with_stack" status="run" result="completed" time="0.000070" /><testcase name="test.test_pyrepl.test_input.KeymapTranslatorTests.test_push_invalid_key" status="run" result="completed" time="0.000049" /><testcase name="test.test_pyrepl.test_input.KeymapTranslatorTests.test_push_invalid_key_with_stack" status="run" result="completed" time="0.000053" /><testcase name="test.test_pyrepl.test_input.KeymapTranslatorTests.test_push_invalid_key_with_unicode_category" status="run" result="completed" time="0.000046" /><testcase name="test.test_pyrepl.test_input.KeymapTranslatorTests.test_push_multiple_keys" status="run" result="completed" time="0.000051" /><testcase name="test.test_pyrepl.test_input.KeymapTranslatorTests.test_push_single_key" status="run" result="completed" time="0.000045" /><testcase name="test.test_pyrepl.test_input.KeymapTranslatorTests.test_push_transition_key" status="run" result="completed" time="0.000048" /><testcase name="test.test_pyrepl.test_input.KeymapTranslatorTests.test_push_transition_key_interrupted" status="run" result="completed" time="0.000050" /><testcase name="test.test_pyrepl.test_interact.TestSimpleInteract.test_empty" status="run" result="completed" time="0.000101" /><testcase name="test.test_pyrepl.test_interact.TestSimpleInteract.test_multiple_statements" status="run" result="completed" time="0.001510" /><testcase name="test.test_pyrepl.test_interact.TestSimpleInteract.test_multiple_statements_output" status="run" result="completed" time="0.000242" /><testcase name="test.test_pyrepl.test_interact.TestSimpleInteract.test_no_active_future" status="run" result="completed" time="0.000181" /><testcase name="test.test_pyrepl.test_interact.TestSimpleInteract.test_runsource_compiles_and_runs_code" status="run" result="completed" time="0.000469" /><testcase name="test.test_pyrepl.test_interact.TestSimpleInteract.test_runsource_returns_false_for_failed_compilation" status="run" result="completed" time="0.000182" /><testcase name="test.test_pyrepl.test_interact.TestSimpleInteract.test_runsource_returns_false_for_successful_compilation" status="run" result="completed" time="0.000118" /><testcase name="test.test_pyrepl.test_interact.TestSimpleInteract.test_runsource_shows_syntax_error_for_failed_compilation" status="run" result="completed" time="0.000884" /><testcase name="test.test_pyrepl.test_keymap.TestCompileKeymap.test_clashing_definitions" status="run" result="completed" time="0.000066" /><testcase name="test.test_pyrepl.test_keymap.TestCompileKeymap.test_empty_keymap" status="run" result="completed" time="0.000036" /><testcase name="test.test_pyrepl.test_keymap.TestCompileKeymap.test_empty_value" status="run" result="completed" time="0.000038" /><testcase name="test.test_pyrepl.test_keymap.TestCompileKeymap.test_multiple_empty_values" status="run" result="completed" time="0.000037" /><testcase name="test.test_pyrepl.test_keymap.TestCompileKeymap.test_multiple_keymaps" status="run" result="completed" time="0.000036" /><testcase name="test.test_pyrepl.test_keymap.TestCompileKeymap.test_nested_keymap" status="run" result="completed" time="0.000036" /><testcase name="test.test_pyrepl.test_keymap.TestCompileKeymap.test_nested_multiple_keymaps" status="run" result="completed" time="0.000036" /><testcase name="test.test_pyrepl.test_keymap.TestCompileKeymap.test_non_bytes_key" status="run" result="completed" time="0.000047" /><testcase name="test.test_pyrepl.test_keymap.TestCompileKeymap.test_single_keymap" status="run" result="completed" time="0.000035" /><testcase name="test.test_pyrepl.test_keymap.TestParseKeys.test_combinations" status="run" result="completed" time="0.000064" /><testcase name="test.test_pyrepl.test_keymap.TestParseKeys.test_control_sequences" status="run" result="completed" time="0.000032" /><testcase name="test.test_pyrepl.test_keymap.TestParseKeys.test_escape_sequences" status="run" result="completed" time="0.000298" /><testcase name="test.test_pyrepl.test_keymap.TestParseKeys.test_index_errors" status="run" result="completed" time="0.000071" /><testcase name="test.test_pyrepl.test_keymap.TestParseKeys.test_keynames" status="run" result="completed" time="0.000840" /><testcase name="test.test_pyrepl.test_keymap.TestParseKeys.test_keyspec_errors" status="run" result="completed" time="0.000329" /><testcase name="test.test_pyrepl.test_keymap.TestParseKeys.test_meta_sequences" status="run" result="completed" time="0.000048" /><testcase name="test.test_pyrepl.test_keymap.TestParseKeys.test_single_character" status="run" result="completed" time="0.001229" /><testcase name="test.test_pyrepl.test_pyrepl.TestCursorPosition.test_cursor_position_after_wrap_and_move_up" status="run" result="completed" time="0.020796" /><testcase name="test.test_pyrepl.test_pyrepl.TestCursorPosition.test_cursor_position_double_width_character" status="run" result="completed" time="0.004300" /><testcase name="test.test_pyrepl.test_pyrepl.TestCursorPosition.test_cursor_position_double_width_character_move_left" status="run" result="completed" time="0.004379" /><testcase name="test.test_pyrepl.test_pyrepl.TestCursorPosition.test_cursor_position_double_width_character_move_left_right" status="run" result="completed" time="0.005062" /><testcase name="test.test_pyrepl.test_pyrepl.TestCursorPosition.test_cursor_position_double_width_characters_move_up" status="run" result="completed" time="0.009433" /><testcase name="test.test_pyrepl.test_pyrepl.TestCursorPosition.test_cursor_position_double_width_characters_move_up_down" status="run" result="completed" time="0.010117" /><testcase name="test.test_pyrepl.test_pyrepl.TestCursorPosition.test_cursor_position_move_down_to_eol" status="run" result="completed" time="0.010788" /><testcase name="test.test_pyrepl.test_pyrepl.TestCursorPosition.test_cursor_position_move_up_to_eol" status="run" result="completed" time="0.010578" /><testcase name="test.test_pyrepl.test_pyrepl.TestCursorPosition.test_cursor_position_multiple_double_width_characters_move_left" status="run" result="completed" time="0.007303" /><testcase name="test.test_pyrepl.test_pyrepl.TestCursorPosition.test_cursor_position_multiple_mixed_lines_move_up" status="run" result="completed" time="0.018230" /><testcase name="test.test_pyrepl.test_pyrepl.TestCursorPosition.test_cursor_position_simple_character" status="run" result="completed" time="0.004230" /><testcase name="test.test_pyrepl.test_pyrepl.TestCursorPosition.test_down_arrow_end_of_input" status="run" result="completed" time="0.008651" /><testcase name="test.test_pyrepl.test_pyrepl.TestCursorPosition.test_left_arrow_simple" status="run" result="completed" time="0.005500" /><testcase name="test.test_pyrepl.test_pyrepl.TestCursorPosition.test_right_arrow_end_of_line" status="run" result="completed" time="0.005012" /><testcase name="test.test_pyrepl.test_pyrepl.TestCursorPosition.test_up_arrow_simple" status="run" result="completed" time="0.007679" /><testcase name="test.test_pyrepl.test_pyrepl.TestMain.test_dumb_terminal_exits_cleanly" status="run" result="completed" time="0.576561" /><testcase name="test.test_pyrepl.test_pyrepl.TestMain.test_exposed_globals_in_repl" status="run" result="completed" time="0.588276"><system-out /><system-err /><failure type="AssertionError" message="AssertionError: False is not true : sorted(dir())&#13;&#10;exit&#13;&#10;&#10;Python 3.13.0b2+ (heads/3.13:38cfa92880, Jun 26 2024, 15:39:49) [GCC 7.5.0] on linux&#13;&#10;Type &quot;help&quot;, &quot;copyright&quot;, &quot;credits&quot; or &quot;license&quot; for more information.&#13;&#10;&#10;\x1b[?2004h&#10;\x1b[?1h\x1b=&#10;\x1b[?25l&#10;\x1b[1A&#10;&#10;&#10;\x1b[1;35m&gt;&gt;&gt; \x1b[0m&#10;\x1b[4D&#10;\x1b[?12l\x1b[?25h&#10;\x1b[4C&#10;\x1b[?25l&#10;\x1b[4D&#10;\x1b[1;35m&gt;&gt;&gt; \x1b[0ms&#10;\x1b[5D&#10;\x1b[?12l\x1b[?25h&#10;\x1b[5C&#10;\x1b[?25l&#10;\x1b[5D&#10;\x1b[1;35m&gt;&gt;&gt; \x1b[0mso&#10;\x1b[6D&#10;\x1b[?12l\x1b[?25h&#10;\x1b[6C&#10;\x1b[?25l&#10;\x1b[6D&#10;\x1b[1;35m&gt;&gt;&gt; \x1b[0msor&#10;\x1b[7D&#10;\x1b[?12l\x1b[?25h&#10;\x1b[7C&#10;\x1b[?25l&#10;\x1b[7D&#10;\x1b[1;35m&gt;&gt;&gt; \x1b[0msort&#10;\x1b[8D&#10;\x1b[?12l\x1b[?25h&#10;\x1b[8C&#10;\x1b[?25l&#10;\x1b[8D\x1b[1;35m&gt;&gt;&gt; \x1b[0msorte&#10;\x1b[9D&#10;\x1b[?12l\x1b[?25h&#10;\x1b[9C&#10;\x1b[?25l&#10;\x1b[9D&#10;\x1b[1;35m&gt;&gt;&gt; \x1b[0msorted&#10;\x1b[10D&#10;\x1b[?12l\x1b[?25h&#10;\x1b[10C&#10;\x1b[?25l&#10;\x1b[10D&#10;\x1b[1;35m&gt;&gt;&gt; \x1b[0msorted(&#10;\x1b[11D&#10;\x1b[?12l\x1b[?25h&#10;\x1b[11C&#10;\x1b[?25l\x1b[11D&#10;\x1b[1;35m&gt;&gt;&gt; \x1b[0msorted(d&#10;\x1b[12D&#10;\x1b[?12l\x1b[?25h&#10;\x1b[12C&#10;\x1b[?25l&#10;\x1b[12D&#10;\x1b[1;35m&gt;&gt;&gt; \x1b[0msorted(di&#10;\x1b[13D&#10;\x1b[?12l\x1b[?25h&#10;\x1b[13C&#10;\x1b[?25l&#10;\x1b[13D&#10;\x1b[1;35m&gt;&gt;&gt; \x1b[0msorted(dir&#10;\x1b[14D&#10;\x1b[?12l\x1b[?25h&#10;\x1b[14C&#10;\x1b[?25l&#10;\x1b[14D&#10;\x1b[1;35m&gt;&gt;&gt; \x1b[0msorted(dir(&#10;\x1b[15D&#10;\x1b[?12l\x1b[?25h&#10;\x1b[15C&#10;\x1b[?25l&#10;\x1b[15D\x1b[1;35m&gt;&gt;&gt; \x1b[0msorted(dir()&#10;\x1b[16D&#10;\x1b[?12l\x1b[?25h&#10;\x1b[16C&#10;\x1b[?25l&#10;\x1b[16D&#10;\x1b[1;35m&gt;&gt;&gt; \x1b[0msorted(dir())&#10;\x1b[17D&#10;\x1b[?12l\x1b[?25h\x1b[17C&#10;\x1b[17D&#10;&#13;&#10;\x1b[?2004l&#10;\x1b[?1l\x1b&gt;&#10;[\'__annotations__\', \'__builtins__\', \'__cached__\', \'__doc__\', \'__file__\', \'__loader__\', \'__name__\', \'__package__\', \'__spec__\', \'sys\', \'ver\']&#10;&#13;&#10;&#10;\x1b[?2004h&#10;\x1b[?1h\x1b=&#10;\x1b[?25l&#10;\x1b[1A&#10;&#10;\x1b[1;35m&gt;&gt;&gt; \x1b[0m\x1b[4D&#10;\x1b[?12l\x1b[?25h\x1b[4C&#10;\x1b[?25l&#10;\x1b[4D\x1b[1;35m&gt;&gt;&gt; \x1b[0me&#10;\x1b[5D&#10;\x1b[?12l\x1b[?25h&#10;\x1b[5C&#10;\x1b[?25l&#10;\x1b[5D&#10;\x1b[1;35m&gt;&gt;&gt; \x1b[0mex&#10;\x1b[6D&#10;\x1b[?12l\x1b[?25h&#10;\x1b[6C&#10;\x1b[?25l&#10;\x1b[6D&#10;\x1b[1;35m&gt;&gt;&gt; \x1b[0mexi&#10;\x1b[7D&#10;\x1b[?12l\x1b[?25h&#10;\x1b[7C&#10;\x1b[?25l&#10;\x1b[7D&#10;\x1b[1;35m&gt;&gt;&gt; \x1b[0mexit&#10;\x1b[8D&#10;\x1b[?12l\x1b[?25h&#10;\x1b[8C&#10;\x1b[8D&#10;&#13;&#10;\x1b[?2004l&#10;\x1b[?1l\x1b&gt;&#10;">Traceback (most recent call last):\n  File "/home/dje/cpython-buildarea/3.13.edelsohn-sles-z/build/Lib/unittest/case.py", line 58, in testPartExecutor\n    yield\n  File "/home/dje/cpython-buildarea/3.13.edelsohn-sles-z/build/Lib/unittest/case.py", line 651, in run\n    self._callTestMethod(testMethod)\n    ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^\n  File "/home/dje/cpython-buildarea/3.13.edelsohn-sles-z/build/Lib/unittest/case.py", line 606, in _callTestMethod\n    if method() is not None:\n       ~~~~~~^^\n  File "/home/dje/cpython-buildarea/3.13.edelsohn-sles-z/build/Lib/test/support/__init__.py", line 2603, in wrapper\n    return func(*args, **kwargs)\n  File "/home/dje/cpython-buildarea/3.13.edelsohn-sles-z/build/Lib/test/test_pyrepl/test_pyrepl.py", line 865, in test_exposed_globals_in_repl\n    self.assertTrue(case1 or case2 or case3 or case4, output)\n    ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File "/home/dje/cpython-buildarea/3.13.edelsohn-sles-z/build/Lib/unittest/case.py", line 744, in assertTrue\n    raise self.failureException(msg)\nAssertionError: False is not true : sorted(dir())\r\nexit\r\n\nPython 3.13.0b2+ (heads/3.13:38cfa92880, Jun 26 2024, 15:39:49) [GCC 7.5.0] on linux\r\nType "help", "copyright", "credits" or "license" for more information.\r\n\n\x1b[?2004h\n\x1b[?1h\x1b=\n\x1b[?25l\n\x1b[1A\n\n\n\x1b[1;35m&gt;&gt;&gt; \x1b[0m\n\x1b[4D\n\x1b[?12l\x1b[?25h\n\x1b[4C\n\x1b[?25l\n\x1b[4D\n\x1b[1;35m&gt;&gt;&gt; \x1b[0ms\n\x1b[5D\n\x1b[?12l\x1b[?25h\n\x1b[5C\n\x1b[?25l\n\x1b[5D\n\x1b[1;35m&gt;&gt;&gt; \x1b[0mso\n\x1b[6D\n\x1b[?12l\x1b[?25h\n\x1b[6C\n\x1b[?25l\n\x1b[6D\n\x1b[1;35m&gt;&gt;&gt; \x1b[0msor\n\x1b[7D\n\x1b[?12l\x1b[?25h\n\x1b[7C\n\x1b[?25l\n\x1b[7D\n\x1b[1;35m&gt;&gt;&gt; \x1b[0msort\n\x1b[8D\n\x1b[?12l\x1b[?25h\n\x1b[8C\n\x1b[?25l\n\x1b[8D\x1b[1;35m&gt;&gt;&gt; \x1b[0msorte\n\x1b[9D\n\x1b[?12l\x1b[?25h\n\x1b[9C\n\x1b[?25l\n\x1b[9D\n\x1b[1;35m&gt;&gt;&gt; \x1b[0msorted\n\x1b[10D\n\x1b[?12l\x1b[?25h\n\x1b[10C\n\x1b[?25l\n\x1b[10D\n\x1b[1;35m&gt;&gt;&gt; \x1b[0msorted(\n\x1b[11D\n\x1b[?12l\x1b[?25h\n\x1b[11C\n\x1b[?25l\x1b[11D\n\x1b[1;35m&gt;&gt;&gt; \x1b[0msorted(d\n\x1b[12D\n\x1b[?12l\x1b[?25h\n\x1b[12C\n\x1b[?25l\n\x1b[12D\n\x1b[1;35m&gt;&gt;&gt; \x1b[0msorted(di\n\x1b[13D\n\x1b[?12l\x1b[?25h\n\x1b[13C\n\x1b[?25l\n\x1b[13D\n\x1b[1;35m&gt;&gt;&gt; \x1b[0msorted(dir\n\x1b[14D\n\x1b[?12l\x1b[?25h\n\x1b[14C\n\x1b[?25l\n\x1b[14D\n\x1b[1;35m&gt;&gt;&gt; \x1b[0msorted(dir(\n\x1b[15D\n\x1b[?12l\x1b[?25h\n\x1b[15C\n\x1b[?25l\n\x1b[15D\x1b[1;35m&gt;&gt;&gt; \x1b[0msorted(dir()\n\x1b[16D\n\x1b[?12l\x1b[?25h\n\x1b[16C\n\x1b[?25l\n\x1b[16D\n\x1b[1;35m&gt;&gt;&gt; \x1b[0msorted(dir())\n\x1b[17D\n\x1b[?12l\x1b[?25h\x1b[17C\n\x1b[17D\n\r\n\x1b[?2004l\n\x1b[?1l\x1b&gt;\n[\'__annotations__\', \'__builtins__\', \'__cached__\', \'__doc__\', \'__file__\', \'__loader__\', \'__name__\', \'__package__\', \'__spec__\', \'sys\', \'ver\']\n\r\n\n\x1b[?2004h\n\x1b[?1h\x1b=\n\x1b[?25l\n\x1b[1A\n\n\x1b[1;35m&gt;&gt;&gt; \x1b[0m\x1b[4D\n\x1b[?12l\x1b[?25h\x1b[4C\n\x1b[?25l\n\x1b[4D\x1b[1;35m&gt;&gt;&gt; \x1b[0me\n\x1b[5D\n\x1b[?12l\x1b[?25h\n\x1b[5C\n\x1b[?25l\n\x1b[5D\n\x1b[1;35m&gt;&gt;&gt; \x1b[0mex\n\x1b[6D\n\x1b[?12l\x1b[?25h\n\x1b[6C\n\x1b[?25l\n\x1b[6D\n\x1b[1;35m&gt;&gt;&gt; \x1b[0mexi\n\x1b[7D\n\x1b[?12l\x1b[?25h\n\x1b[7C\n\x1b[?25l\n\x1b[7D\n\x1b[1;35m&gt;&gt;&gt; \x1b[0mexit\n\x1b[8D\n\x1b[?12l\x1b[?25h\n\x1b[8C\n\x1b[8D\n\r\n\x1b[?2004l\n\x1b[?1l\x1b&gt;\n</failure></testcase><testcase name="test.test_pyrepl.test_pyrepl.TestPasteEvent.test_bracketed_paste" status="run" result="completed" time="0.006538" /><testcase name="test.test_pyrepl.test_pyrepl.TestPasteEvent.test_bracketed_paste_single_line" status="run" result="completed" time="0.002397" /><testcase name="test.test_pyrepl.test_pyrepl.TestPasteEvent.test_paste" status="run" result="completed" time="0.005941" /><testcase name="test.test_pyrepl.test_pyrepl.TestPasteEvent.test_paste_mid_newlines" status="run" result="completed" time="0.003722" /><testcase name="test.test_pyrepl.test_pyrepl.TestPasteEvent.test_paste_mid_newlines_not_in_paste_mode" status="run" result="completed" time="0.002970" /><testcase name="test.test_pyrepl.test_pyrepl.TestPasteEvent.test_paste_not_in_paste_mode" status="run" result="completed" time="0.004861" /><testcase name="test.test_pyrepl.test_pyrepl.TestPyReplAutoindent.test_auto_indent_continuation" status="run" result="completed" time="0.003370" /><testcase name="test.test_pyrepl.test_pyrepl.TestPyReplAutoindent.test_auto_indent_default" status="run" result="completed" time="0.000031" /><testcase name="test.test_pyrepl.test_pyrepl.TestPyReplAutoindent.test_auto_indent_ignore_comments" status="run" result="completed" time="0.002468" /><testcase name="test.test_pyrepl.test_pyrepl.TestPyReplAutoindent.test_auto_indent_multiline" status="run" result="completed" time="0.003269" /><testcase name="test.test_pyrepl.test_pyrepl.TestPyReplAutoindent.test_auto_indent_prev_block" status="run" result="completed" time="0.004474" /><testcase name="test.test_pyrepl.test_pyrepl.TestPyReplAutoindent.test_auto_indent_with_comment" status="run" result="completed" time="0.003093" /><testcase name="test.test_pyrepl.test_pyrepl.TestPyReplCompleter.test_completion_with_many_options" status="run" result="completed" time="0.069000" /><testcase name="test.test_pyrepl.test_pyrepl.TestPyReplCompleter.test_completion_with_warnings" status="run" result="completed" time="0.010297" /><testcase name="test.test_pyrepl.test_pyrepl.TestPyReplCompleter.test_empty_namespace_completion" status="run" result="completed" time="0.002534" /><testcase name="test.test_pyrepl.test_pyrepl.TestPyReplCompleter.test_global_namespace_completion" status="run" result="completed" time="0.002364" /><testcase name="test.test_pyrepl.test_pyrepl.TestPyReplCompleter.test_simple_completion" status="run" result="completed" time="0.003070" /><testcase name="test.test_pyrepl.test_pyrepl.TestPyReplCompleter.test_updown_arrow_with_completion_menu" status="run" result="completed" time="0.070086" /><testcase name="test.test_pyrepl.test_pyrepl.TestPyReplOutput.test_basic" status="run" result="completed" time="0.002362" /><testcase name="test.test_pyrepl.test_pyrepl.TestPyReplOutput.test_control_character" status="run" result="completed" time="0.002251" /><testcase name="test.test_pyrepl.test_pyrepl.TestPyReplOutput.test_history_navigation_with_down_arrow" status="run" result="completed" time="0.002272" /><testcase name="test.test_pyrepl.test_pyrepl.TestPyReplOutput.test_history_navigation_with_up_arrow" status="run" result="completed" time="0.002968" /><testcase name="test.test_pyrepl.test_pyrepl.TestPyReplOutput.test_history_search" status="run" result="completed" time="0.003011" /><testcase name="test.test_pyrepl.test_pyrepl.TestPyReplOutput.test_multiline_edit" status="run" result="completed" time="0.003688" /><testcase name="test.test_pyrepl.test_reader.TestReader.test_calc_screen_backspace" status="run" result="completed" time="0.008412" /><testcase name="test.test_pyrepl.test_reader.TestReader.test_calc_screen_backspace_in_second_line_after_wrap" status="run" result="completed" time="0.005724" /><testcase name="test.test_pyrepl.test_reader.TestReader.test_calc_screen_wrap_removes_after_backspace" status="run" result="completed" time="0.006226" /><testcase name="test.test_pyrepl.test_reader.TestReader.test_calc_screen_wrap_simple" status="run" result="completed" time="0.012267" /><testcase name="test.test_pyrepl.test_reader.TestReader.test_calc_screen_wrap_three_lines" status="run" result="completed" time="0.007729" /><testcase name="test.test_pyrepl.test_reader.TestReader.test_calc_screen_wrap_three_lines_mixed_character" status="run" result="completed" time="0.009244" /><testcase name="test.test_pyrepl.test_reader.TestReader.test_calc_screen_wrap_wide_characters" status="run" result="completed" time="0.005790" /><testcase name="test.test_pyrepl.test_reader.TestReader.test_completions_updated_on_key_press" status="run" result="completed" time="0.012754" /><testcase name="test.test_pyrepl.test_reader.TestReader.test_input_hook_is_called_if_set" status="run" result="completed" time="0.005048" /><testcase name="test.test_pyrepl.test_reader.TestReader.test_key_press_on_tab_press_once" status="run" result="completed" time="0.008906" /><testcase name="test.test_pyrepl.test_reader.TestReader.test_keyboard_interrupt_clears_screen" status="run" result="completed" time="0.016683" /><testcase name="test.test_pyrepl.test_reader.TestReader.test_newline_within_block_trailing_whitespace" status="run" result="completed" time="0.010101" /><testcase name="test.test_pyrepl.test_reader.TestReader.test_prompt_length" status="run" result="completed" time="0.000107" /><testcase name="test.test_pyrepl.test_reader.TestReader.test_setpos_for_xy_simple" status="run" result="completed" time="0.005056" /><testcase name="test.test_pyrepl.test_reader.TestReader.test_setpos_from_xy_after_wrap" status="run" result="completed" time="0.007599" /><testcase name="test.test_pyrepl.test_reader.TestReader.test_setpos_from_xy_multiple_lines" status="run" result="completed" time="0.008392" /><testcase name="test.test_pyrepl.test_reader.TestReader.test_setpos_fromxy_in_wrapped_line" status="run" result="completed" time="0.007519" /><testcase name="test.test_pyrepl.test_reader.TestReader.test_up_arrow_after_ctrl_r" status="run" result="completed" time="0.004973" /><testcase name="test.test_pyrepl.test_unix_console.TestConsole.test_cursor_back_write" status="run" result="completed" time="0.003678" /><testcase name="test.test_pyrepl.test_unix_console.TestConsole.test_cursor_left" status="run" result="completed" time="0.003376" /><testcase name="test.test_pyrepl.test_unix_console.TestConsole.test_cursor_left_right" status="run" result="completed" time="0.004222" /><testcase name="test.test_pyrepl.test_unix_console.TestConsole.test_cursor_up" status="run" result="completed" time="0.003912" /><testcase name="test.test_pyrepl.test_unix_console.TestConsole.test_cursor_up_down" status="run" result="completed" time="0.004033" /><testcase name="test.test_pyrepl.test_unix_console.TestConsole.test_multiline_function_move_up_down_short_terminal" status="run" result="completed" time="0.006460" /><testcase name="test.test_pyrepl.test_unix_console.TestConsole.test_multiline_function_move_up_short_terminal" status="run" result="completed" time="0.005326" /><testcase name="test.test_pyrepl.test_unix_console.TestConsole.test_resize_bigger_on_multiline_function" status="run" result="completed" time="0.006337" /><testcase name="test.test_pyrepl.test_unix_console.TestConsole.test_resize_smaller_on_multiline_function" status="run" result="completed" time="0.007100" /><testcase name="test.test_pyrepl.test_unix_console.TestConsole.test_simple_addition" status="run" result="completed" time="0.003798" /><testcase name="test.test_pyrepl.test_unix_console.TestConsole.test_wrap" status="run" result="completed" time="0.004051" /><testcase name="test.test_pyrepl.test_unix_eventqueue.TestUnixEventQueue.test_empty" status="run" result="completed" time="0.000353" /><testcase name="test.test_pyrepl.test_unix_eventqueue.TestUnixEventQueue.test_flush_buf" status="run" result="completed" time="0.000214" /><testcase name="test.test_pyrepl.test_unix_eventqueue.TestUnixEventQueue.test_get" status="run" result="completed" time="0.000202" /><testcase name="test.test_pyrepl.test_unix_eventqueue.TestUnixEventQueue.test_insert" status="run" result="completed" time="0.000199" /><testcase name="test.test_pyrepl.test_unix_eventqueue.TestUnixEventQueue.test_push_special_key" status="run" result="completed" time="0.000227" /><testcase name="test.test_pyrepl.test_unix_eventqueue.TestUnixEventQueue.test_push_unrecognized_escape_sequence" status="run" result="completed" time="0.000224" /><testcase name="test.test_pyrepl.test_unix_eventqueue.TestUnixEventQueue.test_push_with_key_in_keymap" status="run" result="completed" time="0.000583" /><testcase name="test.test_pyrepl.test_unix_eventqueue.TestUnixEventQueue.test_push_with_keymap_in_keymap" status="run" result="completed" time="0.000576" /><testcase name="test.test_pyrepl.test_unix_eventqueue.TestUnixEventQueue.test_push_with_keymap_in_keymap_and_escape" status="run" result="completed" time="0.001436" /><testcase name="test.test_pyrepl.test_unix_eventqueue.TestUnixEventQueue.test_push_without_key_in_keymap" status="run" result="completed" time="0.000560" /><testcase name="unittest.loader.ModuleSkipped.test.test_pyrepl.test_windows_console" status="run" result="completed" time="0.000009"><skipped>test only relevant on win32</skipped></testcase></testsuite>']
Kill <WorkerThread #1 running test=test.test_asyncio.test_sock_lowlevel pid=33356 time=929 ms> process group
Kill <WorkerThread #2 running test=test.test_concurrent_futures.test_shutdown pid=30101 time=10.4 sec> process group
Kill <WorkerThread #3 running test=test.test_multiprocessing_forkserver.test_threads pid=31858 time=5.5 sec> process group
Kill <WorkerThread #4 running test=test_tools pid=28280 time=14.3 sec> process group
Kill <WorkerThread #5 running test=test_capi pid=31727 time=6.1 sec> process group
Kill <WorkerThread #6 running test=test_importlib pid=33753 time=8 ms> process group
Traceback (most recent call last):
  File "/home/dje/cpython-buildarea/3.13.edelsohn-sles-z/build/Lib/runpy.py", line 198, in _run_module_as_main
    return _run_code(code, main_globals, None,
                     "__main__", mod_spec)
  File "/home/dje/cpython-buildarea/3.13.edelsohn-sles-z/build/Lib/runpy.py", line 88, in _run_code
    exec(code, run_globals)
    ~~~~^^^^^^^^^^^^^^^^^^^
  File "/home/dje/cpython-buildarea/3.13.edelsohn-sles-z/build/Lib/test/__main__.py", line 2, in <module>
    main(_add_python_opts=True)
    ~~~~^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/dje/cpython-buildarea/3.13.edelsohn-sles-z/build/Lib/test/libregrtest/main.py", line 739, in main
    Regrtest(ns, _add_python_opts=_add_python_opts).main(tests=tests)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
  File "/home/dje/cpython-buildarea/3.13.edelsohn-sles-z/build/Lib/test/libregrtest/main.py", line 731, in main
    exitcode = self.run_tests(selected, tests)
  File "/home/dje/cpython-buildarea/3.13.edelsohn-sles-z/build/Lib/test/libregrtest/main.py", line 568, in run_tests
    return self._run_tests(selected, tests)
           ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
  File "/home/dje/cpython-buildarea/3.13.edelsohn-sles-z/build/Lib/test/libregrtest/main.py", line 528, in _run_tests
    self._run_tests_mp(runtests, self.num_workers)
    ~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/dje/cpython-buildarea/3.13.edelsohn-sles-z/build/Lib/test/libregrtest/main.py", line 426, in _run_tests_mp
    RunWorkers(num_workers, runtests, self.logger, self.results).run()
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/home/dje/cpython-buildarea/3.13.edelsohn-sles-z/build/Lib/test/libregrtest/run_workers.py", line 600, in run
    result = self._process_result(item)
  File "/home/dje/cpython-buildarea/3.13.edelsohn-sles-z/build/Lib/test/libregrtest/run_workers.py", line 571, in _process_result
    self.results.accumulate_result(result, self.runtests)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/dje/cpython-buildarea/3.13.edelsohn-sles-z/build/Lib/test/libregrtest/results.py", line 132, in accumulate_result
    self.add_junit(xml_data)
    ~~~~~~~~~~~~~~^^^^^^^^^^
  File "/home/dje/cpython-buildarea/3.13.edelsohn-sles-z/build/Lib/test/libregrtest/results.py", line 165, in add_junit
    self.testsuite_xml.append(ET.fromstring(e))
                              ~~~~~~~~~~~~~^^^
  File "/home/dje/cpython-buildarea/3.13.edelsohn-sles-z/build/Lib/xml/etree/ElementTree.py", line 1342, in XML
    parser.feed(text)
    ~~~~~~~~~~~^^^^^^
xml.etree.ElementTree.ParseError: not well-formed (invalid token): line 1, column 8017
make: *** [Makefile:2244: buildbottest] Error 1

Cannot open file '/home/dje/cpython-buildarea/3.13.edelsohn-sles-z/build/test-results.xml' for upload
All reactions

Sorry, something went wrong.

Uh oh!

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

mrahtz pushed a commit to mrahtz/cpython that referenced this pull request Jun 30, 2024
@ambv @mrahtz
pythongh-118908: Use __main__ for the default PyREPL namespace (pytho…
0256ec0
…n#121054)
estyxx pushed a commit to estyxx/cpython that referenced this pull request Jul 17, 2024
@ambv @estyxx
pythongh-118908: Use __main__ for the default PyREPL namespace (pytho…
dcb1755
…n#121054)
@ambv
ambv deleted the keep-using-dunder-main branch October 7, 2024 18:30
@whitphx whitphx mentioned this pull request May 19, 2025
gh-127960 Fix the REPL to set the correct namespace by setting the correct __main__ module #134275
Merged
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

@lysnikolaou lysnikolaou lysnikolaou approved these changes
@pablogsal pablogsal Awaiting requested review from pablogsal pablogsal is a code owner

Uh oh!

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

Assignees

No one assigned

Labels

skip news topic-repl Related to the interactive shell

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

@ambv @bedevere-bot @lysnikolaou
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.