summaryrefslogtreecommitdiffstats
path: root/contrib/python/zope.interface/py3/zope
diff options
context:
space:
mode:
authorrobot-piglet <[email protected]>2026-01-26 08:19:37 +0300
committerrobot-piglet <[email protected]>2026-01-26 08:33:33 +0300
commitcc3affe67e59b009a8ff68e48d8eec9a8ba72ac9 (patch)
treeb20b49fbcaa40bac4e6cb842d67a20f1ddfda070 /contrib/python/zope.interface/py3/zope
parentb5ca884548e50f9fd5434c4f2dd79f9cd865ab84 (diff)
Intermediate changes
commit_hash:3e6b6d99cc911eb8c99abcde84d23c9c0e145c82
Diffstat (limited to 'contrib/python/zope.interface/py3/zope')
-rw-r--r--contrib/python/zope.interface/py3/zope/interface/interface.py2
-rw-r--r--contrib/python/zope.interface/py3/zope/interface/tests/test_interface.py17
2 files changed, 19 insertions, 0 deletions
diff --git a/contrib/python/zope.interface/py3/zope/interface/interface.py b/contrib/python/zope.interface/py3/zope/interface/interface.py
index ad8a7de6b36..1ce44e0f5d3 100644
--- a/contrib/python/zope.interface/py3/zope/interface/interface.py
+++ b/contrib/python/zope.interface/py3/zope/interface/interface.py
@@ -827,6 +827,8 @@ class InterfaceClass(_InterfaceClassBase):
'__firstlineno__',
# __classdictcell__: Python 3.14
'__classdictcell__',
+ # __annotate_func__: Python 3.14b1+
+ '__annotate_func__',
) and
aval is not _decorator_non_return # noqa W503
}
diff --git a/contrib/python/zope.interface/py3/zope/interface/tests/test_interface.py b/contrib/python/zope.interface/py3/zope/interface/tests/test_interface.py
index 5105c11575f..d5a7d8d8e76 100644
--- a/contrib/python/zope.interface/py3/zope/interface/tests/test_interface.py
+++ b/contrib/python/zope.interface/py3/zope/interface/tests/test_interface.py
@@ -718,6 +718,23 @@ class InterfaceClassTests(unittest.TestCase):
self.assertEqual(inst.__bases__, ())
self.assertEqual(list(inst.names()), [])
+ def test_ctor_attrs_w___annotate_func__(self) -> None:
+ from zope.interface import Attribute
+ from zope.interface import Interface
+ from zope.interface import directlyProvides
+ from zope.interface.verify import verifyObject
+
+ class IAnnotated(Interface):
+ value: int = Attribute("Value")
+
+ class Annotated:
+ value: int = 0
+
+ self.assertEqual(list(IAnnotated.names()), ['value'])
+ annotated = Annotated()
+ directlyProvides(annotated, IAnnotated)
+ verifyObject(IAnnotated, annotated)
+
def test_ctor_attrs_w__decorator_non_return(self):
from zope.interface.interface import _decorator_non_return
ATTRS = {'dropme': _decorator_non_return}