Skip to content

Commit f60db37

Browse files
committed
Show asterisks for password
1 parent 28d8571 commit f60db37

File tree

2 files changed

+4
-2
lines changed

2 files changed

+4
-2
lines changed

tests/test_repository.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -352,7 +352,9 @@ def test_package_is_uploaded_incorrect_repo_url():
352352
[
353353
(None, None, ["username: <empty>", "password: <empty>"]),
354354
("", "", ["username: <empty>", "password: <empty>"]),
355-
("username", "password", ["username: username", "password: <hidden>"]),
355+
("username", "password", ["username: username", "password: ********"]),
356+
# Ctrl-V in Windows Command Prompt; see https://bugs.python.org/issue37426
357+
("username", "\x16", ["username: username", "password: *"]),
356358
],
357359
)
358360
def test_logs_username_and_password(username, password, messages, caplog):

twine/repository.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ def __init__(
6565
(username or "", password or "") if username or password else None
6666
)
6767
logger.info(f"username: {username if username else '<empty>'}")
68-
logger.info(f"password: <{'hidden' if password else 'empty'}>")
68+
logger.info(f"password: {'*' * len(password) if password else '<empty>'}")
6969

7070
self.session.headers["User-Agent"] = self._make_user_agent_string()
7171
for scheme in ("http://", "https://"):

0 commit comments

Comments
 (0)