ruff/crates/red_knot_python_semantic/resources/mdtest
David Peter 47956db567
[red-knot] Specialize str.startswith for string literals (#17351)
## Summary

Infer precise Boolean literal types for `str.startswith` calls where the
instance and the prefix are both string literals. This allows us to
understand `sys.platform.startswith(…)` branches.

## Test Plan

New Markdown tests
2025-04-11 16:26:45 +02:00
..
annotations red_knot_python_semantic: replace one use of "old" secondary diagnostic messages 2025-04-10 13:21:00 -04:00
assignment [red-knot] Don't infer Todo for quite so many tuple type expressions (#17116) 2025-04-01 15:44:02 +01:00
binary [red-knot] Fix inference for pow between two literal integers (#17161) 2025-04-02 21:25:57 +00:00
boolean [red-knot] Statically known branches (#15019) 2024-12-21 11:33:10 +01:00
boundness_declaredness [red-knot] detect invalid return type (#16540) 2025-03-12 01:58:59 +00:00
call [red-knot] Specialize str.startswith for string literals (#17351) 2025-04-11 16:26:45 +02:00
comparison [red-knot] fix eager nested scopes handling (#16916) 2025-03-28 11:11:56 -04:00
comprehensions [red-knot] detect invalid return type (#16540) 2025-03-12 01:58:59 +00:00
conditional [red-knot] visibility_constraint analysis for match cases (#17077) 2025-04-03 11:15:33 +00:00
declaration [red-knot] Avoid undeclared path when raising conflicting declarations (#14958) 2024-12-17 09:49:39 +05:30
diagnostics [red-knot] Document current state of attribute assignment diagnostics (#16746) 2025-03-14 20:34:43 +01:00
directives [red-knot] Add support for assert_never (#17287) 2025-04-08 09:31:49 +02:00
doc red_knot_python_semantic: replace one use of "old" secondary diagnostic messages 2025-04-10 13:21:00 -04:00
exception Fixing various spelling errors (#16924) 2025-03-23 08:08:40 +00:00
expression [red-knot] Add initial support for * imports (#16923) 2025-03-24 17:15:58 +00:00
function red_knot_python_semantic: remove the "old" secondary message type 2025-04-10 13:21:00 -04:00
generics red_knot_python_semantic: remove the "old" secondary message type 2025-04-10 13:21:00 -04:00
import Use python.typing.org for typing documentation links (#17323) 2025-04-09 20:38:20 +02:00
literal [red-knot] Migrate bool/str/repr unit tests to Markdown tests (#15534) 2025-01-16 11:21:56 -08:00
loops [red-knot] Handle unions of callables better (#16716) 2025-03-17 10:35:52 -04:00
narrow Revert "[red-knot] Type narrowing for assertions (#17149)" (#17335) 2025-04-10 11:06:25 -04:00
regression [red-knot] Enforce specifying paths for mdtest code blocks in a separate preceding line (#15890) 2025-02-04 08:27:17 +01:00
scopes [red-knot] Decorators and properties (#17017) 2025-04-02 09:27:46 +02:00
shadowing [red-knot] Merge Markdown code blocks inside a single section (#15950) 2025-02-05 22:26:15 +01:00
snapshots red_knot_python_semantic: remove the "old" secondary message type 2025-04-10 13:21:00 -04:00
stubs [red-knot] Allow explicit specialization of generic classes (#17023) 2025-04-09 11:18:46 -04:00
subscript [red-knot] Decorators and properties (#17017) 2025-04-02 09:27:46 +02:00
suppressions Use python.typing.org for typing documentation links (#17323) 2025-04-09 20:38:20 +02:00
type_of [red-knot] Method calls and the descriptor protocol (#16121) 2025-02-20 23:22:26 +01:00
type_properties Use python.typing.org for typing documentation links (#17323) 2025-04-09 20:38:20 +02:00
type_qualifiers [red-knot] Preliminary tests for typing.Final (#15917) 2025-03-14 12:30:13 +01:00
unary [red-knot] Add __init__ arguments check when doing try_call on a class literal (#16512) 2025-04-08 17:26:20 -04:00
with [red-knot] detect invalid return type (#16540) 2025-03-12 01:58:59 +00:00
.mdformat.toml [red-knot] have mdformat wrap mdtest files to 100 columns (#14020) 2024-10-31 21:00:51 +00:00
attributes.md Use python.typing.org for typing documentation links (#17323) 2025-04-09 20:38:20 +02:00
decorators.md red_knot_python_semantic: replace one use of "old" secondary diagnostic messages 2025-04-10 13:21:00 -04:00
descriptor_protocol.md [red-knot] Decorators and properties (#17017) 2025-04-02 09:27:46 +02:00
final.md [red-knot] Add support for @final classes (#15070) 2024-12-19 21:02:14 +00:00
intersection_types.md [red-knot] add test cases result in false positive errors (#16856) 2025-03-20 17:17:54 +00:00
invalid_syntax.md [red-knot] Understand typing.Callable (#16493) 2025-03-08 03:58:52 +00:00
known_constants.md [red-knot] Add rule invalid-type-checking-constant (#16501) 2025-03-04 19:49:34 +00:00
mdtest_config.md [red-knot] Add missing imports in mdtests (#15869) 2025-02-03 09:27:29 +00:00
mdtest_custom_typeshed.md [red-knot] Enforce specifying paths for mdtest code blocks in a separate preceding line (#15890) 2025-02-04 08:27:17 +01:00
metaclass.md [red-knot] detect invalid return type (#16540) 2025-03-12 01:58:59 +00:00
mro.md [red-knot] Enforce specifying paths for mdtest code blocks in a separate preceding line (#15890) 2025-02-04 08:27:17 +01:00
pep695_type_aliases.md [red-knot] Decorators and properties (#17017) 2025-04-02 09:27:46 +02:00
properties.md red_knot_python_semantic: replace one use of "old" secondary diagnostic messages 2025-04-10 13:21:00 -04:00
protocols.md [red-knot] Make' Type::in_type_expression()' exhaustive for Type::KnownInstance (#16836) 2025-03-19 07:36:28 -07:00
slots.md [red-knot] fix: improve type inference for binary ops on tuples (#16725) 2025-03-14 12:29:57 +01:00
statically_known_branches.md [red-knot] Reachability analysis (#17199) 2025-04-08 08:37:20 +02:00
sys_platform.md [red-knot] Specialize str.startswith for string literals (#17351) 2025-04-11 16:26:45 +02:00
sys_version_info.md [red-knot] Decorators and properties (#17017) 2025-04-02 09:27:46 +02:00
terminal_statements.md [red-knot] Avoid unresolved-reference in unreachable code (#17169) 2025-04-03 16:52:11 +02:00
type_api.md Fix CallableTypeOf display signature (#17235) 2025-04-06 18:12:52 +01:00
union_types.md [red-knot] add special case for float/complex (#16166) 2025-02-14 12:24:10 -08:00
unpacking.md [red-knot] Support unpacking with target (#16469) 2025-03-08 02:36:35 +00:00
unreachable.md [red-knot] Silence errors in unreachable type annotations / class bases (#17342) 2025-04-10 22:47:47 +02:00