Add wreq to HTTP Clients and tools#1188
Add wreq to HTTP Clients and tools#1188ZilvinasKucinskas wants to merge 1 commit intomarkets:masterfrom
Conversation
|
429 downloads on rubygems :)) min is 30k. read the guidelines first before posting |
|
Thanks @randybb. 🙇 Fair point on the downloads. We just released the gem on February 19th, so it's brand new on RubyGems. The guidelines also say "generally used and useful to the community" - we believe wreq-ruby qualifies on the quality side:
Happy to keep the PR open and revisit once downloads grow, or leave it to the maintainers to decide. Appreciate the feedback either way. |
|
It is too young. The reason is simple - you might abandon your project soon, but a project with a big userbase has a higher probability for a longer life. It is sad, as ruby has a loot of interesting libs which nobody touched for many years. |
|
Thanks @randybb for helping! @ZilvinasKucinskas I just took a quick look and it seems a promising project, but too fresh for this list. This collection lists more mature projects. They should be somehow relevant in the Ruby ecosystem, and checking downloads seems the best-simple way to achieve it. No prob to keep it open for some time. |
wreq is the first production-ready Ruby HTTP client with real browser TLS/HTTP2 fingerprinting. It emulates exact signatures of Chrome, Firefox, Safari, Edge, Opera, and OkHttp.
Modern anti-bot systems identify HTTP clients by their TLS and HTTP2 fingerprints (JA3/JA4). Every HTTP client currently listed in this section — Faraday, HTTParty, HTTP, HTTPX, Typhoeus, Patron, RESTClient, excon — relies on either OpenSSL or libcurl compiled with OpenSSL. Even curl-based libraries like Typhoeus and Patron inherit curl's TLS stack limitations. None of them provide control over TLS extension ordering, cipher suite ordering, or HTTP/2 frame settings needed to match real browser signatures.
wreq-ruby solves this using BoringSSL (the same TLS library Chrome uses), powered by Rust via the wreq crate, built in collaboration with the original maintainer.