Skip to content

redis@6.2.0-beta.0

Pre-release
Pre-release

Choose a tag to compare

@nkaradzhov nkaradzhov released this 30 Jul 08:32

6.2.0-beta.0

✨ Highlights

This release brings a broad wave of new command coverage across the client and modules. The time-series package gains the most: new TS.NRANGE/TS.NREVRANGE multi-key pivot commands, a TS.READ cursor reader, TS.QUERYLABELS, EXCLUDEEMPTY on MRANGE/MREVRANGE, and multi-aggregator support. RediSearch adds FT.ALIASLIST, a COLLECT reducer for FT.AGGREGATE, HNSW RERANK, timeout warnings on the FT.SEARCH family, and the full set of stemmer languages. The core client adds SUNIONCARD/SDIFFCARD, LMOVEM/BLMOVEM, ZREVRANK WITHSCORE, COMMAND DOCS, and XREAD MAXCOUNT/MAXSIZE. A large batch of correctness fixes lands for zero-valued optional arguments (LIMIT 0, DB 0, SAMPLES 0, ENTRIESREAD 0, IDLETIME/FREQ 0, ENTRIESADDED 0) that were previously dropped from the wire, alongside several cluster and sentinel connection-lifecycle fixes.

The new HIMPORT command family (managed fieldset lifecycle) ships as experimental — see the warning below.

🚀 New Features

⚠️ Experimental

  • feat(client): add HIMPORT command family with managed fieldset lifecycle (#3381) — @nkaradzhov. The HIMPORT family and its FieldsetRegistry/PreparedFieldsets API are experimental and unstable; the surface may change or be removed in a future release. Do not depend on it in production.

🐛 Bug Fixes

  • fix(client): include acquire timeout duration in pool timeout error message (#3382) — @Piyush0049
  • fix(client): reject in-flight connect attempt when socket dies during initiator (#3374) — @nkaradzhov
  • fix(client): clear neighbor pointers when removing the head node (#3320) — @abhijeetkumarsah92
  • fix(client): XADD/XTRIM with LIMIT 0 must emit the argument (#3342) — @Develop-KIM
  • fix(client): XGROUP CREATE/SETID with ENTRIESREAD 0 must emit the argument (#3333) — @Develop-KIM
  • fix(client): XSETID with ENTRIESADDED 0 must emit the argument (#3324) — @spokodev
  • fix(client): MEMORY USAGE must emit SAMPLES when 0 (#3328) — @Develop-KIM
  • fix(client): RESTORE with IDLETIME/FREQ 0 must emit the argument (#3323) — @spokodev
  • fix(client): GETEX PXAT with Date must encode milliseconds (#3317) — @spokodev
  • fix(client): COPY with DB 0 must emit the DB argument (#3318) — @spokodev
  • fix(cluster): rebind abort/timeout listeners when a command moves to another queue (#3367) — @GiHoon1123
  • fix(cluster): extractAllCommands only returned the first queued command (#3364) — @GiHoon1123
  • fix(cluster): reject commands before cluster topology is ready (#3321) — @GiHoon1123
  • fix(sentinel): reject connect() instead of hanging when the resolved master is unreachable (#3331) — @GiHoon1123
  • fix(search): preserve zero FT.CREATE scores (#3355) — @alencristen
  • fix: hScanValuesIterator yields values instead of field names (#3344) — @winklemad
  • fix: remove dangling agent symlinks that break checkout (#3334) — @nkaradzhov

🧰 Maintenance

  • Staggered 6.2.0-beta.0 releases across all workspaces (client, bloom, json, search, time-series, entraid, redis)
  • ci(release): skip throwaway workspace update during staggered release (#3384) — @nkaradzhov
  • ci: fix release-drafter Maintenance category key (#3358) — @nkaradzhov
  • ci(documentation): cap GITHUB_TOKEN to contents: read (#3291) — @arpitjain099
  • chore(tests): bump default docker test image to 8.10 (#3383, #3319, #3348) — @nkaradzhov
  • chore(docs): update security email (#3379) — @nkaradzhov
  • chore: bump metrics exporter (#3375) — @bobymicroby
  • chore(skills): emit maintainer comments without blockquote markers (#3373) — @nkaradzhov
  • chore: add agent skills and tooling configs (#3316) — @nkaradzhov
  • chore(deps): bump jws from 3.2.2 to 3.2.3 (#3372) — @dependabot
  • chore(deps): bump on-headers and express-session (#3371) — @dependabot
  • chore(deps): bump uuid and nyc (#3370) — @dependabot
  • chore(deps): bump esbuild and tsx (#3309) — @dependabot
  • refactor(test-utils): single source for default docker test image config (#3349) — @nkaradzhov
  • test: run client command specs against an external Redis Enterprise database (#3341) — @kiryazovi-redis
  • test(scenario): tolerate at-least-once duplicates during pub/sub migrate handoff (#3345) — @kiryazovi-redis
  • test(search): add non-English language coverage for FT.SEARCH (#3339) — @nkaradzhov
  • test(client): add message assertion test for XCLAIM JUSTID (#3376) — @Piyush0049
  • test(client): fix flaky cluster PubSub listener-move test (#3347, #3357) — @nkaradzhov
  • fix(client): stabilize flaky LATENCY LATEST test (#3326) — @nkaradzhov
  • docs: add CommonJS basic example to README (#3359) — @Hashim1999164
  • docs: update end event description to reference close() and destroy() (#3332) — @Wnayar
  • docs(cluster): document that rootNodes config is not inherited by node connections (#3327) — @nkaradzhov
  • docs(contributing): document Docker Desktop host networking requirement for tests on macOS/Windows (#3330) — @nkaradzhov
  • docs(skills): improve implement-command guidance (#3353) — @nkaradzhov

New Contributors

Full Changelog: 9ba65dd...043d304