Skip to content

Commit cf84b52

Browse files
authored
Update pyrefly conformance results to v0.62.0 (#2269)
Bump pyrefly from 0.60.0 to 0.62.0 and update conformance results. Two tests improved from Partial to Pass (generics_typevartuple_args, generics_typevartuple_basic) thanks to fixes in TypeVarTuple solving. Pass rate: 124/140 (88.6%) -> 126/140 (90%)
1 parent 0e7371d commit cf84b52

File tree

8 files changed

+21
-34
lines changed

8 files changed

+21
-34
lines changed

conformance/results/pyrefly/directives_disjoint_base.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,13 @@ errors_diff = """
77
Line 69: Expected 1 errors
88
Line 73: Expected 1 errors
99
Line 77: Expected 1 errors
10-
Line 105: Expected 1 errors
1110
Line 118: Expected 1 errors
1211
Line 123: Expected 1 errors
1312
Line 60: Unexpected errors ['Named tuples do not support multiple inheritance [invalid-inheritance]']
1413
"""
1514
output = """
1615
ERROR directives_disjoint_base.py:60:7-18: Named tuples do not support multiple inheritance [invalid-inheritance]
1716
ERROR directives_disjoint_base.py:81:7-17: Named tuples do not support multiple inheritance [invalid-inheritance]
17+
ERROR directives_disjoint_base.py:105:7-24: Class `IncompatibleSlots` has multiple base classes with non-empty `__slots__` (`SlotBase1`, `SlotBase2`), which causes a TypeError at runtime [invalid-inheritance]
1818
ERROR directives_disjoint_base.py:113:1-15: `() -> None` is not assignable to upper bound `type[object]` of type variable `_TC` [bad-specialization]
1919
"""
Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,6 @@
1-
conformant = "Partial"
2-
conformance_automated = "Fail"
3-
notes = """
4-
Does not correctly solve TypeVarTuple with heterogeneous bounds.
5-
"""
1+
conformant = "Pass"
2+
conformance_automated = "Pass"
63
errors_diff = """
7-
Line 76: Unexpected errors ["Argument `tuple[Literal['1']]` is not assignable to parameter `*args` with type `tuple[int]` in function `func4` [bad-argument-type]"]
84
"""
95
output = """
106
ERROR generics_typevartuple_args.py:33:12-23: Unpacked argument `tuple[Literal[0], Literal['']]` is not assignable to parameter `*args` with type `tuple[*@_, Env]` in function `exec_le` [bad-argument-type]
@@ -15,5 +11,4 @@ ERROR generics_typevartuple_args.py:58:6-9: Unpacked argument `tuple[Literal[1]]
1511
ERROR generics_typevartuple_args.py:59:6-10: Unpacked argument `tuple[Literal['']]` is not assignable to parameter `*args` with type `tuple[int, *tuple[str, ...], str]` in function `func2` [bad-argument-type]
1612
ERROR generics_typevartuple_args.py:67:6-9: Expected 1 more positional argument in function `func3` [bad-argument-count]
1713
ERROR generics_typevartuple_args.py:75:13-19: Argument `tuple[Literal[1], Literal[2]]` is not assignable to parameter `*args` with type `tuple[int]` in function `func4` [bad-argument-type]
18-
ERROR generics_typevartuple_args.py:76:13-19: Argument `tuple[Literal['1']]` is not assignable to parameter `*args` with type `tuple[int]` in function `func4` [bad-argument-type]
1914
"""

conformance/results/pyrefly/generics_typevartuple_basic.toml

Lines changed: 2 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,6 @@
1-
conformant = "Partial"
2-
notes = """
3-
TypeVarTuple is pinned too early when calling generic function.
4-
"""
5-
conformance_automated = "Fail"
1+
conformant = "Pass"
2+
conformance_automated = "Pass"
63
errors_diff = """
7-
Line 86: Unexpected errors ['Argument `tuple[float]` is not assignable to parameter `arg2` with type `tuple[int]` in function `func2` [bad-argument-type]']
8-
Line 90: Unexpected errors ["Argument `tuple[Literal['0']]` is not assignable to parameter `arg2` with type `tuple[int]` in function `func2` [bad-argument-type]"]
94
"""
105
output = """
116
ERROR generics_typevartuple_basic.py:42:34-43: Argument `Height` is not assignable to parameter `shape` with type `tuple[Height, Width]` in function `Array.__init__` [bad-argument-type]
@@ -18,8 +13,6 @@ ERROR generics_typevartuple_basic.py:59:24-29: `TypeVarTuple` must be unpacked [
1813
ERROR generics_typevartuple_basic.py:65:27-41: Unexpected keyword argument `covariant` to TypeVarTuple [invalid-type-var-tuple]
1914
ERROR generics_typevartuple_basic.py:66:27-30: Unexpected positional argument to TypeVarTuple [invalid-type-var-tuple]
2015
ERROR generics_typevartuple_basic.py:67:27-36: Unexpected keyword argument `bound` to TypeVarTuple [invalid-type-var-tuple]
21-
ERROR generics_typevartuple_basic.py:86:13-19: Argument `tuple[float]` is not assignable to parameter `arg2` with type `tuple[int]` in function `func2` [bad-argument-type]
22-
ERROR generics_typevartuple_basic.py:90:13-19: Argument `tuple[Literal['0']]` is not assignable to parameter `arg2` with type `tuple[int]` in function `func2` [bad-argument-type]
2316
ERROR generics_typevartuple_basic.py:91:15-19: Argument `tuple[Literal[0]]` is not assignable to parameter `arg2` with type `tuple[int, int]` in function `func2` [bad-argument-type]
2417
ERROR generics_typevartuple_basic.py:100:17-18: Argument `Array[Width]` is not assignable to parameter `y` with type `Array[Height]` in function `multiply` [bad-argument-type]
2518
ERROR generics_typevartuple_basic.py:101:17-18: Argument `Array[Height, Width]` is not assignable to parameter `y` with type `Array[Height]` in function `multiply` [bad-argument-type]

conformance/results/pyrefly/overloads_definitions.toml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ ERROR overloads_definitions.py:28:5-10: Overloaded function must have an impleme
88
ERROR overloads_definitions.py:59:9-21: Overloaded function must have an implementation [invalid-overload]
99
ERROR overloads_definitions.py:81:9-14: If `@staticmethod` is present on any overload or the implementation, it should be on every overload and the implementation. [invalid-overload]
1010
ERROR overloads_definitions.py:90:9-14: If `@classmethod` is present on any overload or the implementation, it should be on every overload and the implementation. [invalid-overload]
11-
ERROR overloads_definitions.py:90:9-14: Implementation signature `(cls: type[Self@C], *args: int | str) -> int | str` does not accept all arguments that overload signature `(self: Self@C, x: str, /) -> str` accepts [inconsistent-overload]
1211
ERROR overloads_definitions.py:124:9-22: `@final` should only be applied to the implementation of an overloaded function. [invalid-overload]
1312
ERROR overloads_definitions.py:139:9-24: `@final` should only be applied to the implementation of an overloaded function. [invalid-overload]
1413
ERROR overloads_definitions.py:144:9-24: `@final` should only be applied to the implementation of an overloaded function. [invalid-overload]

conformance/results/pyrefly/typeddicts_inheritance.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,6 @@ errors_diff = """
44
"""
55
output = """
66
ERROR typeddicts_inheritance.py:44:7-19: `NonTypedDict` is not a typed dictionary. Typed dictionary definitions may only extend other typed dictionaries. [invalid-inheritance]
7-
ERROR typeddicts_inheritance.py:55:4-5: Class member `Y1.x` overrides parent class `X1` in an inconsistent manner [bad-override]
7+
ERROR typeddicts_inheritance.py:55:4-5: Class member `Y1.x` overrides parent class `X1` in an inconsistent manner [bad-override-mutable-attribute]
88
ERROR typeddicts_inheritance.py:65:7-11: Field `x` has inconsistent types inherited from multiple base classes [inconsistent-inheritance]
99
"""
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
version = "pyrefly 0.60.0"
1+
version = "pyrefly 0.62.0"

conformance/results/results.html

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -178,7 +178,7 @@ <h3>Python Type System Conformance Test Results</h3>
178178
</th>
179179
<th class='tc-header'><div class='tc-name'>zuban 0.7.0</div>
180180
</th>
181-
<th class='tc-header'><div class='tc-name'>pyrefly 0.60.0</div>
181+
<th class='tc-header'><div class='tc-name'>pyrefly 0.62.0</div>
182182
</th>
183183
<th class='tc-header'><div class='tc-name'>ty 0.0.32</div>
184184
</th>
@@ -416,14 +416,14 @@ <h3>Python Type System Conformance Test Results</h3>
416416
<th class="column col2 partially-conformant"><div class="hover-text">Partial<span class="tooltip-text" id="bottom"><p>Does not enforce that tuples captured by TypeVarTuple are of the same length.</p></span></div></th>
417417
<th class="column col2 partially-conformant"><div class="hover-text">Partial<span class="tooltip-text" id="bottom"><p>Does not correctly solve TypeVarTuple with heterogeneous bounds.</p></span></div></th>
418418
<th class="column col2 conformant">Pass</th>
419-
<th class="column col2 partially-conformant"><div class="hover-text">Partial<span class="tooltip-text" id="bottom"><p>Does not correctly solve TypeVarTuple with heterogeneous bounds.</p></span></div></th>
419+
<th class="column col2 conformant">Pass</th>
420420
<th class="column col2 partially-conformant"><div class="hover-text">Partial<span class="tooltip-text" id="bottom"><p>Supports PEP-646 unpacked tuples but not TypeVarTuple.</p></span></div></th>
421421
</tr>
422422
<tr><th class="column col1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;generics_typevartuple_basic</th>
423423
<th class="column col2 partially-conformant"><div class="hover-text">Partial<span class="tooltip-text" id="bottom"><p>Does not enforce that tuples captured by TypeVarTuple are same length.</p></span></div></th>
424424
<th class="column col2 partially-conformant"><div class="hover-text">Partial<span class="tooltip-text" id="bottom"><p>Does not correctly solve TypeVarTuple with heterogeneous bounds.</p></span></div></th>
425425
<th class="column col2 conformant">Pass</th>
426-
<th class="column col2 partially-conformant"><div class="hover-text">Partial<span class="tooltip-text" id="bottom"><p>TypeVarTuple is pinned too early when calling generic function.</p></span></div></th>
426+
<th class="column col2 conformant">Pass</th>
427427
<th class="column col2 not-conformant">Unsupported</th>
428428
</tr>
429429
<tr><th class="column col1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;generics_typevartuple_callable</th>

conformance/uv.lock

Lines changed: 11 additions & 11 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)