From fb3fb235bbe8b12aa0a163af8796f7e1b8df54a6 Mon Sep 17 00:00:00 2001 From: Jose Quintana Date: Thu, 20 Oct 2022 23:33:00 +0200 Subject: [PATCH] refactor: update links to new static-web-server organization new organization link https://github.com/static-web-server --- .github/workflows/devel.docker.yml | 2 +- CHANGELOG.md | 394 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Cargo.toml | 4 ++-- README.md | 10 +++++----- ci/get_latest_release.sh | 2 +- docker/alpine/Dockerfile | 10 +++++----- docker/devel/Dockerfile.alpine | 8 ++++---- docker/devel/Dockerfile.scratch | 8 ++++---- docker/public/assets/index.html | 4 ++-- docker/public/index.html | 4 ++-- docker/scratch/Dockerfile | 8 ++++---- docs/content/building-from-source.md | 6 +++--- docs/content/configuration/command-line-arguments.md | 2 +- docs/content/configuration/environment-variables.md | 4 ++-- docs/content/contributions.md | 4 ++-- docs/content/download-and-install.md | 42 +++++++++++++++++++++--------------------- docs/content/features/file-descriptor-socket-passing.md | 2 +- docs/content/features/graceful-shutdown.md | 2 +- docs/content/index.md | 8 ++++---- docs/content/license.md | 2 +- docs/content/semantic-versioning.md | 2 +- docs/man/static-web-server.1.rst | 2 +- docs/mkdocs.yml | 6 +++--- src/directory_listing.rs | 2 +- 24 files changed, 269 insertions(+), 269 deletions(-) diff --git a/.github/workflows/devel.docker.yml b/.github/workflows/devel.docker.yml index 15f0818..b2216ee 100644 --- a/.github/workflows/devel.docker.yml +++ b/.github/workflows/devel.docker.yml @@ -8,7 +8,7 @@ on: - trying env: - DOCKER_IMAGE: localhost:5000/joseluisq/static-web-server + DOCKER_IMAGE: localhost:5000/github.com/static-web-server/static-web-server jobs: docker-alpine: diff --git a/CHANGELOG.md b/CHANGELOG.md index d7c1753..778b75f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,235 +5,235 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). -_**Note:** See changelog for v1 under the [1.x](https://github.com/joseluisq/static-web-server/blob/1.x/CHANGELOG.md) branch._ +_**Note:** See changelog for v1 under the [1.x](https://github.com/static-web-server/static-web-server/blob/1.x/CHANGELOG.md) branch._ ## v2.13.1 - 2022-10-17 __Fixes__ -- [41dd5c6](https://github.com/joseluisq/static-web-server/commit/41dd5c6) Bugfix/security dependency updates including cxx and proc-macro2 crates. -- [abef785](https://github.com/joseluisq/static-web-server/commit/abef785) Directory listing JSON syntax error when requesting for an empty folder. +- [41dd5c6](https://github.com/static-web-server/static-web-server/commit/41dd5c6) Bugfix/security dependency updates including cxx and proc-macro2 crates. +- [abef785](https://github.com/static-web-server/static-web-server/commit/abef785) Directory listing JSON syntax error when requesting for an empty folder. __Refactorings__ -- [d1b72fd](https://github.com/joseluisq/static-web-server/commit/d1b72fd) Significant `~58%` performance boost for serving static files and `~10%` *(CPU)* / `~52%` *(RAM)* less resource utilization. PR [#153](https://github.com/joseluisq/static-web-server/issues/153) resolves [#146](https://github.com/joseluisq/static-web-server/issues/146) reported by [@jonashaag](https://github.com/jonashaag). +- [d1b72fd](https://github.com/static-web-server/static-web-server/commit/d1b72fd) Significant `~58%` performance boost for serving static files and `~10%` *(CPU)* / `~52%` *(RAM)* less resource utilization. PR [#153](https://github.com/static-web-server/static-web-server/issues/153) resolves [#146](https://github.com/static-web-server/static-web-server/issues/146) reported by [@jonashaag](https://github.com/jonashaag). ## v2.13.0 - 2022-10-12 __Fixes__ -- [cce7a85](https://github.com/joseluisq/static-web-server/commit/cce7a85) Bugfix/security dependency updates including jemallocator, http headers, async-compression, rustls-pemfile, tracing and other crates (also [ed8dec3](https://github.com/joseluisq/static-web-server/commit/ed8dec3), [ea0facd](https://github.com/joseluisq/static-web-server/commit/ea0facd)). -- [3c863fd](https://github.com/joseluisq/static-web-server/commit/3c863fd) Directory listing links not encoded properly. PR [#150](https://github.com/joseluisq/static-web-server/issues/150) fixes [#149](https://github.com/joseluisq/static-web-server/issues/149) reported by [@nestor-custodio](https://github.com/nestor-custodio). +- [cce7a85](https://github.com/static-web-server/static-web-server/commit/cce7a85) Bugfix/security dependency updates including jemallocator, http headers, async-compression, rustls-pemfile, tracing and other crates (also [ed8dec3](https://github.com/static-web-server/static-web-server/commit/ed8dec3), [ea0facd](https://github.com/static-web-server/static-web-server/commit/ea0facd)). +- [3c863fd](https://github.com/static-web-server/static-web-server/commit/3c863fd) Directory listing links not encoded properly. PR [#150](https://github.com/static-web-server/static-web-server/issues/150) fixes [#149](https://github.com/static-web-server/static-web-server/issues/149) reported by [@nestor-custodio](https://github.com/nestor-custodio). __Features__ -- [f369c80](https://github.com/joseluisq/static-web-server/commit/f369c80) CORS exposed headers support via new `--cors-expose-headers` option. PR [#144](https://github.com/joseluisq/static-web-server/pull/144) by [@nelsonjchen](https://github.com/nelsonjchen). See [docs](https://sws.joseluisq.net/features/cors/#exposed-headers). -- [997e493](https://github.com/joseluisq/static-web-server/commit/997e493) HTML/JSON support for directory listing entries via new `--directory-listing-format` option. PR [#151](https://github.com/joseluisq/static-web-server/pull/151). See [docs](https://sws.joseluisq.net/features/directory-listing/#output-format). +- [f369c80](https://github.com/static-web-server/static-web-server/commit/f369c80) CORS exposed headers support via new `--cors-expose-headers` option. PR [#144](https://github.com/static-web-server/static-web-server/pull/144) by [@nelsonjchen](https://github.com/nelsonjchen). See [docs](https://sws.joseluisq.net/features/cors/#exposed-headers). +- [997e493](https://github.com/static-web-server/static-web-server/commit/997e493) HTML/JSON support for directory listing entries via new `--directory-listing-format` option. PR [#151](https://github.com/static-web-server/static-web-server/pull/151). See [docs](https://sws.joseluisq.net/features/directory-listing/#output-format). __Refactorings__ -- [61d4bb2](https://github.com/joseluisq/static-web-server/commit/61d4bb2) Restore ANSI terminal colors for Unix systems previously disabled. +- [61d4bb2](https://github.com/static-web-server/static-web-server/commit/61d4bb2) Restore ANSI terminal colors for Unix systems previously disabled. __Docs__ -- [3d8c74b](https://github.com/joseluisq/static-web-server/commit/3d8c74b) Directory listing format description. +- [3d8c74b](https://github.com/static-web-server/static-web-server/commit/3d8c74b) Directory listing format description. __Codebase__ -- [6a5ed83](https://github.com/joseluisq/static-web-server/commit/6a5ed83) Update CI workflow dependencies. +- [6a5ed83](https://github.com/static-web-server/static-web-server/commit/6a5ed83) Update CI workflow dependencies. ## v2.12.0 - 2022-09-27 __Fixes__ -- [467affc](https://github.com/joseluisq/static-web-server/commit/467affc) Bugfix/security dependency updates including tokio, serde, tracing, h2, httparse, futures and other crates (also [303d1b4](https://github.com/joseluisq/static-web-server/commit/303d1b4), [c340f8f](https://github.com/joseluisq/static-web-server/commit/c340f8f)). -- [82caf15](https://github.com/joseluisq/static-web-server/commit/82caf15) Potential segfault in the `time` crate. `RUSTSEC-2020-0071` [#142](https://github.com/joseluisq/static-web-server/issues/142) -- [76fd7ea](https://github.com/joseluisq/static-web-server/commit/76fd7ea) Unmaintained `ansi_term` crate. `RUSTSEC-2021-0139` [#143](https://github.com/joseluisq/static-web-server/issues/143) +- [467affc](https://github.com/static-web-server/static-web-server/commit/467affc) Bugfix/security dependency updates including tokio, serde, tracing, h2, httparse, futures and other crates (also [303d1b4](https://github.com/static-web-server/static-web-server/commit/303d1b4), [c340f8f](https://github.com/static-web-server/static-web-server/commit/c340f8f)). +- [82caf15](https://github.com/static-web-server/static-web-server/commit/82caf15) Potential segfault in the `time` crate. `RUSTSEC-2020-0071` [#142](https://github.com/static-web-server/static-web-server/issues/142) +- [76fd7ea](https://github.com/static-web-server/static-web-server/commit/76fd7ea) Unmaintained `ansi_term` crate. `RUSTSEC-2021-0139` [#143](https://github.com/static-web-server/static-web-server/issues/143) __Features__ -- [91b6ba2](https://github.com/joseluisq/static-web-server/commit/91b6ba2) Relative paths for directory listing entries. PR [#137](https://github.com/joseluisq/static-web-server/pull/137) resolves [#136](https://github.com/joseluisq/static-web-server/issues/136) suggested by [@jtackaberry](https://github.com/jtackaberry). See [docs](https://sws.joseluisq.net/features/directory-listing/#relative-paths-for-entries). -- [5f10771](https://github.com/joseluisq/static-web-server/commit/5f10771) Log Real Remote IP in case of proxies. PR [#138](https://github.com/joseluisq/static-web-server/pull/138) by [@dlvoy](https://github.com/dlvoy). See [docs](https://sws.joseluisq.net/features/logging/#log-real-remote-ip). -- [48f9458](https://github.com/joseluisq/static-web-server/commit/48f9458) Support for serving pre-compressed (Gzip/Brotli) files. PR [#139](https://github.com/joseluisq/static-web-server/pull/139) resolves [#114](https://github.com/joseluisq/static-web-server/issues/114) suggested by [@JonasGilg](https://github.com/JonasGilg). See [docs](https://sws.joseluisq.net/features/compression-static/). +- [91b6ba2](https://github.com/static-web-server/static-web-server/commit/91b6ba2) Relative paths for directory listing entries. PR [#137](https://github.com/static-web-server/static-web-server/pull/137) resolves [#136](https://github.com/static-web-server/static-web-server/issues/136) suggested by [@jtackaberry](https://github.com/jtackaberry). See [docs](https://sws.joseluisq.net/features/directory-listing/#relative-paths-for-entries). +- [5f10771](https://github.com/static-web-server/static-web-server/commit/5f10771) Log Real Remote IP in case of proxies. PR [#138](https://github.com/static-web-server/static-web-server/pull/138) by [@dlvoy](https://github.com/dlvoy). See [docs](https://sws.joseluisq.net/features/logging/#log-real-remote-ip). +- [48f9458](https://github.com/static-web-server/static-web-server/commit/48f9458) Support for serving pre-compressed (Gzip/Brotli) files. PR [#139](https://github.com/static-web-server/static-web-server/pull/139) resolves [#114](https://github.com/static-web-server/static-web-server/issues/114) suggested by [@JonasGilg](https://github.com/JonasGilg). See [docs](https://sws.joseluisq.net/features/compression-static/). __Refactorings__ -- [e9a4aa3](https://github.com/joseluisq/static-web-server/commit/e9a4aa3) Directory listing module. -- [eee45f9](https://github.com/joseluisq/static-web-server/commit/eee45f9) Remove indirections on static file module (performance improvement). +- [e9a4aa3](https://github.com/static-web-server/static-web-server/commit/e9a4aa3) Directory listing module. +- [eee45f9](https://github.com/static-web-server/static-web-server/commit/eee45f9) Remove indirections on static file module (performance improvement). __Docs__ -- [59a75e6](https://github.com/joseluisq/static-web-server/commit/59a75e6) Fix documentation typos. PR [#140](https://github.com/joseluisq/static-web-server/pull/140) by [@kianmeng](https://github.com/kianmeng). -- [3ca743a](https://github.com/joseluisq/static-web-server/commit/3ca743a) Page for pre-compressed files serving feature. See [docs](https://sws.joseluisq.net/features/compression-static/). -- [88a886f](https://github.com/joseluisq/static-web-server/commit/88a886f) Building project from source now requires Rust `1.59.0` or later. See [docs](https://sws.joseluisq.net/building-from-source/#building-project-from-source). +- [59a75e6](https://github.com/static-web-server/static-web-server/commit/59a75e6) Fix documentation typos. PR [#140](https://github.com/static-web-server/static-web-server/pull/140) by [@kianmeng](https://github.com/kianmeng). +- [3ca743a](https://github.com/static-web-server/static-web-server/commit/3ca743a) Page for pre-compressed files serving feature. See [docs](https://sws.joseluisq.net/features/compression-static/). +- [88a886f](https://github.com/static-web-server/static-web-server/commit/88a886f) Building project from source now requires Rust `1.59.0` or later. See [docs](https://sws.joseluisq.net/building-from-source/#building-project-from-source). __Codebase__ -- [5148da9](https://github.com/joseluisq/static-web-server/commit/5148da9) CI workflow for Rust security audit. -- [28f8818](https://github.com/joseluisq/static-web-server/commit/28f8818) CI development job for typos. PR [#141](https://github.com/joseluisq/static-web-server/pull/141) by [@kianmeng](https://github.com/kianmeng). See [docs](https://sws.joseluisq.net/features/logging/#log-real-remote-ip). +- [5148da9](https://github.com/static-web-server/static-web-server/commit/5148da9) CI workflow for Rust security audit. +- [28f8818](https://github.com/static-web-server/static-web-server/commit/28f8818) CI development job for typos. PR [#141](https://github.com/static-web-server/static-web-server/pull/141) by [@kianmeng](https://github.com/kianmeng). See [docs](https://sws.joseluisq.net/features/logging/#log-real-remote-ip). ## v2.11.0 - 2022-08-15 __Fixes__ -- [1b7636c](https://github.com/joseluisq/static-web-server/commit/1b7636c) Bugfix/security dependency updates including tokio, serde, tracing, libc, futures and other crates (also [6840d0f](https://github.com/joseluisq/static-web-server/commit/6840d0f), [32517b6](https://github.com/joseluisq/static-web-server/commit/32517b6)). -- [6570498](https://github.com/joseluisq/static-web-server/commit/6570498) Enable the missing `windows-service` option when used via the config file. +- [1b7636c](https://github.com/static-web-server/static-web-server/commit/1b7636c) Bugfix/security dependency updates including tokio, serde, tracing, libc, futures and other crates (also [6840d0f](https://github.com/static-web-server/static-web-server/commit/6840d0f), [32517b6](https://github.com/static-web-server/static-web-server/commit/32517b6)). +- [6570498](https://github.com/static-web-server/static-web-server/commit/6570498) Enable the missing `windows-service` option when used via the config file. __Features__ -- [5163564](https://github.com/joseluisq/static-web-server/commit/5163564) New `redirect-trailing-slash` option. PR [#131](https://github.com/joseluisq/static-web-server/pull/131) by [@phartenfeller](https://github.com/phartenfeller). See [docs](https://sws.joseluisq.net/features/trailing-slash-redirect/). +- [5163564](https://github.com/static-web-server/static-web-server/commit/5163564) New `redirect-trailing-slash` option. PR [#131](https://github.com/static-web-server/static-web-server/pull/131) by [@phartenfeller](https://github.com/phartenfeller). See [docs](https://sws.joseluisq.net/features/trailing-slash-redirect/). __Docs__ -- [10f403f](https://github.com/joseluisq/static-web-server/commit/10f403f) Redirect trailing slash page. -- [e4228af](https://github.com/joseluisq/static-web-server/commit/e4228af) Typos and content improvements (also [e674940](https://github.com/joseluisq/static-web-server/commit/e674940)). +- [10f403f](https://github.com/static-web-server/static-web-server/commit/10f403f) Redirect trailing slash page. +- [e4228af](https://github.com/static-web-server/static-web-server/commit/e4228af) Typos and content improvements (also [e674940](https://github.com/static-web-server/static-web-server/commit/e674940)). ## v2.10.0 - 2022-07-10 __Fixes__ -- [b902cb7](https://github.com/joseluisq/static-web-server/commit/b902cb7) Bugfix/security dependency updates including tokio, hyper, tracing, jemallocator and other crates (also [5c9b797](https://github.com/joseluisq/static-web-server/commit/5c9b797), [4cf9a6b](https://github.com/joseluisq/static-web-server/commit/4cf9a6b)). -- [b73959f](https://github.com/joseluisq/static-web-server/commit/b73959f) Fix wrong prefix config file path (`\\?\`) when logging on Windows. +- [b902cb7](https://github.com/static-web-server/static-web-server/commit/b902cb7) Bugfix/security dependency updates including tokio, hyper, tracing, jemallocator and other crates (also [5c9b797](https://github.com/static-web-server/static-web-server/commit/5c9b797), [4cf9a6b](https://github.com/static-web-server/static-web-server/commit/4cf9a6b)). +- [b73959f](https://github.com/static-web-server/static-web-server/commit/b73959f) Fix wrong prefix config file path (`\\?\`) when logging on Windows. __Features__ -- [5163564](https://github.com/joseluisq/static-web-server/commit/5163564) URL Rewrites with pattern matching support. PR [#122](https://github.com/joseluisq/static-web-server/pull/122). See [docs](https://sws.joseluisq.net/features/url-rewrites/). -- [5ef3b62](https://github.com/joseluisq/static-web-server/commit/5ef3b62) URL Redirects with pattern matching. PR [#123](https://github.com/joseluisq/static-web-server/pull/123). See [docs](https://sws.joseluisq.net/features/url-rewrites/). -- [9072977](https://github.com/joseluisq/static-web-server/commit/9072977) Homebrew installation support for MacOS/Linux. See [docs](https://sws.joseluisq.net/download-and-install/#macos). -- [975132f](https://github.com/joseluisq/static-web-server/commit/975132f) [Scoop](https://scoop.sh/#/apps?q=static-web-server&s=0&d=1&o=true) installation support for Windows. See [docs](https://sws.joseluisq.net/download-and-install/#windows). -- [78a5611](https://github.com/joseluisq/static-web-server/commit/78a5611) Alpine 3.16 Docker image. +- [5163564](https://github.com/static-web-server/static-web-server/commit/5163564) URL Rewrites with pattern matching support. PR [#122](https://github.com/static-web-server/static-web-server/pull/122). See [docs](https://sws.joseluisq.net/features/url-rewrites/). +- [5ef3b62](https://github.com/static-web-server/static-web-server/commit/5ef3b62) URL Redirects with pattern matching. PR [#123](https://github.com/static-web-server/static-web-server/pull/123). See [docs](https://sws.joseluisq.net/features/url-rewrites/). +- [9072977](https://github.com/static-web-server/static-web-server/commit/9072977) Homebrew installation support for MacOS/Linux. See [docs](https://sws.joseluisq.net/download-and-install/#macos). +- [975132f](https://github.com/static-web-server/static-web-server/commit/975132f) [Scoop](https://scoop.sh/#/apps?q=static-web-server&s=0&d=1&o=true) installation support for Windows. See [docs](https://sws.joseluisq.net/download-and-install/#windows). +- [78a5611](https://github.com/static-web-server/static-web-server/commit/78a5611) Alpine 3.16 Docker image. __Docs__ -- [b0ca3d1](https://github.com/joseluisq/static-web-server/commit/b0ca3d1) Several doc typo fixes. +- [b0ca3d1](https://github.com/static-web-server/static-web-server/commit/b0ca3d1) Several doc typo fixes. ## v2.9.0 - 2022-05-28 __Fixes__ -- [446576a](https://github.com/joseluisq/static-web-server/commit/446576a) Bugfix/security dependency updates including tokio, hyper, rustls, compression, windows-rs, serde, log and other crates (also [fa531a0](https://github.com/joseluisq/static-web-server/commit/fa531a0), [0879c84](https://github.com/joseluisq/static-web-server/commit/0879c84)). +- [446576a](https://github.com/static-web-server/static-web-server/commit/446576a) Bugfix/security dependency updates including tokio, hyper, rustls, compression, windows-rs, serde, log and other crates (also [fa531a0](https://github.com/static-web-server/static-web-server/commit/fa531a0), [0879c84](https://github.com/static-web-server/static-web-server/commit/0879c84)). __Features__ -- [3d1776d](https://github.com/joseluisq/static-web-server/commit/3d1776d) Windows Service support via new `--windows-service` option. PR [#110](https://github.com/joseluisq/static-web-server/pull/110) resolves [#65](https://github.com/joseluisq/static-web-server/issues/65) suggested by [@bubnenkoff](https://github.com/bubnenkoff). See [docs](https://sws.joseluisq.net/features/windows-service/). -- [bd78034](https://github.com/joseluisq/static-web-server/commit/bd78034) Include request URI on tracing log for 404/50x errors. [#108](https://github.com/joseluisq/static-web-server/issues/108) suggested by [@stappersg](https://github.com/stappersg). -- [b49395a](https://github.com/joseluisq/static-web-server/commit/b49395a) Log request file with its remote address (IP) via new `--log-remote-address` option. PR [#112](https://github.com/joseluisq/static-web-server/pull/112) resolves [#111](https://github.com/joseluisq/static-web-server/issues/111) suggested by [@nicheath](https://github.com/nicheath). See [docs](https://sws.joseluisq.net/features/logging/#log-remote-addresses). +- [3d1776d](https://github.com/static-web-server/static-web-server/commit/3d1776d) Windows Service support via new `--windows-service` option. PR [#110](https://github.com/static-web-server/static-web-server/pull/110) resolves [#65](https://github.com/static-web-server/static-web-server/issues/65) suggested by [@bubnenkoff](https://github.com/bubnenkoff). See [docs](https://sws.joseluisq.net/features/windows-service/). +- [bd78034](https://github.com/static-web-server/static-web-server/commit/bd78034) Include request URI on tracing log for 404/50x errors. [#108](https://github.com/static-web-server/static-web-server/issues/108) suggested by [@stappersg](https://github.com/stappersg). +- [b49395a](https://github.com/static-web-server/static-web-server/commit/b49395a) Log request file with its remote address (IP) via new `--log-remote-address` option. PR [#112](https://github.com/static-web-server/static-web-server/pull/112) resolves [#111](https://github.com/static-web-server/static-web-server/issues/111) suggested by [@nicheath](https://github.com/nicheath). See [docs](https://sws.joseluisq.net/features/logging/#log-remote-addresses). __Docs__ -- [a793b58](https://github.com/joseluisq/static-web-server/commit/a793b58) Improve basic auth feature page. See [docs](https://sws.joseluisq.net/features/basic-authentication/). -- [ae0dcfd](https://github.com/joseluisq/static-web-server/commit/ae0dcfd) Windows Service feature page. See [docs](https://sws.joseluisq.net/features/windows-service/). -- [2d71de6](https://github.com/joseluisq/static-web-server/commit/2d71de6) Log remote address feature. See [docs](https://sws.joseluisq.net/features/logging/#log-remote-addresses). +- [a793b58](https://github.com/static-web-server/static-web-server/commit/a793b58) Improve basic auth feature page. See [docs](https://sws.joseluisq.net/features/basic-authentication/). +- [ae0dcfd](https://github.com/static-web-server/static-web-server/commit/ae0dcfd) Windows Service feature page. See [docs](https://sws.joseluisq.net/features/windows-service/). +- [2d71de6](https://github.com/static-web-server/static-web-server/commit/2d71de6) Log remote address feature. See [docs](https://sws.joseluisq.net/features/logging/#log-remote-addresses). ## v2.8.0 - 2022-05-04 __Fixes__ -- [446576a](https://github.com/joseluisq/static-web-server/commit/446576a) Bugfix/security dependency updates including http, tokio, httparse, windows-rs, serde, log and other crates. +- [446576a](https://github.com/static-web-server/static-web-server/commit/446576a) Bugfix/security dependency updates including http, tokio, httparse, windows-rs, serde, log and other crates. __Features__ -- [1fd3e48](https://github.com/joseluisq/static-web-server/commit/1fd3e48) Configuration file support. PR [#101](https://github.com/joseluisq/static-web-server/pull/101). See [docs](https://sws.joseluisq.net/configuration/config-file/). -- [62ebe52](https://github.com/joseluisq/static-web-server/commit/62ebe52) Custom HTTP headers via config file. See [docs](https://sws.joseluisq.net/features/custom-http-headers/). +- [1fd3e48](https://github.com/static-web-server/static-web-server/commit/1fd3e48) Configuration file support. PR [#101](https://github.com/static-web-server/static-web-server/pull/101). See [docs](https://sws.joseluisq.net/configuration/config-file/). +- [62ebe52](https://github.com/static-web-server/static-web-server/commit/62ebe52) Custom HTTP headers via config file. See [docs](https://sws.joseluisq.net/features/custom-http-headers/). __Refactorings__ -- [9f4bbd7](https://github.com/joseluisq/static-web-server/commit/9f4bbd7) Update `tokio-rustls` to `v0.23`. -- [024531c](https://github.com/joseluisq/static-web-server/commit/024531c) Move to maintained jemallocator (`tikv-jemallocator`) on Linux (Musl libc). -- [3e40153](https://github.com/joseluisq/static-web-server/commit/3e40153) Remove deprecated `git.io` link. PR [#103](https://github.com/joseluisq/static-web-server/pull/103) by [@renbaoshuo](https://github.com/renbaoshuo). -- [959c325](https://github.com/joseluisq/static-web-server/commit/959c325) `PathBuf` data type for cli/file config path options. +- [9f4bbd7](https://github.com/static-web-server/static-web-server/commit/9f4bbd7) Update `tokio-rustls` to `v0.23`. +- [024531c](https://github.com/static-web-server/static-web-server/commit/024531c) Move to maintained jemallocator (`tikv-jemallocator`) on Linux (Musl libc). +- [3e40153](https://github.com/static-web-server/static-web-server/commit/3e40153) Remove deprecated `git.io` link. PR [#103](https://github.com/static-web-server/static-web-server/pull/103) by [@renbaoshuo](https://github.com/renbaoshuo). +- [959c325](https://github.com/static-web-server/static-web-server/commit/959c325) `PathBuf` data type for cli/file config path options. __Docs__ -- [7dda2ea](https://github.com/joseluisq/static-web-server/commit/7dda2ea) Config file and custom http headers. +- [7dda2ea](https://github.com/static-web-server/static-web-server/commit/7dda2ea) Config file and custom http headers. ## v2.7.1 - 2022-04-17 __Fixes__ -- [9c58496](https://github.com/joseluisq/static-web-server/commit/9c58496) Bugfix/security dependency updates including httparse, flate2, h2, tracing, brotli, windows-rs and other crates (also [bc62634](https://github.com/joseluisq/static-web-server/commit/bc62634), [8a1d1cb](https://github.com/joseluisq/static-web-server/commit/8a1d1cb), [eabc559](https://github.com/joseluisq/static-web-server/commit/eabc559)). -- [041f0f8](https://github.com/joseluisq/static-web-server/commit/041f0f8) Prevent arbitrary files access on Windows.
+- [9c58496](https://github.com/static-web-server/static-web-server/commit/9c58496) Bugfix/security dependency updates including httparse, flate2, h2, tracing, brotli, windows-rs and other crates (also [bc62634](https://github.com/static-web-server/static-web-server/commit/bc62634), [8a1d1cb](https://github.com/static-web-server/static-web-server/commit/8a1d1cb), [eabc559](https://github.com/static-web-server/static-web-server/commit/eabc559)). +- [041f0f8](https://github.com/static-web-server/static-web-server/commit/041f0f8) Prevent arbitrary files access on Windows.
It mitigates accessing files outside of server root directory on Windows when a driver label is used as part of a request URL.
E.g `http://localhost:1234/whatever/c:/windows/win.ini`. __Refactorings__ -- [fa05773](https://github.com/joseluisq/static-web-server/commit/fa05773) Small performance improvement for tracing. +- [fa05773](https://github.com/static-web-server/static-web-server/commit/fa05773) Small performance improvement for tracing. __Docs__ -- [9c58496](https://github.com/joseluisq/static-web-server/commit/9c58496) Build documentation from source. +- [9c58496](https://github.com/static-web-server/static-web-server/commit/9c58496) Build documentation from source. ## v2.7.0 - 2022-03-21 __Fixes__ -- [dc8bc4d](https://github.com/joseluisq/static-web-server/commit/dc8bc4d) Bugfix/security dependency updates including h2, tracing, listenfd, mio, libc, syn and other crates (also [3b2a287](https://github.com/joseluisq/static-web-server/commit/3b2a287), [d57ee2f](https://github.com/joseluisq/static-web-server/commit/d57ee2f), [15cf1ac](https://github.com/joseluisq/static-web-server/commit/15cf1ac)). -- [da85b16](https://github.com/joseluisq/static-web-server/commit/da85b16) `--cors-allow-origins` doesn't assign headers properly. PR [#87](https://github.com/joseluisq/static-web-server/pull/87) resolves [#86](https://github.com/joseluisq/static-web-server/issues/86) reported by [@mr-moon](https://github.com/mr-moon). -- [dcc8a32](https://github.com/joseluisq/static-web-server/commit/dcc8a32) Security Alpine `3.15` Docker image upgrade. PR [#92](https://github.com/joseluisq/static-web-server/pull/92). +- [dc8bc4d](https://github.com/static-web-server/static-web-server/commit/dc8bc4d) Bugfix/security dependency updates including h2, tracing, listenfd, mio, libc, syn and other crates (also [3b2a287](https://github.com/static-web-server/static-web-server/commit/3b2a287), [d57ee2f](https://github.com/static-web-server/static-web-server/commit/d57ee2f), [15cf1ac](https://github.com/static-web-server/static-web-server/commit/15cf1ac)). +- [da85b16](https://github.com/static-web-server/static-web-server/commit/da85b16) `--cors-allow-origins` doesn't assign headers properly. PR [#87](https://github.com/static-web-server/static-web-server/pull/87) resolves [#86](https://github.com/static-web-server/static-web-server/issues/86) reported by [@mr-moon](https://github.com/mr-moon). +- [dcc8a32](https://github.com/static-web-server/static-web-server/commit/dcc8a32) Security Alpine `3.15` Docker image upgrade. PR [#92](https://github.com/static-web-server/static-web-server/pull/92). __Features__ -- [da85b16](https://github.com/joseluisq/static-web-server/commit/da85b16) CORS allowed headers support via the new `-j, --cors-allow-headers` flags. PR [#87](https://github.com/joseluisq/static-web-server/pull/87). See [docs](https://sws.joseluisq.net/features/cors/#allowed-headers). -- [da85b16](https://github.com/joseluisq/static-web-server/commit/da85b16) Support for HTTP `OPTIONS` method requests. PR [#87](https://github.com/joseluisq/static-web-server/pull/87). See [docs](https://sws.joseluisq.net/features/http-methods/). -- [6204205](https://github.com/joseluisq/static-web-server/commit/6204205) `Cache-Control` for AVIF and JPEG XL mime types. PR [#88](https://github.com/joseluisq/static-web-server/pull/88) by [@csmith](https://github.com/csmith). See [docs](https://sws.joseluisq.net/features/cache-control-headers/#one-year). -- [cba4a83](https://github.com/joseluisq/static-web-server/commit/cba4a83) Fallback page option via the new `--page-fallback` flag. PR [#91](https://github.com/joseluisq/static-web-server/pull/91) by [@firstdorsal](https://github.com/firstdorsal). See [docs](https://sws.joseluisq.net/features/error-pages/#fallback-page-for-use-with-client-routers). +- [da85b16](https://github.com/static-web-server/static-web-server/commit/da85b16) CORS allowed headers support via the new `-j, --cors-allow-headers` flags. PR [#87](https://github.com/static-web-server/static-web-server/pull/87). See [docs](https://sws.joseluisq.net/features/cors/#allowed-headers). +- [da85b16](https://github.com/static-web-server/static-web-server/commit/da85b16) Support for HTTP `OPTIONS` method requests. PR [#87](https://github.com/static-web-server/static-web-server/pull/87). See [docs](https://sws.joseluisq.net/features/http-methods/). +- [6204205](https://github.com/static-web-server/static-web-server/commit/6204205) `Cache-Control` for AVIF and JPEG XL mime types. PR [#88](https://github.com/static-web-server/static-web-server/pull/88) by [@csmith](https://github.com/csmith). See [docs](https://sws.joseluisq.net/features/cache-control-headers/#one-year). +- [cba4a83](https://github.com/static-web-server/static-web-server/commit/cba4a83) Fallback page option via the new `--page-fallback` flag. PR [#91](https://github.com/static-web-server/static-web-server/pull/91) by [@firstdorsal](https://github.com/firstdorsal). See [docs](https://sws.joseluisq.net/features/error-pages/#fallback-page-for-use-with-client-routers). __Refactorings__ -- [d33d093](https://github.com/joseluisq/static-web-server/commit/d33d093) Reduce few allocations on HTTP request handler. -- [06cc379](https://github.com/joseluisq/static-web-server/commit/06cc379) Reduce small allocation when encoding headers during compression. -- [a5e87e5](https://github.com/joseluisq/static-web-server/commit/a5e87e5) Typed `Content-Type` header for error pages and dir listing responses. +- [d33d093](https://github.com/static-web-server/static-web-server/commit/d33d093) Reduce few allocations on HTTP request handler. +- [06cc379](https://github.com/static-web-server/static-web-server/commit/06cc379) Reduce small allocation when encoding headers during compression. +- [a5e87e5](https://github.com/static-web-server/static-web-server/commit/a5e87e5) Typed `Content-Type` header for error pages and dir listing responses. __Docs__ -- [781ba91](https://github.com/joseluisq/static-web-server/commit/781ba91) CORS allowed headers. See [docs](https://sws.joseluisq.net/features/cors/#allowed-headers). -- [0957a11](https://github.com/joseluisq/static-web-server/commit/0957a11) HTTP methods section. See [docs](https://sws.joseluisq.net/features/http-methods/). +- [781ba91](https://github.com/static-web-server/static-web-server/commit/781ba91) CORS allowed headers. See [docs](https://sws.joseluisq.net/features/cors/#allowed-headers). +- [0957a11](https://github.com/static-web-server/static-web-server/commit/0957a11) HTTP methods section. See [docs](https://sws.joseluisq.net/features/http-methods/). __Testing__ -- [7b6fc0b](https://github.com/joseluisq/static-web-server/commit/7b6fc0b) `Cache-Control` test cases. -- [f22b952](https://github.com/joseluisq/static-web-server/commit/f22b952) Stable Rust for ARM CI pipelines. +- [7b6fc0b](https://github.com/static-web-server/static-web-server/commit/7b6fc0b) `Cache-Control` test cases. +- [f22b952](https://github.com/static-web-server/static-web-server/commit/f22b952) Stable Rust for ARM CI pipelines. ## v2.6.0 - 2022-02-28 __Fixes__ -- [fb84c0b](https://github.com/joseluisq/static-web-server/commit/fb84c0b) Bugfix/security dependency updates including hyper, tokio, httparse, futures, tracing, headers and other crates (also [7f70a13](https://github.com/joseluisq/static-web-server/commit/7f70a13), [d3fb137](https://github.com/joseluisq/static-web-server/commit/d3fb137)). +- [fb84c0b](https://github.com/static-web-server/static-web-server/commit/fb84c0b) Bugfix/security dependency updates including hyper, tokio, httparse, futures, tracing, headers and other crates (also [7f70a13](https://github.com/static-web-server/static-web-server/commit/7f70a13), [d3fb137](https://github.com/static-web-server/static-web-server/commit/d3fb137)). __Features__ -- [7d32a67](https://github.com/joseluisq/static-web-server/commit/7d32a67) Multi-arch Docker images (Scratch/Alpine). PR [#82](https://github.com/joseluisq/static-web-server/pull/82) resolves [#54](https://github.com/joseluisq/static-web-server/issues/54). +- [7d32a67](https://github.com/static-web-server/static-web-server/commit/7d32a67) Multi-arch Docker images (Scratch/Alpine). PR [#82](https://github.com/static-web-server/static-web-server/pull/82) resolves [#54](https://github.com/static-web-server/static-web-server/issues/54). - New `armv7-unknown-linux-musleabihf` (armv7) and `arm-unknown-linux-musleabihf` (armv6) binary targets. - New Docker images for `linux/arm64`, `linux/386`, `linux/arm/v7` and `linux/arm/v6` platforms. -- [50974fe](https://github.com/joseluisq/static-web-server/commit/50974fe) Compress WebAssembly (`application/wasm`) files. PR [#84](https://github.com/joseluisq/static-web-server/pull/84) by [@acelot](https://github.com/acelot). See [docs](https://sws.joseluisq.net/features/compression/). -- [70ec60c](https://github.com/joseluisq/static-web-server/commit/70ec60c) Arch Linux [AUR package](https://aur.archlinux.org/packages/static-web-server-bin) support. See [docs](https://sws.joseluisq.net/download-and-install/). +- [50974fe](https://github.com/static-web-server/static-web-server/commit/50974fe) Compress WebAssembly (`application/wasm`) files. PR [#84](https://github.com/static-web-server/static-web-server/pull/84) by [@acelot](https://github.com/acelot). See [docs](https://sws.joseluisq.net/features/compression/). +- [70ec60c](https://github.com/static-web-server/static-web-server/commit/70ec60c) Arch Linux [AUR package](https://aur.archlinux.org/packages/static-web-server-bin) support. See [docs](https://sws.joseluisq.net/download-and-install/). __Refactorings__ -- [e109b77](https://github.com/joseluisq/static-web-server/commit/e109b77) Improve startup server error messages providing context. -- [c085147](https://github.com/joseluisq/static-web-server/commit/c085147) Prefer `cfg(unix)` instead of `cfg(not(windows))`. +- [e109b77](https://github.com/static-web-server/static-web-server/commit/e109b77) Improve startup server error messages providing context. +- [c085147](https://github.com/static-web-server/static-web-server/commit/c085147) Prefer `cfg(unix)` instead of `cfg(not(windows))`. __Docs__ -- [eb482a4](https://github.com/joseluisq/static-web-server/commit/eb482a4) Documentation for Multi-arch Docker images. See [docs](https://sws.joseluisq.net/features/docker/). -- [70ec60c](https://github.com/joseluisq/static-web-server/commit/70ec60c) Documentation for Arch Linux support. See [docs](https://sws.joseluisq.net/download-and-install/). +- [eb482a4](https://github.com/static-web-server/static-web-server/commit/eb482a4) Documentation for Multi-arch Docker images. See [docs](https://sws.joseluisq.net/features/docker/). +- [70ec60c](https://github.com/static-web-server/static-web-server/commit/70ec60c) Documentation for Arch Linux support. See [docs](https://sws.joseluisq.net/download-and-install/). ## v2.6.0-beta.2 - 2022-02-08 __Fixes__ -- [65007f9](https://github.com/joseluisq/static-web-server/commit/65007f9) Wrong binary path for alpine docker image. +- [65007f9](https://github.com/static-web-server/static-web-server/commit/65007f9) Wrong binary path for alpine docker image. ## v2.6.0-beta.1 - 2022-02-08 __Fixes__ -- [fb84c0b](https://github.com/joseluisq/static-web-server/commit/fb84c0b) Bugfix dependency updates including httparse, futures and other crates. +- [fb84c0b](https://github.com/static-web-server/static-web-server/commit/fb84c0b) Bugfix dependency updates including httparse, futures and other crates. __Features__ -- [c2ae6a5](https://github.com/joseluisq/static-web-server/commit/c2ae6a5) Multi-arch Docker images. PR [#82](https://github.com/joseluisq/static-web-server/pull/82) resolves [#54](https://github.com/joseluisq/static-web-server/issues/54). +- [c2ae6a5](https://github.com/static-web-server/static-web-server/commit/c2ae6a5) Multi-arch Docker images. PR [#82](https://github.com/static-web-server/static-web-server/pull/82) resolves [#54](https://github.com/static-web-server/static-web-server/issues/54). - New `armv7-unknown-linux-musleabihf` (armv7) and `arm-unknown-linux-musleabihf` (armv6) binary targets. - New Docker images for `linux/arm64`, `linux/386`, `linux/arm/v7` and `linux/arm/v6` platforms. @@ -241,128 +241,128 @@ __Features__ __Fixes__ -- [3df07aa](https://github.com/joseluisq/static-web-server/commit/3df07aa) Bugfix dependency updates including Tokio, libc , h2, tracing, brotli other crates. (also [5f9f9f9](https://github.com/joseluisq/static-web-server/commit/5f9f9f9), [3df07aa](https://github.com/joseluisq/static-web-server/commit/3df07aa), [0c1a6c1](https://github.com/joseluisq/static-web-server/commit/0c1a6c1)). +- [3df07aa](https://github.com/static-web-server/static-web-server/commit/3df07aa) Bugfix dependency updates including Tokio, libc , h2, tracing, brotli other crates. (also [5f9f9f9](https://github.com/static-web-server/static-web-server/commit/5f9f9f9), [3df07aa](https://github.com/static-web-server/static-web-server/commit/3df07aa), [0c1a6c1](https://github.com/static-web-server/static-web-server/commit/0c1a6c1)). __Features__ -- [3224261](https://github.com/joseluisq/static-web-server/commit/3224261) Configurable grace period support after a `SIGTERM`. PR [#80](https://github.com/joseluisq/static-web-server/pull/80) resolves [#79](https://github.com/joseluisq/static-web-server/issues/79) suggested by [@jtackaberry](https://github.com/jtackaberry). See [docs](https://sws.joseluisq.net/features/graceful-shutdown/#graceful-shutdown) for more details. +- [3224261](https://github.com/static-web-server/static-web-server/commit/3224261) Configurable grace period support after a `SIGTERM`. PR [#80](https://github.com/static-web-server/static-web-server/pull/80) resolves [#79](https://github.com/static-web-server/static-web-server/issues/79) suggested by [@jtackaberry](https://github.com/jtackaberry). See [docs](https://sws.joseluisq.net/features/graceful-shutdown/#graceful-shutdown) for more details. __Refactorings__ -- [4caf0aa](https://github.com/joseluisq/static-web-server/commit/4caf0aa) Log `info` entry after `ctrl+c` on Windows. +- [4caf0aa](https://github.com/static-web-server/static-web-server/commit/4caf0aa) Log `info` entry after `ctrl+c` on Windows. ## v2.4.0 - 2022-01-06 __Fixes__ -- [fd227b3](https://github.com/joseluisq/static-web-server/commit/fd227b3) Bugfix dependency updates including Tokio, futures, http, syn, libc and other crates. (also [fd227b3](https://github.com/joseluisq/static-web-server/commit/fd227b3), [7becd4e](https://github.com/joseluisq/static-web-server/commit/7becd4e)). +- [fd227b3](https://github.com/static-web-server/static-web-server/commit/fd227b3) Bugfix dependency updates including Tokio, futures, http, syn, libc and other crates. (also [fd227b3](https://github.com/static-web-server/static-web-server/commit/fd227b3), [7becd4e](https://github.com/static-web-server/static-web-server/commit/7becd4e)). __Refactorings__ -- [5926c9b](https://github.com/joseluisq/static-web-server/commit/5926c9b) Trailing slash checking and redirection for directory requests. PR [#74](https://github.com/joseluisq/static-web-server/pull/74) resolves [#73](https://github.com/joseluisq/static-web-server/issues/73) suggested by [@knyzorg](https://github.com/knyzorg). +- [5926c9b](https://github.com/static-web-server/static-web-server/commit/5926c9b) Trailing slash checking and redirection for directory requests. PR [#74](https://github.com/static-web-server/static-web-server/pull/74) resolves [#73](https://github.com/static-web-server/static-web-server/issues/73) suggested by [@knyzorg](https://github.com/knyzorg). __Features__ -- [ac8f87c](https://github.com/joseluisq/static-web-server/commit/ac8f87c) Alpine 3.14 Docker images. +- [ac8f87c](https://github.com/static-web-server/static-web-server/commit/ac8f87c) Alpine 3.14 Docker images. ## v2.3.0 - 2021-12-11 __Fixes__ -- [366e6a9](https://github.com/joseluisq/static-web-server/commit/366e6a9) Security/bug fixes dependency updates including Hyper, Tokio, h2, libc, futures and other crates. (Also [dfe87c7](https://github.com/joseluisq/static-web-server/commit/dfe87c7), [1231b50](https://github.com/joseluisq/static-web-server/commit/1231b50)). +- [366e6a9](https://github.com/static-web-server/static-web-server/commit/366e6a9) Security/bug fixes dependency updates including Hyper, Tokio, h2, libc, futures and other crates. (Also [dfe87c7](https://github.com/static-web-server/static-web-server/commit/dfe87c7), [1231b50](https://github.com/static-web-server/static-web-server/commit/1231b50)). __Features__ -- [688d1b2](https://github.com/joseluisq/static-web-server/commit/688d1b2) Opt-in sorting by `Name`, `Last Modified` and `File Size` in ascending/descending order via the new `--directory-listing-order` option. More details on [directory listing documentation](https://sws.joseluisq.net/examples/directory-listing/#sorting). PR [#71](https://github.com/joseluisq/static-web-server/pull/71) resolves [#68](https://github.com/joseluisq/static-web-server/issues/68) suggested by [@igoro00](https://github.com/igoro00). +- [688d1b2](https://github.com/static-web-server/static-web-server/commit/688d1b2) Opt-in sorting by `Name`, `Last Modified` and `File Size` in ascending/descending order via the new `--directory-listing-order` option. More details on [directory listing documentation](https://sws.joseluisq.net/examples/directory-listing/#sorting). PR [#71](https://github.com/static-web-server/static-web-server/pull/71) resolves [#68](https://github.com/static-web-server/static-web-server/issues/68) suggested by [@igoro00](https://github.com/igoro00). ## v2.2.0 - 2021-11-04 __Fixes__ -- [c264f2f](https://github.com/joseluisq/static-web-server/commit/c264f2f) Update dependencies (also [e127a1f](https://github.com/joseluisq/static-web-server/commit/e127a1f)). +- [c264f2f](https://github.com/static-web-server/static-web-server/commit/c264f2f) Update dependencies (also [e127a1f](https://github.com/static-web-server/static-web-server/commit/e127a1f)). __Features__ -- [0a02da3](https://github.com/joseluisq/static-web-server/commit/0a02da3) [Graceful Shutdown](https://cloud.google.com/blog/products/containers-kubernetes/kubernetes-best-practices-terminating-with-grace) support for HTTP/1 - HTTP/2 servers by default. PR [#62](https://github.com/joseluisq/static-web-server/pull/62) resolves [#61](https://github.com/joseluisq/static-web-server/issues/53) suggested by [@pdfrod](https://github.com/pdfrod). +- [0a02da3](https://github.com/static-web-server/static-web-server/commit/0a02da3) [Graceful Shutdown](https://cloud.google.com/blog/products/containers-kubernetes/kubernetes-best-practices-terminating-with-grace) support for HTTP/1 - HTTP/2 servers by default. PR [#62](https://github.com/static-web-server/static-web-server/pull/62) resolves [#61](https://github.com/static-web-server/static-web-server/issues/53) suggested by [@pdfrod](https://github.com/pdfrod). __Refactorings__ -- [6f10ef1](https://github.com/joseluisq/static-web-server/commit/6f10ef1) Disable ANSI for tracing logs on Windows in order to display characters correctly. -- [17ceec0](https://github.com/joseluisq/static-web-server/commit/17ceec0) Log Basic Authentication info. +- [6f10ef1](https://github.com/static-web-server/static-web-server/commit/6f10ef1) Disable ANSI for tracing logs on Windows in order to display characters correctly. +- [17ceec0](https://github.com/static-web-server/static-web-server/commit/17ceec0) Log Basic Authentication info. __Docs__ -- [b501c40](https://github.com/joseluisq/static-web-server/commit/b501c40) Project Website - [sws.joseluisq.net](https://sws.joseluisq.net). PR [#56](https://github.com/joseluisq/static-web-server/pull/56). +- [b501c40](https://github.com/static-web-server/static-web-server/commit/b501c40) Project Website - [sws.joseluisq.net](https://sws.joseluisq.net). PR [#56](https://github.com/static-web-server/static-web-server/pull/56). ## v2.1.0 - 2021-10-23 __Fixes__ -* [5f3842b](https://github.com/joseluisq/static-web-server/commit/5f3842b) Update dependencies including Hyper, Tokio, h2, futures, tracing bug/security fixes and related crates (also [5528bcb](https://github.com/joseluisq/static-web-server/commit/5528bcb), [dc98fbb](https://github.com/joseluisq/static-web-server/commit/dc98fbb)). -* [62e98c6](https://github.com/joseluisq/static-web-server/commit/62e98c6) `aarch64-unknown-linux-musl` build fails using Rust nightly. +* [5f3842b](https://github.com/static-web-server/static-web-server/commit/5f3842b) Update dependencies including Hyper, Tokio, h2, futures, tracing bug/security fixes and related crates (also [5528bcb](https://github.com/static-web-server/static-web-server/commit/5528bcb), [dc98fbb](https://github.com/static-web-server/static-web-server/commit/dc98fbb)). +* [62e98c6](https://github.com/static-web-server/static-web-server/commit/62e98c6) `aarch64-unknown-linux-musl` build fails using Rust nightly. __Features__ -- [abc76a8](https://github.com/joseluisq/static-web-server/commit/abc76a8) Basic HTTP Authentication support via the new `--basic-auth` option. PR [#55](https://github.com/joseluisq/static-web-server/pull/55) resolves [#53](https://github.com/joseluisq/static-web-server/issues/53) suggested by [@bjornharrtell](https://github.com/bjornharrtell). +- [abc76a8](https://github.com/static-web-server/static-web-server/commit/abc76a8) Basic HTTP Authentication support via the new `--basic-auth` option. PR [#55](https://github.com/static-web-server/static-web-server/pull/55) resolves [#53](https://github.com/static-web-server/static-web-server/issues/53) suggested by [@bjornharrtell](https://github.com/bjornharrtell). __Refactorings__ -- [0273611](https://github.com/joseluisq/static-web-server/commit/0273611) Prefer `futures-util` over `futures` dependency. -- [c3bfa68](https://github.com/joseluisq/static-web-server/commit/c3bfa68) Use [Rust 1.56.0 (2021 Edition)](https://blog.rust-lang.org/2021/10/21/Rust-1.56.0.html) on CI. +- [0273611](https://github.com/static-web-server/static-web-server/commit/0273611) Prefer `futures-util` over `futures` dependency. +- [c3bfa68](https://github.com/static-web-server/static-web-server/commit/c3bfa68) Use [Rust 1.56.0 (2021 Edition)](https://blog.rust-lang.org/2021/10/21/Rust-1.56.0.html) on CI. __Docs__ -- [f89c5c9](https://github.com/joseluisq/static-web-server/commit/f89c5c9) Describe Basic HTTP Authentication feature. -- [a6d0e53](https://github.com/joseluisq/static-web-server/commit/a6d0e53) Minor general description improvements. +- [f89c5c9](https://github.com/static-web-server/static-web-server/commit/f89c5c9) Describe Basic HTTP Authentication feature. +- [a6d0e53](https://github.com/static-web-server/static-web-server/commit/a6d0e53) Minor general description improvements. ## v2.0.3 - 2021-09-29 __Fixes__ -* [5de5874](https://github.com/joseluisq/static-web-server/commit/5de5874) Update dependencies including Hyper, Tokio, http, futures, tracing bug fixes and related crates (also [1c6c873](https://github.com/joseluisq/static-web-server/commit/1c6c873) [34efa49](https://github.com/joseluisq/static-web-server/commit/34efa49), [6fb832b](https://github.com/joseluisq/static-web-server/commit/6fb832b)) +* [5de5874](https://github.com/static-web-server/static-web-server/commit/5de5874) Update dependencies including Hyper, Tokio, http, futures, tracing bug fixes and related crates (also [1c6c873](https://github.com/static-web-server/static-web-server/commit/1c6c873) [34efa49](https://github.com/static-web-server/static-web-server/commit/34efa49), [6fb832b](https://github.com/static-web-server/static-web-server/commit/6fb832b)) __Refactorings__ -- [b2f09ab](https://github.com/joseluisq/static-web-server/commit/b2f09ab) Remove optional extra Docker volume `/public` of `scratch` and `alpine` images. PR [#52](https://github.com/joseluisq/static-web-server/pull/52) resolves [#51](https://github.com/joseluisq/static-web-server/issues/51) reported by [@bergi9](https://github.com/bergi9). -- [906106f](https://github.com/joseluisq/static-web-server/commit/906106f) Remove never read `origins_str` field on Cors module. -- [6f7a6bc](https://github.com/joseluisq/static-web-server/commit/6f7a6bc) Fix Rust edition idioms. +- [b2f09ab](https://github.com/static-web-server/static-web-server/commit/b2f09ab) Remove optional extra Docker volume `/public` of `scratch` and `alpine` images. PR [#52](https://github.com/static-web-server/static-web-server/pull/52) resolves [#51](https://github.com/static-web-server/static-web-server/issues/51) reported by [@bergi9](https://github.com/bergi9). +- [906106f](https://github.com/static-web-server/static-web-server/commit/906106f) Remove never read `origins_str` field on Cors module. +- [6f7a6bc](https://github.com/static-web-server/static-web-server/commit/6f7a6bc) Fix Rust edition idioms. __Tests__ -* [166e869](https://github.com/joseluisq/static-web-server/commit/166e869) More Cors test cases. +* [166e869](https://github.com/static-web-server/static-web-server/commit/166e869) More Cors test cases. ## v2.0.2 - 2021-08-29 __Fixes__ -* [ab83e2a](https://github.com/joseluisq/static-web-server/commit/ab83e2a) Update dependencies including Hyper, h2, httparse bug fixes. Tokio leak fix and related crates (also [adb8ca6](https://github.com/joseluisq/static-web-server/commit/adb8ca6)) +* [ab83e2a](https://github.com/static-web-server/static-web-server/commit/ab83e2a) Update dependencies including Hyper, h2, httparse bug fixes. Tokio leak fix and related crates (also [adb8ca6](https://github.com/static-web-server/static-web-server/commit/adb8ca6)) ## v2.0.1 - 2021-08-18 __Fixes__ -* [2459ec4](https://github.com/joseluisq/static-web-server/commit/2459ec4) Return incorrect first bytes range when final bytes are requested. For example a request using `Range: bytes=-10` header returned incorrectly the first 10 bytes rather than the last 10 ones. +* [2459ec4](https://github.com/static-web-server/static-web-server/commit/2459ec4) Return incorrect first bytes range when final bytes are requested. For example a request using `Range: bytes=-10` header returned incorrectly the first 10 bytes rather than the last 10 ones. __Updates__ -* [122e1bd](https://github.com/joseluisq/static-web-server/commit/122e1bd) Update dependencies including Hyper and Tokio bug fixes, Brotli, Serde and related crates (also [0b413f9](https://github.com/joseluisq/static-web-server/commit/0b413f9), [fa130fa](https://github.com/joseluisq/static-web-server/commit/fa130fa), [167e1de](https://github.com/joseluisq/static-web-server/commit/167e1de), [fa32375](https://github.com/joseluisq/static-web-server/commit/fa32375), [2d1c5f3](https://github.com/joseluisq/static-web-server/commit/2d1c5f3)) +* [122e1bd](https://github.com/static-web-server/static-web-server/commit/122e1bd) Update dependencies including Hyper and Tokio bug fixes, Brotli, Serde and related crates (also [0b413f9](https://github.com/static-web-server/static-web-server/commit/0b413f9), [fa130fa](https://github.com/static-web-server/static-web-server/commit/fa130fa), [167e1de](https://github.com/static-web-server/static-web-server/commit/167e1de), [fa32375](https://github.com/static-web-server/static-web-server/commit/fa32375), [2d1c5f3](https://github.com/static-web-server/static-web-server/commit/2d1c5f3)) __Refactorings__ -* [8fc1812](https://github.com/joseluisq/static-web-server/commit/8fc1812) Remove needless borrow on static file and handle modules. -* [27f5687](https://github.com/joseluisq/static-web-server/commit/27f5687) UTF-8 for default Docker `index.html` file. -* [ffb2e54](https://github.com/joseluisq/static-web-server/commit/ffb2e54) Update Rust stable to 1.54.0 on CI. +* [8fc1812](https://github.com/static-web-server/static-web-server/commit/8fc1812) Remove needless borrow on static file and handle modules. +* [27f5687](https://github.com/static-web-server/static-web-server/commit/27f5687) UTF-8 for default Docker `index.html` file. +* [ffb2e54](https://github.com/static-web-server/static-web-server/commit/ffb2e54) Update Rust stable to 1.54.0 on CI. __Tests__ -* [5cdcffc](https://github.com/joseluisq/static-web-server/commit/5cdcffc) More directory listing test cases. -* [c7e8ec9](https://github.com/joseluisq/static-web-server/commit/c7e8ec9) More static files test cases. -* [37f2371](https://github.com/joseluisq/static-web-server/commit/37f2371) More static file methods and compression test cases. -* [dd7f995](https://github.com/joseluisq/static-web-server/commit/dd7f995) More static file test cases for during request handling. +* [5cdcffc](https://github.com/static-web-server/static-web-server/commit/5cdcffc) More directory listing test cases. +* [c7e8ec9](https://github.com/static-web-server/static-web-server/commit/c7e8ec9) More static files test cases. +* [37f2371](https://github.com/static-web-server/static-web-server/commit/37f2371) More static file methods and compression test cases. +* [dd7f995](https://github.com/static-web-server/static-web-server/commit/dd7f995) More static file test cases for during request handling. __Docs__ -* [f389cbc](https://github.com/joseluisq/static-web-server/commit/f389cbc) Minor badges and link updates. +* [f389cbc](https://github.com/static-web-server/static-web-server/commit/f389cbc) Minor badges and link updates. ## v2.0.0 - 2021-07-18 @@ -380,9 +380,9 @@ This list only shows new features not present in previous v1. - Static Web Server is now asynchronous by default powered by latest Hyper and Tokio. - It supports opt-in GZip, Deflate and Brotli compression for text-based web files only. - HTTP/2 + TLS support (via `--http2` option). -- [Security headers](https://github.com/joseluisq/static-web-server/pull/44) like STS, CSP and others for HTTP/2 by default. +- [Security headers](https://github.com/static-web-server/static-web-server/pull/44) like STS, CSP and others for HTTP/2 by default. - Customizable number of worker threads (via `--threads-multiplier` option). -- [Redesigned directory listing](https://github.com/joseluisq/static-web-server/pull/41) (via `--directory-listing` option). +- [Redesigned directory listing](https://github.com/static-web-server/static-web-server/pull/41) (via `--directory-listing` option). - Cache control header is now optional (via `--cache-control-headers`). - Ability to accept a socket listener as a file descriptor for use in sandboxing and on-demand applications (E.g [systemd](http://0pointer.de/blog/projects/socket-activation.html)). Via `--fd` option. Thanks to [@tim-seoss](https://github.com/tim-seoss). - Binaries for various i686/x86_64 targets (Linux/Windows/FreeBSD) and ARM/ARM64 (Linux/Macos M1) @@ -409,22 +409,22 @@ Changes after the latest `v2.0.0-beta.7` release: __Performance__ -- [157ade1](https://github.com/joseluisq/static-web-server/commit/157ade1) Decrease few allocations during 404/50x error page responses. -- [941572c](https://github.com/joseluisq/static-web-server/commit/941572c) Reduce few allocations on control headers checking. +- [157ade1](https://github.com/static-web-server/static-web-server/commit/157ade1) Decrease few allocations during 404/50x error page responses. +- [941572c](https://github.com/static-web-server/static-web-server/commit/941572c) Reduce few allocations on control headers checking. __Features__ -- [012b626](https://github.com/joseluisq/static-web-server/commit/012b626) Cache control headers optional via `--cache-control-headers`. +- [012b626](https://github.com/static-web-server/static-web-server/commit/012b626) Cache control headers optional via `--cache-control-headers`. __Refactorings__ -- [5aa587f](https://github.com/joseluisq/static-web-server/commit/5aa587f) Minor syntax improvements on static file module. -- [45988db](https://github.com/joseluisq/static-web-server/commit/45988db) Minor style updates on server module. +- [5aa587f](https://github.com/static-web-server/static-web-server/commit/5aa587f) Minor syntax improvements on static file module. +- [45988db](https://github.com/static-web-server/static-web-server/commit/45988db) Minor style updates on server module. __Docs__ -- [5bcc629](https://github.com/joseluisq/static-web-server/commit/5bcc629) FreeBSD targets description. -- [dffdf5c](https://github.com/joseluisq/static-web-server/commit/dffdf5c) Changelog support. +- [5bcc629](https://github.com/static-web-server/static-web-server/commit/5bcc629) FreeBSD targets description. +- [dffdf5c](https://github.com/static-web-server/static-web-server/commit/dffdf5c) Changelog support. ## v2.0.0-beta.7 - 2021-07-09 @@ -432,11 +432,11 @@ Seventh and last beta release `v2.0.0-beta.7` with notable changes. __Updates__ -- [9e90b38](https://github.com/joseluisq/static-web-server/commit/9e90b38) Hyper 0.14.10 dependency update which fixes two [security issues](https://github.com/hyperium/hyper/releases/tag/v0.14.10). +- [9e90b38](https://github.com/static-web-server/static-web-server/commit/9e90b38) Hyper 0.14.10 dependency update which fixes two [security issues](https://github.com/hyperium/hyper/releases/tag/v0.14.10). __Features__ -- [432b591](https://github.com/joseluisq/static-web-server/commit/432b591) FreeBSD i686 and x86_64 targets support. +- [432b591](https://github.com/static-web-server/static-web-server/commit/432b591) FreeBSD i686 and x86_64 targets support. - i686-unknown-freebsd - x86_64-unknown-freebsd @@ -444,11 +444,11 @@ Find the binaries for new targets attached to this release. __Performance__ -- [70a76ed](https://github.com/joseluisq/static-web-server/commit/70a76ed) Optimize root path of static file module which increases performance and reduces memory usage. +- [70a76ed](https://github.com/static-web-server/static-web-server/commit/70a76ed) Optimize root path of static file module which increases performance and reduces memory usage. __Codebase__ -- [2aa130d](https://github.com/joseluisq/static-web-server/commit/2aa130d) Move source `./public` to `./docker` dir. +- [2aa130d](https://github.com/static-web-server/static-web-server/commit/2aa130d) Move source `./public` to `./docker` dir. ## v2.0.0-beta.6 - 2021-07-07 @@ -456,21 +456,21 @@ Sixth beta release `v2.0.0-beta.6` with notable changes. __Updates__ -- [33040d0](https://github.com/joseluisq/static-web-server/commit/33040d0) Update dependencies including latest Tokio and related crates (also [a4ef322](https://github.com/joseluisq/static-web-server/commit/a4ef322), [26b3fbc](https://github.com/joseluisq/static-web-server/commit/26b3fbc), [e07c333](https://github.com/joseluisq/static-web-server/commit/e07c333)). +- [33040d0](https://github.com/static-web-server/static-web-server/commit/33040d0) Update dependencies including latest Tokio and related crates (also [a4ef322](https://github.com/static-web-server/static-web-server/commit/a4ef322), [26b3fbc](https://github.com/static-web-server/static-web-server/commit/26b3fbc), [e07c333](https://github.com/static-web-server/static-web-server/commit/e07c333)). __Fixes__ -- [a1b7836](https://github.com/joseluisq/static-web-server/commit/a1b7836) Missing `Content-Type` header for directory listing index and error pages. +- [a1b7836](https://github.com/static-web-server/static-web-server/commit/a1b7836) Missing `Content-Type` header for directory listing index and error pages. __Features__ -- [e2bf778](https://github.com/joseluisq/static-web-server/commit/e2bf778) Windows 64-bit target support. It also improves Ctrl+C signal handling cross-platform. Note Windows ARM64 is in stand by temporarily, see README file for more details. -- [0fa5015](https://github.com/joseluisq/static-web-server/commit/0fa5015) Windows/Linux i686 targets support and one Windows x86_64 +- [e2bf778](https://github.com/static-web-server/static-web-server/commit/e2bf778) Windows 64-bit target support. It also improves Ctrl+C signal handling cross-platform. Note Windows ARM64 is in stand by temporarily, see README file for more details. +- [0fa5015](https://github.com/static-web-server/static-web-server/commit/0fa5015) Windows/Linux i686 targets support and one Windows x86_64 - i686-pc-windows-msvc - i686-unknown-linux-gnu - i686-unknown-linux-musl - x86_64-pc-windows-gnu -- [59cf8bc](https://github.com/joseluisq/static-web-server/commit/59cf8bc) More text-based mime types for compression. +- [59cf8bc](https://github.com/static-web-server/static-web-server/commit/59cf8bc) More text-based mime types for compression. - text/csv - text/calendar - text/markdown @@ -483,14 +483,14 @@ Find the binaries for new targets attached to this release and all targets suppo __Refactorings__ -- [2a699e4](https://github.com/joseluisq/static-web-server/commit/2a699e4) Follow symlinks during directory listing, displaying the index page properly for symlinks that points to directories or files. -- [b4f1bcc](https://github.com/joseluisq/static-web-server/commit/b4f1bcc) Prefer stabilized `Poll::map_err` on compression stream. -- [55ffd06](https://github.com/joseluisq/static-web-server/commit/55ffd06) Handle potential panic for 404/50x error page responses. -- [920acb2](https://github.com/joseluisq/static-web-server/commit/920acb2) Prefer `to_owned()` for string literals over `to_string()` in some cases. -- [c0dca6e](https://github.com/joseluisq/static-web-server/commit/c0dca6e) Improve directory path scanning when directory listing. -- [0ed6287](https://github.com/joseluisq/static-web-server/commit/0ed6287) Auto compression error result logging. -- [87b8744](https://github.com/joseluisq/static-web-server/commit/87b8744) Minor server config info updates. -- [b025536](https://github.com/joseluisq/static-web-server/commit/b025536) Minor code styling and docs changes. +- [2a699e4](https://github.com/static-web-server/static-web-server/commit/2a699e4) Follow symlinks during directory listing, displaying the index page properly for symlinks that points to directories or files. +- [b4f1bcc](https://github.com/static-web-server/static-web-server/commit/b4f1bcc) Prefer stabilized `Poll::map_err` on compression stream. +- [55ffd06](https://github.com/static-web-server/static-web-server/commit/55ffd06) Handle potential panic for 404/50x error page responses. +- [920acb2](https://github.com/static-web-server/static-web-server/commit/920acb2) Prefer `to_owned()` for string literals over `to_string()` in some cases. +- [c0dca6e](https://github.com/static-web-server/static-web-server/commit/c0dca6e) Improve directory path scanning when directory listing. +- [0ed6287](https://github.com/static-web-server/static-web-server/commit/0ed6287) Auto compression error result logging. +- [87b8744](https://github.com/static-web-server/static-web-server/commit/87b8744) Minor server config info updates. +- [b025536](https://github.com/static-web-server/static-web-server/commit/b025536) Minor code styling and docs changes. __Release notes__ @@ -502,12 +502,12 @@ Fifth beta release `v2.0.0-beta.5` with notable changes. __Updates__ -- [5343a22](https://github.com/joseluisq/static-web-server/commit/5343a22) Update dependencies including latest Hyper, Tokio and related crates. (also [bcb8493](https://github.com/joseluisq/static-web-server/commit/bcb8493), [e51f969](https://github.com/joseluisq/static-web-server/commit/e51f969), [e51f969](https://github.com/joseluisq/static-web-server/commit/e51f969)) +- [5343a22](https://github.com/static-web-server/static-web-server/commit/5343a22) Update dependencies including latest Hyper, Tokio and related crates. (also [bcb8493](https://github.com/static-web-server/static-web-server/commit/bcb8493), [e51f969](https://github.com/static-web-server/static-web-server/commit/e51f969), [e51f969](https://github.com/static-web-server/static-web-server/commit/e51f969)) __Features__ -- [c96af53](https://github.com/joseluisq/static-web-server/commit/c96af53) Security headers for HTTP/2 by default (`--security-headers`). PR [#44](https://github.com/joseluisq/static-web-server/pull/44) resolves [#39](https://github.com/joseluisq/static-web-server/issues/39) -- [3c95d1a](https://github.com/joseluisq/static-web-server/commit/3c95d1a) Support five more targets. (also [e6faff8](https://github.com/joseluisq/static-web-server/commit/e6faff8)) +- [c96af53](https://github.com/static-web-server/static-web-server/commit/c96af53) Security headers for HTTP/2 by default (`--security-headers`). PR [#44](https://github.com/static-web-server/static-web-server/pull/44) resolves [#39](https://github.com/static-web-server/static-web-server/issues/39) +- [3c95d1a](https://github.com/static-web-server/static-web-server/commit/3c95d1a) Support five more targets. (also [e6faff8](https://github.com/static-web-server/static-web-server/commit/e6faff8)) - `x86_64-unknown-linux-gnu` - `aarch64-apple-darwin` - `aarch64-unknown-linux-gnu` @@ -525,10 +525,10 @@ In any case, please don't hesitate to file an issue or send a PR. __Refactorings__ -- [2b2da3a](https://github.com/joseluisq/static-web-server/commit/2b2da3a) `--http2-tls-cert` and `--http2-tls-key` options now require `--http2` enabled. -- [6fe04a5](https://github.com/joseluisq/static-web-server/commit/6fe04a5) Update Docker files in order to get the new Linux binary source. -- [77d231c](https://github.com/joseluisq/static-web-server/commit/77d231c) Drop redundant reference on CORS module. -- [d5189ec](https://github.com/joseluisq/static-web-server/commit/d5189ec) Drop root arc-path on static files module. +- [2b2da3a](https://github.com/static-web-server/static-web-server/commit/2b2da3a) `--http2-tls-cert` and `--http2-tls-key` options now require `--http2` enabled. +- [6fe04a5](https://github.com/static-web-server/static-web-server/commit/6fe04a5) Update Docker files in order to get the new Linux binary source. +- [77d231c](https://github.com/static-web-server/static-web-server/commit/77d231c) Drop redundant reference on CORS module. +- [d5189ec](https://github.com/static-web-server/static-web-server/commit/d5189ec) Drop root arc-path on static files module. ## v2.0.0-beta.4 - 2021-06-02 @@ -536,29 +536,29 @@ Fourth beta release `v2.0.0-beta.4` with notable changes. __Updates__ -- [a8b9379](https://github.com/joseluisq/static-web-server/commit/a8b9379) Binaries compiled with latest Rust [1.52.1](https://blog.rust-lang.org/2021/05/10/Rust-1.52.1.html) release. -- [c3389cc](https://github.com/joseluisq/static-web-server/commit/c3389cc) Update dependencies including latest Hyper, Tokio and related crates. (also [7cbe483](https://github.com/joseluisq/static-web-server/commit/7cbe483)) +- [a8b9379](https://github.com/static-web-server/static-web-server/commit/a8b9379) Binaries compiled with latest Rust [1.52.1](https://blog.rust-lang.org/2021/05/10/Rust-1.52.1.html) release. +- [c3389cc](https://github.com/static-web-server/static-web-server/commit/c3389cc) Update dependencies including latest Hyper, Tokio and related crates. (also [7cbe483](https://github.com/static-web-server/static-web-server/commit/7cbe483)) __Features__ -- [21bdf8c](https://github.com/joseluisq/static-web-server/commit/21bdf8c) Support inheriting TCP listener from parent process via file descriptor (`-f`, `--fd`). PR [#40](https://github.com/joseluisq/static-web-server/pull/40) by [@tim-seoss](https://github.com/tim-seoss). -- [5428eb3](https://github.com/joseluisq/static-web-server/commit/5428eb3) Redefined directory listing (`-z`, `--directory-listing`). PR [#41](https://github.com/joseluisq/static-web-server/pull/41) -- [d389803](https://github.com/joseluisq/static-web-server/commit/d389803) Opt-in response body auto compression (Gzip, Deflate, Brotli) based on `Accept-Encoding` header (`-x`, `--compression`). -- [74b9eaf](https://github.com/joseluisq/static-web-server/commit/74b9eaf) Just one file associated metadata per request as possible. -- [af9a329](https://github.com/joseluisq/static-web-server/commit/af9a329) CORS support (`-c`, ` --cors-allow-origins`). -- [6ed3fe5](https://github.com/joseluisq/static-web-server/commit/6ed3fe5) Unix-like termination signals handling. +- [21bdf8c](https://github.com/static-web-server/static-web-server/commit/21bdf8c) Support inheriting TCP listener from parent process via file descriptor (`-f`, `--fd`). PR [#40](https://github.com/static-web-server/static-web-server/pull/40) by [@tim-seoss](https://github.com/tim-seoss). +- [5428eb3](https://github.com/static-web-server/static-web-server/commit/5428eb3) Redefined directory listing (`-z`, `--directory-listing`). PR [#41](https://github.com/static-web-server/static-web-server/pull/41) +- [d389803](https://github.com/static-web-server/static-web-server/commit/d389803) Opt-in response body auto compression (Gzip, Deflate, Brotli) based on `Accept-Encoding` header (`-x`, `--compression`). +- [74b9eaf](https://github.com/static-web-server/static-web-server/commit/74b9eaf) Just one file associated metadata per request as possible. +- [af9a329](https://github.com/static-web-server/static-web-server/commit/af9a329) CORS support (`-c`, ` --cors-allow-origins`). +- [6ed3fe5](https://github.com/static-web-server/static-web-server/commit/6ed3fe5) Unix-like termination signals handling. __Refactorings__ -- [a8d462a](https://github.com/joseluisq/static-web-server/commit/a8d462a) Drop `Warp` in favor of just `Hyper` + `Tokio`. PR [#38](https://github.com/joseluisq/static-web-server/pull/38) -- [04ec1b1](https://github.com/joseluisq/static-web-server/commit/04ec1b1) One worker thread per available core by default (`-n`, `--threads-multiplier`). -- [991d4b8](https://github.com/joseluisq/static-web-server/commit/991d4b8) Introduce a custom Hyper service implementation for the HTTP1 & HTTP2 web servers. -- [58ff9b7](https://github.com/joseluisq/static-web-server/commit/58ff9b7) Reject non `HEAD` or `GET` requests on static assets and error page handlers. -- [5cede7e](https://github.com/joseluisq/static-web-server/commit/5cede7e) Log info for compression and directory listing features. +- [a8d462a](https://github.com/static-web-server/static-web-server/commit/a8d462a) Drop `Warp` in favor of just `Hyper` + `Tokio`. PR [#38](https://github.com/static-web-server/static-web-server/pull/38) +- [04ec1b1](https://github.com/static-web-server/static-web-server/commit/04ec1b1) One worker thread per available core by default (`-n`, `--threads-multiplier`). +- [991d4b8](https://github.com/static-web-server/static-web-server/commit/991d4b8) Introduce a custom Hyper service implementation for the HTTP1 & HTTP2 web servers. +- [58ff9b7](https://github.com/static-web-server/static-web-server/commit/58ff9b7) Reject non `HEAD` or `GET` requests on static assets and error page handlers. +- [5cede7e](https://github.com/static-web-server/static-web-server/commit/5cede7e) Log info for compression and directory listing features. __Docs__ -All feature flags as well as their equivalent environment variables are described on the updated [README](https://github.com/joseluisq/static-web-server#usage) file. +All feature flags as well as their equivalent environment variables are described on the updated [README](https://github.com/static-web-server/static-web-server#usage) file. ## v2.0.0-beta.3 - 2021-04-20 @@ -566,25 +566,25 @@ Third beta release `v2.0.0-beta.3` with notable changes. __Updates__ -- [7f29c90](https://github.com/joseluisq/static-web-server/commit/7f29c90) Binaries compiled with latest Rust [1.51.0](https://blog.rust-lang.org/2021/03/25/Rust-1.51.0.html) release. -- [97d75e0](https://github.com/joseluisq/static-web-server/commit/97d75e0) [Alpine 3.13](https://alpinelinux.org/posts/Alpine-3.13.0-released.html) Docker image. -- [97d75e0](https://github.com/joseluisq/static-web-server/commit/97d75e0) Update dependencies including latest **Tokio** `v1`, **Warp** `v0.3` (with **Hyper** `v0.14`) and related crates (also [e9384e9](https://github.com/joseluisq/static-web-server/commit/e9384e9), [5d4421d](https://github.com/joseluisq/static-web-server/commit/5d4421d)) +- [7f29c90](https://github.com/static-web-server/static-web-server/commit/7f29c90) Binaries compiled with latest Rust [1.51.0](https://blog.rust-lang.org/2021/03/25/Rust-1.51.0.html) release. +- [97d75e0](https://github.com/static-web-server/static-web-server/commit/97d75e0) [Alpine 3.13](https://alpinelinux.org/posts/Alpine-3.13.0-released.html) Docker image. +- [97d75e0](https://github.com/static-web-server/static-web-server/commit/97d75e0) Update dependencies including latest **Tokio** `v1`, **Warp** `v0.3` (with **Hyper** `v0.14`) and related crates (also [e9384e9](https://github.com/static-web-server/static-web-server/commit/e9384e9), [5d4421d](https://github.com/static-web-server/static-web-server/commit/5d4421d)) __Refactorings__ -- [5d8b266](https://github.com/joseluisq/static-web-server/commit/5d8b266) Static server configuration and static default error pages content. -- [e853410](https://github.com/joseluisq/static-web-server/commit/e853410) Drop support for Deflate compression. -- [bbb5a8f](https://github.com/joseluisq/static-web-server/commit/bbb5a8f) Improve log information on server runtime setup. -- [c05471f](https://github.com/joseluisq/static-web-server/commit/c05471f) Tokio server tasks simplifications. -- [7ea40a7](https://github.com/joseluisq/static-web-server/commit/7ea40a7) Minor CLI typos. +- [5d8b266](https://github.com/static-web-server/static-web-server/commit/5d8b266) Static server configuration and static default error pages content. +- [e853410](https://github.com/static-web-server/static-web-server/commit/e853410) Drop support for Deflate compression. +- [bbb5a8f](https://github.com/static-web-server/static-web-server/commit/bbb5a8f) Improve log information on server runtime setup. +- [c05471f](https://github.com/static-web-server/static-web-server/commit/c05471f) Tokio server tasks simplifications. +- [7ea40a7](https://github.com/static-web-server/static-web-server/commit/7ea40a7) Minor CLI typos. __Fixes__ -- [99b8b7e](https://github.com/joseluisq/static-web-server/commit/99b8b7e) Linking error for `ring` crate during Darwin build. +- [99b8b7e](https://github.com/static-web-server/static-web-server/commit/99b8b7e) Linking error for `ring` crate during Darwin build. __Docs__ -- [3c36c9b](https://github.com/joseluisq/static-web-server/commit/3c36c9b) Minor README description improvements. +- [3c36c9b](https://github.com/static-web-server/static-web-server/commit/3c36c9b) Minor README description improvements. ## v2.0.0-beta.2 - 2021-01-30 @@ -592,39 +592,39 @@ Second beta release `v2.0.0-beta.2` with notable changes. __Updates__ -- [9867d71](https://github.com/joseluisq/static-web-server/commit/9867d71) Update dependencies including latest **Tokio** `v1`, **Warp** `v0.3` (with **Hyper** `v0.14`) and related crates. (also [a4421c6](https://github.com/joseluisq/static-web-server/commit/a4421c6), [960a681](https://github.com/joseluisq/static-web-server/commit/960a681), [960a681](https://github.com/joseluisq/static-web-server/commit/960a681)) +- [9867d71](https://github.com/static-web-server/static-web-server/commit/9867d71) Update dependencies including latest **Tokio** `v1`, **Warp** `v0.3` (with **Hyper** `v0.14`) and related crates. (also [a4421c6](https://github.com/static-web-server/static-web-server/commit/a4421c6), [960a681](https://github.com/static-web-server/static-web-server/commit/960a681), [960a681](https://github.com/static-web-server/static-web-server/commit/960a681)) __Features__ -- [3007e74](https://github.com/joseluisq/static-web-server/commit/3007e74) **Project sponsor support.** Consider to support the project via [github.com/sponsors/joseluisq](https://github.com/sponsors/joseluisq) or [paypal.me/joseluisqs](https://paypal.me/joseluisqs). -- [360ae99](https://github.com/joseluisq/static-web-server/commit/360ae99) Worker threads multiplier option `--threads-multiplier` which provides the ability to customize number of worker threads. -- [ed0d6ac](https://github.com/joseluisq/static-web-server/commit/ed0d6ac) Custom error pages support. -- [4667b10](https://github.com/joseluisq/static-web-server/commit/4667b10) HTTP/2 + TLS support. -- [8c4ce94](https://github.com/joseluisq/static-web-server/commit/8c4ce94) CORS support. +- [3007e74](https://github.com/static-web-server/static-web-server/commit/3007e74) **Project sponsor support.** Consider to support the project via [github.com/sponsors/joseluisq](https://github.com/sponsors/joseluisq) or [paypal.me/joseluisqs](https://paypal.me/joseluisqs). +- [360ae99](https://github.com/static-web-server/static-web-server/commit/360ae99) Worker threads multiplier option `--threads-multiplier` which provides the ability to customize number of worker threads. +- [ed0d6ac](https://github.com/static-web-server/static-web-server/commit/ed0d6ac) Custom error pages support. +- [4667b10](https://github.com/static-web-server/static-web-server/commit/4667b10) HTTP/2 + TLS support. +- [8c4ce94](https://github.com/static-web-server/static-web-server/commit/8c4ce94) CORS support. -More details about features on [README](https://github.com/joseluisq/static-web-server/) file. +More details about features on [README](https://github.com/static-web-server/static-web-server/) file. __Refactorings__ -- [6d3e2d1](https://github.com/joseluisq/static-web-server/commit/6d3e2d1) Remove redundant `'static` lifetime on constants. -- [866c7cd](https://github.com/joseluisq/static-web-server/commit/866c7cd) Remove Tokio `macros` feature. -- [f7f2bf6](https://github.com/joseluisq/static-web-server/commit/f7f2bf6) Some improvement suggestions by `Clippy`. -- [bff49a0](https://github.com/joseluisq/static-web-server/commit/bff49a0) Few improvement on filter and helper modules. +- [6d3e2d1](https://github.com/static-web-server/static-web-server/commit/6d3e2d1) Remove redundant `'static` lifetime on constants. +- [866c7cd](https://github.com/static-web-server/static-web-server/commit/866c7cd) Remove Tokio `macros` feature. +- [f7f2bf6](https://github.com/static-web-server/static-web-server/commit/f7f2bf6) Some improvement suggestions by `Clippy`. +- [bff49a0](https://github.com/static-web-server/static-web-server/commit/bff49a0) Few improvement on filter and helper modules. __Codebase__ -- [7265f6b](https://github.com/joseluisq/static-web-server/commit/7265f6b) Github Actions as new CI. -- [c63b549](https://github.com/joseluisq/static-web-server/commit/c63b549) Remove Travis CI. -- [65250c0](https://github.com/joseluisq/static-web-server/commit/65250c0) Minor simplications on server module. -- [b94fe72](https://github.com/joseluisq/static-web-server/commit/b94fe72) Update core modules structure. -- [da5bdc3](https://github.com/joseluisq/static-web-server/commit/da5bdc3) Re-export few core lib modules. -- [57c27f4](https://github.com/joseluisq/static-web-server/commit/57c27f4) Deny(warnings) on lib -- [a3744d4](https://github.com/joseluisq/static-web-server/commit/a3744d4) Simplify conditionals on rejection filter. +- [7265f6b](https://github.com/static-web-server/static-web-server/commit/7265f6b) Github Actions as new CI. +- [c63b549](https://github.com/static-web-server/static-web-server/commit/c63b549) Remove Travis CI. +- [65250c0](https://github.com/static-web-server/static-web-server/commit/65250c0) Minor simplications on server module. +- [b94fe72](https://github.com/static-web-server/static-web-server/commit/b94fe72) Update core modules structure. +- [da5bdc3](https://github.com/static-web-server/static-web-server/commit/da5bdc3) Re-export few core lib modules. +- [57c27f4](https://github.com/static-web-server/static-web-server/commit/57c27f4) Deny(warnings) on lib +- [a3744d4](https://github.com/static-web-server/static-web-server/commit/a3744d4) Simplify conditionals on rejection filter. __Docs__ -- [933a3c4](https://github.com/joseluisq/static-web-server/commit/933a3c4) Feature documentations updates (also [0ef21c4](https://github.com/joseluisq/static-web-server/commit/0ef21c4)) -- [78033d0](https://github.com/joseluisq/static-web-server/commit/78033d0) CLI arguments and environment variables descriptions. +- [933a3c4](https://github.com/static-web-server/static-web-server/commit/933a3c4) Feature documentations updates (also [0ef21c4](https://github.com/static-web-server/static-web-server/commit/0ef21c4)) +- [78033d0](https://github.com/static-web-server/static-web-server/commit/78033d0) CLI arguments and environment variables descriptions. ## v2.0.0-beta.1 - 2021-01-12 @@ -633,7 +633,7 @@ First major beta release `v2.0.0-beta.1` with notable changes. #### Built-in features It uses **Tokio** `v0.2` and **Warp** `v0.2` (**Hyper** `v0.13`). -PR [#28](https://github.com/joseluisq/static-web-server/pull/28) +PR [#28](https://github.com/static-web-server/static-web-server/pull/28) - Environment variables and CLI arguments setup - Lightweight and configurable logging @@ -650,8 +650,8 @@ PR [#28](https://github.com/joseluisq/static-web-server/pull/28) #### Bugfixes -- Resolves [#24](https://github.com/joseluisq/static-web-server/issues/24) - Error on 8GB file +- Resolves [#24](https://github.com/static-web-server/static-web-server/issues/24) - Error on 8GB file #### Additional features -- Resolves [#17](https://github.com/joseluisq/static-web-server/issues/17) - Make assets directory path optional. Since this major release doesn't include an assets dir just a root. +- Resolves [#17](https://github.com/static-web-server/static-web-server/issues/17) - Make assets directory path optional. Since this major release doesn't include an assets dir just a root. diff --git a/Cargo.toml b/Cargo.toml index 92344cf..a539f9e 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -3,8 +3,8 @@ name = "static-web-server" version = "2.13.1" authors = ["Jose Quintana "] license = "MIT OR Apache-2.0" -description = "A blazing fast and asynchronous web server for static files-serving." -repository = "https://github.com/joseluisq/static-web-server" +description = "A cross-platform, blazing fast and asynchronous web server for static files-serving." +repository = "https://github.com/static-web-server/static-web-server" readme = "README.md" keywords = [ "static-web-server", diff --git a/README.md b/README.md index 7970799..afdb52c 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,7 @@
- + @@ -37,7 +37,7 @@ It's cross-platform and available for `Linux`, `macOS`, `Windows` and `FreeBSD` - Built with [Rust](https://rust-lang.org) which is focused on [safety, speed and concurrency](https://kornel.ski/rust-c-speed). - Memory safe and very reduced CPU and RAM overhead. -- Blazing fast static files-serving and asynchronous powered by latest [Hyper](https://github.com/hyperium/hyper/), [Tokio](https://github.com/tokio-rs/tokio) and a set of [awesome crates](https://github.com/joseluisq/static-web-server/blob/master/Cargo.toml). +- Blazing fast static files-serving and asynchronous powered by latest [Hyper](https://github.com/hyperium/hyper/), [Tokio](https://github.com/tokio-rs/tokio) and a set of [awesome crates](https://github.com/static-web-server/static-web-server/blob/master/Cargo.toml). - Single __4MB__ (uncompressed) and fully static binary with no dependencies ([Musl libc](https://doc.rust-lang.org/edition-guide/rust-2018/platform-and-target-support/musl-support-for-fully-static-binaries.html)). Suitable for running on [any Linux distro](https://en.wikipedia.org/wiki/Linux_distribution) or [Docker container](https://hub.docker.com/r/joseluisq/static-web-server/tags). - Optional GZip, Deflate or Brotli compression for text-based web files only. - Compression on-demand via [Accept-Encoding](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Accept-Encoding) header. @@ -71,7 +71,7 @@ For more details about the API, usage and examples please have a look at [The Do ## Releases - [Docker Images](https://hub.docker.com/r/joseluisq/static-web-server/) -- [Release Binaries](https://github.com/joseluisq/static-web-server/releases) +- [Release Binaries](https://github.com/static-web-server/static-web-server/releases) - [Platforms/Architectures Supported](https://sws.joseluisq.net/platforms-architectures/) ## Benchmarks @@ -82,14 +82,14 @@ See more details on [benchmark/BENCHMARKS.md](benchmark/BENCHMARKS.md) ## Notes -- If you're looking for `v1` please go to [1.x](https://github.com/joseluisq/static-web-server/tree/1.x) branch. +- If you're looking for `v1` please go to [1.x](https://github.com/static-web-server/static-web-server/tree/1.x) branch. - If you want to migrate from `v1` to `v2` please take a look at [Migrating from `v1` to `v2`](https://sws.joseluisq.net/migration/) release. ## Contributions Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in current work by you, as defined in the Apache-2.0 license, shall be dual licensed as described below, without any additional terms or conditions. -Feel free to send some [Pull request](https://github.com/joseluisq/static-web-server/pulls) or file an [issue](https://github.com/joseluisq/static-web-server/issues). +Feel free to send some [Pull request](https://github.com/static-web-server/static-web-server/pulls) or file an [issue](https://github.com/static-web-server/static-web-server/issues). ## License diff --git a/ci/get_latest_release.sh b/ci/get_latest_release.sh index 3633763..022605b 100755 --- a/ci/get_latest_release.sh +++ b/ci/get_latest_release.sh @@ -7,7 +7,7 @@ echo "Getting latest release number..." curl \ -H "Accept: application/vnd.github+json" \ -H "Authorization: token $GITHUB_TOKEN" \ - "https://api.github.com/repos/joseluisq/static-web-server/releases?per_page=5&page=1" | \ + "https://api.github.com/repos/static-web-server/static-web-server/releases?per_page=5&page=1" | \ jq -c "[ .[] | select( .tag_name | contains(\"v2.\")) ] | .[0]" | \ jq -r ".tag_name" > /tmp/version diff --git a/docker/alpine/Dockerfile b/docker/alpine/Dockerfile index 24b8933..6bc24ad 100644 --- a/docker/alpine/Dockerfile +++ b/docker/alpine/Dockerfile @@ -14,7 +14,7 @@ RUN set -ex; \ "linux/arm/v6") target='arm-unknown-linux-musleabihf' ;; \ *) echo >&2 "error: unsupported $TARGETPLATFORM architecture"; exit 1 ;; \ esac; \ - wget --quiet -O /tmp/static-web-server.tar.gz "https://github.com/joseluisq/static-web-server/releases/download/v${SERVER_VERSION}/static-web-server-v${SERVER_VERSION}-${target}.tar.gz"; \ + wget --quiet -O /tmp/static-web-server.tar.gz "https://github.com/static-web-server/static-web-server/releases/download/v${SERVER_VERSION}/static-web-server-v${SERVER_VERSION}-${target}.tar.gz"; \ tar xzvf /tmp/static-web-server.tar.gz; \ cp static-web-server-v${SERVER_VERSION}-${target}/static-web-server /usr/local/bin/; \ rm -rf /tmp/static-web-server.tar.gz static-web-server-v${SERVER_VERSION}-${target}; \ @@ -26,7 +26,7 @@ ARG SERVER_VERSION=0.0.0 ENV SERVER_VERSION=${SERVER_VERSION} LABEL version="${SERVER_VERSION}" \ - description="A blazing fast and asynchronous web server for static files-serving." \ + description="A cross-platform, blazing fast and asynchronous web server for static files-serving." \ maintainer="Jose Quintana " RUN apk --no-cache add ca-certificates tzdata @@ -45,8 +45,8 @@ CMD ["static-web-server"] # Metadata LABEL org.opencontainers.image.vendor="Jose Quintana" \ - org.opencontainers.image.url="https://github.com/joseluisq/static-web-server" \ + org.opencontainers.image.url="https://github.com/static-web-server/static-web-server" \ org.opencontainers.image.title="Static Web Server" \ - org.opencontainers.image.description="A blazing fast and asynchronous web server for static files-serving." \ + org.opencontainers.image.description="A cross-platform, blazing fast and asynchronous web server for static files-serving." \ org.opencontainers.image.version="${SERVER_VERSION}" \ - org.opencontainers.image.documentation="https://github.com/joseluisq/static-web-server" + org.opencontainers.image.documentation="https://github.com/static-web-server/static-web-server" diff --git a/docker/devel/Dockerfile.alpine b/docker/devel/Dockerfile.alpine index 4861e1a..a729173 100644 --- a/docker/devel/Dockerfile.alpine +++ b/docker/devel/Dockerfile.alpine @@ -3,7 +3,7 @@ FROM alpine:3.16 ENV SERVER_VERSION=devel LABEL version="${SERVER_VERSION}" \ - description="A blazing fast and asynchronous web server for static files-serving." \ + description="A cross-platform, blazing fast and asynchronous web server for static files-serving." \ maintainer="Jose Quintana " RUN apk --no-cache add ca-certificates tzdata @@ -22,8 +22,8 @@ CMD ["static-web-server"] # Metadata LABEL org.opencontainers.image.vendor="Jose Quintana" \ - org.opencontainers.image.url="https://github.com/joseluisq/static-web-server" \ + org.opencontainers.image.url="https://github.com/static-web-server/static-web-server" \ org.opencontainers.image.title="Static Web Server" \ - org.opencontainers.image.description="A blazing fast and asynchronous web server for static files-serving." \ + org.opencontainers.image.description="A cross-platform, blazing fast and asynchronous web server for static files-serving." \ org.opencontainers.image.version="${SERVER_VERSION}" \ - org.opencontainers.image.documentation="https://github.com/joseluisq/static-web-server" + org.opencontainers.image.documentation="https://github.com/static-web-server/static-web-server" diff --git a/docker/devel/Dockerfile.scratch b/docker/devel/Dockerfile.scratch index 6345acb..8be9fcc 100644 --- a/docker/devel/Dockerfile.scratch +++ b/docker/devel/Dockerfile.scratch @@ -3,7 +3,7 @@ FROM scratch ENV SERVER_VERSION=devel LABEL version="${SERVER_VERSION}" \ - description="A blazing fast and asynchronous web server for static files-serving." \ + description="A cross-platform, blazing fast and asynchronous web server for static files-serving." \ maintainer="Jose Quintana " COPY ./docker/devel/static-web-server / @@ -18,8 +18,8 @@ ENTRYPOINT ["/static-web-server"] # Metadata LABEL org.opencontainers.image.vendor="Jose Quintana" \ - org.opencontainers.image.url="https://github.com/joseluisq/static-web-server" \ + org.opencontainers.image.url="https://github.com/static-web-server/static-web-server" \ org.opencontainers.image.title="Static Web Server" \ - org.opencontainers.image.description="A blazing fast and asynchronous web server for static files-serving." \ + org.opencontainers.image.description="A cross-platform, blazing fast and asynchronous web server for static files-serving." \ org.opencontainers.image.version="${SERVER_VERSION}" \ - org.opencontainers.image.documentation="https://github.com/joseluisq/static-web-server" + org.opencontainers.image.documentation="https://github.com/static-web-server/static-web-server" diff --git a/docker/public/assets/index.html b/docker/public/assets/index.html index a546342..da88fe4 100644 --- a/docker/public/assets/index.html +++ b/docker/public/assets/index.html @@ -10,8 +10,8 @@

Assets Page

-

A blazing fast and asynchronous web server for static files-serving. ⚡

-

View on GitHub

+

A cross-platform, blazing fast and asynchronous web server for static files-serving. ⚡

+

View on GitHub

diff --git a/docker/public/index.html b/docker/public/index.html index ee0e862..3c23779 100644 --- a/docker/public/index.html +++ b/docker/public/index.html @@ -8,8 +8,8 @@

Static Web Server

-

A blazing fast and asynchronous web server for static files-serving. ⚡

-

View on GitHub

+

A cross-platform, blazing fast and asynchronous web server for static files-serving. ⚡

+

View on GitHub

diff --git a/docker/scratch/Dockerfile b/docker/scratch/Dockerfile index 568ad58..902b31b 100644 --- a/docker/scratch/Dockerfile +++ b/docker/scratch/Dockerfile @@ -8,7 +8,7 @@ ARG SERVER_VERSION=0.0.0 ENV SERVER_VERSION=${SERVER_VERSION} LABEL version="${SERVER_VERSION}" \ - description="A blazing fast and asynchronous web server for static files-serving." \ + description="A cross-platform, blazing fast and asynchronous web server for static files-serving." \ maintainer="Jose Quintana " COPY --from=build /usr/local/bin/static-web-server / @@ -22,8 +22,8 @@ ENTRYPOINT ["/static-web-server"] # Metadata LABEL org.opencontainers.image.vendor="Jose Quintana" \ - org.opencontainers.image.url="https://github.com/joseluisq/static-web-server" \ + org.opencontainers.image.url="https://github.com/static-web-server/static-web-server" \ org.opencontainers.image.title="Static Web Server" \ - org.opencontainers.image.description="A blazing fast and asynchronous web server for static files-serving." \ + org.opencontainers.image.description="A cross-platform, blazing fast and asynchronous web server for static files-serving." \ org.opencontainers.image.version="${SERVER_VERSION}" \ - org.opencontainers.image.documentation="https://github.com/joseluisq/static-web-server" + org.opencontainers.image.documentation="https://github.com/static-web-server/static-web-server" diff --git a/docs/content/building-from-source.md b/docs/content/building-from-source.md index 2ba6a5a..b697566 100644 --- a/docs/content/building-from-source.md +++ b/docs/content/building-from-source.md @@ -11,7 +11,7 @@ So make sure to install Rust [1.59.0](https://blog.rust-lang.org/2022/02/24/Rust Then clone the repository and use [Cargo](https://doc.rust-lang.org/cargo/) to build the project from the source. ```sh -git clone https://github.com/joseluisq/static-web-server.git +git clone https://github.com/static-web-server/static-web-server.git cd static-web-server cargo build --release ``` @@ -32,7 +32,7 @@ It's only necessary to have [Docker](https://www.docker.com/get-started/) instal By default the docs will be built in the `/tmp/docs` directory, to do so follow these steps. ```sh -git clone https://github.com/joseluisq/static-web-server.git +git clone https://github.com/static-web-server/static-web-server.git cd static-web-server mkdir /tmp/docs docker run -it --rm \ @@ -48,7 +48,7 @@ docker run -it --rm \ If you want to improve the documentation then run the built-in development server via `docs/docker-compose.yml`. ```sh -git clone https://github.com/joseluisq/static-web-server.git +git clone https://github.com/static-web-server/static-web-server.git cd static-web-server docker-compose -f docs/docker-compose.yml up ``` diff --git a/docs/content/configuration/command-line-arguments.md b/docs/content/configuration/command-line-arguments.md index 1ee5af6..e664248 100644 --- a/docs/content/configuration/command-line-arguments.md +++ b/docs/content/configuration/command-line-arguments.md @@ -12,7 +12,7 @@ $ static-web-server -h static-web-server 2.13.1 Jose Quintana -A blazing fast and asynchronous web server for static files-serving. +A cross-platform, blazing fast and asynchronous web server for static files-serving. USAGE: static-web-server [OPTIONS] diff --git a/docs/content/configuration/environment-variables.md b/docs/content/configuration/environment-variables.md index 1fd2baa..f243479 100644 --- a/docs/content/configuration/environment-variables.md +++ b/docs/content/configuration/environment-variables.md @@ -61,7 +61,7 @@ Specify an optional CORS list of allowed HTTP headers separated by commas. It re Specify an optional CORS list of exposed HTTP headers separated by commas. It requires `SERVER_CORS_ALLOW_ORIGINS` to be used along with. Default `origin, content-type`. ### SERVER_COMPRESSION -`Gzip`, `Deflate` or `Brotli` compression on demand determined by the `Accept-Encoding` header and applied to text-based web file types only. See [ad-hoc mime-type list](https://github.com/joseluisq/static-web-server/blob/master/src/compression.rs#L20). Default `true` (enabled). +`Gzip`, `Deflate` or `Brotli` compression on demand determined by the `Accept-Encoding` header and applied to text-based web file types only. See [ad-hoc mime-type list](https://github.com/static-web-server/static-web-server/blob/master/src/compression.rs#L20). Default `true` (enabled). ### SERVER_COMPRESSION_STATIC Look up the pre-compressed file variant (`.gz` or `.br`) on disk of a requested file and serves it directly if available. Default `false` (disabled). The compression type is determined by the `Accept-Encoding` header. @@ -79,7 +79,7 @@ Specify a content format for the directory listing entries. Formats supported: ` Enable security headers by default when HTTP/2 feature is activated. Headers included: `Strict-Transport-Security: max-age=63072000; includeSubDomains; preload` (2 years max-age), `X-Frame-Options: DENY`, `X-XSS-Protection: 1; mode=block` and `Content-Security-Policy: frame-ancestors 'self'`. Default `false` (disabled). ### SERVER_CACHE_CONTROL_HEADERS -Enable cache control headers for incoming requests based on a set of file types. The file type list can be found on [`src/control_headers.rs`](https://github.com/joseluisq/static-web-server/blob/master//src/control_headers.rs) file. Default `true` (enabled). +Enable cache control headers for incoming requests based on a set of file types. The file type list can be found on [`src/control_headers.rs`](https://github.com/static-web-server/static-web-server/blob/master//src/control_headers.rs) file. Default `true` (enabled). ### SERVER_BASIC_AUTH It provides [The "Basic" HTTP Authentication Scheme](https://datatracker.ietf.org/doc/html/rfc7617) using credentials as `user-id:password` pairs, encoded using `Base64`. Password must be encoded using the [BCrypt](https://en.wikipedia.org/wiki/Bcrypt) password-hashing function. Default empty (disabled). diff --git a/docs/content/contributions.md b/docs/content/contributions.md index e019eb5..599c207 100644 --- a/docs/content/contributions.md +++ b/docs/content/contributions.md @@ -1,5 +1,5 @@ # Contributions -Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in current work by you, as defined in the [Apache License (Version 2.0)](https://github.com/joseluisq/static-web-server/blob/master/LICENSE-APACHE) license, shall be dual licensed as described below, without any additional terms or conditions. +Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in current work by you, as defined in the [Apache License (Version 2.0)](https://github.com/static-web-server/static-web-server/blob/master/LICENSE-APACHE) license, shall be dual licensed as described below, without any additional terms or conditions. -Feel free to send some [Pull request](https://github.com/joseluisq/static-web-server/pulls) or file an [issue](https://github.com/joseluisq/static-web-server/issues). +Feel free to send some [Pull request](https://github.com/static-web-server/static-web-server/pulls) or file an [issue](https://github.com/static-web-server/static-web-server/issues). diff --git a/docs/content/download-and-install.md b/docs/content/download-and-install.md index 48a092f..120a0fd 100644 --- a/docs/content/download-and-install.md +++ b/docs/content/download-and-install.md @@ -1,12 +1,12 @@ # Download and Install -Latest **v2.13.1** release `2022-10-17` ([changelog](https://github.com/joseluisq/static-web-server/releases/tag/v2.13.1)) +Latest **v2.13.1** release `2022-10-17` ([changelog](https://github.com/static-web-server/static-web-server/releases/tag/v2.13.1)) @@ -48,48 +48,48 @@ Pre-compiled binaries grouped by CPU architectures. ### x86_64 -- [static-web-server-v2.13.1-x86_64-apple-darwin.tar.gz](https://github.com/joseluisq/static-web-server/releases/download/v2.13.1/static-web-server-v2.13.1-x86_64-apple-darwin.tar.gz)
+- [static-web-server-v2.13.1-x86_64-apple-darwin.tar.gz](https://github.com/static-web-server/static-web-server/releases/download/v2.13.1/static-web-server-v2.13.1-x86_64-apple-darwin.tar.gz)
**SHA256SUM:** `3709aa9a09f3404452281166b2b6618fe2f37b02ed5e31a38a3ed59cd0a6467c` -- [static-web-server-v2.13.1-x86_64-pc-windows-gnu.zip](https://github.com/joseluisq/static-web-server/releases/download/v2.13.1/static-web-server-v2.13.1-x86_64-pc-windows-gnu.zip)
+- [static-web-server-v2.13.1-x86_64-pc-windows-gnu.zip](https://github.com/static-web-server/static-web-server/releases/download/v2.13.1/static-web-server-v2.13.1-x86_64-pc-windows-gnu.zip)
**SHA256SUM:** `5cd916e2506bcd8993d1f84ac2d41839370ed7d471c7eaba5853d7c4d1d2709b` -- [static-web-server-v2.13.1-x86_64-pc-windows-msvc.zip](https://github.com/joseluisq/static-web-server/releases/download/v2.13.1/static-web-server-v2.13.1-x86_64-pc-windows-msvc.zip)
+- [static-web-server-v2.13.1-x86_64-pc-windows-msvc.zip](https://github.com/static-web-server/static-web-server/releases/download/v2.13.1/static-web-server-v2.13.1-x86_64-pc-windows-msvc.zip)
**SHA256SUM:** `dc68e7c0005394141487cce757ba6d078efa0ad9a03752df24dc077d16f7dbdf` -- [static-web-server-v2.13.1-x86_64-unknown-freebsd.tar.gz](https://github.com/joseluisq/static-web-server/releases/download/v2.13.1/static-web-server-v2.13.1-x86_64-unknown-freebsd.tar.gz)
+- [static-web-server-v2.13.1-x86_64-unknown-freebsd.tar.gz](https://github.com/static-web-server/static-web-server/releases/download/v2.13.1/static-web-server-v2.13.1-x86_64-unknown-freebsd.tar.gz)
**SHA256SUM:** `cf14c5ad2feb68347a5b78900226ba2da626f53fa058c812569e6f2023c39989` -- [static-web-server-v2.13.1-x86_64-unknown-linux-gnu.tar.gz](https://github.com/joseluisq/static-web-server/releases/download/v2.13.1/static-web-server-v2.13.1-x86_64-unknown-linux-gnu.tar.gz)
+- [static-web-server-v2.13.1-x86_64-unknown-linux-gnu.tar.gz](https://github.com/static-web-server/static-web-server/releases/download/v2.13.1/static-web-server-v2.13.1-x86_64-unknown-linux-gnu.tar.gz)
**SHA256SUM:** `a337d708010866e605ea8dfc3fd8b54804c7f0ae99ab4072639962928a63ac29` -- [static-web-server-v2.13.1-x86_64-unknown-linux-musl.tar.gz](https://github.com/joseluisq/static-web-server/releases/download/v2.13.1/static-web-server-v2.13.1-x86_64-unknown-linux-musl.tar.gz)
+- [static-web-server-v2.13.1-x86_64-unknown-linux-musl.tar.gz](https://github.com/static-web-server/static-web-server/releases/download/v2.13.1/static-web-server-v2.13.1-x86_64-unknown-linux-musl.tar.gz)
**SHA256SUM:** `c5b255d5d6d869d53836dc4e4d48230116281ba5a5de0dc65a2133e2faf88017` ### ARM64 -- [static-web-server-v2.13.1-aarch64-unknown-linux-gnu.tar.gz](https://github.com/joseluisq/static-web-server/releases/download/v2.13.1/static-web-server-v2.13.1-aarch64-unknown-linux-gnu.tar.gz)
+- [static-web-server-v2.13.1-aarch64-unknown-linux-gnu.tar.gz](https://github.com/static-web-server/static-web-server/releases/download/v2.13.1/static-web-server-v2.13.1-aarch64-unknown-linux-gnu.tar.gz)
**SHA256SUM:** `1a66a44233c5a8ee3c8960d56bd7297bc3c9ef9cdfef00d1cc9282d712957043` -- [static-web-server-v2.13.1-aarch64-unknown-linux-musl.tar.gz](https://github.com/joseluisq/static-web-server/releases/download/v2.13.1/static-web-server-v2.13.1-aarch64-unknown-linux-musl.tar.gz)
+- [static-web-server-v2.13.1-aarch64-unknown-linux-musl.tar.gz](https://github.com/static-web-server/static-web-server/releases/download/v2.13.1/static-web-server-v2.13.1-aarch64-unknown-linux-musl.tar.gz)
**SHA256SUM:** `189450e4098257a17f354d04ec62274beec68517fa70c1925c49896378a899d1` -- [static-web-server-v2.13.1-aarch64-apple-darwin.tar.gz](https://github.com/joseluisq/static-web-server/releases/download/v2.13.1/static-web-server-v2.13.1-aarch64-apple-darwin.tar.gz)
+- [static-web-server-v2.13.1-aarch64-apple-darwin.tar.gz](https://github.com/static-web-server/static-web-server/releases/download/v2.13.1/static-web-server-v2.13.1-aarch64-apple-darwin.tar.gz)
**SHA256SUM:** `015579af6123cf9e41b1c90cd9d20bc3f57a4b739b2cd94ebe04be89589380cd` ### x86 -- [static-web-server-v2.13.1-i686-pc-windows-msvc.zip](https://github.com/joseluisq/static-web-server/releases/download/v2.13.1/static-web-server-v2.13.1-i686-pc-windows-msvc.zip)
+- [static-web-server-v2.13.1-i686-pc-windows-msvc.zip](https://github.com/static-web-server/static-web-server/releases/download/v2.13.1/static-web-server-v2.13.1-i686-pc-windows-msvc.zip)
**SHA256SUM:** `7e12e7b04b74d9b9534e04055b6ae9a6f606686b2b415a6413644317c50a47f3` -- [static-web-server-v2.13.1-i686-unknown-freebsd.tar.gz](https://github.com/joseluisq/static-web-server/releases/download/v2.13.1/static-web-server-v2.13.1-i686-unknown-freebsd.tar.gz)
+- [static-web-server-v2.13.1-i686-unknown-freebsd.tar.gz](https://github.com/static-web-server/static-web-server/releases/download/v2.13.1/static-web-server-v2.13.1-i686-unknown-freebsd.tar.gz)
**SHA256SUM:** `5f7c1e8fb20e0fe3d59d93fbe7fe424d2311571902db6d497c1bf73f0b66e5d7` -- [static-web-server-v2.13.1-i686-unknown-linux-gnu.tar.gz](https://github.com/joseluisq/static-web-server/releases/download/v2.13.1/static-web-server-v2.13.1-i686-unknown-linux-gnu.tar.gz)
+- [static-web-server-v2.13.1-i686-unknown-linux-gnu.tar.gz](https://github.com/static-web-server/static-web-server/releases/download/v2.13.1/static-web-server-v2.13.1-i686-unknown-linux-gnu.tar.gz)
**SHA256SUM:** `2b2682aad721d6e2fb39d21163c36fac8da4a358840756941440357a1b0118d9` -- [static-web-server-v2.13.1-i686-unknown-linux-musl.tar.gz](https://github.com/joseluisq/static-web-server/releases/download/v2.13.1/static-web-server-v2.13.1-i686-unknown-linux-musl.tar.gz)
+- [static-web-server-v2.13.1-i686-unknown-linux-musl.tar.gz](https://github.com/static-web-server/static-web-server/releases/download/v2.13.1/static-web-server-v2.13.1-i686-unknown-linux-musl.tar.gz)
**SHA256SUM:** `f56145646bcbe5f25066d7615b14a08b874267391d1232126c7e004385a7c202` ### ARM -- [static-web-server-v2.13.1-arm-unknown-linux-gnueabihf.tar.gz](https://github.com/joseluisq/static-web-server/releases/download/v2.13.1/static-web-server-v2.13.1-arm-unknown-linux-gnueabihf.tar.gz)
+- [static-web-server-v2.13.1-arm-unknown-linux-gnueabihf.tar.gz](https://github.com/static-web-server/static-web-server/releases/download/v2.13.1/static-web-server-v2.13.1-arm-unknown-linux-gnueabihf.tar.gz)
**SHA256SUM:** `b919e9ffa47fdbb0156749778cfb3acd76c2add7e51d4f943bebf8decd02a106` -- [static-web-server-v2.13.1-arm-unknown-linux-musleabihf.tar.gz](https://github.com/joseluisq/static-web-server/releases/download/v2.13.1/static-web-server-v2.13.1-arm-unknown-linux-musleabihf.tar.gz)
+- [static-web-server-v2.13.1-arm-unknown-linux-musleabihf.tar.gz](https://github.com/static-web-server/static-web-server/releases/download/v2.13.1/static-web-server-v2.13.1-arm-unknown-linux-musleabihf.tar.gz)
**SHA256SUM:** `90419d620f0d0ad8a962f0820217a40073745d09140b61e57dfbcf5088d97b67` -- [static-web-server-v2.13.1-armv7-unknown-linux-musleabihf.tar.gz](https://github.com/joseluisq/static-web-server/releases/download/v2.13.1/static-web-server-v2.13.1-armv7-unknown-linux-musleabihf.tar.gz)
+- [static-web-server-v2.13.1-armv7-unknown-linux-musleabihf.tar.gz](https://github.com/static-web-server/static-web-server/releases/download/v2.13.1/static-web-server-v2.13.1-armv7-unknown-linux-musleabihf.tar.gz)
**SHA256SUM:** `dd770775ffc2e605e8b043cbb8701c1869911fcc0fffc126e9863ba483e0c892` ## All Releases -See all [available releases](https://github.com/joseluisq/static-web-server/releases). +See all [available releases](https://github.com/static-web-server/static-web-server/releases). diff --git a/docs/content/features/file-descriptor-socket-passing.md b/docs/content/features/file-descriptor-socket-passing.md index 25be907..82be743 100644 --- a/docs/content/features/file-descriptor-socket-passing.md +++ b/docs/content/features/file-descriptor-socket-passing.md @@ -12,7 +12,7 @@ option. ## Systemd -If you're using `systemd` on Linux, there is a fully working example in the SWS Git repository under the [.`/systemd`](https://github.com/joseluisq/static-web-server/tree/master/systemd) directory. +If you're using `systemd` on Linux, there is a fully working example in the SWS Git repository under the [.`/systemd`](https://github.com/static-web-server/static-web-server/tree/master/systemd) directory. ## Testing diff --git a/docs/content/features/graceful-shutdown.md b/docs/content/features/graceful-shutdown.md index ca973b7..f20cbad 100644 --- a/docs/content/features/graceful-shutdown.md +++ b/docs/content/features/graceful-shutdown.md @@ -10,7 +10,7 @@ It means that when a `SIGTERM` [termination signal](https://www.gnu.org/software ## Grace Period -Sometimes one wants to control the graceful shutdown process for different reasons. For example during [Kubernetes rollouts](https://github.com/joseluisq/static-web-server/issues/79). +Sometimes one wants to control the graceful shutdown process for different reasons. For example during [Kubernetes rollouts](https://github.com/static-web-server/static-web-server/issues/79). In these situations, SWS allows delaying the graceful shutdown process right after a `SIGTERM` providing a *grace period* in seconds. diff --git a/docs/content/index.md b/docs/content/index.md index f881fa0..ab2c3a8 100644 --- a/docs/content/index.md +++ b/docs/content/index.md @@ -13,7 +13,7 @@
- + @@ -34,14 +34,14 @@ It's cross-platform and available for Linux, macOS, Windows and FreeBSD (`x86`,` ![static-web-server](https://user-images.githubusercontent.com/1700322/152613820-658f025c-d0a4-46b3-aa6d-bdc7f638ce77.png) !!! tip "Tips" - - If you're looking for `v1` please go to [1.x branch](https://github.com/joseluisq/static-web-server/tree/1.x). - - If you want to migrate from `v1` to `v2` please take a look at [v2.0.0](https://github.com/joseluisq/static-web-server/releases/tag/v2.0.0) release notes. + - If you're looking for `v1` please go to [1.x branch](https://github.com/static-web-server/static-web-server/tree/1.x). + - If you want to migrate from `v1` to `v2` please take a look at [v2.0.0](https://github.com/static-web-server/static-web-server/releases/tag/v2.0.0) release notes. ## Features - Built with [Rust](https://rust-lang.org) which is focused on [safety, speed and concurrency](https://kornel.ski/rust-c-speed). - Memory safe and very reduced CPU and RAM overhead. -- Blazing fast static files-serving and asynchronous powered by latest [Hyper](https://github.com/hyperium/hyper/), [Tokio](https://github.com/tokio-rs/tokio) and a set of [awesome crates](https://github.com/joseluisq/static-web-server/blob/master/Cargo.toml). +- Blazing fast static files-serving and asynchronous powered by latest [Hyper](https://github.com/hyperium/hyper/), [Tokio](https://github.com/tokio-rs/tokio) and a set of [awesome crates](https://github.com/static-web-server/static-web-server/blob/master/Cargo.toml). - Single __4MB__ (uncompressed) and fully static binary with no dependencies ([Musl libc](https://doc.rust-lang.org/edition-guide/rust-2018/platform-and-target-support/musl-support-for-fully-static-binaries.html)). Suitable for running on [any Linux distro](https://en.wikipedia.org/wiki/Linux_distribution) or [Docker container](https://hub.docker.com/r/joseluisq/static-web-server/tags). - Optional GZip, Deflate or Brotli compression for text-based web files only. - Compression on-demand via [Accept-Encoding](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Accept-Encoding) header. diff --git a/docs/content/license.md b/docs/content/license.md index 298f1e3..048321b 100644 --- a/docs/content/license.md +++ b/docs/content/license.md @@ -1,5 +1,5 @@ # License -This work is primarily distributed under the terms of both the [MIT license](https://github.com/joseluisq/static-web-server/blob/master/LICENSE-MIT) and the [Apache License (Version 2.0)](https://github.com/joseluisq/static-web-server/blob/master/LICENSE-APACHE). +This work is primarily distributed under the terms of both the [MIT license](https://github.com/static-web-server/static-web-server/blob/master/LICENSE-MIT) and the [Apache License (Version 2.0)](https://github.com/static-web-server/static-web-server/blob/master/LICENSE-APACHE). © 2019-present [Jose Quintana](https://github.com/joseluisq) diff --git a/docs/content/semantic-versioning.md b/docs/content/semantic-versioning.md index 2608687..d8cfaaa 100644 --- a/docs/content/semantic-versioning.md +++ b/docs/content/semantic-versioning.md @@ -1,6 +1,6 @@ # Semantic Versioning -**`SWS`** project adheres to [Semantic Versioning](https://semver.org/) for every release like [`v1`](https://github.com/joseluisq/static-web-server/blob/1.x/CHANGELOG.md) and the latest [`v2`](https://github.com/joseluisq/static-web-server/blob/master/CHANGELOG.md). +**`SWS`** project adheres to [Semantic Versioning](https://semver.org/) for every release like [`v1`](https://github.com/static-web-server/static-web-server/blob/1.x/CHANGELOG.md) and the latest [`v2`](https://github.com/static-web-server/static-web-server/blob/master/CHANGELOG.md). ## Breaking changes diff --git a/docs/man/static-web-server.1.rst b/docs/man/static-web-server.1.rst index cee00df..6d1a70d 100644 --- a/docs/man/static-web-server.1.rst +++ b/docs/man/static-web-server.1.rst @@ -114,7 +114,7 @@ REPORTING BUGS Report bugs and feature requests in the issue tracker. Please do your best to provide a reproducible test case for bugs. -https://github.com/joseluisq/static-web-server/issues +https://github.com/static-web-server/static-web-server/issues AUTHORS ------- diff --git a/docs/mkdocs.yml b/docs/mkdocs.yml index e788a75..3b8a3ec 100644 --- a/docs/mkdocs.yml +++ b/docs/mkdocs.yml @@ -7,7 +7,7 @@ dev_addr: 0.0.0.0:8000 # Repository repo_name: joseluisq/static-web-server -repo_url: https://github.com/joseluisq/static-web-server/ +repo_url: https://github.com/static-web-server/static-web-server/ edit_uri: edit/master/docs/content/ docs_dir: 'content' @@ -146,8 +146,8 @@ nav: - 'Trailing Slash Redirect': 'features/trailing-slash-redirect.md' - 'Platforms & Architectures': 'platforms-architectures.md' - 'Migration from v1 to v2': 'migration.md' - - 'Changelog v2 (latest stable)': 'https://github.com/joseluisq/static-web-server/blob/master/CHANGELOG.md' - - 'Changelog v1 (stable)': 'https://github.com/joseluisq/static-web-server/blob/1.x/CHANGELOG.md' + - 'Changelog v2 (latest stable)': 'https://github.com/static-web-server/static-web-server/blob/master/CHANGELOG.md' + - 'Changelog v1 (stable)': 'https://github.com/static-web-server/static-web-server/blob/1.x/CHANGELOG.md' - 'Semantic Versioning': 'semantic-versioning.md' - 'Contributions': 'contributions.md' - 'License': 'license.md' diff --git a/src/directory_listing.rs b/src/directory_listing.rs index 5953b98..aed0d89 100644 --- a/src/directory_listing.rs +++ b/src/directory_listing.rs @@ -93,7 +93,7 @@ pub fn auto_index<'a>( } const STYLE: &str = r#""#; -const FOOTER: &str = r#""#; +const FOOTER: &str = r#""#; const DATETIME_FORMAT_UTC: &str = "%FT%TZ"; const DATETIME_FORMAT_LOCAL: &str = "%F %T"; -- libgit2 1.7.2