Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 17 additions & 0 deletions build/command-api-mapping-README.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,23 @@ Each file is named after a Redis command (e.g., `GET.json`, `SET.json`, `BF.ADD.
}
```

## Why a client has no signature

An empty list, or a missing client key, shows "No method signature available for this
client." To say why, list the command and client in `data/command-api-mapping-status.json`:

```json
{ "CLUSTER NODES": { "redis_rs_sync": "generic_only" }, "QUIT": { "go-redis": "unsupported" } }
```

- `generic_only`: the client has no typed method. The tab says to send the command with the
client's `genericCall` (set per client in `config.toml`).
- `unsupported`: the client can't call the command, or the command is handled by the client
itself.

A client with no entry keeps the default message. Only the API Methods tab uses this file. The
commands foldout shows signatures only when there are any.

## Adding a New Command

1. Create a new file named `data/command-api-mapping/COMMAND_NAME.json` (e.g., `MGET.json`)
Expand Down
28 changes: 14 additions & 14 deletions config.toml
Original file line number Diff line number Diff line change
Expand Up @@ -102,24 +102,24 @@ rdi_current_version = "2.2.0"

[params.clientsConfig]
# mappingClientId maps to keys in data/command-api-mapping.json for method signatures
"Python"={quickstartSlug="redis-py", langId="python", clientId="redis-py", clientName="redis-py", mappingClientId="redis_py"}
"Node.js"={quickstartSlug="nodejs", langId="javascript", clientId="node-redis", clientName="node-redis", mappingClientId="node_redis"}
"Python"={quickstartSlug="redis-py", langId="python", clientId="redis-py", clientName="redis-py", mappingClientId="redis_py", genericCall="execute_command"}
"Node.js"={quickstartSlug="nodejs", langId="javascript", clientId="node-redis", clientName="node-redis", mappingClientId="node_redis", genericCall="sendCommand"}
"ioredis"={quickstartSlug="ioredis", langId="javascript", clientId="ioredis", clientName="ioredis", mappingClientId="ioredis"}
"Java-Sync"={quickstartSlug="jedis", langId="java", clientId="jedis", clientName="Jedis", mappingClientId="jedis"}
"Lettuce-Sync"={quickstartSlug="lettuce", langId="java", clientId="lettuce", clientName="Lettuce", mappingClientId="lettuce_sync"}
"Java-Async"={quickstartSlug="lettuce", langId="java", clientId="lettuce", clientName="Lettuce", mappingClientId="lettuce_async"}
"Java-Reactive"={quickstartSlug="lettuce", langId="java", clientId="lettuce", clientName="Lettuce", mappingClientId="lettuce_reactive"}
"Go"={quickstartSlug="go", langId="go", clientId="go-redis", clientName="go-redis", mappingClientId="go-redis"}
"Java-Sync"={quickstartSlug="jedis", langId="java", clientId="jedis", clientName="Jedis", mappingClientId="jedis", genericCall="sendCommand"}
"Lettuce-Sync"={quickstartSlug="lettuce", langId="java", clientId="lettuce", clientName="Lettuce", mappingClientId="lettuce_sync", genericCall="dispatch"}
"Java-Async"={quickstartSlug="lettuce", langId="java", clientId="lettuce", clientName="Lettuce", mappingClientId="lettuce_async", genericCall="dispatch"}
"Java-Reactive"={quickstartSlug="lettuce", langId="java", clientId="lettuce", clientName="Lettuce", mappingClientId="lettuce_reactive", genericCall="dispatch"}
"Go"={quickstartSlug="go", langId="go", clientId="go-redis", clientName="go-redis", mappingClientId="go-redis", genericCall="Do"}
"C"={quickstartSlug="hiredis", langId="c", clientId="hiredis", clientName="hiredis", mappingClientId=""}
"C#-Sync (NRedisStack)"={quickstartSlug="dotnet", langId="csharp", clientId="nredisstack", clientName="NRedisStack", mappingClientId="nredisstack_sync"}
"C#-Async (NRedisStack)"={quickstartSlug="dotnet", langId="csharp", clientId="nredisstack", clientName="NRedisStack", mappingClientId="nredisstack_async"}
"C#-Sync (SE.Redis)"={quickstartSlug="dotnet", langId="csharp", clientId="stackexchange-redis", clientName="StackExchange.Redis", mappingClientId="nredisstack_sync"}
"C#-Async (SE.Redis)"={quickstartSlug="dotnet", langId="csharp", clientId="stackexchange-redis", clientName="StackExchange.Redis", mappingClientId="nredisstack_async"}
"C#-Sync (NRedisStack)"={quickstartSlug="dotnet", langId="csharp", clientId="nredisstack", clientName="NRedisStack", mappingClientId="nredisstack_sync", genericCall="Execute"}
"C#-Async (NRedisStack)"={quickstartSlug="dotnet", langId="csharp", clientId="nredisstack", clientName="NRedisStack", mappingClientId="nredisstack_async", genericCall="ExecuteAsync"}
"C#-Sync (SE.Redis)"={quickstartSlug="dotnet", langId="csharp", clientId="stackexchange-redis", clientName="StackExchange.Redis", mappingClientId="nredisstack_sync", genericCall="Execute"}
"C#-Async (SE.Redis)"={quickstartSlug="dotnet", langId="csharp", clientId="stackexchange-redis", clientName="StackExchange.Redis", mappingClientId="nredisstack_async", genericCall="ExecuteAsync"}
"RedisVL"={quickstartSlug="redis-vl", langId="python", clientId="redis-vl", clientName="RedisVL", mappingClientId="redis_vl"}
"PHP"={quickstartSlug="php", langId="php", clientId="predis", clientName="Predis", mappingClientId="php"}
"PHP"={quickstartSlug="php", langId="php", clientId="predis", clientName="Predis", mappingClientId="php", genericCall="executeRaw"}
"Ruby"={quickstartSlug="redis-rb", langId="ruby", clientId="redis-rb", clientName="redis-rb", mappingClientId="redis_rb"}
"Rust-Sync"={quickstartSlug="rust", langId="rust", clientId="redis-rs", clientName="redis-rs", mappingClientId="redis_rs_sync"}
"Rust-Async"={quickstartSlug="rust", langId="rust", clientId="redis-rs", clientName="redis-rs", mappingClientId="redis_rs_async"}
"Rust-Sync"={quickstartSlug="rust", langId="rust", clientId="redis-rs", clientName="redis-rs", mappingClientId="redis_rs_sync", genericCall="redis::cmd"}
"Rust-Async"={quickstartSlug="rust", langId="rust", clientId="redis-rs", clientName="redis-rs", mappingClientId="redis_rs_async", genericCall="redis::cmd"}
"Python (Iris)"={quickstartSlug="", langId="python", clientId="iris-python", clientName="Python (Iris)", mappingClientId=""}
"TypeScript (Iris)"={quickstartSlug="", langId="typescript", clientId="iris-typescript", clientName="TypeScript (Iris)", mappingClientId=""}
"cURL (Iris)"={quickstartSlug="", langId="bash", clientId="iris-curl", clientName="cURL (Iris)", mappingClientId=""}
Expand Down
Loading
Loading