diff --git a/src/attr/converters.py b/src/attr/converters.py index bfe8a23e..cf1fa0f7 100644 --- a/src/attr/converters.py +++ b/src/attr/converters.py @@ -131,14 +131,11 @@ def to_bool(val): """ if isinstance(val, str): val = val.lower() - try: - if val in (True, "true", "t", "yes", "y", "on", "1", 1): - return True - if val in (False, "false", "f", "no", "n", "off", "0", 0): - return False - except TypeError: - # Raised when "val" is not hashable (e.g., lists) - pass + + if val in (True, "true", "t", "yes", "y", "on", "1", 1): + return True + if val in (False, "false", "f", "no", "n", "off", "0", 0): + return False msg = f"Cannot convert value to bool: {val!r}" raise ValueError(msg)