🎉 Another release with significant changes!
Highlights
- http/3 fingerprints, added for Chrome 145, 146 and Firefox 147. To verify http3 fingerprints, visit https://fp.impersonate.pro
- http/3 proxy support with socks5 udp proxy server.
- New CLI tool, just called
curl-cffi, easier http debugging for both humans and agents. See docs. We also added a skill. - Compatibility optimization, curl_cffi is now fully static. Especially for macOS, no dependencies needed and compatible with macOS since 11.0.
- ⚠️ Security improvement. If you are accepting urls from others and returning the response to them, you are vulnerable to redirection-based SSRF. Disable
allow_redirectsor at lease setallow_redirects="safe", see the advisory and the docs. - Performance optimization: WebSocket improvement and free-threading support.
- Android is officially supported, closing a 3-years-old issue.
- New impersonation behaviors, the cookie header behavior and POST boundary are now made exactly the same as browsers. These are not part of tls or http binary fingerprints, but are exploited by WAFs, too.
The list of proxy vendors with udp sock5 support is very limited, so I set up 2 servers for testing. You can simply run:
curl-cffi get https://fp.impersonate.pro/api/http3 --proxy socks5://imp:curl-cffi@206.189.95.199:1080 --http3-only
curl-cffi get https://fp.impersonate.pro/api/http3 --proxy socks5://imp:curl-cffi@24.144.88.46:1080 --http3-onlyIf you need more udp socks5 servers from us, click the 👀 emoji to vote.
What's Changed
- Fix some of the extension values being overwritten caused by applying… by @enter-a-new-username3 in #680
- Typehint session return values and internal functions by @Vizonex in #664
- Add free threaded builds by @lexiforest in #697
- Async WebSocket: Docs, Safety & Performance Improvements by @Sh3llcod3 in #692
- Add support for Android by @lexiforest in #699
- add type hint for request responses by @MFTabriz in #690
- Response hint fix for < 3.13 by @novitae in #546
- Fix BufferError Crash by @Sh3llcod3 in #700
- WS: Small Optimizations by @Sh3llcod3 in #702
- Add support for retrying by @lexiforest in #689
- WS: Update Docs by @Sh3llcod3 in #705
- Enable http3 fingerprints by @lexiforest in #712
- Add support for loongarch64 by @wxpppp in #716
- Make the CLI more useful by @lexiforest in #726
- Add option to mitigate SSRF by @lexiforest in #727
- Expose http3 fingerprints customization by @lexiforest in #728
- Add body to response.request by @lexiforest in #710
- fix Makefile issue by @p9s in #655
- Add support for READFUNCTION by @lexiforest in #698
New Contributors
- @enter-a-new-username3 made their first contribution in #680
- @MFTabriz made their first contribution in #690
- @wxpppp made their first contribution in #716
- @p9s made their first contribution in #655
Full Changelog: v0.14.0...v0.15.0