Skip to content

DOC-7032: Add tested client examples for JSONPath projection expressions - #3928

Merged
andy-stark-redis merged 1 commit into
mainfrom
DOC-7032-json-path-projections
Sep 9, 2026
Merged

andy-stark-redis merged 1 commit into
mainfrom
DOC-7032-json-path-projections

Conversation

@andy-stark-redis

@andy-stark-redis andy-stark-redis commented Sep 4, 2026

Copy link
Copy Markdown
Contributor

Summary

A real finding from testing, not just an implementation note: a multi-path JSON.GET reply's key order is not guaranteed — confirmed by repeated calls against an identical document returning both orderings. Added a clarifying sentence to the docs, and every client's test asserts structurally (map/object equality) rather than by exact string match so this can't cause a flaky test later.

Test plan

  • Verified every step against a live Redis 8.10 container, including repeated runs specifically to catch the key-order nondeterminism.
  • ./build/example-test-harness/run.sh --portable json_path_ops — all 11 clients PASS (all 19 steps).
  • hugo --quiet — clean build, no warnings, no unrendered shortcodes.

🤖 Generated with Claude Code


Note

Low Risk
Documentation and executable examples only; no production runtime or API behavior changes beyond clarifying multi-path reply semantics.

Overview
Turns the Projection expressions CLI snippets in path.md into runnable clients-example demos (proj_basic, proj_multipath) wired to the json_path_ops example set, and documents that multi-path JSON.GET object key order is not guaranteed.

Adds matching proj_basic / proj_multipath steps across all 11 client harnesses (arithmetic, length(), division-by-zero → [], and mixed projection + plain-path multi-get). Multi-path tests assert structural equality (maps/objects) instead of exact JSON strings so nondeterministic key order cannot flake CI.

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

@github-actions

github-actions Bot commented Sep 4, 2026

Copy link
Copy Markdown
Contributor

DOC-7032

@github-actions

github-actions Bot commented Sep 4, 2026

Copy link
Copy Markdown
Contributor

@github-actions

github-actions Bot commented Sep 4, 2026

Copy link
Copy Markdown
Contributor

🧠 Redis Memory

Found 8 related items from repository history (1 new this commit):

Memory updated at f10ac97

@andy-stark-redis
andy-stark-redis force-pushed the DOC-7032-json-path-functions branch from f3046d8 to a46b330 Compare September 4, 2026 13:51
@andy-stark-redis
andy-stark-redis force-pushed the DOC-7032-json-path-projections branch from bdeb94f to 0f18156 Compare September 4, 2026 13:58
@andy-stark-redis
andy-stark-redis force-pushed the DOC-7032-json-path-functions branch from a46b330 to 14b7e5b Compare September 4, 2026 14:54
@andy-stark-redis
andy-stark-redis force-pushed the DOC-7032-json-path-projections branch from 0f18156 to ecec704 Compare September 7, 2026 08:21
@andy-stark-redis
andy-stark-redis requested a review from a team September 7, 2026 09:19
@andy-stark-redis andy-stark-redis self-assigned this Sep 7, 2026
@andy-stark-redis andy-stark-redis added the clients Client library docs label Sep 7, 2026

@dwdougherty dwdougherty left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Renders correctly. Approved.

@andy-stark-redis
andy-stark-redis force-pushed the DOC-7032-json-path-functions branch from 14b7e5b to 254193a Compare September 9, 2026 15:16
Base automatically changed from DOC-7032-json-path-functions to main September 9, 2026 15:17
Convert the two illustrative CLI blocks under "Projection expressions"
into runnable clients-example demos, in place. Extends the
json_path_ops TCE set from the filter-operators and functions PRs;
verified against a live Redis 8.10 server across all 11 clients.

Documents a real finding from testing: a multi-path JSON.GET reply's
key order is not guaranteed (confirmed by repeated calls against an
identical document returning both orderings), so every client's test
asserts structurally rather than by exact string match.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@andy-stark-redis
andy-stark-redis force-pushed the DOC-7032-json-path-projections branch from ecec704 to f10ac97 Compare September 9, 2026 15:23
@andy-stark-redis
andy-stark-redis merged commit 5cf6564 into main Sep 9, 2026
50 checks passed
@andy-stark-redis
andy-stark-redis deleted the DOC-7032-json-path-projections branch September 9, 2026 15:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

clients Client library docs

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants