-
-
Notifications
You must be signed in to change notification settings - Fork 31.4k
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
gh-77065: Add optional keyword-only argument echochar
for getpass.getpass
#130496
base: main
Are you sure you want to change the base?
Conversation
@picnixz sorry for choosing you, I just haven't found anyone else from the core team who is active yet (I looked at who is involved in issue and experts table). could you review? |
You can ping me for anything that is remotely related to security and cryptography |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A mask
is something else for me. So I would either name it "echochar" or "maskchar" or "hidechar", at least with some "char" inside it.
In addition, for termios, you should use ECHOE
to handle ERASE
A Python core developer has requested some changes be made to your pull request before we can consider merging it. If you could please address their requests along with any other requests in other reviews from core developers that would be appreciated. Once you have made the requested changes, please leave a comment on this pull request containing the phrase |
Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
@picnixz I chose |
Because if you were to use it, you would write |
Usually, you expect 1 character indeed. I don't think we should write something else than 1 char (or maybe we do but it's because of colors?) I would not expect words to be put as placeholders. Maybe colorized characters, which in this case are allowed to be strings of length > 1, but not real words. Also, what we are echoing is really the corresponding password character. For each character, we use that placeholder. |
I have made the requested changes; please review again |
Thanks for making the requested changes! @picnixz: please review the changes made to this pull request. |
mask
for getpass.getpass
echochar
for getpass.getpass
@picnixz I just thought maybe we also should to add |
length of the emoji can be even longer if it is compound. and it seems there is no objective reason to limit the length for I also opened a separate issue #130524 for testing this module as they don't cover much |
There is. Because the purpose of this feature is visual feedback to help counting the number of characters. However, it doesn't seem useful to have a text being replaced. No CLI would do that honestly... For instance, Java uses a single character as well. And usually people would want to use So to ease our life, I would advise accepting for now simple ASCII characters. |
yeah, it looks funny when we use '\b' as but if you suggest to support only ASCII characters at least for now I guess we can use |
@picnixz maybe we should use |
Yes, we should just validate |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I still think we at least need tests for Unix. Or if we don't have the infrastructure yet, wait until we have it and then add them.
cc @picnixz EDIT: I thought maybe I could do the (I'll continue tomorrow) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Until tests are added in this PR, I will not accept it. I have no idea whether the code for Windows will work properly or not. So I would really want tests. Until then, please do not request reviews from me.
If the infrastructure is not yet in place, please make it so (either by creating a new issue so that we can work on it or by adding it yourself). NVM, it already exists: #130529.
A Python core developer has requested some changes be made to your pull request before we can consider merging it. If you could please address their requests along with any other requests in other reviews from core developers that would be appreciated. Once you have made the requested changes, please leave a comment on this pull request containing the phrase |
NVM, I forgot that there was an open PR for that. However it hadn't advanced since then. However, I would want to have tests for Unix. |
I have made the requested changes; please review again |
Thanks for making the requested changes! @picnixz: please review the changes made to this pull request. |
📚 Documentation preview 📚: https://cpython-previews--130496.org.readthedocs.build/