uv icon indicating copy to clipboard operation
uv copied to clipboard

Unspecific protocol error detected

Open henryiii opened this issue 1 year ago • 5 comments

I moved Scientific-Python's cookie over to uv, which due to the large number of installs needed when testing a cookiecutter with 11 backends, really saved a lot of time, taking some jobs from 6 minutes to 3 minutes. However, the jobs have become flakey. I've first noticed it with the PyPy job, but just got it with the CPython 3.12 macOS job:

nox > Command uv pip install '.[test]' failed with exit code 2:
Resolved 7 packages in 8ms
error: Failed to download distributions
  Caused by: Failed to fetch wheel: cookie-maturin @ file:///Users/runner/work/cookie/cookie/.nox/tests-maturin-novcs/tmp/cookie-maturin
  Caused by: Failed to build: cookie-maturin @ file:///Users/runner/work/cookie/cookie/.nox/tests-maturin-novcs/tmp/cookie-maturin
  Caused by: Failed to install requirements from build-system.requires (install)
  Caused by: Failed to download and build distributions
  Caused by: Failed to fetch wheel: maturin==1.5.1
  Caused by: Failed to extract archive
  Caused by: request or response body error: error reading a body from connection: stream error received: unspecific protocol error detected
  Caused by: error reading a body from connection: stream error received: unspecific protocol error detected
  Caused by: stream error received: unspecific protocol error detected

https://github.com/scientific-python/cookie/actions/runs/8504663817/job/23291927556?pr=395

Here's a PyPy linux failure:

nox > Command uv pip install cookiecutter poetry failed with exit code 2:
Resolved 56 packages in 465ms
error: Failed to download distributions
  Caused by: Failed to fetch wheel: rapidfuzz==3.7.0
  Caused by: Failed to extract archive
  Caused by: request or response body error: error reading a body from connection: stream error received: unspecific protocol error detected
  Caused by: error reading a body from connection: stream error received: unspecific protocol error detected
  Caused by: stream error received: unspecific protocol error detected

https://github.com/scientific-python/cookie/actions/runs/8503847665/job/23289923070

henryiii avatar Apr 01 '24 08:04 henryiii

I am also getting the same problem in GitHub Actions (unfortunately, I cannot link to the job). I had 2 failures today.

nox > Command uv pip install '.[tests]' failed with exit code 2:
Resolved 176 packages in 2.81s
error: Failed to download distributions
  Caused by: Failed to fetch wheel: pyarrow==15.0.2
  Caused by: Failed to extract archive
  Caused by: request or response body error: error reading a body from connection: stream error received: unspecific protocol error detected
  Caused by: error reading a body from connection: stream error received: unspecific protocol error detected
  Caused by: stream error received: unspecific protocol error detected
nox > Command uv pip install '.[tests]' failed with exit code 2:
Resolved 168 packages in 2.82s
error: Failed to download distributions
  Caused by: Failed to fetch wheel: torch==2.2.2
  Caused by: Failed to extract archive
  Caused by: request or response body error: error reading a body from connection: stream error received: unspecific protocol error detected
  Caused by: error reading a body from connection: stream error received: unspecific protocol error detected
  Caused by: stream error received: unspecific protocol error detected

This happened on Linux (ubuntu-latest-8-cores/3.12) and macOS (macoS-latest/3.9), respectively. uv --version is 0.1.26.

skshetry avatar Apr 01 '24 10:04 skshetry

Thanks, I’ve never seen this before so not sure what’s up. We’ll take a look.

charliermarsh avatar Apr 01 '24 14:04 charliermarsh

Has anyone seen this in prior versions?

charliermarsh avatar Apr 01 '24 17:04 charliermarsh

I added this pretty recently, so not sure. I can pin an older version though if you want me to test one.

henryiii avatar Apr 02 '24 08:04 henryiii

stream error received: unspecific protocol error detected

That would mean an HTTP/2 RST_STREAM with the error code of PROTOCOL_ERROR. Received from the server.

Unfortunately, stream resets don't come with any extra info (in the spec), but figured I'd mention it in case that helps understanding the environment.

seanmonstar avatar Apr 02 '24 23:04 seanmonstar