Implement --credential-helper for external authentication management#13774
Implement --credential-helper for external authentication management#13774Ashutosh0x wants to merge 11 commits intopypa:mainfrom
Conversation
for more information, see https://pre-commit.ci
src/pip/_internal/cli/cmdoptions.py
Outdated
There was a problem hiding this comment.
This section of code seems unrelated to the purpose of the PR. What's going on here?
|
@pfmoore Fixed. I've removed the unrelated index strategy and mapping changes to keep this PR focused exclusively on the credential helper. |
|
Hi @Ashutosh0x this PR doesn't appear to be ready for review. Please be aware one of the big bottlenecks of this project is maintainer review time, so if you are not sure if a PR will be ready or not then open/mark it as draft until it is ready. While PRs to fix issues are appreciated, there is only so much capacity to review them, and opening too many PRs will reduce the chance they will be accepted and merged. This PR in particular adds a new protocol that pip will needs to guarantee on an ongoing basis and therefore risks being a maintenance burden. Please give a clearer outline to your protocol, either in the top of the PR, or the original issue, does it exactly match prior art such as the Engflow spec (https://github.com/EngFlow/credential-helper-spec/blob/main/spec.md) or does it deviate from it? And if so why? It's also not clear if this PR breaks existing functionality. |
This PR implements the generic credential helper API for pip, addressing #10389.
Key Changes:
--credential-helper <command>CLI option: Allows users to specify an external command for managing credentials.BaseCredentialProviderinterface, moving away from keyring-specific implementations.CredentialHelperProvider: A new provider that communicates with external tools via a simple JSON-based protocol over standard I/O (handlingget,store, anderaseactions).