- simple_http: throw a specific error when transfer encoding is chunked #114
params
field inRequest
changed to a genericRawValue
instead of an array. #108
- Re-export the
minreq
crate when the feature is set #102 - Don't treat HTTP errors with no JSON as JSON parsing errors #103
- simple_http: fix "re-open socket on write failure" behavior #84 #86
- simple_http: add "host" header (required by HTTP 1.1) #85
- simple_http: add ability to replace URL/path; minor ergonomic improvements #89
This release significantly improves our simple_http
client, though at the
apparent cost of a performance regression when making repeated RPC calls to
a local bitcoind. We are unsure what to make of this, since our code now uses
fewer sockets, less memory and does less redundant processing.
The highlights are:
- Support JSON replies that span multiple lines #70
- Add feature-gated support for using a SOCKS proxy #70
- Fix resource exhaustive bug on MacOS by reusing sockets #72 #76
As well as improvements to our code quality and test infrastructure.
This release increases the MSRV to 1.41.1, bringing with it a bunch of new language features.
Some highlights:
- A new set of transports were added for JSONRPC over raw TCP sockets (one using
SocketAddr
, and one UNIX-only using Unix Domain Sockets)
- The
Content-Type
HTTP header is now correctly set toapplication/json
- The
Connection: Close
HTTP header is now sent for requests
- Remove
http
andhyper
dependencies - Implement our own simple HTTP transport for Bitcoin Core
- But allow use of generic transports
- Clean up the API
- [Set the content-type header to json]((#21)
- Allow no
result
field in responses - Add batch request support