From 22a50948f755d5d17525326e50c7b266a8445608 Mon Sep 17 00:00:00 2001 From: correctmost <134317971+correctmost@users.noreply.github.com> Date: Tue, 7 Jul 2026 23:27:24 -0400 Subject: [PATCH] Use a match statement for PasswordStrength enum values This unblocks the upgrade to mypy 2.2.0, which now flags the unreachable "return None" statement. --- archinstall/lib/menu/util.py | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/archinstall/lib/menu/util.py b/archinstall/lib/menu/util.py index 5efef09d12..6e227a7fc8 100644 --- a/archinstall/lib/menu/util.py +++ b/archinstall/lib/menu/util.py @@ -19,14 +19,15 @@ async def get_password( def password_hint(value: str) -> InputInfo | None: if not value: return None + strength = PasswordStrength.strength(value) - if strength in (PasswordStrength.VERY_WEAK, PasswordStrength.WEAK): - return InputInfo(message=tr('Password strength: Weak'), msg_level=MsgLevelType.MsgError) - elif strength == PasswordStrength.MODERATE: - return InputInfo(message=tr('Password strength: Moderate'), msg_level=MsgLevelType.MsgWarning) - elif strength == PasswordStrength.STRONG: - return InputInfo(message=tr('Password strength: Strong'), msg_level=MsgLevelType.MsgInfo) - return None + match strength: + case PasswordStrength.VERY_WEAK | PasswordStrength.WEAK: + return InputInfo(message=tr('Password strength: Weak'), msg_level=MsgLevelType.MsgError) + case PasswordStrength.MODERATE: + return InputInfo(message=tr('Password strength: Moderate'), msg_level=MsgLevelType.MsgWarning) + case PasswordStrength.STRONG: + return InputInfo(message=tr('Password strength: Strong'), msg_level=MsgLevelType.MsgInfo) while True: result = await Input(