SIGN IN SIGN UP

[3.13] gh-136914: Fix support of cached functions and properties in DocTest's lineno computation (GH-136930) (GH-137615)

Previously, DocTest's lineno of functions and methods decorated with
functools.cache(), functools.lru_cache() and functools.cached_property()
was not properly returned (None was returned) because the
computation relied on inspect.isfunction() which does not consider the
decorated result as a function.

We now use the more generic inspect.isroutine(), as elsewhere
in doctest's logic.

Also, added a special case for functools.cached_property().
(cherry picked from commit fece15d29f28e89f1231afa80508c80ed28dc37d)

Co-authored-by: Denis Laxalde <denis@laxalde.org>
M
Miss Islington (bot) committed
23b7a95f41674fa949e1b415f82e4b8858db47ae
Parent: a64c948
Committed by GitHub <noreply@github.com> on 8/10/2025, 8:05:28 PM