DOC-6836 Rename resolveCredentials() to resolveCredentialsAsync() in Lettuce AMR docs [PARKED] - #3623
Open
andy-stark-redis wants to merge 1 commit into
Conversation
…Lettuce AMR docs Lettuce PRs #3837/#3829/#3838 rename the credential-provider SPI: the RedisCredentialsProvider interface becomes CredentialsProvider and its resolveCredentials() method becomes resolveCredentialsAsync(). Updated the two call sites in the Entra ID / AMR page (one live snippet, one commented-out test line) to the new async name. Written against unmerged upstream diffs that target a "reactor-optional" feature branch, not main, so this is provisional. Parking until the rename actually ships in a released redis-authx-entraid artifact. The subtlety: our page uses redis-authx-entraid's TokenBasedRedisCredentialsProvider, not the lettuce-core class the PR diff edits, so the rename only reaches our readers once that separate artifact rebuilds against the new lettuce SPI and releases. Learned: the rename is a lettuce-core SPI change; it only affects our docs once redis-authx-entraid adopts the new lettuce and re-releases Recheck: when redis-authx-entraid releases a version whose TokenBasedRedisCredentialsProvider exposes resolveCredentialsAsync() Gaps: pinned redis-authx-entraid version left at 0.1.1-beta1 (lines 43/51) — page is intentionally inconsistent while parked; bump to the release that ships the rename on pickup Gaps: unverified whether resolveCredentials() survives as a deprecated alias (#3837 "deprecate" vs #3838 "remove") — if it does, our edit is preferred not strictly required Directive: do not merge until the rename ships in a released artifact AND the dependency version on this page is bumped to match Ticket: DOC-6836 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Contributor
Contributor
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.
Updates the Lettuce Azure Managed Redis (AMR) / Entra ID auth page for the upcoming
credential-provider SPI rename in Lettuce:
RedisCredentialsProvider→CredentialsProvider, and itsresolveCredentials()method →resolveCredentialsAsync().Two call sites in
amr.mdare updated to the newasync name.
Park manifest
Ticket: DOC-6836
Parked at: 2026-07-13
Trigger to pick up:
redis-authx-entraidpublishes a release (tag >v0.1.1-beta2) whoseTokenBasedRedisCredentialsProviderexposesresolveCredentialsAsync()— i.e. it has adoptedthe renamed Lettuce SPI. (Precursor: the Lettuce PRs below merge to
mainand ship in a Lettuce release.)Labels: parked, do not merge yet
Pinned sources (state observed at park time)
feature/reactor-optional-1; head625a413; milestone none; updated 2026-07-13gh api repos/redis/lettuce/pulls/3838 --jq '{state,merged,head_sha:.head.sha,base:.base.ref,milestone:.milestone.title,updated_at}'feature/reactor-optional-1; headf558dbb; milestone none; updated 2026-07-09gh api repos/redis/lettuce/pulls/3829 --jq '{state,merged,head_sha:.head.sha,base:.base.ref,milestone:.milestone.title,updated_at}'main; headb8b2a25; milestone none; updated 2026-07-13gh api repos/redis/lettuce/pulls/3837 --jq '{state,merged,head_sha:.head.sha,base:.base.ref,milestone:.milestone.title,updated_at}'feature/reactor-optional-1; updated 2026-07-14; body states it is an "alternative of #3838"gh api repos/redis/lettuce/pulls/3842 --jq '{state,merged,head_sha:.head.sha,base:.base.ref,milestone:.milestone.title,updated_at}'v0.1.1-beta2; page pins0.1.1-beta1(still exposesresolveCredentials())gh api repos/redis/jvm-redis-authx-entraid/tags --jq '.[0:5][].name'Update 2026-08-06 (
/pr-scan-review) — a rival PR, and the remove-vs-deprecate question looks answeredTwo things found while re-checking the pins. Neither has fired the trigger — all three original PRs are still
open and untouched since 13 July, and
redis-authx-entraid's latest tag is stillv0.1.1-beta2— so this PRstays parked. But both change what to expect on pickup.
1. #3838 has a rival. lettuce#3842 describes itself as an
"alternative of #3838" and sits on the same
feature/reactor-optional-1branch. One of the two will beabandoned, so the pinned trigger above may be pinned to the loser. Check both at pickup time.
2. Under #3842,
resolveCredentials()survives. This addresses the third checklist item below, which isthe one that decides whether this PR's edit is a fix or a preference. Verified from #3842's file list on
2026-08-06:
io/lettuce/core/RedisCredentialsProvider.java— modified, not deleted. The interface stays.io/lettuce/core/CredentialsProvider.java— added (the new primary SPI).io/lettuce/core/AsyncCredentialsProviderAdapter.java— added (the bridge).That is deprecate-with-bridge, not remove — i.e. the #3837 shape rather than the #3838 shape. If #3842 is the
route that ships, this PR's rename is preferred-not-required and there is no reader-facing break, which lowers
its urgency considerably and should be stated in the finalize commit.
Caveat on sourcing: this reads the file list and add/modify/delete status of the live diff, which is reliable.
It deliberately does not rely on the Bugbot summary in #3842's body — that summary was reviewed at commit
404f10f9and is demonstrably stale about other parts of the same PR.Observed shape the page assumes (confidence: LOW)
resolveCredentials()→resolveCredentialsAsync()(return type unchanged:
CompletionStage<RedisCredentials>/ reactiveMonochain still.doOnNext(...).block()).LOW — taken from the unmerged #3838 diff against a feature branch, not a released artifact.
TokenBasedRedisCredentialsProvider(the class our page uses) keeps its name; only itsmethod is renamed. LOW — same source; the class in the diff lives in Lettuce core
(
io.lettuce.authx), whereas our page consumes it from the separateredis-authx-entraidpackage (
redis.clients.authentication). The rename must propagate across that repo boundarybefore it's real for us; that propagation is unverified.
#3837deprecate onmain,#3838remove onthe feature branch): the end-state exposed to users — remove vs. deprecate-with-alias — is not
yet settled.
Re-check checklist
redis-authx-entraidrelease exposesresolveCredentialsAsync(), and bump the pinned version atamr.mdlines ~43 and ~51 (currently0.1.1-beta1) to match. The page is intentionally inconsistent while parked — new method name, old version.resolveCredentials()→resolveCredentialsAsync()actually landed (not renamed again, e.g.resolveAsync()), and that the return-type /.doOnNext(...).block()usage in the two snippets still compiles.resolveCredentials()survives as a deprecated alias (#3837 "deprecate") or is removed (#3838 "remove"). If it survives, our edit is preferred-not-required and there's no reader-facing break — note this in the finalize commit. Partly answered 2026-08-06: under the rival #3842 it survives (see the update above). Still open because it depends on which of #3838/#3842 ships.TokenBasedRedisCredentialsProvider(andEntraIDTokenAuthConfigBuilder) class names are unchanged in the released artifact; the page uses them ~10 times.content/develop/clients/lettuce/for any newly-relevant SPI mentions (CredentialsProvider,subscribeToCredentials,supportsStreaming) introduced by the wider "reactor-optional" refactor — none today, but the umbrella change is broad.On pickup, then
When the trigger fires, run
/pickup <this PR>: it re-fetches each pinned source, diffs itagainst the snapshots above, reconciles the docs, and takes the PR through the normal
/reflect→/finalizepipeline to merge. Thedo not merge yetguard holds until/finalizecompletes.Note
Low Risk
Documentation-only renames in example snippets with no runtime or security impact; merge timing depends on matching released client APIs.
Overview
Updates the Lettuce Azure Managed Redis (AMR) / Entra ID page so sample code matches the upcoming Lettuce credential-provider SPI rename:
resolveCredentials()→resolveCredentialsAsync().Both Java snippets in
amr.mdare touched—the standalone “test credentials” example and the commented optional test in the full connection sample. The reactive chain (.doOnNext(...).block()) is unchanged.Note: The PR description marks this as parked until
redis-authx-entraidships against the new SPI; the doc still pins dependency version0.1.1-beta1, so method names and artifact version may be intentionally out of sync until pickup.Reviewed by Cursor Bugbot for commit 2d032d8. Bugbot is set up for automated code reviews on this repo. Configure here.