Skip to content

Commit 3b76b8b

Browse files
flying-sheepmeeseeksmachine
authored andcommitted
Backport PR scverse#1830: (docs): Qualname-override everything we can
1 parent 09a7861 commit 3b76b8b

2 files changed

Lines changed: 22 additions & 30 deletions

File tree

docs/conf.py

Lines changed: 21 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -85,35 +85,11 @@
8585
typehints_defaults = "braces"
8686
todo_include_todos = False
8787
nitpicky = True # Report broken links
88-
nitpick_ignore = [
89-
("py:class", "scipy.sparse.base.spmatrix"),
90-
("py:meth", "pandas.DataFrame.iloc"),
91-
("py:meth", "pandas.DataFrame.loc"),
92-
("py:class", "anndata._core.views.ArrayView"),
88+
nitpick_ignore = [ # APIs without an intersphinx entry
89+
# This API isn’t actually documented
9390
("py:class", "anndata._core.raw.Raw"),
94-
*[
95-
("py:class", f"anndata._core.aligned_mapping.{cls}{kind}")
96-
for cls in "Layers AxisArrays PairwiseArrays".split()
97-
for kind in ["", "View"]
98-
],
99-
# TODO: sphinx’ builtin autodoc.typehints extension isn’t handled by `qualname_overrides` yet
100-
# https://github.com/theislab/scanpydoc/issues/140
101-
("py:class", "h5py._hl.group.Group"),
102-
("py:class", "h5py._hl.dataset.Dataset"),
103-
# for experimental callback exports
91+
# TODO: remove zappy support; the zappy repo is archived
10492
("py:class", "anndata.compat.ZappyArray"),
105-
("py:class", "anndata.compat.DaskArray"),
106-
("py:class", "anndata.compat.CupyArray"),
107-
("py:class", "anndata.compat.CupySparseMatrix"),
108-
("py:class", "numpy.ma.core.MaskedArray"),
109-
("py:class", "dask.array.core.Array"),
110-
("py:class", "awkward.highlevel.Array"),
111-
("py:class", "anndata._core.sparse_dataset.BaseCompressedSparseDataset"),
112-
("py:obj", "numpy._typing._array_like._ScalarType_co"),
113-
# https://github.com/sphinx-doc/sphinx/issues/10974
114-
("py:class", "numpy.int64"),
115-
# https://github.com/tox-dev/sphinx-autodoc-typehints/issues/498
116-
("py:class", "types.EllipsisType"),
11793
]
11894

11995

@@ -123,6 +99,9 @@ def setup(app: Sphinx):
12399

124100

125101
intersphinx_mapping = dict(
102+
awkward=("https://awkward-array.org/doc/stable", None),
103+
cupy=("https://docs.cupy.dev/en/stable", None),
104+
dask=("https://docs.dask.org/en/stable", None),
126105
h5py=("https://docs.h5py.org/en/latest", None),
127106
hdf5plugin=("https://hdf5plugin.readthedocs.io/en/latest", None),
128107
loompy=("https://linnarssonlab.org/loompy", None),
@@ -131,19 +110,32 @@ def setup(app: Sphinx):
131110
python=("https://docs.python.org/3", None),
132111
scipy=("https://docs.scipy.org/doc/scipy", None),
133112
sklearn=("https://scikit-learn.org/stable", None),
134-
zarr=("https://zarr.readthedocs.io/en/v2.18.4/", None),
135113
xarray=("https://docs.xarray.dev/en/stable", None),
136-
dask=("https://docs.dask.org/en/stable", None),
114+
zarr=("https://zarr.readthedocs.io/en/v2.18.4/", None),
137115
)
138116
qualname_overrides = {
139117
"h5py._hl.group.Group": "h5py.Group",
140118
"h5py._hl.files.File": "h5py.File",
141119
"h5py._hl.dataset.Dataset": "h5py.Dataset",
142120
"anndata._core.anndata.AnnData": "anndata.AnnData",
121+
**{
122+
f"anndata._core.aligned_mapping.{cls}{kind}": "collections.abc.Mapping"
123+
for cls in "Layers AxisArrays PairwiseArrays".split()
124+
for kind in ["", "View"]
125+
},
143126
"anndata._types.ReadCallback": "anndata.experimental.ReadCallback",
144127
"anndata._types.WriteCallback": "anndata.experimental.WriteCallback",
145128
"anndata._types.Read": "anndata.experimental.Read",
146129
"anndata._types.Write": "anndata.experimental.Write",
130+
"anndata.compat.DaskArray": "dask.array.Array",
131+
"anndata.compat.CupyArray": "cupy.ndarray",
132+
"anndata.compat.CupySparseMatrix": "cupyx.scipy.sparse.spmatrix",
133+
"awkward.highlevel.Array": "ak.Array",
134+
"numpy.int64": ("py:attr", "numpy.int64"),
135+
"pandas.DataFrame.iloc": ("py:attr", "pandas.DataFrame.iloc"),
136+
"pandas.DataFrame.loc": ("py:attr", "pandas.DataFrame.loc"),
137+
# should be fixed soon: https://github.com/tox-dev/sphinx-autodoc-typehints/pull/516
138+
"types.EllipsisType": ("py:data", "types.EllipsisType"),
147139
}
148140
autodoc_type_aliases = dict(
149141
NDArray=":data:`~numpy.typing.NDArray`",

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ doc = [
7272
"sphinx-toolbox>=3.8.0",
7373
"sphinxext.opengraph",
7474
"nbsphinx",
75-
"scanpydoc[theme,typehints] >=0.14.1",
75+
"scanpydoc[theme,typehints] >=0.15.1",
7676
"zarr<3",
7777
"awkward>=2.3",
7878
"IPython", # For syntax highlighting in notebooks

0 commit comments

Comments
 (0)