Skip to content

Releases: tardy-org/zzz

v0.3.0-rc1

04 Jan 02:59
28b3e6c
Compare
Choose a tag to compare
v0.3.0-rc1 Pre-release
Pre-release

This is the first release candidate for v0.3.0. This is meant to provide some time to do bugfixes, add any critical features, and generally battle-test before the full release.

  • Added Middleware!
  • Better CI testing across all supported platforms
  • Support for serving pre-encoded files (such as a gzipped js bundle)
  • Usage of Tardy v0.2.1, allowing for richer error handling from the I/O layer and fixing race condition related to Async I/O start up
  • Removal of Context Allocation within hot path.
  • Removal of invalid assert within serve_fs_dir
  • Added a ZeroCopyBuffer, eliding a full buffer copy on the hot path
  • Removal of forced inline, allow compiler to optimize as it wants
  • Added Support for binding to Unix Sockets (on Linux, BSD and Darwin)
  • Files are now streamed into the socket (at the I/O layer) using Tardy, improving serve_fs_dir performance.
  • Added additional common MIME types
  • Fixed errors regarding Request struct not being fully cleared.

What's Changed

New Contributors

Full Changelog: v0.2.0...v0.3.0-rc1

v0.2.0

11 Nov 07:46
b5b8b83
Compare
Choose a tag to compare

This release provides a tighter integration with the Tardy runtime.

  • The zzz.Server will no longer create its own runtime with Tardy, meaning that the runtime must be created and provided to the Server during initialization. All examples have been updated to highlight this change so feel free to consult them!
  • Routes now have a context that can be passed into them. This will give you a reasonable way to pass additional context state into handlers. The basic example has been updated to highlight this use case.
  • kqueue support inherited from Tardy, meaning that BSD & Mac now have a proper aio system to use with zzz.
  • Fix issues with resolveIP on BSD platforms.
  • Removed support for multiple protocols, zzz is better off supporting only HTTP/HTTPS and for other protocols to build directly off of Tardy and can share a runtime if needed.
  • First Pass SSE implementation through the use of the Tardy Channels. This allows you to stream data from the server to the client.
  • Asynchronous Filesystem Serving, allowing files to be sent in a non-blocking way. This has a pretty appreciable performance boost when compared to previous filesystem serving example.

What's Changed

Full Changelog: v0.1.0...v0.2.0

v0.1.0

22 Oct 21:02
5fac596
Compare
Choose a tag to compare

This is an initial release of zzz. Supported OSes include Mac, Linux and Windows.

This provides:

  • HTTP/1.1 Server implementation
  • Partial TLS Support through BearSSL
  • io_uring support
  • epoll support
  • busy_loop (nonblocking fd polling) support

Full Changelog: https://github.com/mookums/zzz/commits/v0.1.0