NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
crates.io · #1126 most downloaded on crates.io
Low level HTTP server library
Last release 4 years ago
no release in 18 months
Release timing varies
gaps range from 9 days to 1.3 years
Most releases are documented
notes for 24 of 30 stable releases
Nothing withdrawn
no release was ever pulled
11 years old
30 releases · first in 2015
Bumped the minimum compiler version tested by CI to 1.56 - this is necessary due to an increasing number of dependencies introducing Cargo manifest fe
Bumped the minimum compiler version tested by CI to 1.56 - this is necessary due to an increasing number of dependencies introducing Cargo manifest features only supported on newer versions of Rust.
Add support for UNIX sockets
Thanks to @ColonelThirtyTwo for adding support for binding to UNIX sockets when creating a tiny-http server. This change makes a few small breaking API modifications, if you are constructing ServerConfig manually you will need to use the new ListenAddr type rather than directly supplying a net::SocketAddr. Likewise Server::server_addr() will now return an enum that can represent either a TCP socket or a UNIX socket.
Finally Request::remote_addr() now returns an Option<&SocketAddr> as UNIX sockets don't ever have a remote host.
Reduce required dependencies by switching to httpdate
@esheppa replaced our internal HTTPDate type with the httpdate library (used extensively in the community by Hyper, Tokio and others) which reduces our baseline dependency tree from 18 crates to 5!
TestRequest::path no longer has a 'static bound, allowing for fuzzers to generate test request paths at runtime.
Unpinned zeroize so it can float around any stable ^1 version.
Full Changelog: 0.11.0...0.12.0
One column per quarter.
Thanks to @3xmblzj5 and @travispaul for their help in implementing Rustls as a drop-in replacement for OpenSSL, you can now build tiny-http with TLS s
Thanks to @3xmblzj5 and @travispaul for their help in implementing Rustls as a drop-in replacement for OpenSSL, you can now build tiny-http with TLS support without any external dependencies! OpenSSL will remain the default implementation if you just enable the ssl feature, but you are strongly encouraged to use ssl-rustls where possible!
Fix incorrect certificate chain loading
Fix a longstanding bug where we were only loading the first (i.e. the leaf) certificate from any PEM file supplied by the user.
chrono was only used to store and format DateTime into the slightly odd format required by RFC 7231, so to avoid the numerous RUSTSEC advisories gener
chrono was only used to store and format DateTime into the slightly odd format required by RFC 7231, so to avoid the numerous RUSTSEC advisories generated by the localtime_r issue, we can just drop it entirely and switch to time-rs.
Unfortunately this means we need to bump our minimum tested compiler version to 1.51, and as such this change requires a full minor release.
Enable prompt responses, before the request has been fully read
Enable prompt responses, before the request has been fully read
This isn't an API change, but does result in different behaviour to 0.8.2 and so justifies a minor version bump.
HTTP requests now return a boxed FusedReader which drops the underlying reader once it reaches EOF, such that the reader no longer needs to be explicitly consumed and the server may now respond with e.g. a "413 Payload too large" without waiting for the whole reader.
Bumped the minimum compiler version tested by CI to 1.48 (the version supported in Debian Bullseye)
Add TestRequest for writing server tests more easily
Don't set Transfer-Encoding for 1xx or 204 Responses
Prepare for 0.8.0 release
Prepare for 0.8.0 release
chunked_thresholdprepare for 0.7.0 release
Don't honour client TE for 1xx or 204 responses
Don't honour client TE for 1xx or 204 responses
Where we're sending an Informational (1xx) or No Content (204) response,
per the RFC we should never set a Transfer-Encoding header, regardless
of what the client supplied in its TE header.
Nothing published for this version
* Remove AsciiExt usage * Remove unused EncodingDecoder
Expose chunked_threshold on Response
Fix `next_header_source` alignment
Expanded and changed status code description mapping according to IANA registry:
Update links to reflect repository ownership change: https://github.com/frewsxcv/tiny-http -> https://github.com/tiny-http/tiny-http
Fix using Transfer-Encoding: identity with no content length
https://github.com/tiny-http/tiny-http/pull/123
https://github.com/tiny-http/tiny-http/pull/121
https://github.com/tiny-http/tiny-http/pull/118
Add try_recv_timeout function to the server
https://github.com/tiny-http/tiny-http/pull/114
Request::respond now returns an IoResult
https://github.com/tiny-http/tiny-http/pull/107
Allow binding to a nic by specifying the socket address
Make Method into an enum instead of a character string
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →