input() not including built-in newline if string > 236 characters
Open
Nobody has claimed this yet.
3.13
3.14
stdlib
topic-repl
type-bug
- Dominant language
- Python
- Stars
- 77.2k
- Forks
- 35.9k
- PR merge metrics
- PR metrics pending
Description
Bug report
Bug description:
When using input() in the REPL, the behavior is not as expected if the string is > 236 characters (in fact, the input text disappears entirely).
#=====
# string = 236 characters
s = """wow this is a really long sentence, like really who types a sentence this long, but i guess if you have something to say that's important and it takes a long time to say, you can write a long sentence for it, especially if shorter works"""
input(s) # expected behavior - this shows the text to the user during input
#=====
# string > 236 characters
s = """wow this is a really long sentence, like really who types a sentence this long, but i guess if you have something to say that's important and it takes a long time to say, you can write a long sentence for it, especially if shorter works and you need more text"""
input(s) # unexpected behavior - this does not show the text to the user during input
#=====
# string > 236 characters, with manual newline added
s = """wow this is a really long sentence, like really who types a sentence this long, but i guess if you have something to say that's important and it takes a long time to say, you can write a long sentence for it, especially if shorter works and you need more text\n"""
input(s) # unexpected behavior - this shows the text to the user, but the prompt is not at the end of the string
CPython versions tested on:
3.13
Operating systems tested on:
Windows
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Reproduce the three examples with Python 3.13 on Windows, comparing prompts of 236 and more than 236 characters and the manually added newline. Trace the REPL input-prompt handling that produces the disappearing or misplaced text; done means long prompts remain visible and the input cursor is at the end of the prompt.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- cli, operating-systems
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100