Skip to content

DOC-7267 Add ioredis and Ruby to the API Methods tab dropdown - #4498

Merged
andy-stark-redis merged 2 commits into
mainfrom
DOC-7267-ioredis-tab
Nov 6, 2026
Merged

andy-stark-redis merged 2 commits into
mainfrom
DOC-7267-ioredis-tab

Conversation

@andy-stark-redis

@andy-stark-redis andy-stark-redis commented Nov 6, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Adds ioredis and Ruby to the API Methods tab dropdown. The ioredis question was raised in review on #4496. The data for both clients was in data/command-api-mapping.json but never rendered.

config.toml already gave both clients a mappingClientId, but the dropdown is built from a fixed list in api-methods-tab.html, and neither was in it.

  • Adds "ioredis" after "Node.js" and "Ruby" after "PHP" in $clientOrder and $jsClientOrder.
  • Adds genericCall="call" for both in config.toml. ioredis declares call(command, args) in RedisCommander.d.ts (5.11.1). redis-rb v6.0.0 documents Redis::Commands#call.
  • RedisVL stays out of the dropdown on purpose, because it is handled differently.

Review notes

  • Coverage is thin for both. ioredis: 159 of 527 commands have a list, 62 are empty and 306 have no key. Ruby: 217 have a list and 310 have no key. redis-py, Jedis and go-redis have about 470. The rest show the default "No method signature available for this client."
  • I did not add status entries for either. Most of the gap is typed methods that were never mapped (for example EVAL and HGET for ioredis), not commands the client cannot call, so generic_only would be wrong. Filling the gap is separate work under DOC-7267.
  • Built with content/develop/clients ignored (the full site only builds in CI). On SET, EVAL and ACL, the dropdown lists "ioredis" after "Node.js (node-redis)" and "Ruby (redis-rb)" after "PHP (Predis)". SET shows signatures for both; the other two show the default message.

🤖 Generated with Claude Code


Note

Low Risk
Docs-only Hugo config and partial list order; no auth, data, or runtime behavior beyond the command-reference UI.

Overview
Adds ioredis and Ruby to the API Methods tab so they appear in the client dropdown and participate in signature rendering and localStorage sync with code tabs.

Config: sets genericCall="call" for both ioredis and Ruby in params.clientsConfig, so when status is generic_only the fallback message points at the right generic API.

Layout: inserts ioredis after Node.js and Ruby after PHP in both $clientOrder and $jsClientOrder in api-methods-tab.html, matching the existing mapping data. Coverage for many commands may still show the default “no signature” copy where mappings are missing—that is unchanged and expected per the PR notes.

Reviewed by Cursor Bugbot for commit 7232633. Bugbot is set up for automated code reviews on this repo. Configure here.

The ioredis entries rebuilt in #4496 were never shown: the API Methods tab builds its dropdown
from a fixed client order in api-methods-tab.html, and that list named every client with a
mappingClientId except ioredis (RedisVL and Ruby are also absent and are left alone here).
ioredis now sits after Node.js in both the dropdown order and the localStorage tab-sync order.
It also gets genericCall="call", which ioredis defines in RedisCommander.d.ts, so a command
listed generic_only in the status file would say how to send it.

Coverage is thin: 159 of 527 commands have an ioredis list, 62 are empty and 306 have no
ioredis key, against about 470 for redis-py, Jedis and go-redis. Those commands show the
default "No method signature available for this client." No ioredis status entries were added,
because most of the gap is typed methods that were never mapped (EVAL, HGET), not commands
ioredis cannot call.

Learned: a client with a mappingClientId in config.toml still does not appear in the tab unless it is in both clientOrder lists in api-methods-tab.html
Directive: add a client to the tab in both $clientOrder and $jsClientOrder, and give it a genericCall
Gaps: 306 commands have no ioredis entry, so the new option shows the default message for most of the command set
Gaps: built with content/develop/clients ignored, checked SET, EVAL and ACL in the output
Ticket: DOC-7267
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
@github-actions

github-actions Bot commented Nov 6, 2026 •

Copy link
Copy Markdown
Contributor

DOC-7267

@github-actions

github-actions Bot commented Nov 6, 2026 •

Copy link
Copy Markdown
Contributor

🧠 Redis Memory

Found 7 related items from repository history (2 new this commit):

Memory updated at 7232633

Ruby has a mappingClientId (redis_rb) in config.toml and 217 of 527 commands have a redis_rb
list, but the tab's fixed client order omitted it, so that data was never shown. Ruby now sits
after PHP in both the dropdown order and the localStorage tab-sync order, and gets
genericCall="call", which redis-rb v6.0.0 documents as the public way to send any command
(Redis::Commands#call, which delegates to send_command).

The other 310 commands have no redis_rb key and show the default message. RedisVL stays out of
the dropdown on purpose, because it is handled differently from the other clients.

Directive: do not add RedisVL to the API Methods tab client order, the docs team decided it is handled differently
Gaps: built with content/develop/clients ignored, checked SET, EVAL and ACL in the output
Ticket: DOC-7267
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
@andy-stark-redis andy-stark-redis changed the title DOC-7267 Add ioredis to the API Methods tab dropdown DOC-7267 Add ioredis and Ruby to the API Methods tab dropdown Nov 6, 2026
@andy-stark-redis
andy-stark-redis merged commit da062cc into main Nov 6, 2026
109 checks passed
@andy-stark-redis
andy-stark-redis deleted the DOC-7267-ioredis-tab branch November 6, 2026 16:20
@andy-stark-redis

Copy link
Copy Markdown
Contributor Author

Thanks @dwdougherty !

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.

2 participants