Release highlights:
- Support for Python 3.11
- Drop support for Python 3.6
- Support for PEP 692 (``Unpack`` on ``**kwargs``)
Full changelog:
- Infer `async def` functions as returning `Coroutine`, not
`Awaitable` (557, 559)
- Drop support for Python 3.6 (554)
- Require `typeshed_client>=2.1.0`. Older versions will throw
false-positive errors around context managers when
`typeshed_client` 2.1.0 is installed. (554)
- Fix false positive error certain method calls on literals (548)
- Preserve `Annotated` annotations on access to methods of
literals (541)
- `allow_call` callables are now also called if the arguments
are literals wrapped in `Annotated` (540)
- Support Python 3.11 (537)
- Fix type checking of binary operators involving unions (531)
- Improve `TypeVar` solution heuristic for constrained
typevars with multiple solutions (532)
- Fix resolution of stringified annotations in `__init__` methods (530)
- Type check `yield`, `yield from`, and `return` nodes in generators (529)
- Type check calls to comparison operators (527)
- Retrieve attributes from stubs even when a runtime
equivalent exists (526)
- Fix attribute access to stub-only names (525)
- Remove a number of unnecessary special-cased signatures
(499)
- Add support for use of the `Unpack` operator to
annotate heterogeneous `*args` and `**kwargs` parameters (523)
- Detect incompatible types for some calls to `list.append`,
`list.extend`, `list.__add__`, and `set.add` (522)
- Optimize local variables with very complex inferred types (521)