x/oauth2: apply the expires_in value returned by the server to Token.ExpiresIn#748
x/oauth2: apply the expires_in value returned by the server to Token.ExpiresIn#748soh335 wants to merge 1 commit into
Conversation
…ExpiresIn In typical usage, Token.Expiry alone is sufficient. However, the ExpiresIn field was introduced in golang/go#61417. Even when a server returns an expires_in value in methods like Config.Exchange, only the Expiry field is updated, leaving ExpiresIn unchanged, which can cause confusion. This change ensures that the ExpiresIn field is properly updated when the server provides an expires_in value.
|
This PR (HEAD: 20124de) has been imported to Gerrit for code review. Please visit Gerrit at https://go-review.googlesource.com/c/oauth2/+/621215. Important tips:
|
|
Message from Gopher Robot: Patch Set 1: (1 comment) Please don’t reply on this GitHub thread. Visit golang.org/cl/621215. |
|
Message from Matt Hickford: Patch Set 1: Code-Review+2 Run-TryBot+1 Please don’t reply on this GitHub thread. Visit golang.org/cl/621215. |
|
Message from Gopher Robot: Patch Set 1: (1 comment) Please don’t reply on this GitHub thread. Visit golang.org/cl/621215. |
|
Message from Gopher Robot: Patch Set 1: TryBot-Result+1 (1 comment) Please don’t reply on this GitHub thread. Visit golang.org/cl/621215. |
|
|
||
| // ExpiresIn is the OAuth2 wire format "expires_in" field, | ||
| // which specifies how many seconds later the token expires, | ||
| // relative to an unknown time base approximately around "now". |
There was a problem hiding this comment.
I would make it more clear here what "now" means. Indeed it's the time when the token was fetched.
…ExpiresIn In typical usage, Token.Expiry alone is sufficient. However, the ExpiresIn field was introduced in golang/go#61417. Even when a server returns an expires_in value in methods like Config.Exchange, only the Expiry field is updated, leaving ExpiresIn unchanged, which can cause confusion. This change ensures that the ExpiresIn field is properly updated when the server provides an expires_in value. merges golang#748 (golang#748)
|
Message from Sean Liao: Patch Set 2: Commit-Queue+1 (3 comments) Please don’t reply on this GitHub thread. Visit golang.org/cl/621215. |
|
Message from Go LUCI: Patch Set 2: Dry run: CV is trying the patch. Bot data: {"action":"start","triggered_at":"2025-04-16T20:34:01Z","revision":"de6b96220c46faf3d272d71d8aa3c9d14bc26038"} Please don’t reply on this GitHub thread. Visit golang.org/cl/621215. |
|
Message from Sean Liao: Patch Set 2: -Commit-Queue Please don’t reply on this GitHub thread. Visit golang.org/cl/621215. |
|
Message from Go LUCI: Patch Set 2: This CL has passed the run Please don’t reply on this GitHub thread. Visit golang.org/cl/621215. |
|
Message from Go LUCI: Patch Set 2: LUCI-TryBot-Result+1 Please don’t reply on this GitHub thread. Visit golang.org/cl/621215. |
|
Message from Matt Hickford: Patch Set 2: Code-Review+2 Please don’t reply on this GitHub thread. Visit golang.org/cl/621215. |
In typical usage, Token.Expiry alone is sufficient. However, the ExpiresIn field was introduced in golang/go#61417. Even when a server returns an expires_in value in
methods like Config.Exchange, only the Expiry field is updated, leaving ExpiresIn unchanged, which can cause confusion.
This change ensures that the ExpiresIn field is properly updated when the server provides an expires_in value.