Repository navigation
DOC-7294 Add Python and Go BITRANGEINTARRAY examples to the bitmaps page [PARKED] - #4527
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
Adds a `bitrangeintarray` step to the `bitmap_tutorial` set for Python (new dt_bitmap.py) and Go (new ExampleClient_bitrangeintarray), and wraps the BITRANGEINTARRAY redis-cli block in bitmaps.md in a clients-example shortcode limited to Python and Go with lang_filter. The redis-cli prompt prefix changes from `redis>` to `>` inside the shortcode to match the other blocks on the page. Parked: BITRANGEINTARRAY is on the default branch of redis-py (509306f) and go-redis (9f33ff1) but in no release (redis-py v8.2.0b1 lacks it; go-redis v9.23.0 lacks it). Static checks only: `go vet` against the go-redis master clone and an import/signature check of redis.Redis.bitrangeintarray from a redis-py master install. NOT run: no Redis 8.12 server was available (Docker not running; local redis-server is 7.2.7), so the printed values are copied from the server-authored redis-cli block on the same page. Not covered yet: Jedis (#4830 open), predis (#1754 open), lettuce (#3992 merged 2026-11-09, no tag), redis-rb (merged, Ruby has no bitmap_tutorial source), node-redis (BITRANGEINTARRAY in neither 6.3.1 nor 6.4.0-beta.0). Add each to the lang_filter allowlist only when it ships. Learned: - bitmap_tutorial had no Python, Node.js or Ruby source at all; the Roaring section's existing `roaring` step is CLI-only. The new Python file contains only this step, so the Python tab appears only on this block. - The step sets bitmap-default-roaring and resets it in REMOVE code, which the build strips; the harness must reset it. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Contributor
Contributor
Contributor
🧠 Redis MemoryFound 5 related items from repository history (5 new this commit):
Memory updated at c03a9ff |
dwdougherty
approved these changes
Nov 10, 2026
Contributor
Author
|
Thanks for the reviews @dwdougherty ! |
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.
Adds a
bitrangeintarraystep to thebitmap_tutorialset for Python (newdt_bitmap.py) and Go (newExampleClient_bitrangeintarray), and wraps theBITRANGEINTARRAYredis-cli block inbitmaps.mdin aclients-exampleshortcode limited to Python and Go. The prompt prefix inside the block changes fromredis>to>to match the rest of the page.Warning
Do not merge yet. This PR documents client APIs that are on the clients' default branches but in no stable release. Base is
feature-oss-8.12(the 8.12 release branch), notmain.Run-verified on
redis:8.12-rc2(server reportsredis_version:8.11.241, the rc2 version string).dt_bitmap.pyran with its assertions against redis-py master 509306fc7325, andExampleClient_bitrangeintarraypassedgo testagainst go-redis master 9f33ff11dff1, including the// Output:match. The server'sbitmap-default-roaringwas back tonoafterwards.Park manifest
Ticket: DOC-7294
Parked at: 2026-11-10
Trigger to pick up: per client, the merge commit of its
BITRANGEINTARRAYPR is an ancestor of a non-prerelease tag (behind_by: 0), and Redis 8.12 is GA. Python needs a redis-py release after v8.1.0 that includes #4587 (v8.2.0b1 does not); Go needs a go-redis release after v9.23.0.Labels: parked, do not merge yet
Pinned sources (state observed at park time, 2026-11-10)
go vetran against thisFT.HYBRIDRERANK; may change the APIbitmap_tutorialsourceRe-fetch:
gh api repos/<o>/<r>/pulls/<n> --jq '{state, merged, head_sha: .head.sha, merge: .merge_commit_sha}'.Observed shape the page assumes
Confidence: HIGH for semantics (the command is documented on the page); MEDIUM for identifiers (merged to default branches, unreleased).
bitrangeintarray(key, start, end, mode=None, limit=None, zeros=False)returnslist[int];modeis"BYTE"or"BIT".BitRangeIntArray(ctx, key, start, end)andBitRangeIntArrayWithArgs(ctx, key, start, end, *BitRangeIntArrayArgs{Unit, Limit, Zeros}),Unitfromredis.BitCountIndexBit/BitCountIndexByte.[1 7 9 30],[28 29 31],[1 7],[9 30],[1 7],[9].Re-check checklist
redis:8.12-rc2, 2026-11-10. Repeat on the GA image and released clients.CONFIG SET bitmap-default-roaringis set in-step and reset only inREMOVEcode, which the build strips; the harness must reset it.BitRangeIntArrayArgs.lang_filterallowlist and write their steps once each ships.bitRangeIntArrayon master but not in 6.3.1 or 6.4.0-beta.0; nobitmap_tutorialNode source exists.dt_bitmap.pyhas noBINDER_ID, andrun.shhas nobitmap_tutorialmapping; decide whether to add either.bitmap_tutorialstill render for Go and Python (those tabs previously had only a Go file, none for Python).On unpark, then
Run
/unparkwith this PR's number./unparkSteps 4–5 own the closing sequence;/finalizeis deferred until then.