facebook / facebook/pyrefly

Support mypy_extensions.FlexibleAlias

Open
#1,995 2 comments 0 reactions 0 assignees View on GitHub
needs-discussion typechecking
Dominant language
Rust
Stars
7k
Forks
516
PR merge metrics
No merged PRs in 30d

Description

### Describe the Bug

I expect no error with:

```python
from typing import TypeVar
from mypy_extensions import FlexibleAlias

T = TypeVar("T")
Alias = FlexibleAlias[T, T]

def example(arg: Alias[int]) -> None:
pass

example(arg=1)
```

mypy / pyright / ty give no error

With pyrefly I get:

```
Argument `Literal[1]` is not assignable to parameter `arg` with type `FlexibleAlias[int, int]` in function `example` [[bad-argument-type](https://pyrefly.org/en/docs/error-kinds/#bad-argument-type)]
```

### Sandbox Link

https://pyrefly.org/sandbox/?project=N4IgZglgNgpgziAXKOBDAdgEwEYHsAeAdAA4CeSIAxAAQDqMUAxrgLYzUAuunAFuwAqkATjDBRS1AMoYcBADS8IcakuqpqxVAHMYAHXQ0A7nxHVSuAK7VGGaoaEQOMBXB6pTM6rHfo1eCxycpMQQ6FoqvoIcPLjohPqUCdQAEjAeHtaWxLDUYDCoHBYiyrhgispoWHj4iEkAtNQA4jCBIqhQdRwQbEHE7Ix8jADWoeF5MDiow-XUAKpw7CIAbvlQAPocwTAAFACUnNyhcH2MgaF5QiKYvfAzMPh9DmzogYaOPLzsAJIAIgCiuXyhWKvAKdnYcAsxGIuCEgW2MEIWkIagCuGYLGyLWc1C0uE6%2BMwolCjggsQUMRWQgULUYuxmtAcTjUWGoQgskVI0VimSJ1EwEBEp3EETMliE1GwQlwhgWQn0%2BjA0pYvVGKkxsMCABUtgA1dyK5XUFjBUhre5OdBwMlW9UwuHUABisHwEGwsAAglAIKg4Ar0FrqABeag6vr6oTbXQgLXR%2BnoL0%2B5Qh533N2e72%2BgDaWoUWoAuv6iWV7qhMbBtu4tIhqIns6EOPn9nUAHzUABysRgtV81D7mjgfvQ%2BlL5Z2VaDAEZdiA5CAAtA4CRyIgqHMut7NrkOacbUP9MXcrCWAU1ugLCxsGltjUIhxm224BwhD2%2B32RMDfGBo%2B2L1eX9QwD4AAvtG%2BiziAZAiGIpCEFwLBQBQNCCNBIqVLI%2BCZOgkBaEUBQ2vEBhSDA7A8BwHDEHAiAAPTUVBojiIQsJaNRMDoNRmDonA1HMNhEC4UI%2BGxNRR4SqgSyoNAqDuv0sQ4XhXQ8rgxCKVahFkNy6B1FS1o8iG0YAMyEJOABMYHoCAwFzlMXQrI60AwBQ6HVMullAA

### (Only applicable for extension issues) IDE Information

_No response_

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.