-
-
Notifications
You must be signed in to change notification settings - Fork 2.9k
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
set
operations and unpacking
#14259
Comments
Same: @dataclass
class StatsEntry:
val0: int
val1: int
val2: int
def __post_init__(self) -> None:
for field in dcfields(self):
value = getattr(self, field.name)
setattr(self, field.name, field.type(value))
entry = line.rstrip().split(',')
stat = StatsEntry(*entry) #type: ignore
# Argument 1 to "StatsEntry" has incompatible type "*List[str]"; expected "int" [arg-type]mypy(error) |
Another example (mypy-playground): from typing import Mapping, Any
def joint_keys(*dicts: Mapping[str, Any]) -> set[str]:
"""Find joint keys in collection of dictionaries."""
return set.intersection(*map(set, dicts)) # ✘ [arg-type]
def joint_keys2(*dicts: Mapping[str, Any]) -> set[str]:
"""Find joint keys in collection of dictionaries."""
dicts_keys: map[set[str]] = map(set, dicts) # ✔
return set.intersection(*dicts_keys) # ✔
EDIT: It is fixed using the |
@randolf-scholz your example raises no errors since mypy 1.7 (released Nov 10, 2023) where new type inference was enabled by default. My original repro raises no errors since mypy 1.14 (released Dec 19, 2024). |
Original repro raises an error once again in mypy 1.14.1 Reason is, mypy stopped raising in 1.14.0 due to a bug (inferring So this issue wasn't really fixed, reopening. |
Bug Report
Error on a valid code.
To Reproduce
mypy Playground
Actual Behavior
Argument 1 to "intersection" of "set" has incompatible type "*map[Set[str]]"; expected "Set[_T]" [arg-type]
Your Environment
mypy.ini
(and other config files): NoneThis issue is present for a bunch of other
set
methods likeunion
anddifference
(I guess all of them that accept*s: Iterable[T]
).Possibly related #9706.
The text was updated successfully, but these errors were encountered: