-
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
Vendoring bumps for 25.0 #13006
Vendoring bumps for 25.0 #13006
Conversation
Whelp. I'll take another look at this tomorrow. |
Doesn't look related to current CI issues but this might come up as you check: pypa/pyproject-hooks#206 |
CI issues seem linked to rich? Also, given pypa/pyproject-hooks#206 (thanks for the heads up @notatallshaw) I'm reluctant to get the pyproject-hooks upgrade so close to the release. |
Thanks @sbidoul for picking this up! I agree the rest can go in 25.0. I did talk to the Rich developers earlier, but frankly, I still don't understand why rich is blowing up CI... |
I'm going to try bisecting |
The cause is apparently Textualize/rich@2d7a94d |
Explicitly override `rich.console.Console.on_broken_pipe()` to reraise the original exception, to bring the behavior of rich 13.8.0+ in line with older versions. The new versions instead close output fds and exit with error instead, which prevents pip's pipe handler from firing. This is the minimal change needed to make pip's test suite pass after upgrading vendored rich. Bug pypa#13006 Bug pypa#13072
Explicitly override `rich.console.Console.on_broken_pipe()` to reraise the original exception, to bring the behavior of rich 13.8.0+ in line with older versions. The new versions instead close output fds and exit with error instead, which prevents pip's pipe handler from firing. This is the minimal change needed to make pip's test suite pass after upgrading vendored rich. Bug pypa#13006 Bug pypa#13072
I've not looked at the errors, but if the tests are related to handeling broken pipes it does look like that would break pip's existing broken pipe handeling, which starts here: https://github.com/pypa/pip/blob/24.3.1/src/pip/_internal/utils/logging.py#L41 and bubbles up to here: https://github.com/pypa/pip/blob/24.3.1/src/pip/_internal/cli/base_command.py#L132. If that's the issue it looks like pip would want to add it's own |
Explicitly override `rich.console.Console.on_broken_pipe()` to reraise the original exception, to bring the behavior of rich 13.8.0+ in line with older versions. The new versions instead close output fds and exit with error instead, which prevents pip's pipe handler from firing. This is the minimal change needed to make pip's test suite pass after upgrading vendored rich. Bug pypa#13006 Bug pypa#13072
Explicitly override `rich.console.Console.on_broken_pipe()` to reraise the original exception, to bring the behavior of rich 13.8.0+ in line with older versions. The new versions instead close output fds and exit with error instead, which prevents pip's pipe handler from firing. This is the minimal change needed to make pip's test suite pass after upgrading vendored rich. Bug pypa#13006 Bug pypa#13072
It was easier to restart from scratch, please see PR #13074. |
Let's see if CI passes...
I removed the distlib patch as the changes have been upstreamed and cut in the latest release.