-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Git prompt hidden without --verbose
flag
#5107
Comments
@ibraheemdev - Is this straightforward? |
I don't see where we're gating this with the verbose flag with a casual look. |
Not clear to me how this is appearing even with |
Yeah I was confused... haha. Tried to write a MRE but it just fails:
|
@zanieb @charliermarsh I have found the cause of this. uv/crates/uv/src/commands/reporters.rs Line 323 in ec8eee0
Could you fix this? |
Oh wow, that’s a great find and explains a lot! |
🤔 https://github.com/Agilent/yb/blob/main/yb/src/main.rs#L72 from console-rs/indicatif#594 seems helpful? |
I was hit by a similar issue when running: uv pip install "git+https://github.com/typing/typing_extensions@main" Note that the correct URL is https://github.com/python/typing_extensions. Without using the Updating https://github.com/typing/typing_extensions (main)
Updating https://github.com/typing/typing_extensions (main) Only when running in verbose mode, I get: DEBUG failed to check github HTTP status client error (404 Not Found) for url (https://api.github.com/repos/typing/typing_extensions/commits/main)
DEBUG Performing a Git fetch for: https://github.com/typing/typing_extensions
Username for 'https://github.com': I assume because the repo can't be found, |
Same as #3783 |
Looking at the code and how to resolve this, I fear that an animated spinner is fundamentally incompatible with an interactive prompt. I suggest either removing the animation, or entirely replacing all interactive prompts with a failure. Either way, the current situation is a huge foot gun and source of confusion. (There may be a third solution of detecting interactive prompts and disabling the spinner only then, but that sounds like it would be a lot of work and very brittle) |
The animation shadows any interactive authentication prompt which may occur when resolving dependencies of private repos. Fixes astral-sh#5107.
The animation shadows any interactive authentication prompt which may occur when resolving dependencies of private repos. Fixes astral-sh#5107.
The interactive terminal prompt is not compatible with our TUI spinner animation, which will shadow the prompt and make it look like uv is hanging forever. Interactive auth is still supported via GUI mechanisms configured through git, like SSH_ASKPASS. This fixes astral-sh#5107
As an alternative workaround to running |
This is something I've ran into. It's not the ideal or common scenario but there are use cases for providing credentials interactively.
|
An interactive prompt is still possible via git's SSH_ASKPASS configuration. uv does not need to bother handling these, as they start a UI element. I think there are other options for configuring git auth as well. |
The scenarios I am thinking of are not using SSH and do not have a GUI available. |
The interactive terminal prompt is not compatible with our TUI spinner animation, which will shadow the prompt and make it look like uv is hanging forever. Interactive auth is still supported via GUI mechanisms configured through git, like SSH_ASKPASS. This fixes astral-sh#5107
Confusingly, SSH_ASKPASS is not specific to SSH auth and can also prompt for basic HTTP auth. If no GUI is available, I recommend setting up a custom credentials-helper. I recently did this to pass the GitLab auth CI token into git via an environment variable Of course it would be possible to have an option in uv to not set |
The interactive terminal prompt is not compatible with our TUI spinner animation, which will shadow the prompt and make it look like uv is hanging forever. Interactive auth is still supported via GUI mechanisms configured through git, like SSH_ASKPASS. This fixes astral-sh#5107
The interactive terminal prompt is not compatible with our TUI spinner animation, which will shadow the prompt and make it look like uv is hanging forever. Interactive auth is still supported via GUI mechanisms configured through git, like SSH_ASKPASS. This fixes astral-sh#5107
The interactive terminal prompt is not compatible with our TUI spinner animation, which will shadow the prompt and make it look like uv is hanging forever. Interactive auth is still supported via GUI mechanisms configured through git, like SSH_ASKPASS. This fixes astral-sh#5107
The interactive terminal prompt is not compatible with our TUI spinner animation, which will shadow the prompt and make it look like uv is hanging forever. Interactive auth is still supported via GUI mechanisms configured through git, like SSH_ASKPASS. This fixes astral-sh#5107
## Summary The animation shadows any interactive authentication prompt which may occur when resolving dependencies of private repos. Fixes #5107. ## Test Plan I started creating `install_git_private_https_interactive` as a regression test but am unsure how to test this because it is interactive and I don't really know the test framework
The following command hung for a while:
I cancelled it and re-ran with
--verbose
:Then I could provide the information for the git prompt and move forward.
The text was updated successfully, but these errors were encountered: