rhttp 0.9.7 rhttp: ^0.9.7 copied to clipboard
Make HTTP requests using Rust for Flutter developers. It uses FFI to call Rust functions from Dart. On the Rust side, it uses reqwest to make HTTP requests.
0.9.7 #
- feat: add
TlsSettings.sni
to configure Server Name Indication for TLS (default:true
) (#43) - deps: bump
flutter_rust_bridge
to2.7.0
0.9.6 #
- fix: missing response body in DevTools when using Stream response
- fix: Stream not finishing when using
onReceiveProgress
0.9.5 #
- feat: DevTools integration (Network Tab)
- feat:
HttpBody.json
now acceptsObject?
instead ofMap<String, dynamic>
to align with JSON spec
0.9.4 #
- feat: allow specifying ports in
DnsSettings
- fix: timeout exception when using
DnsSettings
(#39) - fix: do not emit final
(-1, -1)
progress event when content length is unknown
0.9.3 #
- feat:
onSendProgress
should infertotal
also fromContent-Length
header - feat: optimize compiled binary size @xalanq #40
- fix:
Unhandled Exception
whenHttpBody.stream
orHttpBody.bytes
withonSendProgress
is canceled
0.9.2 #
- feat: add
--remap-path-prefix=$HOME/.cargo/=/.cargo/
toRUSTFLAGS
to be more reproducible - feat: respect channel in
rust-toolchain.toml
- fix: support text body compressed in
gzip
andbrotli
- fix:
requestStream
should throwRhttpCancelException
instead of emitting anUnhandled Exception
when request is canceled - deps: bump
flutter_rust_bridge
to2.6.0
0.9.1 #
- feat: allow reuse of same
CancelToken
for multiple requests, all requests are canceled when token is canceled
0.9.0 #
- feat: add
ProxySettings.proxy('http://localhost:8080')
and other proxy settings - feat: improve performance when uploading a byte stream
- feat: improve performance when tracking progress during download of a large binary file
- feat:
onSendProgress
andonReceiveProgress
now always emit the final progress event (100%) - fix: set
idleTimeout
inIoCompatibleClient
no longer throws an exception
0.8.2 #
- fix: possible
CloseStreamException
when usingIoCompatibleClient
- deps: bump
flutter_rust_bridge
to2.5.1
0.8.1 #
- deps: bump
flutter_rust_bridge
to2.5.0
0.8.0 #
- feat: add
IoCompatibleClient
, a compatibility layer for dart:io'sHttpClient
- feat: add
dnsSettings
toClientSettings
to provide custom DNS resolution - BREAKING:
timeout
andconnectTimeout
moved toTimeoutSettings
(deprecated in 0.7.2)
0.7.2 #
- feat: add
keepAliveTimeout
,keepAlivePing
to newTimeoutSettings
(@nicobritos) - DEPRECATED:
timeout
andconnectTimeout
moved toTimeoutSettings
0.7.1 #
- fix: export
RhttpInvalidCertificateException
,RhttpConnectionException
- deps: remove
plugin_platform_interface
dependency - deps: bump
flutter_rust_bridge
to2.4.0
0.7.0 #
- fix: creating a second client might overwrite the first client due to memory address conflict
- BREAKING: change
RhttpInvalidClientException
toRhttpClientDisposedException
0.6.2 #
- feat: add
baseUrl
setting toClientSettings
- feat: add
redirectSettings
toClientSettings
- feat: add
RhttpRedirectException
- feat:
RhttpCompatibleClient.close
cancels all running requests similar toIOClient
ofhttp
package
0.6.1 #
- feat: add
onSendProgress
andonReceiveProgress
- feat: increase performance of
HttpBody.stream
- feat: always compile Rust in release mode
0.6.0 #
- feat: add
HttpBody.stream
to send a stream as request body - feat:
RhttpCompatibleClient
setsthrowOnStatusCode
tofalse
to conform withhttp
package
0.5.4 #
- feat: wrap any exception in
RhttpCompatibleClient
intoRhttpWrappedClientException
0.5.3 #
- feat: add
RhttpConnectionException
to catch connection errors like no internet, server not reachable, etc. - feat: add
RhttpCompatibleClient.createSync
- feat: add
cancelRunningRequests
parameter toRhttpClient.dispose
- fix: creating a client with HTTP/3 fails with
no async runtime found
0.5.2 #
- fix:
RetryInterceptor
should throwRhttpCancelException
if request is canceled during retry
0.5.1 #
- feat: add
RhttpClient.createSync
- feat: add
HttpHeaders.copyWith
,HttpHeaders.copyWithout
- feat: add convenience method:
HttpTextResponse.bodyToJson
- fix: reset parameters in
RetryInterceptor.shouldRetry
before retrying
0.5.0 #
- feat: interceptors (e.g.
RetryInterceptor
) - feat: certificate pinning
- feat: client certificate / mutual TLS
- feat: add
ProxySettings
- BREAKING:
requestGeneric
renamed torequest
,request
removed
0.3.2 #
- docs: update README
0.3.1 #
- docs: add benchmark
0.3.0 #
- feat: add
HttpBody.multipart
- feat: change
TlsSettings.verifyCerts
toTlsSettings.verifyCertificates
0.2.0 #
- feat: add
RhttpStatusCodeException
,RhttpInvalidCertificateException
- feat: add
TlsSettings
0.1.0 #
- feat: request body types
- feat: client for connection pooling / reuse
- feat: cancel requests
- feat: improve error handling with
RhttpException
0.0.2 #
- feat: query, headers, body
0.0.1 #
- initial release