Skip to content

gh-132775: Add _PyFunction_GetXIData() #133481

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged

Conversation

ericsnowcurrently
Copy link
Member

@ericsnowcurrently ericsnowcurrently commented May 6, 2025

(This is based on gh-133480, thus only the last commit.)

@ericsnowcurrently ericsnowcurrently force-pushed the add-pyfunction-getxidata branch from d762347 to 4a195d8 Compare May 8, 2025 16:07
@ericsnowcurrently ericsnowcurrently marked this pull request as ready for review May 8, 2025 16:08
@ericsnowcurrently ericsnowcurrently added the needs backport to 3.14 bugs and security fixes label May 8, 2025
if (_PyFunction_VerifyStateless(tstate, func) < 0) {
PyObject *cause = _PyErr_GetRaisedException(tstate);
assert(cause != NULL);
const char *msg = "non-stateless functions are not shareable";
Copy link
Contributor

Choose a reason for hiding this comment

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

Not confusing, but the triple negation (non, less, not) looks a bit redundant. I do not think NotShareableError needs "not shareable" in the message.

@ericsnowcurrently ericsnowcurrently enabled auto-merge (squash) May 12, 2025 21:44
@ericsnowcurrently ericsnowcurrently merged commit 8cf4947 into python:main May 12, 2025
38 checks passed
@miss-islington-app
Copy link

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

miss-islington pushed a commit to miss-islington/cpython that referenced this pull request May 12, 2025
@bedevere-app
Copy link

bedevere-app bot commented May 12, 2025

GH-133955 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 May 12, 2025
@ericsnowcurrently ericsnowcurrently deleted the add-pyfunction-getxidata branch May 12, 2025 22:13
@bedevere-bot
Copy link

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

Hi! The buildbot AMD64 Debian root 3.x (tier-1) has failed when building commit 8cf4947.

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

Failed tests:

  • test_interpreters

Failed subtests:

  • test_build_c11 - test.test_cext.TestExt.test_build_c11
  • test_threads - test.test_io.CBufferedReaderTest.test_threads
  • test_first_completed_some_already_completed - test.test_concurrent_futures.test_wait.ProcessPoolForkserverWaitTest.test_first_completed_some_already_completed
  • test_build - test.test_cext.TestExt.test_build
  • test_build_cpp11 - test.test_cppext.TestCPPExt.test_build_cpp11

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

==

Click to see traceback logs
Traceback (most recent call last):
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/runpy.py", line 198, in _run_module_as_main
    return _run_code(code, main_globals, None,
                     "__main__", mod_spec)
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/runpy.py", line 88, in _run_code
    exec(code, run_globals)
    ~~~~^^^^^^^^^^^^^^^^^^^
  File "/root/buildarea/3.x.angelico-debian-amd64/build/build/test_python_1383957æ/tempcwd/env/lib/python3.15/site-packages/pip/__main__.py", line 22, in <module>
    from pip._internal.cli.main import main as _main
  File "/root/buildarea/3.x.angelico-debian-amd64/build/build/test_python_1383957æ/tempcwd/env/lib/python3.15/site-packages/pip/_internal/__init__.py", line 3, in <module>
    from pip._internal.utils import _log
  File "/root/buildarea/3.x.angelico-debian-amd64/build/build/test_python_1383957æ/tempcwd/env/lib/python3.15/site-packages/pip/_internal/utils/_log.py", line 8, in <module>
    import logging
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/logging/__init__.py", line 26, in <module>
    import sys, os, time, io, re, traceback, warnings, weakref, collections.abc
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/traceback.py", line 13, in <module>
    import _colorize
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/_colorize.py", line 6, in <module>
    from dataclasses import dataclass, field, Field
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/dataclasses.py", line 5, in <module>
    import inspect
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/inspect.py", line 3317, in <module>
    class BufferFlags(enum.IntFlag):
    ...<18 lines>...
        WRITE = 0x200
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/inspect.py", line 3319, in BufferFlags
    WRITABLE = 0x1
    ^^^^^^^^
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/enum.py", line 398, in __setitem__
    elif self._cls_name is not None and _is_internal_class(self._cls_name, value):
                                        ^^^^^^^^^^^^^^^^^^
NameError: name '_cls_name' is not defined. Did you mean: 'self._cls_name'?
ERROR


Traceback.test_colorized_traceback_is_the_default) ... ok


TracebackLegacyErrorCaretTests.test_caret_for_binary_operators_multiline) ... ok


TracebackException.test_traceback_header) ... ok


TracebackErrorCaretTests.test_caret_for_subscript) ... ok


TracebackLegacyErrorCaretTests.test_caret_multiline_expression_bin_op) ... ok


TracebackCases.test_format_exception_group_syntax_error_with_custom_values) ... ok


TracebackException.test_comparison_params_variations) ... ok


TracebackException.test_no_locals) ... ok


TracebackCases.test_format_exception_group_explicit_class) ... ok


TracebackException_ExceptionGroups.test_exception_group_format_exception_only) ... ok


TracebackException.test_context) ... ok


TracebackLegacyErrorCaretTests.test_caret_multiline_expression_syntax_error) ... ok


TracebackErrorCaretTests.test_caret_for_binary_operators_with_unicode) ... ok


TracebackCases.test_print_exception) ... ok


TracebackException.test_print) ... ok


Traceback (most recent call last):
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/test/test_io.py", line 1633, in test_threads
    random.shuffle(l)
    ~~~~~~~~~~~~~~^^^
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/random.py", line 363, in shuffle
    x[i], x[j] = x[j], x[i]
                 ~^^^
TypeError: list indices must be integers or slices, not Random


TracebackLegacyErrorCaretTests.test_many_lines_binary_op) ... ok


TracebackFormat.test_unhashable) ... ok


TracebackErrorCaretTests.test_caret_for_binary_operators_two_char) ... ok


TracebackErrorCaretTests.test_specialization_variations) ... ok


TracebackLegacyErrorCaretTests.test_specialization_variations) ... ok


TracebackErrorCaretTests.test_memory_error) ... ok


TracebackErrorCaretTests.test_caret_multiline_expression) ... ok


TracebackErrorCaretTests.test_byte_offset_with_wide_characters_term_highlight) ... ok


TracebackCases.test_format_exception_group_with_note) ... ok


TracebackException.test_no_refs_to_exception_and_traceback_objects) ... ok


TracebackException.test_unhashable) ... ok


Traceback (most recent call last):
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/test/string_tests.py", line 347, in test_find_periodic_pattern
    check_pattern(rr)
    ~~~~~~~~~~~~~^^^^
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/test/string_tests.py", line 339, in check_pattern
    right = ''.join(choices('abcdef', k=rr(2000)))
                    ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/random.py", line 473, in choices
    return [population[floor(random() * n)] for i in _repeat(None, k)]
                             ~~~~~~~~~^~~
TypeError: unsupported operand type(s) for *: 'float' and 'Random'


TracebackCases.test_caret) ... ok


TracebackErrorCaretTests.test_caret_for_binary_operators_with_spaces_and_parenthesis) ... ok


TracebackCases.test_print_last) ... ok


TracebackErrorCaretTests.test_byte_offset_wide_chars_subscript) ... ok


TracebackFormat.test_recursive_traceback) ... ok


TracebackCases.test_extract_stack) ... ok


TracebackErrorCaretTests.test_byte_offset_with_emojis_term_highlight) ... ok


TracebackErrorCaretTests.test_line_with_unicode) ... ok


TracebackException.test_compact_with_cause) ... ok


TracebackCases.test_format_exception_group_syntax_error) ... ok


TracebackLegacyErrorCaretTests.test_byte_offset_with_wide_characters_term_highlight) ... ok


TracebackErrorCaretTests.test_byte_offset_multiline) ... ok


TracebackCases.test_encoded_file) ... ok


TracebackCases.test_recursion_error_during_traceback) ... ok


Traceback (most recent call last):
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/test/test_concurrent_futures/test_wait.py", line 65, in test_first_completed_some_already_completed
    future1.result()  # wait for job to finish
    ~~~~~~~~~~~~~~^^
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/concurrent/futures/_base.py", line 450, in result
    return self.__get_result()
           ~~~~~~~~~~~~~~~~~^^
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/concurrent/futures/_base.py", line 395, in __get_result
    raise self._exception
concurrent.futures.process.BrokenProcessPool: A process in the process pool was terminated abruptly while the future was running or pending.


TracebackErrorCaretTests.test_caret_multiline_expression_syntax_error) ... ok


TracebackLegacyErrorCaretTests.test_caret_for_binary_operators_with_spaces_and_parenthesis) ... ok


TracebackLegacyErrorCaretTests.test_caret_for_call_unicode) ... ok


TracebackLegacyErrorCaretTests.test_byte_offset_with_wide_characters_middle) ... ok


TracebackErrorCaretTests.test_basic_caret) ... ok


TracebackLegacyErrorCaretTests.test_caret_for_subscript) ... ok


TracebackFormat.test_print_stack) ... ok


TracebackLegacyErrorCaretTests.test_anchors_for_simple_return_statements_are_elided) ... ok


TracebackFormat.test_traceback_format) ... ok


TracebackException.test_smoke_builtin) ... ok


TracebackLegacyErrorCaretTests.test_traceback_very_long_line) ... ok


TracebackException_ExceptionGroups.test_max_group_width) ... ok


TracebackException.test_long_context_chain) ... ok


TracebackCases.test_format_exception_group_with_tracebacks) ... ok


TracebackLegacyErrorCaretTests.test_byte_offset_with_emojis_term_highlight) ... ok


TracebackErrorCaretTests.test_many_lines_binary_op) ... ok


TracebackLegacyErrorCaretTests.test_caret_for_subscript_unicode) ... ok


TracebackCases.test_format_exception_only_bad__str__) ... ok


TracebackCases.test_bad_indentation) ... ok


TracebackLegacyErrorCaretTests.test_basic_caret) ... ok


TracebackErrorCaretTests.test_caret_for_call_unicode) ... ok


TracebackLegacyErrorCaretTests.test_caret_for_binary_operators_multiline_two_char) ... ok


TracebackErrorCaretTests.test_caret_exception_group) ... ok


Traceback (most recent call last):
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/test/test_cppext/__init__.py", line 43, in test_build_cpp11
    self.check_build('_testcpp11ext', std='c++11')
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/test/test_cppext/__init__.py", line 58, in check_build
    self._check_build(extension_name, python_exe,
    ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
                      std=std, limited=limited)
                      ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/test/test_cppext/__init__.py", line 95, in _check_build
    run_cmd('Install', cmd)
    ~~~~~~~^^^^^^^^^^^^^^^^
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/test/test_cppext/__init__.py", line 76, in run_cmd
    subprocess.run(cmd, check=True, env=env)
    ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/subprocess.py", line 577, in run
    raise CalledProcessError(retcode, process.args,
                             output=stdout, stderr=stderr)
subprocess.CalledProcessError: Command '['/root/buildarea/3.x.angelico-debian-amd64/build/build/test_python_1383957æ/tempcwd/env/bin/python', '-X', 'dev', '-m', 'pip', 'install', '--no-build-isolation', '/root/buildarea/3.x.angelico-debian-amd64/build/build/test_python_1383957æ/tempcwd/pkg', '-v']' returned non-zero exit status 1.


TracebackLegacyErrorCaretTests.test_multiline_method_call_c) ... ok


TracebackException.test_cause) ... ok


TracebackLegacyErrorCaretTests.test_many_lines_no_caret) ... ok


TracebackCases.test_format_exception_group_multiple_exceptions) ... ok


TracebackCases.test_base_exception) ... ok


TracebackErrorCaretTests.test_many_lines_no_caret) ... ok


TracebackLegacyErrorCaretTests.test_caret_for_binary_operators_with_unicode) ... ok


TracebackException_ExceptionGroups.test_dont_swallow_subexceptions_of_falsey_exceptiongroup) ... ok


TracebackException.test_no_save_exc_type) ... ok


TracebackException_ExceptionGroups.test_exception_group_format_exception_onlyi_recursive) ... ok


TracebackException.test_lookup_lines) ... ok


TracebackLegacyErrorCaretTests.test_caret_multiline_expression) ... ok


TracebackLegacyErrorCaretTests.test_secondary_caret_not_elided) ... ok


TracebackException.test_compact_no_cause) ... ok


TracebackException.test_comparison_equivalent_exceptions_are_equal) ... ok


TracebackErrorCaretTests.test_caret_for_binary_operators_multiline_with_unicode) ... ok


TracebackLegacyErrorCaretTests.test_decorator_application_lineno_correct) ... ok


TracebackCases.test_signatures) ... ok


TracebackLegacyErrorCaretTests.test_many_lines) ... ok


TracebackException_ExceptionGroups.test_max_group_depth) ... ok


TracebackLegacyErrorCaretTests.test_memory_error) ... ok


TracebackErrorCaretTests.test_caret_for_binary_operators_multiline) ... ok


TracebackCases.test_format_exception_group_multiline_messages) ... ok


TracebackLegacyErrorCaretTests.test_multiline_method_call_a) ... ok


TracebackLegacyErrorCaretTests.test_caret_for_binary_operators_multiline_with_unicode) ... ok


TracebackErrorCaretTests.test_multiline_method_call_a) ... ok


TracebackErrorCaretTests.test_wide_characters_unicode_with_problematic_byte_offset) ... ok


TracebackCases.test_print_exception_exc) ... ok


TracebackErrorCaretTests.test_many_lines) ... ok


TracebackErrorCaretTests.test_caret_multiline_expression_bin_op) ... ok


TracebackLegacyErrorCaretTests.test_caret_exception_group) ... ok


TracebackCases.test_format_exception_group_with_cause) ... ok


TracebackErrorCaretTests.test_traceback_specialization_with_syntax_error) ... ok


TracebackFormat.test_exception_group_deep_recursion_capi) ... ok


TracebackErrorCaretTests.test_secondary_caret_not_elided) ... ok


TracebackLegacyErrorCaretTests.test_wide_characters_unicode_with_problematic_byte_offset) ... ok


TracebackCases.test_format_exception_only_exc) ... ok


TracebackCases.test_format_exception_group_nested_with_notes) ... ok


TracebackCases.test_clear) ... ok


TracebackErrorCaretTests.test_anchors_for_simple_assign_statements_are_elided) ... ok


TracebackException.test_locals) ... ok


TracebackFormat.test_print_exception_bad_type_python) ... ok


Traceback.test_colorized_traceback_from_exception_group) ... ok


TracebackErrorCaretTests.test_multiline_method_call_c) ... ok


TracebackException_ExceptionGroups.test_exception_group_format) ... ok


TracebackLegacyErrorCaretTests.test_caret_for_binary_operators) ... ok


TracebackErrorCaretTests.test_caret_for_call_with_spaces_and_parenthesis) ... ok


TracebackException.test_limit) ... ok


TracebackFormat.test_exception_group_deep_recursion_traceback) ... ok


TracebackLegacyErrorCaretTests.test_caret_for_subscript_multiline) ... ok


TracebackLegacyErrorCaretTests.test_caret_for_subscript_with_spaces_and_parenthesis) ... ok


TracebackErrorCaretTests.test_caret_for_subscript_unicode) ... ok


TracebackCases.test_format_exception_exc) ... ok


TracebackCases.test_no_caret_with_no_debug_ranges_flag_python_traceback) ... ok


TracebackErrorCaretTests.test_caret_for_binary_operators) ... ok


TracebackErrorCaretTests.test_caret_for_subscript_multiline) ... ok


TracebackFormat.test_format_stack) ... ok


TracebackFormat.test_print_exception_bad_type_capi) ... ok


Traceback.test_colorized_syntax_error) ... ok


TracebackLegacyErrorCaretTests.test_caret_for_call_multiline) ... ok


TracebackFormat.test_traceback_format_with_cleared_frames) ... ok


TracebackErrorCaretTests.test_anchors_for_simple_return_statements_are_elided) ... ok


Traceback.test_colorized_traceback) ... ok


TracebackException.test_comparison_basic) ... ok


TracebackException.test_from_exception) ... ok


TracebackFormat.test_stack_format) ... ok


TracebackErrorCaretTests.test_caret_for_call_multiline) ... ok


TracebackErrorCaretTests.test_caret_for_subscript_with_spaces_and_parenthesis) ... ok


TracebackLegacyErrorCaretTests.test_byte_offset_wide_chars_subscript) ... ok


TracebackErrorCaretTests.test_caret_for_binary_operators_multiline_two_char) ... ok


TracebackException.test_smoke_user_exception) ... ok


TracebackLegacyErrorCaretTests.test_traceback_specialization_with_syntax_error) ... ok


Traceback (most recent call last):
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/test/test_cext/__init__.py", line 37, in test_build_c11
    self.check_build('_test_c11_cext', std='c11')
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/test/test_cext/__init__.py", line 56, in check_build
    with support.setup_venv_with_pip_setuptools(venv_dir) as python_exe:
         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/contextlib.py", line 141, in __enter__
    return next(self.gen)
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/test/support/__init__.py", line 2458, in setup_venv_with_pip_setuptools
    run_command(cmd)
    ~~~~~~~~~~~^^^^^
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/test/support/__init__.py", line 2448, in run_command
    subprocess.run(cmd, check=True)
    ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/subprocess.py", line 577, in run
    raise CalledProcessError(retcode, process.args,
                             output=stdout, stderr=stderr)
subprocess.CalledProcessError: Command '['/root/buildarea/3.x.angelico-debian-amd64/build/python', '-X', 'dev', '-m', 'venv', 'env']' returned non-zero exit status 1.


TracebackCases.test_format_exception_group) ... ok


TracebackErrorCaretTests.test_byte_offset_with_wide_characters_middle) ... ok


TracebackLegacyErrorCaretTests.test_byte_offset_multiline) ... ok


TracebackLegacyErrorCaretTests.test_caret_for_call_with_spaces_and_parenthesis) ... ok


TracebackErrorCaretTests.test_traceback_very_long_line) ... ok


TracebackLegacyErrorCaretTests.test_caret_for_binary_operators_two_char) ... ok


TracebackCases.test_exception_is_None) ... ok


TracebackErrorCaretTests.test_decorator_application_lineno_correct) ... ok


TracebackLegacyErrorCaretTests.test_caret_for_call) ... ok


TracebackException_ExceptionGroups.test_comparison) ... ok


TracebackException_ExceptionGroups.test_exception_group_construction) ... ok


TracebackCases.test_format_exception_group_multiline2_messages) ... ok


TracebackErrorCaretTests.test_caret_in_type_annotation) ... ok


TracebackErrorCaretTests.test_multiline_method_call_b) ... ok


Traceback (most recent call last):
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/test/test_cext/__init__.py", line 34, in test_build
    self.check_build('_test_cext')
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/test/test_cext/__init__.py", line 56, in check_build
    with support.setup_venv_with_pip_setuptools(venv_dir) as python_exe:
         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/contextlib.py", line 141, in __enter__
    return next(self.gen)
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/test/support/__init__.py", line 2458, in setup_venv_with_pip_setuptools
    run_command(cmd)
    ~~~~~~~~~~~^^^^^
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/test/support/__init__.py", line 2448, in run_command
    subprocess.run(cmd, check=True)
    ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/subprocess.py", line 577, in run
    raise CalledProcessError(retcode, process.args,
                             output=stdout, stderr=stderr)
subprocess.CalledProcessError: Command '['/root/buildarea/3.x.angelico-debian-amd64/build/python', '-X', 'dev', '-m', 'venv', 'env']' returned non-zero exit status 1.


TracebackCases.test_print_traceback_at_exit) ... ok


TracebackLegacyErrorCaretTests.test_line_with_unicode) ... ok


TracebackCases.test_format_exception_group_without_show_group) ... ok


TracebackCases.test_no_caret_with_no_debug_ranges_flag) ... ok


TracebackLegacyErrorCaretTests.test_caret_in_type_annotation) ... ok


TracebackLegacyErrorCaretTests.test_multiline_method_call_b) ... ok


TracebackLegacyErrorCaretTests.test_anchors_for_simple_assign_statements_are_elided) ... ok


TracebackCases.test_format_base_exception_group) ... ok


TracebackCases.test_nocaret) ... ok


TracebackException.test_dont_swallow_cause_or_context_of_falsey_exception) ... ok


TracebackErrorCaretTests.test_caret_for_call) ... ok

ericsnowcurrently added a commit that referenced this pull request May 12, 2025
(cherry picked from commit 8cf4947, AKA gh-133481)

Co-authored-by: Eric Snow <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants