diff --git a/conformance/results/mypy/protocols_definition.toml b/conformance/results/mypy/protocols_definition.toml index 717b8cad5..e34a5fbba 100644 --- a/conformance/results/mypy/protocols_definition.toml +++ b/conformance/results/mypy/protocols_definition.toml @@ -51,6 +51,9 @@ protocols_definition.py:340: error: Incompatible types in assignment (expression protocols_definition.py:340: note: Protocol member Template6.val1 expected settable variable, got read-only attribute protocols_definition.py:341: error: Incompatible types in assignment (expression has type "Concrete6_Bad3", variable has type "Template6") [assignment] protocols_definition.py:341: note: Protocol member Template6.val1 expected settable variable, got read-only attribute +protocols_definition.py:369: error: Incompatible types in assignment (expression has type "Concrete7_Bad1", variable has type "Template7") [assignment] +protocols_definition.py:369: note: Protocol member Template7.val1 expected class variable, got instance variable +protocols_definition.py:370: error: Incompatible types in assignment (expression has type "Concrete7_Bad2", variable has type "Template7") [assignment] """ conformance_automated = "Fail" errors_diff = """ diff --git a/conformance/results/pycroscope/protocols_definition.toml b/conformance/results/pycroscope/protocols_definition.toml index 506df6a7a..d5e5f2dc7 100644 --- a/conformance/results/pycroscope/protocols_definition.toml +++ b/conformance/results/pycroscope/protocols_definition.toml @@ -1,5 +1,10 @@ -conformance_automated = "Pass" +conformance_automated = "Fail" +conformant = "Partial" +notes = """ +Incorrectly accepts an instance-only attribute as satisfying a `ClassVar` protocol member. +""" errors_diff = """ +Line 369: Expected 1 errors """ output = """ ./protocols_definition.py:30:10: Incompatible argument type for things: expected collections.abc.Iterable[./protocols_definition.py.SupportsClose] but got Literal[[1]] [incompatible_argument] @@ -23,4 +28,5 @@ output = """ ./protocols_definition.py:339:0: Incompatible assignment: expected ./protocols_definition.py.Template6, got ./protocols_definition.py.Concrete6_Bad1 [incompatible_assignment] ./protocols_definition.py:340:0: Incompatible assignment: expected ./protocols_definition.py.Template6, got ./protocols_definition.py.Concrete6_Bad2 [incompatible_assignment] ./protocols_definition.py:341:0: Incompatible assignment: expected ./protocols_definition.py.Template6, got ./protocols_definition.py.Concrete6_Bad3 [incompatible_assignment] +./protocols_definition.py:370:0: Incompatible assignment: expected ./protocols_definition.py.Template7, got ./protocols_definition.py.Concrete7_Bad2 [incompatible_assignment] """ diff --git a/conformance/results/pyrefly/protocols_definition.toml b/conformance/results/pyrefly/protocols_definition.toml index 766d78c3f..a02940d9b 100644 --- a/conformance/results/pyrefly/protocols_definition.toml +++ b/conformance/results/pyrefly/protocols_definition.toml @@ -24,4 +24,6 @@ ERROR protocols_definition.py:289:22-38: `Concrete5_Bad5` is not assignable to ` ERROR protocols_definition.py:339:22-38: `Concrete6_Bad1` is not assignable to `Template6` [bad-assignment] ERROR protocols_definition.py:340:22-38: `Concrete6_Bad2` is not assignable to `Template6` [bad-assignment] ERROR protocols_definition.py:341:22-38: `Concrete6_Bad3` is not assignable to `Template6` [bad-assignment] +ERROR protocols_definition.py:369:22-38: `Concrete7_Bad1` is not assignable to `Template7` [bad-assignment] +ERROR protocols_definition.py:370:22-38: `Concrete7_Bad2` is not assignable to `Template7` [bad-assignment] """ diff --git a/conformance/results/pyright/protocols_definition.toml b/conformance/results/pyright/protocols_definition.toml index b8252b8f7..2b983d502 100644 --- a/conformance/results/pyright/protocols_definition.toml +++ b/conformance/results/pyright/protocols_definition.toml @@ -97,6 +97,12 @@ protocols_definition.py:341:22 - error: Type "Concrete6_Bad3" is not assignable "Concrete6_Bad3" is incompatible with protocol "Template6" "val1" is writable in protocol "val1" is not read-only in protocol (reportAssignmentType) +protocols_definition.py:369:22 - error: Type "Concrete7_Bad1" is not assignable to declared type "Template7" + "Concrete7_Bad1" is incompatible with protocol "Template7" + "val1" is defined as a ClassVar in protocol (reportAssignmentType) +protocols_definition.py:370:22 - error: Type "Concrete7_Bad2" is not assignable to declared type "Template7" + "Concrete7_Bad2" is incompatible with protocol "Template7" + "val1" is defined as a ClassVar in protocol (reportAssignmentType) """ conformance_automated = "Pass" errors_diff = """ diff --git a/conformance/results/results.html b/conformance/results/results.html index 2a8c27f44..7c89516d1 100644 --- a/conformance/results/results.html +++ b/conformance/results/results.html @@ -1384,7 +1384,12 @@
ClassVar protocol member.