http-rs / surf

Fast and friendly HTTP client framework for async Rust
https://docs.rs/surf
Apache License 2.0
1.45k stars 119 forks source link

2.0.0-alpha.6 #241

Closed Fishrock123 closed 3 years ago

Fishrock123 commented 3 years ago

Awaiting #226 and #240:

This is an alpha release in preparation of 2.0.0, so you can start using Surf with stable futures. The aim is for this to be the last 2.0 alpha release.

As of this release, surf::get(), surf::post(), etc, now use a globally shared client internally, allowing for easier access to optimizations such as connection pooling.

Removals

  • Removed native-client feature flag in favor of direct curl-client default.

Changes

  • wasm-client feature is no longer automatic and must be set via cargo features.
  • All client feature flags are now mutually exclusive. curl-client is the default.
  • surf::method_name "one-off" methods now use a shared client internally if the client is curl-client. (Default)
  • Client::with_http_client() is now generic for any HttpClient rather than taking an Arc<dyn HttpClient>.
    • (The http client is still stored internally as a dynamic pointer.)
  • HttpClient has been upgraded to 6.0, removing Clone from the built in client backends.

Fixes

  • Surf can once again build with --no-default-features (and no client).
  • Doc updates

Internal

  • wasm-client now has proper headless browser CI testing.