mirror of
https://github.com/hwchase17/langchain.git
synced 2025-08-29 14:37:21 +00:00
docs: per-package version in api docs (#14683)
This commit is contained in:
parent
d4312e2424
commit
99743539ae
@ -7,6 +7,7 @@ from enum import Enum
|
|||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
from typing import Dict, List, Literal, Optional, Sequence, TypedDict, Union
|
from typing import Dict, List, Literal, Optional, Sequence, TypedDict, Union
|
||||||
|
|
||||||
|
import toml
|
||||||
from pydantic import BaseModel
|
from pydantic import BaseModel
|
||||||
|
|
||||||
ROOT_DIR = Path(__file__).parents[2].absolute()
|
ROOT_DIR = Path(__file__).parents[2].absolute()
|
||||||
@ -191,7 +192,9 @@ def _load_package_modules(
|
|||||||
|
|
||||||
|
|
||||||
def _construct_doc(
|
def _construct_doc(
|
||||||
package_namespace: str, members_by_namespace: Dict[str, ModuleMembers]
|
package_namespace: str,
|
||||||
|
members_by_namespace: Dict[str, ModuleMembers],
|
||||||
|
package_version: str,
|
||||||
) -> str:
|
) -> str:
|
||||||
"""Construct the contents of the reference.rst file for the given package.
|
"""Construct the contents of the reference.rst file for the given package.
|
||||||
|
|
||||||
@ -206,7 +209,7 @@ def _construct_doc(
|
|||||||
"""
|
"""
|
||||||
full_doc = f"""\
|
full_doc = f"""\
|
||||||
=======================
|
=======================
|
||||||
``{package_namespace}`` API Reference
|
``{package_namespace}`` {package_version}
|
||||||
=======================
|
=======================
|
||||||
|
|
||||||
"""
|
"""
|
||||||
@ -284,11 +287,15 @@ def _build_rst_file(package_name: str = "langchain") -> None:
|
|||||||
Args:
|
Args:
|
||||||
package_name: Can be either "langchain" or "core" or "experimental".
|
package_name: Can be either "langchain" or "core" or "experimental".
|
||||||
"""
|
"""
|
||||||
package_members = _load_package_modules(_package_dir(package_name))
|
package_dir = _package_dir(package_name)
|
||||||
|
package_members = _load_package_modules(package_dir)
|
||||||
|
package_version = _get_package_version(package_dir)
|
||||||
with open(_out_file_path(package_name), "w") as f:
|
with open(_out_file_path(package_name), "w") as f:
|
||||||
f.write(
|
f.write(
|
||||||
_doc_first_line(package_name)
|
_doc_first_line(package_name)
|
||||||
+ _construct_doc(_package_namespace(package_name), package_members)
|
+ _construct_doc(
|
||||||
|
_package_namespace(package_name), package_members, package_version
|
||||||
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@ -314,6 +321,12 @@ def _package_dir(package_name: str = "langchain") -> Path:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
def _get_package_version(package_dir: Path) -> str:
|
||||||
|
with open(package_dir.parent / "pyproject.toml", "r") as f:
|
||||||
|
pyproject = toml.load(f)
|
||||||
|
return pyproject["tool"]["poetry"]["version"]
|
||||||
|
|
||||||
|
|
||||||
def _out_file_path(package_name: str = "langchain") -> Path:
|
def _out_file_path(package_name: str = "langchain") -> Path:
|
||||||
"""Return the path to the file containing the documentation."""
|
"""Return the path to the file containing the documentation."""
|
||||||
return HERE / f"{package_name.replace('-', '_')}_api_reference.rst"
|
return HERE / f"{package_name.replace('-', '_')}_api_reference.rst"
|
||||||
|
@ -63,13 +63,6 @@
|
|||||||
<a href="#" role="button" class="btn sk-btn-rellink py-1 disabled"">Next</a>
|
<a href="#" role="button" class="btn sk-btn-rellink py-1 disabled"">Next</a>
|
||||||
{%- endif %}
|
{%- endif %}
|
||||||
</div>
|
</div>
|
||||||
{%- if pagename != "install" %}
|
|
||||||
<div class="alert alert-warning p-1 mb-2" role="alert">
|
|
||||||
<p class="text-center mb-0">
|
|
||||||
<strong>LangChain {{ release }}</strong><br/>
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
{%- endif %}
|
|
||||||
{%- if meta and meta['parenttoc']|tobool %}
|
{%- if meta and meta['parenttoc']|tobool %}
|
||||||
<div class="sk-sidebar-toc">
|
<div class="sk-sidebar-toc">
|
||||||
{% set nav = get_nav_object(maxdepth=3, collapse=True, numbered=True) %}
|
{% set nav = get_nav_object(maxdepth=3, collapse=True, numbered=True) %}
|
||||||
|
Loading…
Reference in New Issue
Block a user