This is an automated email from the ASF dual-hosted git repository.

lidavidm pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/arrow-adbc.git


The following commit(s) were added to refs/heads/main by this push:
     new 161916887 docs: update doxygen/javadoc intersphinx bridges for Sphinx 
8.1 (#2244)
161916887 is described below

commit 161916887da693af4cec737aeb3db9f5c790de84
Author: David Li <[email protected]>
AuthorDate: Fri Oct 11 14:49:56 2024 +0900

    docs: update doxygen/javadoc intersphinx bridges for Sphinx 8.1 (#2244)
    
    Fixes #2243.
---
 ci/conda_env_docs.txt                |  2 +-
 docs/source/ext/doxygen_inventory.py | 11 +++++++----
 docs/source/ext/fake_inventory.py    | 14 +++++++++++++-
 docs/source/ext/javadoc_inventory.py |  7 +++++--
 4 files changed, 26 insertions(+), 8 deletions(-)

diff --git a/ci/conda_env_docs.txt b/ci/conda_env_docs.txt
index 64099883c..26d20f8c6 100644
--- a/ci/conda_env_docs.txt
+++ b/ci/conda_env_docs.txt
@@ -22,7 +22,7 @@ make
 nodejs
 numpydoc
 pytest
-sphinx>=8
+sphinx>=8.1
 sphinx-autobuild
 sphinx-copybutton
 sphinx-design
diff --git a/docs/source/ext/doxygen_inventory.py 
b/docs/source/ext/doxygen_inventory.py
index f477b6867..f918766e4 100644
--- a/docs/source/ext/doxygen_inventory.py
+++ b/docs/source/ext/doxygen_inventory.py
@@ -34,6 +34,7 @@ from fake_inventory import (
     FakeBuildEnvironment,
     FakeBuilder,
     FakeDomain,
+    FakeDomainsContainer,
     FakeEnv,
     FakeObject,
 )
@@ -126,9 +127,9 @@ def make_fake_domains(
                 item_id_to_url[m] = url
 
     domains = {
-        "c": FakeDomain(objects=[]),
-        "cpp": FakeDomain(objects=[]),
-        "std": FakeDomain(objects=[]),
+        "c": FakeDomain("c", objects=[]),
+        "cpp": FakeDomain("cpp", objects=[]),
+        "std": FakeDomain("std", objects=[]),
     }
 
     # Scrape the XML index generated by Doxygen.  We can use the previous
@@ -187,7 +188,9 @@ def main():
 
     domains = make_fake_domains(args.html_path, args.xml_path, args.url)
     config = FakeEnv(project=args.project, version=args.version)
-    env = FakeBuildEnvironment(config=config, domains=domains)
+    env = FakeBuildEnvironment(
+        config=config, domains=FakeDomainsContainer.from_dict(domains)
+    )
 
     output = args.output_dir / "objects.inv"
     sphinx.util.inventory.InventoryFile.dump(
diff --git a/docs/source/ext/fake_inventory.py 
b/docs/source/ext/fake_inventory.py
index ac02bce55..64bda373a 100644
--- a/docs/source/ext/fake_inventory.py
+++ b/docs/source/ext/fake_inventory.py
@@ -48,15 +48,27 @@ class FakeObject(typing.NamedTuple):
 
 
 class FakeDomain(typing.NamedTuple):
+    name: str
     objects: list[FakeObject]
 
     def get_objects(self):
         return self.objects
 
 
+class FakeDomainsContainer(typing.NamedTuple):
+    domains: list[FakeDomain]
+
+    def sorted(self):
+        return self.domains
+
+    @classmethod
+    def from_dict(self, domains: dict[str, FakeDomain]) -> 
FakeDomainsContainer:
+        return FakeDomainsContainer(domains=domains.values())
+
+
 class FakeBuildEnvironment(typing.NamedTuple):
     config: FakeEnv
-    domains: dict[str, FakeDomain]
+    domains: FakeDomainsContainer
 
 
 class FakeBuilder:
diff --git a/docs/source/ext/javadoc_inventory.py 
b/docs/source/ext/javadoc_inventory.py
index 8912e1669..1eae4d160 100644
--- a/docs/source/ext/javadoc_inventory.py
+++ b/docs/source/ext/javadoc_inventory.py
@@ -29,6 +29,7 @@ from fake_inventory import (
     FakeBuildEnvironment,
     FakeBuilder,
     FakeDomain,
+    FakeDomainsContainer,
     FakeEnv,
     FakeObject,
 )
@@ -68,7 +69,7 @@ def make_fake_domains(root: Path, base_url: str) -> dict[str, 
FakeDomain]:
         data.extend(extract_index(f.read(), "packageSearchIndex = "))
 
     domains = {
-        "std": FakeDomain(objects=[]),
+        "std": FakeDomain("std", objects=[]),
     }
 
     for item in data:
@@ -124,7 +125,9 @@ def main():
 
     domains = make_fake_domains(args.path, args.url)
     config = FakeEnv(project=args.project, version=args.version)
-    env = FakeBuildEnvironment(config=config, domains=domains)
+    env = FakeBuildEnvironment(
+        config=config, domains=FakeDomainsContainer.from_dict(domains)
+    )
 
     output = args.path / "objects.inv"
     sphinx.util.inventory.InventoryFile.dump(

Reply via email to