ruff/crates/ty_python_semantic/resources/mdtest
Brent Westbrook 2250fa6f98
Fix syntax error false positives for await outside functions (#21763)
## Summary

Fixes #21750 and a related bug in `PLE1142`. We were not properly
considering generators to be valid `await` contexts, which caused the
`F704` issue. One of the tests I added for this also uncovered an issue
in `PLE1142` for comprehensions nested within async generators because
we were only checking the current scope rather than traversing the
nested context.

## Test Plan

Both of these rules are implemented as semantic syntax errors, so I
added tests (and fixes) in both Ruff and ty.
2025-12-02 21:02:02 +00:00
..
annotations [ty] Don't confuse multiple occurrences of typing.Self when binding bound methods (#21754) 2025-12-02 13:15:09 -05:00
assignment [ty] Avoid expression reinference for diagnostics (#21267) 2025-11-25 09:24:00 -08:00
binary [ty] Improve diagnostics for unsupported comparison operations (#21737) 2025-12-02 19:58:45 +00:00
boolean
boundness_declaredness
call [ty] Avoid expression reinference for diagnostics (#21267) 2025-11-25 09:24:00 -08:00
class [ty] Support type[T] with type variables (#21650) 2025-11-28 09:20:24 +01:00
comparison [ty] Improve diagnostics for unsupported comparison operations (#21737) 2025-12-02 19:58:45 +00:00
comprehensions [ty] fix global symbol lookup from eager scopes (#21317) 2025-11-12 10:15:51 -08:00
conditional
dataclasses [ty] Dataclasses: __hash__ semantics and unsafe_hash (#21470) 2025-11-16 09:52:30 +00:00
declaration
diagnostics Fix syntax error false positives for await outside functions (#21763) 2025-12-02 21:02:02 +00:00
directives [ty] Custom concise diagnostic messages (#21498) 2025-11-18 09:35:40 +01:00
doc
exception [ty] Improve diagnostics for invalid exceptions (#21475) 2025-11-15 22:12:00 +00:00
expression [ty] Check method definitions on subclasses for Liskov violations (#21436) 2025-11-23 18:08:15 +00:00
function [ty] Sync vendored typeshed stubs (#21466) 2025-11-15 17:12:32 +00:00
generics [ty] Stop testing the (brittle) constraint set display implementation (#21743) 2025-12-02 09:17:29 +01:00
ide_support [ty] Support type[T] with type variables (#21650) 2025-11-28 09:20:24 +01:00
import [ty] add tests for workspaces (#21741) 2025-12-02 06:43:41 -05:00
libraries [ty] Generic types aliases (implicit and PEP 613) (#21553) 2025-11-28 20:38:24 +01:00
literal [ty] Type inference for genererator expressions (#21437) 2025-11-14 13:04:11 +00:00
loops
narrow [ty] Eagerly evaluate types.UnionType elements as type expressions (#21531) 2025-11-20 17:28:48 +01:00
regression [ty] handle recursive type inference properly (#20566) 2025-11-26 08:50:26 -08:00
scopes [ty] Make __getattr__ available for ModuleType instances (#21450) 2025-11-14 13:59:14 +01:00
shadowing
snapshots [ty] Improve diagnostics for unsupported comparison operations (#21737) 2025-12-02 19:58:45 +00:00
stubs [ty] Better invalid-assignment diagnostics (#21476) 2025-11-18 14:31:04 +01:00
subscript [ty] support type[tuple[...]] (#21652) 2025-12-01 11:49:26 +01:00
suppressions [ty] Add code action to ignore diagnostic on the current line (#21595) 2025-11-29 15:41:54 +01:00
type_compendium [ty] Improve literal promotion heuristics (#21439) 2025-11-14 16:13:56 -05:00
type_of [ty] Fix subtyping with type[T] and unions (#21740) 2025-12-01 18:20:13 -05:00
type_properties [ty] Stop testing the (brittle) constraint set display implementation (#21743) 2025-12-02 09:17:29 +01:00
type_qualifiers [ty] Fix false positive for Final attribute assignment in __init__ (#21158) 2025-11-11 12:54:05 -08:00
unary
with
.mdformat.toml
async.md [ty] Generic types aliases (implicit and PEP 613) (#21553) 2025-11-28 20:38:24 +01:00
attributes.md [ty] Support type[T] with type variables (#21650) 2025-11-28 09:20:24 +01:00
bidirectional.md [ty] Improve diagnostics for unsupported comparison operations (#21737) 2025-12-02 19:58:45 +00:00
classes.md
cycle.md [ty] remove the visitor parameter in the recursive_type_normalized_impl method (#21701) 2025-12-01 08:48:43 +01:00
decorators.md
del.md
deprecated.md
descriptor_protocol.md [ty] Use the return type of __get__ for descriptor lookups even when __get__ is called with incorrect arguments (#21424) 2025-11-13 12:05:10 +00:00
enums.md [ty] Support type[T] with type variables (#21650) 2025-11-28 09:20:24 +01:00
exhaustiveness_checking.md [ty] Exhaustiveness checking for generic classes (#21726) 2025-12-01 13:52:36 +01:00
final.md [ty] Don't introduce invalid syntax when autofixing override-of-final-method (#21699) 2025-11-30 13:40:33 +00:00
implicit_type_aliases.md [ty] Generic types aliases (implicit and PEP 613) (#21553) 2025-11-28 20:38:24 +01:00
instance_layout_conflict.md
intersection_types.md [ty] Use "cannot" consistently over "can not" (#21255) 2025-11-03 10:38:20 -05:00
invalid_syntax.md [ty] Implicit type aliases: Add support for typing.Union (#21363) 2025-11-12 12:59:14 +01:00
known_constants.md
liskov.md [ty] Extend Liskov checks to also cover classmethods and staticmethods (#21598) 2025-11-24 23:14:06 +00:00
literal_promotion.md [ty] Narrow type context during literal promotion in generic class constructors (#21574) 2025-11-21 17:05:32 -05:00
mdtest_config.md
mdtest_custom_typeshed.md
metaclass.md
mro.md [ty] Sync vendored typeshed stubs (#21466) 2025-11-15 17:12:32 +00:00
named_tuple.md [ty] Add a diagnostic for prohibited NamedTuple attribute overrides (#21717) 2025-12-01 21:46:58 -05:00
overloads.md
override.md [ty] Add a diagnostic for prohibited NamedTuple attribute overrides (#21717) 2025-12-01 21:46:58 -05:00
pep613_type_aliases.md [ty] Generic types aliases (implicit and PEP 613) (#21553) 2025-11-28 20:38:24 +01:00
pep695_type_aliases.md [ty] handle recursive type inference properly (#20566) 2025-11-26 08:50:26 -08:00
properties.md [ty] Use the return type of __get__ for descriptor lookups even when __get__ is called with incorrect arguments (#21424) 2025-11-13 12:05:10 +00:00
protocols.md [ty] Support type[T] with type variables (#21650) 2025-11-28 09:20:24 +01:00
public_types.md
statically_known_branches.md
sys_platform.md
sys_version_info.md [ty] support PEP 613 type aliases (#21394) 2025-11-20 17:59:35 -08:00
t_strings.md
terminal_statements.md
ty_extensions.md [ty] Stop testing the (brittle) constraint set display implementation (#21743) 2025-12-02 09:17:29 +01:00
typed_dict.md [ty] Preserve quoting style when autofixing TypedDict keys (#21682) 2025-11-28 18:40:34 +00:00
union_types.md
unpacking.md
unreachable.md [ty] Add subdiagnostic hint if a variable with type Never is used in a type expression (#21660) 2025-11-27 12:48:18 +00:00