HTTP/1.0 support
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 1.5k
- Forks
- 128
- PR merge metrics
- No merged PRs in 30d
Description
On some websites, e.g. http://thomsonreuters.co.uk, surf fails with the following error:
> Unsupported HTTP version
Firefox, curl and ureq (a blocking Rust client) work fine.
11820 websites out of the top million from [Feb 3 Tranco list](https://tranco-list.eu/list/3G6L) are affected.
Tested using [this code](https://github.com/Shnatsel/rust-http-clients-smoke-test/blob/f206362f2e81521bbefb84007cdd25242f6db590/surf-smoke-test/src/main.rs). Test tool output from all affected websites: [surf-unsupported-http-version.tar.gz](https://github.com/http-rs/surf/files/6054925/surf-unsupported-http-version.tar.gz)
I've only tested the async-h1 backend; I don't know if the other backends are affected.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the linked smoke-test code and the async-h1 backend, since the report was tested there. Trace where the client rejects the HTTP version and compare behavior with the reported Firefox, curl, and ureq results. Done means affected HTTP/1.0 websites no longer fail, with the status of other backends established.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- api, backend, networking
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100