Repository navigation
DOC-7267 Update the stale redis_py entries and drop the nonexistent methods - #4500
Open
andy-stark-redis wants to merge 1 commit into
Open
andy-stark-redis wants to merge 1 commit into
andy-stark-redis wants to merge 1 commit into
Conversation
…ethods The last redis_py items from the DOC-7267 sweep, checked against redis-py 8.1.0, the current release. Ten command files change, and only their redis_py lists. Stale: JSON.SET lacked the fpha parameter and declared Optional[str] where set returns bool or None. TS.MRANGE and TS.MREVRANGE lacked exclude_empty, and their aggregation_type takes a string or a list of strings. XREAD and XREADGROUP lacked max_count and max_size, which need Redis 8.10.0. Each entry's parameter names now equal the method's signature. Nonexistent: client_caching, cursor_del, cursor_read and _list are not methods. CLIENT CACHING, FT.CURSOR DEL and FT._LIST have no redis-py method at all, so their lists are empty and the status file marks redis_py generic_only. FT.CURSOR READ is not a separate method either: aggregate() issues it when given a Cursor, so that entry is now the aggregate signature. That exposed FT.AGGREGATE's entry, which typed query as Union[str, Query]. The method takes a Union[AggregateRequest, Cursor], so the entry is corrected too. Learned: a redis-py command can be served by an existing method that branches on its argument type (FT.CURSOR READ through aggregate), so no method named after the command is not proof it is unsupported Directive: take the type of a parameter from the released signature, not from what the command's arguments look like Gaps: only the entries the earlier sweep flagged were rechecked, other redis_py entries may still differ in parameter types or returns Gaps: returns for XREAD, XREADGROUP and the TS range commands still say ResponseT and Any, redis-py 8.1.0 declares more specific types Ticket: DOC-7267 Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Contributor
Contributor
🧠 Redis MemoryFound 5 related items from repository history (5 new this commit):
Memory updated at bbf1227 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
The last redis_py items from DOC-7267, checked against redis-py 8.1.0. Ten command files change, only their
redis_pylists, plus the status file and the merged data file.fphaand returnsOptional[bool].exclude_empty, andaggregation_typetakes a string or a list of strings.max_countandmax_size.redis_pyisgeneric_onlyin the status file.aggregate()called with aCursor, so its entry is now the aggregate signature.queryasUnion[str, Query]. The method takesUnion[AggregateRequest, Cursor], so I corrected it. This wasn't on the original list.Review notes
inspect.signatureof the method in 8.1.0. No other client's key changes, and the merged file equals a regeneration from the per-command files.ResponseTandAnyreturns on the XREAD and TS range entries, and any other redis_py entry whose parameter types differ from 8.1.0. Only the entries the earlier sweep flagged were rechecked.🤖 Generated with Claude Code
Note
Low Risk
Documentation-only JSON updates; no runtime code paths touched, so risk is limited to potential data-entry mistakes.
Overview
Aligns the redis-py command documentation with redis-py 8.1.0 by rewriting signatures and parameters for JSON, search, timeseries, and streams helpers. The composite
command-api-mapping.jsonand the per-command shards are updated together so the merged data stays consistent.Removes redis-py entries that never existed and flags those commands as
generic_onlyincommand-api-mapping-status.json, explicitly coveringCLIENT CACHING,FT.CURSOR DEL, andFT._LIST. Search cursor flows now documentaggregate(...)withAggregateRequest/Cursor, and the FT aggregate mapping tightens its parameter typing.Introduces new optional knobs where the client gained them:
JSON.SETexposes thefphaflag and fixes the boolean return type,TS.MRANGE/TS.MREVRANGEaccept list aggregations plusexclude_empty, andXREAD/XREADGROUPcapturemax_count/max_sizewith Redis 8.10 notes.Reviewed by Cursor Bugbot for commit bbf1227. Bugbot is set up for automated code reviews on this repo. Configure here.