github-action icon indicating copy to clipboard operation
github-action copied to clipboard

force curl to use HTTP/1.1 for package downloads

Open pausebreak opened this issue 8 months ago • 2 comments

Intermittent failures to fetch the tailscale package seem to be an HTTP/2 issue. HTTP/2 isn't doing anything better than HTTP/1.1 for fetching a single file so why not try downgrading the protocol?

the error: curl: (92) HTTP/2 stream 1 was not closed cleanly: INTERNAL_ERROR (err 2)

the reported issue: https://github.com/tailscale/github-action/issues/158

reference: https://stackoverflow.com/questions/56413290/getting-curl-92-http-2-stream-1-was-not-closed-cleanly-internal-error-err

pausebreak avatar Apr 04 '25 16:04 pausebreak

I don't like changes like this that are just hunches (based on some error message found in a google result?) that then perpetuate some myths that one protocol is flakier than another protocol.

I would prefer to see evidence or at least empirical results over N runs of each.

so why not try downgrading the protocol?

Who's going to track & measure this experiment? Or is this experiment over once this PR is merged?

bradfitz avatar Apr 22 '25 14:04 bradfitz

I do think the error reported in #158 is actually a red herring and downgrading the protocol wouldn't fix it.

We noticed this issue was regionalized. We also noticed that using curl's default user-agent doesn't seem to trigger it, so I suspect there's some rate-limiting process involved.

htr avatar Apr 23 '25 13:04 htr

As of v4.0.0, the action is implemented in JavaScript and no longer uses curl for downloads.

oxtoacart avatar Oct 14 '25 19:10 oxtoacart