-
Notifications
You must be signed in to change notification settings - Fork 3k
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
Include all resolution conflict fix info in error messages or on stderr. #9420
Comments
More generally, it would be great as a non-interactive pip user to be able to rely on the general principle of all useful error information being sent to stderr. Without this principle, the only way to drill in to problems encountered in the wild is to provide full pip command lines in an error message an request a user re-run the command (or else do so automatically, but this time without stdout suppressed). This may already be a principle the Pip project agrees with and this info log case just slipped through the cracks. |
This allows resolution conflict errors to be triaged completely from stderr which generally aids non-interactive use. Closes pypa#9420
This allows resolution conflict errors to be triaged completely from stderr which generally aids non-interactive use. Closes pypa#9420
Unfortunately, the useful information is sent to stdout which we suppress since stdout is used to emit alot of other information that would be noise for Pex users. Until pypa/pip#9420 is resolved we work around this by plucking the information out of a --log file. Fixes pex-tool#1159
Unfortunately, the useful information is sent to stdout which we suppress since stdout is used to emit alot of other information that would be noise for Pex users. Until pypa/pip#9420 is resolved we work around this by plucking the information out of a --log file. Fixes #1159
This proved infeasible as discussed thoroughly in #9421 so I'll close this issue. |
What's the problem this feature will solve?
In non-interactive pip use, the failure message for resolve conflicts does not carry the actionable information.
Describe the solution you'd like
It would be great if the actionable information was moved from an info-level log to logging that went to stderr or else into the error message itself.
For example, the current error information is excellent in interactive use:
However, when used non-interactively, the useful information is suppressed in common scenarios where stdout is hidden or quiet mode is used:
Alternative Solutions
For now, in my non-interactive use of pip I have resorted to capturing pip output using --log and then searching for
ERROR: Cannot install ... because these package versions have conflicting dependencies.
and grabbing all the lines between that and the followingERROR: ResolutionImpossible: for help visit https://pip.pypa.io/en/latest/user_guide/#fixing-conflicting-dependencies
.The text was updated successfully, but these errors were encountered: