Skip to content

Releases: http-server-rs/http-server

v0.5.4

09 Sep 04:15
Compare
Choose a tag to compare
> Requires Rust: rustc 1.52.1 (9bc8c42bb 2021-05-09)

Feature

* Disengage `FileServer` implementation from `FileServerHandler`

> This will open space for incomming addons/capabilities

Fixes

* Dependencies update

v0.5.3

17 Aug 01:55
Compare
Choose a tag to compare
Fixes:

* Dependencies update

v0.5.2

10 Aug 00:18
Compare
Choose a tag to compare
Fixes:

* Dependencies update

v0.5.1

19 Jul 04:17
Compare
Choose a tag to compare
Fixes:

* Fix missing HTML "charset" `meta` tag causing weird renders on Windows 10
machines. Thanks to @ttys3 for the contribution! [PR25](https://github.com/EstebanBorai/http-server/pull/25)

v0.5.0

14 Jul 03:18
Compare
Choose a tag to compare
Features

* Support Basic Authorization using the `--username` and `--password` options

Improvements

* Middleware chains support early return in case of errors. This is introduced
to support denying unauthorized HTTP requests when Basic Authorization is active

v0.4.1

12 Jul 23:53
Compare
Choose a tag to compare
Fixes

* Respond with 404 when a file is not found
* Respond with 500 when middleware fails

v0.4.0

01 Jul 00:23
Compare
Choose a tag to compare
Features

* GZip Compression for HTTP response body
* Local IP Address is printed when the server is binded to `0.0.0.0`.

Improvements

* The `static_file` was renamed to `file_server` for  a more accurate name
* Benchmarks for de-facto configuration, CORS and GZip as part of CI
* DHAT (Dynamic Heap Allocatio Tool) Profiling supported as part of CI

Fixes

* URI with query parameters are now supported

v0.3.4

11 Jun 23:14
Compare
Choose a tag to compare
v0.3.4 (2021-06-11)

> Requires Rust: rustc 1.52.1 (9bc8c42bb 2021-05-09)

Fixes

* Remove the root directory path replacement when an empty string or a root path (/) is provided.

v0.3.3

11 Jun 03:08
Compare
Choose a tag to compare
Improvements

* Implement static file serving addon

Introduce the Addon concept to write application logic out of the
server implementation itself and aim to a modularized architecture.

Implements a static file serving addon to support sending files to
the client. The static file serving addon also provides a scoped
file system abstraction which securely resolve files in the file system
tree.

v0.3.2

09 Jun 00:00
Compare
Choose a tag to compare
v0.3.2 (2021-06-08)

> Requires Rust: rustc 1.49.0 (e1884a8e3 2020-12-29)

 Features

* Add crate logo by @PalyZambrano

Improvements

* Avoid clonning server instance by using Arc<Server> over `Server.clone()`

Currently when creating a server instance and spawing a Tokio task
the server instance is cloned (`Server` derive-implements the "Clone" trait).

Instead the same instance is used and a single Arc<Server> is handled to the
concurrent Tokio task.

This reduces repetition and memory consumption and also keeps the Server
instance unique and consistent through threads.

* Resolve static file serving with `resolve_path` instead of `resolve` from
`hyper_staticfile`. This makes file serving more conventional and also
versatile, by relying on the Request URI instead of the whole `hyper::Request`
instance.

* `FileExplorer` middleware now consumes an `Arc<hyper::Request<Body>>` instead
of taking ownership of the `hyper::Request<Body>` instance

* Less transformations are required for a `Request` instance in order to serve
a static file.

* `HttpHandler` now is built over an `Arc<Config>` instead of consuming the
`Config` instance. Previously the `Config` instance uses to implement the `Clone`
trait, now an `Arc<Config>` is used in its place making the `Config` struct
easier to mantain an extensible.

* `MiddlewareAfter` now supports the `hyper::Request<Body>` as well, this brings
support to read from the `hyper::Request<Body>` on middleware after execution.