Skip to content

Add API-doc site, format gate, recipe.yaml, bench - #3

Merged
conorbronsdon merged 2 commits into
mainfrom
ehsan-quick-wins
Jul 8, 2026
Merged

Add API-doc site, format gate, recipe.yaml, bench#3
conorbronsdon merged 2 commits into
mainfrom
ehsan-quick-wins

Conversation

@conorbronsdon

Copy link
Copy Markdown
Owner

Ports the quick wins already proven on mojo-xml and mojo-feed:

  • Canonical formatting: one-time mojo format commit over src/test (2 files), plus a CI Format check step in test.yml right after Mojo install, so drift fails fast.
  • API-doc site: docs/render_api.py (copied verbatim from mojo-xml) + .github/workflows/docs.yaml render mojo doc JSON for src/redis into a self-contained HTML reference; pixi run docs builds it locally. Also adds a module docstring to src/redis/__init__.mojomojo doc now emits no summary warnings.
  • recipe.yaml: rattler-build recipe (mojo-xml pattern) distributing the pure source tree with this repo's own mojo run pin — documents the intended conda distribution shape, not wired to CI.
  • bench/bench_resp.mojo: offline RESP2 benchmark — serializes commands via encode_command and parses canned replies via parse_reply, the same network-free path test/test_resp.mojo exercises, so no Redis server is needed. Local pixi run bench only, not in CI.
  • New pixi tasks fmt, docs, bench; .gitignore entries for generated docs and the bench binary.

Verified locally (WSL): protocol tests 36/36, connection tests 2/2, integration tests 21/21 against a live redis-server on port 6399, pixi run docs renders, bench compiles and runs, and pixi run fmt && git diff --exit-code passes. CI's live-test posture is unchanged — the integration suite stays local-only.

🤖 Generated with Claude Code

@conorbronsdon
conorbronsdon merged commit 53bf5d9 into main Jul 8, 2026
1 check passed
@conorbronsdon
conorbronsdon deleted the ehsan-quick-wins branch July 8, 2026 03:48
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