diff --git a/docs/content/api/modules.json.gz b/docs/content/api/modules.json.gz index ff01ad79f9f48..ca9637276b344 100644 Binary files a/docs/content/api/modules.json.gz and b/docs/content/api/modules.json.gz differ diff --git a/docs/content/api/searchindex.json.gz b/docs/content/api/searchindex.json.gz index 0f631e5efb09d..448da37ef2f14 100644 Binary files a/docs/content/api/searchindex.json.gz and b/docs/content/api/searchindex.json.gz differ diff --git a/docs/content/api/sections.json.gz b/docs/content/api/sections.json.gz index 4c08dcab91d61..c0a3ce1b4135e 100644 Binary files a/docs/content/api/sections.json.gz and b/docs/content/api/sections.json.gz differ diff --git a/docs/next/public/objects.inv b/docs/next/public/objects.inv index 00f04269cfa08..39bd77e3ebb02 100644 Binary files a/docs/next/public/objects.inv and b/docs/next/public/objects.inv differ diff --git a/docs/sphinx/_ext/dagster-sphinx/dagster_sphinx/__init__.py b/docs/sphinx/_ext/dagster-sphinx/dagster_sphinx/__init__.py index 8942717cae697..ecfb1e986490a 100644 --- a/docs/sphinx/_ext/dagster-sphinx/dagster_sphinx/__init__.py +++ b/docs/sphinx/_ext/dagster-sphinx/dagster_sphinx/__init__.py @@ -17,7 +17,7 @@ from sphinx.environment import BuildEnvironment from sphinx.ext.autodoc import ( ClassDocumenter, - ObjectMembers, # type: ignore # (bad stubs) + ObjectMember, Options as AutodocOptions, ) from sphinx.util import logging @@ -86,7 +86,7 @@ class DagsterClassDocumenter(ClassDocumenter): objtype = "class" - def get_object_members(self, want_all: bool) -> Tuple[bool, ObjectMembers]: + def get_object_members(self, want_all: bool) -> Tuple[bool, List[ObjectMember]]: # the @record transform creates a new outer class, so redirect # sphinx to target the original class for scraping members out of __dict__ if is_record(self.object): @@ -99,10 +99,11 @@ def get_object_members(self, want_all: bool) -> Tuple[bool, ObjectMembers]: filtered_members = [ m for m in unfiltered_members - if m[0] in self.object.__dict__ and self._is_member_public(self.object.__dict__[m[0]]) + if m.__name__ in self.object.__dict__ + and self._is_member_public(self.object.__dict__[m.__name__]) ] for member in filtered_members: - check_public_method_has_docstring(self.env, member[0], member[1]) + check_public_method_has_docstring(self.env, member.__name__, member.object) return False, filtered_members def _is_member_public(self, member: object) -> bool: diff --git a/docs/tox.ini b/docs/tox.ini index 5cbaf32b0d46d..78c51f467f053 100644 --- a/docs/tox.ini +++ b/docs/tox.ini @@ -3,7 +3,12 @@ skipsdist = True [testenv] download = True -passenv = CI_* COVERALLS_REPO_TOKEN AWS_SECRET_ACCESS_KEY AWS_ACCESS_KEY_ID BUILDKITE* +passenv = CI_* + COVERALLS_REPO_TOKEN + AWS_SECRET_ACCESS_KEY + AWS_ACCESS_KEY_ID + BUILDKITE* + allowlist_externals = make uv @@ -11,10 +16,10 @@ install_command = uv pip install {opts} {packages} [testenv:sphinx] deps = - sphinx==5.0.2 - sphinx-click==4.3.0 + sphinx>=8,<9 + sphinx-click sphinx_toolbox - sphinxcontrib-serializinghtml<1.1.6 # pin away new version that manifests TypeError + sphinxcontrib-serializinghtml -e sphinx/_ext/dagster-sphinx # Can't stub deps because processed by sphinx-click