ty — Typing Conformance Report

ty ruff/0.15.1+38 (c17c68cc5 2026-02-16) · conformance suite ffd520a · 139 test files
TP (true positives): 737
FP (false positives): 139
FN (false negatives): 289
Optional: 25 detected / 74 total
Files passing: 59/139 (42%)
Test file Status TP FP FN Opt TP Opt FN
Type annotations (3/5 passing) 34 4 10
annotations_coroutines.py PASS 0 0 0 0 0
annotations_forward_refs.py 85% 17 4 2 3 0
annotations_generators.py 33% 2 0 8 0 3
annotations_methods.py PASS 0 0 0 1 1
annotations_typeexpr.py PASS 15 0 0 0 0
Special types in annotations (4/5 passing) 14 11 2
specialtypes_any.py PASS 0 0 0 0 0
specialtypes_never.py PASS 3 0 0 0 0
specialtypes_none.py PASS 3 0 0 0 0
specialtypes_promotions.py PASS 1 0 0 0 0
specialtypes_type.py 52% 7 11 2 0 0
Generics (8/30 passing) 125 48 95
generics_base_class.py 92% 6 0 1 0 0
generics_basic.py 82% 9 0 4 0 0
generics_defaults.py 62% 5 5 1 0 0
generics_defaults_referential.py 77% 5 1 2 0 0
generics_defaults_specialization.py 67% 1 0 1 0 0
generics_paramspec_basic.py 44% 2 0 5 0 0
generics_paramspec_components.py 55% 6 0 10 0 0
generics_paramspec_semantics.py 53% 4 2 5 1 0
generics_paramspec_specialization.py PASS 5 0 0 0 0
generics_scoping.py 35% 3 4 7 0 1
generics_self_advanced.py PASS 0 0 0 0 0
generics_self_attributes.py PASS 2 0 0 0 0
generics_self_basic.py PASS 3 0 0 0 0
generics_self_protocols.py PASS 2 0 0 0 0
generics_self_usage.py 71% 6 0 5 0 0
generics_syntax_compatibility.py 0% 0 0 2 0 0
generics_syntax_declarations.py PASS 10 0 0 0 0
generics_syntax_infer_variance.py 78% 16 7 2 0 0
generics_syntax_scoping.py 57% 4 3 3 0 0
generics_type_erasure.py 44% 2 0 5 0 0
generics_typevartuple_args.py 0% 0 3 9 0 0
generics_typevartuple_basic.py 45% 5 1 11 0 0
generics_typevartuple_callable.py 0% 0 3 1 0 0
generics_typevartuple_concat.py 0% 0 1 0 0 0
generics_typevartuple_overloads.py PASS 0 0 0 0 0
generics_typevartuple_specialization.py 17% 2 16 4 0 0
generics_typevartuple_unpack.py 0% 0 0 1 0 0
generics_upper_bound.py 75% 3 2 0 1 0
generics_variance.py 11% 1 0 16 0 0
generics_variance_inference.py PASS 23 0 0 0 0
Type qualifiers (1/3 passing) 50 0 7
qualifiers_annotated.py PASS 20 0 0 0 0
qualifiers_final_annotation.py 89% 21 0 5 0 0
qualifiers_final_decorator.py 90% 9 0 2 0 0
Class type compatibility (1/2 passing) 20 0 2
classes_classvar.py 94% 15 0 2 0 1
classes_override.py PASS 5 0 0 0 0
Type aliases (1/7 passing) 88 4 35
aliases_explicit.py 93% 19 1 2 0 0
aliases_implicit.py 85% 17 1 5 0 0
aliases_newtype.py PASS 14 0 0 0 0
aliases_recursive.py 0% 0 0 11 0 0
aliases_type_statement.py 87% 23 1 6 0 0
aliases_typealiastype.py 79% 15 1 7 0 1
aliases_variance.py 0% 0 0 4 0 0
Literals (2/4 passing) 34 6 0
literals_interactions.py 80% 4 2 0 0 0
literals_literalstring.py 82% 9 4 0 0 0
literals_parameterizations.py PASS 17 0 0 0 0
literals_semantics.py PASS 4 0 0 0 0
Protocols (2/11 passing) 38 4 37
protocols_class_objects.py 20% 1 1 7 0 0
protocols_definition.py 76% 13 0 8 0 0
protocols_explicit.py 29% 1 0 5 0 0
protocols_generic.py 80% 6 0 3 0 0
protocols_merging.py 91% 5 0 1 0 0
protocols_modules.py 75% 3 2 0 0 0
protocols_recursive.py 0% 0 1 0 0 0
protocols_runtime_checkable.py 50% 2 0 4 0 0
protocols_self.py PASS 0 0 0 0 0
protocols_subtyping.py PASS 7 0 0 0 0
protocols_variance.py 0% 0 0 9 0 0
Callables (1/4 passing) 61 5 17
callables_annotation.py 69% 9 1 7 0 0
callables_kwargs.py 38% 4 4 9 0 2
callables_protocol.py PASS 17 0 0 0 0
callables_subtyping.py 98% 31 0 1 0 0
Constructors (1/6 passing) 19 17 10
constructors_call_init.py 60% 3 2 2 0 0
constructors_call_metaclass.py 67% 2 2 0 0 0
constructors_call_new.py 40% 2 6 0 0 0
constructors_call_type.py 77% 5 0 3 0 0
constructors_callable.py 54% 7 7 5 0 0
constructors_consistency.py PASS 0 0 0 0 1
Overloads (4/5 passing) 25 0 4
overloads_basic.py PASS 1 0 0 0 0
overloads_consistency.py 0% 0 0 4 0 0
overloads_definitions.py PASS 12 0 0 0 0
overloads_definitions_stub.pyi PASS 8 0 0 0 0
overloads_evaluation.py PASS 4 0 0 0 0
Exceptions (0/1 passing) 0 2 0
exceptions_context_managers.py 0% 0 2 0 0 0
Dataclasses (8/16 passing) 57 11 11
dataclasses_descriptors.py 0% 0 2 0 0 0
dataclasses_final.py PASS 5 0 0 0 0
dataclasses_frozen.py PASS 4 0 0 0 0
dataclasses_hash.py 0% 0 0 2 0 0
dataclasses_inheritance.py 0% 0 0 2 0 1
dataclasses_kwonly.py PASS 3 0 0 0 0
dataclasses_match_args.py 67% 1 1 0 0 0
dataclasses_order.py PASS 1 0 0 0 0
dataclasses_postinit.py PASS 4 0 0 0 0
dataclasses_slots.py 50% 2 0 4 0 0
dataclasses_transform_class.py 91% 5 0 1 0 0
dataclasses_transform_converter.py 64% 8 8 1 0 0
dataclasses_transform_field.py PASS 2 0 0 0 0
dataclasses_transform_func.py PASS 6 0 0 0 0
dataclasses_transform_meta.py 91% 5 0 1 0 0
dataclasses_usage.py PASS 11 0 0 0 1
Typed dictionaries (6/14 passing) 57 21 44
typeddicts_alt_syntax.py 0% 0 0 4 0 3
typeddicts_class_syntax.py PASS 5 0 0 0 0
typeddicts_extra_items.py 26% 8 21 25 0 0
typeddicts_final.py PASS 0 0 0 0 0
typeddicts_inheritance.py 40% 1 0 3 0 0
typeddicts_operations.py PASS 11 0 0 0 1
typeddicts_readonly.py 91% 5 0 1 0 0
typeddicts_readonly_consistency.py PASS 7 0 0 0 0
typeddicts_readonly_inheritance.py 62% 5 0 6 0 0
typeddicts_readonly_kwargs.py 0% 0 0 1 0 0
typeddicts_readonly_update.py 0% 0 0 1 0 0
typeddicts_required.py 40% 1 0 3 0 0
typeddicts_type_consistency.py PASS 9 0 0 1 1
typeddicts_usage.py PASS 5 0 0 0 0
Tuples (2/3 passing) 38 0 3
tuples_type_compat.py PASS 24 0 0 0 0
tuples_type_form.py PASS 11 0 0 0 0
tuples_unpacked.py 67% 3 0 3 0 0
Named tuples (2/4 passing) 31 0 2
namedtuples_define_class.py 96% 13 0 1 0 0
namedtuples_define_functional.py PASS 9 0 0 4 0
namedtuples_type_compat.py PASS 2 0 0 0 0
namedtuples_usage.py 93% 7 0 1 0 0
Enumerations (3/6 passing) 10 1 3
enums_behaviors.py PASS 3 0 0 0 0
enums_definition.py PASS 0 0 0 0 16
enums_expansion.py 0% 0 1 1 0 2
enums_member_names.py PASS 0 0 0 1 3
enums_member_values.py 67% 1 0 1 3 6
enums_members.py 92% 6 0 1 2 0
Type narrowing (2/2 passing) 13 0 0
narrowing_typeguard.py PASS 4 0 0 0 0
narrowing_typeis.py PASS 9 0 0 0 0
Type checker directives (7/10 passing) 19 5 7
directives_assert_type.py PASS 7 0 0 0 1
directives_cast.py PASS 3 0 0 0 0
directives_deprecated.py 59% 5 0 7 1 2
directives_no_type_check.py PASS 1 0 0 2 2
directives_reveal_type.py PASS 2 0 0 0 0
directives_type_checking.py 0% 0 1 0 0 0
directives_type_ignore.py PASS 0 0 0 0 0
directives_type_ignore_file1.py PASS 0 0 0 0 0
directives_type_ignore_file2.py PASS 1 0 0 0 0
directives_version_platform.py 0% 0 4 0 4 0
Historical and deprecated features (1/1 passing) 4 0 0
historical_positional.py PASS 4 0 0 1 0