-
Notifications
You must be signed in to change notification settings - Fork 229
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
Failing dart pub get
locks the terminal
#4094
Comments
Do you have a pubspec.yaml that reproduces this? |
dart pub get --enforce-lockfile
locks the terminaldart pub get
locks the terminal
Am I right in understanding that if you wait for some time (maybe 20 seconds) it will eventually exit? In that case I can reproduce. I'm creating a fix. |
When doing http requests with retries we retry on all Problem is that we do speculative requesting of version-listings, but if the solver can detect a solve failure early, it will be reported, pub will close the shared http client. Closing the client causes any ongoing speculative requests to fail immediately - with a These retries prevent the dartdev process from exiting. I have only been able to reproduce reliable on mac-os (tried also on linux). Using a pubspec with an unresolvable constraint. My guess is that on linux the ClientExceptions are thrown faster or something...
|
dart pub get
locks the terminaldart pub get
locks the terminal
Should be fixed now |
Environment
dart --version
): 3.1.5Problem
I want to use
dart pub get --enforce-lockfile
in my CI to validate that the devs didn't forget to upload pubspec.lock after there was a change in pubspec.yaml (unfortunately I have seen this a lot), but in my testsdart pub get --enforce-lockfile
locks the terminal and doesn't finish (you can see I had to hit^C
to stop it).So I can't use it and test if it returns an exit code different than 0 for the CI to validate.
EDIT: This is happening without the
--enforce-lockfile
flag as well.The text was updated successfully, but these errors were encountered: