Skip to content

Latest commit

 

History

294 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

async-minreq

Crates.io Documentation Unit tests MSRV

async-minreq is a lightweight, minimal-dependency asynchronous HTTP client for Rust. It is a fork of the minreq crate, enhanced with async capabilities using Rust's async/await pattern and the Tokio runtime.

Features

  • Simple API for sending HTTP requests asynchronously.
  • Optional JSON response handling using serde (json-using-serde).
  • Unicode domain support (punycode).
  • HTTP proxy support (proxy).
  • HTTPS support with flexible TLS implementations:
    • https-rustls (default)
    • https-rustls-probe
    • https-bundled
    • https-bundled-probe
    • https-native

Note: Enabling features such as serde or various HTTPS options may significantly increase executable size due to their complexity and dependency footprint.

Documentation

Detailed documentation is available on docs.rs

Minimum Supported Rust Version (MSRV)

If you don't care about the MSRV, you can ignore this section entirely, including the commands instructed.

We use an MSRV per major release, i.e., with a new major release we reserve the right to change the MSRV.

The current version of this library should always compile with any combination of features excluding the TLS and urlencoding features on Rust 1.71. This is because those dependencies themselves have a higher MSRV.

That said, the crate does still require forcing some dependencies to lower-than-latest versions to actually compile with the older compiler, as these dependencies have upped their MSRV in a patch version. This can be achieved with the following (these just update your Cargo.lock):

cargo update --package=log --precise=0.4.18
cargo update --package=httpdate --precise=1.0.2
cargo update --package=serde_json --precise=1.0.100
cargo update --package=chrono --precise=0.4.23
cargo update --package=num-traits --precise=0.2.18
cargo update --package=libc --precise=0.2.163

Contributing

Contributions are welcome! Feel free to open issues, submit pull requests, or suggest improvements.

License

async-minreq crate is distributed under the terms of the ISC license.

About

Simple, minimal-dependency HTTP client.

Resources

Stars

5 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages