New Python REPL double-prints completion suggestions
未关闭
还没有人认领这个 Issue。
stdlib
topic-repl
type-bug
- 主要语言
- Python
- 星标
- 77.2k
- 派生
- 35.9k
- PR 合并指标
- PR 指标待抓取
描述
Bug report
Bug description:
If a keyboard interrupt is given while TAB autocomplete suggestions are being displayed, they are re-printed also below the last line, and continue to be re-printed as long as new keyboard interrupts are given.
after the keystrokes int.<TAB><TAB>
int.as_integer_ratio( int.bit_length( int.denominator int.imag int.mro() int.real
int.bit_count( int.conjugate( int.from_bytes( int.is_integer( int.numerator int.to_bytes(
>>> int.
then <CTRL-C>
int.as_integer_ratio( int.bit_length( int.denominator int.imag int.mro() int.real
int.bit_count( int.conjugate( int.from_bytes( int.is_integer( int.numerator int.to_bytes(
>>> int.
KeyboardInterrupt
int.as_integer_ratio( int.bit_length( int.denominator int.imag int.mro() int.real
int.bit_count( int.conjugate( int.from_bytes( int.is_integer( int.numerator int.to_bytes(
>>>
another <CTRL-C>
int.as_integer_ratio( int.bit_length( int.denominator int.imag int.mro() int.real
int.bit_count( int.conjugate( int.from_bytes( int.is_integer( int.numerator int.to_bytes(
>>> int.
KeyboardInterrupt
int.as_integer_ratio( int.bit_length( int.denominator int.imag int.mro() int.real
int.bit_count( int.conjugate( int.from_bytes( int.is_integer( int.numerator int.to_bytes(
>>>
KeyboardInterrupt
int.as_integer_ratio( int.bit_length( int.denominator int.imag int.mro() int.real
int.bit_count( int.conjugate( int.from_bytes( int.is_integer( int.numerator int.to_bytes(
>>>
<ENTER> makes the last set of printed suggestions disappear, as does typing any printing characters.
int.as_integer_ratio( int.bit_length( int.denominator int.imag int.mro() int.real
int.bit_count( int.conjugate( int.from_bytes( int.is_integer( int.numerator int.to_bytes(
>>> int.
KeyboardInterrupt
int.as_integer_ratio( int.bit_length( int.denominator int.imag int.mro() int.real
int.bit_count( int.conjugate( int.from_bytes( int.is_integer( int.numerator int.to_bytes(
>>>
KeyboardInterrupt
>>>
>>>
CPython versions tested on:
3.14
Operating systems tested on:
macOS
Linked PRs
- gh-128442
- gh-128467
贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
调研方向
在 Python 3.14 REPL 中使用 int.<TAB><TAB>,然后重复按 Ctrl-C 来重现该问题;接着检查链接的 PR gh-128442 和 gh-128467,以了解当前的实现上下文。完成的标准是:中断的补全建议不会再次打印,并且普通输入或 Enter 仍会按描述将其清除。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- python
- 领域
- cli
- Issue 类型
- 缺陷
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 活跃度
- 停滞
- 描述清晰度
- 基本清楚
- 新手友好度
- 25/100