ruff/crates/red_knot_python_semantic/resources/mdtest
Shaygan Hooshyari 557d583e32
Support typing.NoReturn and typing.Never (#14559)
Fix #14558 
## Summary

- Add `typing.NoReturn` and `typing.Never` to known instances and infer
them as `Type::Never`
- Add `is_assignable_to` cases for `Type::Never`

I skipped emitting diagnostic for when a function is annotated as
`NoReturn` but it actually returns.

## Test Plan

Added tests from

https://github.com/python/typing/blob/main/conformance/tests/specialtypes_never.py
except from generics and checking if the return value of the function
and the annotations match.

---------

Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
Co-authored-by: Carl Meyer <carl@astral.sh>
2024-11-25 21:37:55 +00:00
..
annotations Support typing.NoReturn and typing.Never (#14559) 2024-11-25 21:37:55 +00:00
assignment [red-knot] Meta data for Type::Todo (#14500) 2024-11-21 09:59:47 +01:00
binary [red-knot] Meta data for Type::Todo (#14500) 2024-11-21 09:59:47 +01:00
boolean [red-knot] Remove Type::Unbound (#13980) 2024-10-31 20:05:53 +01:00
call [red-knot] Meta data for Type::Todo (#14500) 2024-11-21 09:59:47 +01:00
comparison [red-knot] Refactoring the inference logic of lexicographic comparisons (#14422) 2024-11-19 17:32:43 -08:00
conditional [red-knot] Remove Type::Unbound (#13980) 2024-10-31 20:05:53 +01:00
declaration [red-knot] Remove lint-phase (#13922) 2024-10-25 18:40:52 +00:00
exception [red-knot] Meta data for Type::Todo (#14500) 2024-11-21 09:59:47 +01:00
expression Support typing.NoReturn and typing.Never (#14559) 2024-11-25 21:37:55 +00:00
import [red-knot] Diagnostic for possibly unbound imports (#14281) 2024-11-11 20:26:01 +01:00
literal [red-knot] Meta data for Type::Todo (#14500) 2024-11-21 09:59:47 +01:00
loops [red-knot] Semantic index: handle invalid breaks (#14522) 2024-11-22 13:13:55 +01:00
narrow [red-knot] Narrowing for type(x) is C checks (#14432) 2024-11-18 16:21:46 +01:00
regression [red-knot] Do not attach diagnostics to wrong file (#14337) 2024-11-14 15:39:51 +01:00
scopes [red-knot] Meta data for Type::Todo (#14500) 2024-11-21 09:59:47 +01:00
shadowing [red-knot] have mdformat wrap mdtest files to 100 columns (#14020) 2024-10-31 21:00:51 +00:00
stubs [red-knot] Add MRO resolution for classes (#14027) 2024-11-04 13:31:38 +00:00
subscript [red-knot] Meta data for Type::Todo (#14500) 2024-11-21 09:59:47 +01:00
unary [red-knot] Infer unary not operation for instances (#13827) 2024-11-13 23:31:36 +00:00
with [red-knot] Meta data for Type::Todo (#14500) 2024-11-21 09:59:47 +01:00
.mdformat.toml [red-knot] have mdformat wrap mdtest files to 100 columns (#14020) 2024-10-31 21:00:51 +00:00
attributes.md [red-knot] Add tests for member lookup on union types (#14296) 2024-11-12 14:11:55 +01:00
generics.md [red-knot] remove wrong typevar attribute implementations (#14540) 2024-11-22 13:17:16 -08:00
metaclass.md [red-knot] Meta data for Type::Todo (#14500) 2024-11-21 09:59:47 +01:00
mro.md [red-knot] Add MRO resolution for classes (#14027) 2024-11-04 13:31:38 +00:00
sys_version_info.md [red-knot] Meta data for Type::Todo (#14500) 2024-11-21 09:59:47 +01:00
type_alias.md [red-knot] PEP 695 type aliases (#14357) 2024-11-22 08:47:14 +01:00
unpacking.md [red-knot] Meta data for Type::Todo (#14500) 2024-11-21 09:59:47 +01:00