Open
Description
We had several discussions about combining scipy-doctest
and pytest-doctestplus
. While the strategy is still TBD, previous work and discussions are scattered all over.
So the first order of business is to collect them together. A minimal, potentially incomplete list:
- An early discussion in the NumPy tracker (predates scipy-doctest as a pytest plugin): DEV:
--doctests
option toruntests.py
doesn't do anything numpy/numpy#21070 (comment) - A more recent NumPy discussion, when converting the NumPy usage to
scipy-doctest
: - refguide-check with pytest as a runner numpy/numpy#26604 (comment)
scikit-learn
's adoption: DOC Investigate scipy-doctest for more convenient doctests scikit-learn/scikit-learn#29027
Cross-ref gh-59 for a discussion about the third option in the "better doctesting" space, xdoctest
.
At least in the medium term, while the grand strategy is TBD, we are using the scipy-doctest
pluggable and configurable architecture to bring it to feature parity with other tools (and pytest itself). Ongoing work:
- ENH: add ParserKlass key to DTConfig; check xdoctest.DocTestParser #174 is a WIP attempt to use
xdoctest
's Parser; - Doctestplus adapter #188 is a demo of using the
pytest-doctestplus
's Checker; - ENH: Add
pytest_extra_requires
to conditionally ignore paths / skip functions unless requirements are met #204 implementspytest_extra_requires
, requested in DoctestPlus and optional dependencies #197 - Stop skipping tests #198 (comment) tracks a change to make the handling of doctests vs "regular tests" controllable and align with the rest of the ecosystem.
Let's use this issue to (i) work out the long-term path forward, and (ii) flag missing features or quirks.