Skip to content

Support Python 3.14.0rc2, test on CI - #14967

Merged
krassowski merged 13 commits into
ipython:mainfrom
krassowski:python-3.14-dev
Aug 26, 2025
Merged

krassowski merged 13 commits into
ipython:mainfrom
krassowski:python-3.14-dev

Conversation

@krassowski

Copy link
Copy Markdown
Member

Fixes #14858

@krassowski

Copy link
Copy Markdown
Member Author

test_eval_formatter failure:

FAILED tests/test_text.py::test_eval_formatter -   File "<string>", line 1
    0[n//i for i in range(1,8)]
           ^^^
SyntaxError: invalid syntax

is due to this change: python/cpython#21767

It gives [] a semantic meaning so f.format("{[n//i for i in range(1,8)]}", **ns) cannot work without overriding vformat implementation.

I am not sure why IPython ships EvalFormatter and what usage is there, and if we should adopt the new upstream behaviour or preserve the old one. It looks like it is exclusively used by ipyparallel and its forks https://github.com/search?q=%22from+IPython.utils.text+import+EvalFormatter%22&type=code

@krassowski

Copy link
Copy Markdown
Member Author

We are down to 11 failing tests, some of which are potential jedi upstream issues, some related to debugger:

FAILED tests/test_completer.py::TestCompleter::test_all_completions_dups - AssertionError: (True, [])
assert [] == ['TestClass']
  
  Right contains one more item: 'TestClass'
  
  Full diff:
  + []
  - [
  -     'TestClass',
  - ]
FAILED tests/test_completer.py::TestCompleter::test_completion_have_signature - StopIteration
FAILED tests/test_completer.py::TestCompleter::test_deduplicate_completions - AssertionError: Completions (Z.z<tab>) correctly deduplicate: [] 
assert 0 == 1
 +  where 0 = len([])
FAILED tests/test_completer.py::TestCompleter::test_greedy_completions - AssertionError: <Completion start=5 end=5 text='real' type='?', signature='?',> not found in []
FAILED tests/test_completer.py::TestCompleter::test_jedi - AssertionError: jedi >0.9 should complete and not crash
assert <Completion start=6 end=6 text='real' type='?', signature='?',> in set()
 +  where <Completion start=6 end=6 text='real' type='?', signature='?',> = Completion(6, 6, 'real')
FAILED tests/test_completer.py::TestCompleter::test_matcher_suppression_with_jedi - AssertionError: 'keys' not found in []
FAILED tests/test_debugger.py::tests.test_debugger.can_exit
FAILED tests/test_debugger.py::tests.test_debugger.can_quit
FAILED tests/test_debugger.py::tests.test_debugger.test_ipdb_magics2
FAILED tests/test_debugger.py::test_decorator_skip_with_breakpoint - pexpect.exceptions.TIMEOUT: Timeout exceeded.
FAILED tests/test_text.py::test_eval_formatter -   File "<string>", line 1
    0[n//i for i in range(1,8)]
           ^^^
SyntaxError: invalid syntax

@krassowski

Copy link
Copy Markdown
Member Author

Upstream release of parso solved the completer failures, we are down to 5:

FAILED tests/test_debugger.py::tests.test_debugger.can_exit
FAILED tests/test_debugger.py::tests.test_debugger.can_quit
FAILED tests/test_debugger.py::tests.test_debugger.test_ipdb_magics2
FAILED tests/test_debugger.py::test_decorator_skip_with_breakpoint - pexpect.exceptions.TIMEOUT: Timeout exceeded.
FAILED tests/test_text.py::test_eval_formatter -   File "<string>", line 1
    0[n//i for i in range(1,8)]
           ^^^
SyntaxError: invalid syntax
=================== 5 failed, 1415 passed, 136 skipped, 3 xfailed, 42 warnings in 134.82s (0:02:14) ====================

@krassowski
krassowski marked this pull request as ready for review August 25, 2025 15:10
@krassowski krassowski changed the title Test Python 3.14 dev on CI Support Python 3.14.0rc2, test on CI Aug 25, 2025
@krassowski krassowski added this to the 9.5 milestone Aug 25, 2025
@krassowski
krassowski merged commit 57b0555 into ipython:main Aug 26, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Test failures with Python 3.14 alpha 6

1 participant