zope.interface icon indicating copy to clipboard operation
zope.interface copied to clipboard

`inspect.getmembers(InterfaceClass)` causes `TypeError`

Open d-maurer opened this issue 2 years ago • 0 comments

Python 3; zope.interface==5.1.2

>>> from zope.interface import Interface
>>> from inspect import getmembers
>>> getmembers(type(Interface))
Traceback (most recent call last):
  File "<console>", line 1, in <module>
  File "/usr/lib/python3.6/inspect.py", line 342, in getmembers
    value = getattr(object, key)
  File ".../eggs/zope.interface-5.1.2-py3.6-linux-x86_64.egg/zope/interface/declarations.py", line 394, in implementedBy
    spec_name = _implements_name(cls)
  File ".../eggs/zope.interface-5.1.2-py3.6-linux-x86_64.egg/zope/interface/declarations.py", line 292, in _implements_name
    '.' + (getattr(ob, '__name__', '?') or '?')
TypeError: unsupported operand type(s) for +: 'property' and 'str'

d-maurer avatar Oct 02 '21 07:10 d-maurer