Skip to content

#69 - Add Python bindings API documentation#79

Closed
dleshchev wants to merge 2 commits into
mainfrom
docs/python-bindings-api-reference
Closed

#69 - Add Python bindings API documentation#79
dleshchev wants to merge 2 commits into
mainfrom
docs/python-bindings-api-reference

Conversation

@dleshchev
Copy link
Copy Markdown
Collaborator

Summary

  • reorganize API Reference into C++, Python, and Configuration YAML pages
  • add Python bindings API reference covering init, RX/TX, buffer semantics, socket/RDMA, reorder, enums/classes/constants, and function groups
  • keep compatibility pages for old api-guide.md and configuration.md paths and update docs/README links
  • update doc reference checker so Python example scripts are not misread as benchmark binaries

Validation

  • python3 -m mkdocs build --strict --site-dir /tmp/daqiri-pr-check-site
  • python3 scripts/check_html_links.py /tmp/daqiri-pr-check-site
  • python3 scripts/check_doc_refs.py

dleshchev added 2 commits May 13, 2026 14:36
Signed-off-by: Denis Leshchev <dleshchev@nvidia.com>
Signed-off-by: Denis Leshchev <dleshchev@nvidia.com>
@greptile-apps
Copy link
Copy Markdown

greptile-apps Bot commented May 13, 2026

Greptile Summary

This PR reorganizes the API reference docs from two flat files (docs/api-guide.md, docs/configuration.md) into a three-page docs/api-reference/ section (C++, Python, Configuration YAML), adds comprehensive Python bindings documentation, and keeps backward-compat redirect stubs at the old paths.

  • New docs/api-reference/python.md: covers init overloads, RX/TX workflows, buffer/pointer semantics, socket/RDMA helpers, GPU reorder, GIL release points, enums, config classes, and a full function-reference table.
  • scripts/check_doc_refs.py fix: the BIN_RE negative lookahead is extended from (?!\\.yaml) to (?!(?:\\.yaml|\\.py)) so Python example script filenames referenced in the new docs are not false-positively flagged as unknown binaries.
  • Compatibility stubs and not_in_nav in mkdocs.yml ensure old inbound links keep working without generating MkDocs strict-mode warnings.

Confidence Score: 5/5

Safe to merge — changes are documentation-only except for a one-line regex fix in the doc-reference checker.

All source and binary files are untouched. The regex change is a narrow, correct extension of an existing exclusion pattern. Redirect stubs, nav updates, and the new Python reference page are internally consistent and validated with mkdocs build --strict per the PR description.

docs/index.html — the hero Language stat was not updated alongside the other nav changes and still reads C++ only.

Important Files Changed

Filename Overview
docs/api-reference/python.md New Python bindings API reference covering init, RX/TX workflows, buffer semantics, socket/RDMA, reorder, GIL behavior, enums/classes/constants, and a full function reference table.
scripts/check_doc_refs.py Extends BIN_RE negative lookahead to exclude .py file extensions, preventing Python example scripts from being false-positively matched as benchmark binaries.
mkdocs.yml Nav restructured into C++/Python/Configuration YAML sub-pages. not_in_nav correctly suppresses omitted-file warnings for the compatibility stubs.
docs/index.html Nav and CTA links updated; Python API Reference added to footer. Hero Language stat still reads C++ only despite Python bindings now being documented.
docs/api-guide.md Converted to a backward-compatibility redirect stub pointing to the new api-reference/cpp.md location.
docs/configuration.md Converted to a backward-compatibility redirect stub pointing to the new api-reference/configuration.md location.

Comments Outside Diff (1)

  1. docs/index.html, line 249 (link)

    P2 Hero Language stat still reads "C++" only

    The hero stats strip has <div class="stat-value">C++</div> for the Language tile. Now that Python bindings are documented and shipped, a first-time visitor scanning the landing page will think the library is C++-only. Since docs/index.html is already being edited in this PR, changing the value to C++, Python here would keep the landing page consistent with the rest of the docs.

Reviews (1): Last reviewed commit: "#69 - Update docs sync rules for API ref..." | Re-trigger Greptile

@dleshchev
Copy link
Copy Markdown
Collaborator Author

Closing this draft so the documentation flow can be split into a smaller docs-first PR. Keeping the branch for the later Python bindings work.

@dleshchev dleshchev closed this May 18, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant