[issue34995] functools.cached_property does not maintain the wrapped method's __isabstractmethod__

2018-11-20 Thread Matt Wilber
Matt Wilber added the comment: Inada-san, I think it's fair to ask for a broader vision about how ABCs are used. In that respect I'm wondering about some inconsistencies in the existing functools module about whether wrappers should maintain the wrapped function's __isabstractmethod__

[issue34995] functools.cached_property does not maintain the wrapped method's __isabstractmethod__

2018-10-17 Thread Matt Wilber
Matt Wilber added the comment: To add some more context, the existing Python documentation is a little misleading in this situation: https://docs.python.org/3/library/abc.html#abc.abstractmethod It shows that labeling a method with @property @abstractmethod ought to be done in the order

[issue34995] functools.cached_property does not maintain the wrapped method's __isabstractmethod__

2018-10-17 Thread Matt Wilber
Matt Wilber added the comment: I agree, a comment can serve the same purpose. But for the same reasons it's useful to express typing hints in Python with real syntax, and the reasons it's useful to have the abc module in the first place, I think it is useful to be able to annotate

[issue34995] functools.cached_property does not maintain the wrapped method's __isabstractmethod__

2018-10-16 Thread Matt Wilber
Matt Wilber added the comment: This allows a developer to add a @cached_property to a method with the @abstractmethod decorator, without breaking the check for abstract methods on ABC instantiation. That is, if you tried to instantiate an ABC with a method that had a method decorated

[issue34995] functools.cached_property does not maintain the wrapped method's __isabstractmethod__

2018-10-15 Thread Matt Wilber
Change by Matt Wilber : -- keywords: +patch pull_requests: +9266 stage: -> patch review ___ Python tracker <https://bugs.python.org/issue34995> ___ ___ Py

[issue34995] functools.cached_property does not maintain the wrapped method's __isabstractmethod__

2018-10-15 Thread Matt Wilber
Change by Matt Wilber : -- components: Library (Lib) nosy: mwilbz priority: normal severity: normal status: open title: functools.cached_property does not maintain the wrapped method's __isabstractmethod__ versions: Python 3.8 ___ Python tracker