feat: add the `WithTokenSource` client option
Add the `WithTokenSource()` client option to support custom `oauth2.TokenSource` implementations for automatic token refresh and expiration handling. The `TokenSource` is called on every API request, allowing for flexible token management strategies. To reduce latency and network load, wrap token sources in `oauth2.ReuseTokenSource`. This enables proper OAuth 2.0 token lifecycle management and allows users to use other OAuth flows, such as the Device Authorization Grant flow.
-
mentioned in commit 89f40840
-
mentioned in merge request sue445/create-merge-request!133 (merged)
-
mentioned in merge request gitlab-org/cli!2107 (merged)
-
mentioned in merge request gitlab-org/terraform-provider-gitlab!2540 (merged)
-
mentioned in merge request gitlab-org/release-tools!4241 (merged)
-
mentioned in merge request gitlab-com/gl-infra/woodhouse!643 (merged)
-
mentioned in merge request fforster/gitlab-mcp!88 (merged)
-
mentioned in merge request schober-server/kubernetes/images/gitlab-token-refresher!14 (merged)
-
mentioned in merge request gitlab-com/gl-infra/autolabels!58 (merged)
-
mentioned in merge request gitlab-com/gl-infra/ringctl!309 (merged)
-
mentioned in merge request gitlab-com/gl-infra/platform/runway/runwayctl!1032 (merged)
-
mentioned in merge request gitlab-org/terraform-provider-gitlab!2545 (closed)
-
mentioned in merge request gitlab-org/cli!2147 (closed)
-
mentioned in merge request gitlab-org/container-registry!2355 (merged)
-
mentioned in merge request sue445/tanuki_reminder!252 (merged)
-
mentioned in merge request fforster/epic-update!12 (merged)