googleapis / googleapis/google-cloud-php
[Auth]: Features to remove for V2
- Dominant language
- PHP
- Stars
- 1.2k
- Forks
- 463
- Avg merge
- 2d 1h
- Merged PRs (30d)
- 145
Description
This is a list of items we want to change / remove in the next major release
- Remove all instances of `getLastReceivedToken`
- Remove all instances of `tokenCallback`
- The constructor of `IAM` should not contain `$httpHandler` - this should be passed in at runtime
- Consider removing `IAM` in favor of using `IamTrait` in the credentials which use it.
- Remove `FetchAuthTokenCache` in favor of `CacheTrait`
- Consider adding `$headers` as second argument to `FetchAuthTokenIterface::fetchAuthToken`, or consolidate everything to use `updateMetadata`
- Consider consolidating `FetchAuthTokenInterface`, `UpdateMetadataInterface`, `ProjectIdProviderInterface`, `GetQuotaProjectInterface`, and `GetUniverseDomainInterface` into a `CredentialInterface`.
- Consider removing `HttpClientCache`, as `$httpHandler` can already be passed in everywhere
- Remove `Guzzle6HttpHandler`
- Remove `IAMCredentials`
- Move to Firebase JWT for token validation (https://github.com/googleapis/google-auth-library-php/pull/554)
Contributor guide
Research direction
Start by reviewing the implementations and usages of getLastReceivedToken, tokenCallback, IAM, IamTrait, FetchAuthTokenCache, and the listed interfaces. Trace how $httpHandler, token validation, and credential metadata currently flow before deciding which V2 removals or consolidations are feasible. Done means the agreed V2 design is implemented consistently and covered by the relevant tests.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- php
- Domain
- authentication
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100