Skip to content

Conversation

yagggi
Copy link
Contributor

@yagggi yagggi commented Sep 8, 2025

@python-cla-bot
Copy link

python-cla-bot bot commented Sep 8, 2025

All commit authors signed the Contributor License Agreement.

CLA signed

@picnixz picnixz changed the title gh-138577: Mention unexpected behavior of getpass.getpass() in document gh-138577: Mention limitations of getpass.getpass(echo_char=...) Sep 8, 2025
yagggi and others added 2 commits September 9, 2025 02:11
Co-authored-by: Brian Schubert <brianm.schubert@gmail.com>
@picnixz picnixz added the needs backport to 3.14 bugs and security fixes label Sep 8, 2025
@picnixz picnixz merged commit 074f3b2 into python:main Sep 9, 2025
29 checks passed
@github-project-automation github-project-automation bot moved this from Todo to Done in Docs PRs Sep 9, 2025
@miss-islington-app
Copy link

Thanks @yagggi for the PR, and @picnixz for merging it 🌮🎉.. I'm working now to backport this PR to: 3.14.
🐍🍒⛏🤖

@picnixz
Copy link
Member

picnixz commented Sep 9, 2025

Thank you for the fix!

miss-islington pushed a commit to miss-islington/cpython that referenced this pull request Sep 9, 2025
…s(echo_char=...)` (pythonGH-138677)

In bf8bbe9, `getpass.getpass` gained
the ability to provide keyboard feedback through `echo_char`.

On Unix, line editing shortcuts such as Ctrl+U were previously handled
as the terminal operates in canonical mode (see termios(3)). However,
since keyboard feedback requires to switch to noncanonical mode, this
now results in an inconsistency when `getpass.getpass` uses `echo_char`
as those shortcuts are no more supported. This limitation is specific
to Unix and does not affect Windows users where line editing shortcuts
were never supported.
(cherry picked from commit 074f3b2)

Co-authored-by: yagggi <fakepoet0101@gmail.com>
@bedevere-app
Copy link

bedevere-app bot commented Sep 9, 2025

GH-138696 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 Sep 9, 2025
hugovk pushed a commit that referenced this pull request Sep 9, 2025
…ss(echo_char=...)` (GH-138677) (#138696)

Co-authored-by: yagggi <fakepoet0101@gmail.com>
@yagggi
Copy link
Contributor Author

yagggi commented Sep 9, 2025

Thanks @picnixz for your patience and guidance, glad to do something to CPython.

lkollar pushed a commit to lkollar/cpython that referenced this pull request Sep 9, 2025
…s(echo_char=...)` (python#138677)

In bf8bbe9, `getpass.getpass` gained
the ability to provide keyboard feedback through `echo_char`.

On Unix, line editing shortcuts such as Ctrl+U were previously handled
as the terminal operates in canonical mode (see termios(3)). However,
since keyboard feedback requires to switch to noncanonical mode, this
now results in an inconsistency when `getpass.getpass` uses `echo_char`
as those shortcuts are no more supported. This limitation is specific
to Unix and does not affect Windows users where line editing shortcuts
were never supported.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
docs Documentation in the Doc dir skip news
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

4 participants