…ted since 3.11)
Summary:
backport upstream PRs
python/cpython#110163 and
python/cpython#113233
upstream issues:
python/cpython#89519 (Calling help executes classmethod property decorated methods) and
python/cpython#113157 (Changed behavior of <instancemethod>.__get__ in Python 3.11)
upstream commits: [`7f9a99e8549b792662f2cd28bf38a4d4625bd402`](
python/cpython@7f9a99e) and [`d058eaeed44766a8291013b275ad22f153935d3b`](
python/cpython@d058eae)
Reviewed By: aleivag
Differential Revision: D52014322
fbshipit-source-id: 87de6d9587bd9cc49f053ca340adfc469b041f91
Fix yet another problem created by classmethod descriptor chaining. This completes the work in gh-89519, fixes the bug reported in gh-113157, and get us back to the stable and correct semantics in Python 3.9.
There is still an open question about what if anything to do for Python 3.11 and Python 3.12. We can' t backport this without breaking something else.