Releases: Icelk/moella
Releases · Icelk/moella
v0.2.0
v0.2.0
Many bugfixes to reverse proxy, including websockets finally working and body
streaming for large files (e.g. movies through Jellyfin). Zstd is also
supported now, and compression levels are generally more fitting.
Added
- Zstd compression
- Reverse proxy body streaming for large files
- You can now use e.g.
http://10.0.0.12:8096
as an option to the reverse proxy.
Previously "tcp" was the only option. - Option to make systemd services work with a bug in io_uring (kvarnctl)
- Sometimes a double-free happens after Kvarn has finished. This can be
ignored, and so a flag to ignore that was added to kvarnctl
- Sometimes a double-free happens after Kvarn has finished. This can be
Improved
- Faster HTTP/3
- Dynamic compress based on if the response is cached or not.
- Make io_uring even faster with less allocations
- Performance related to HTTP/1 requests and responses. Also useful for other
HTTP versions when reverse proxy is used (HTTP/1 is used for reverse proxy). - Updated dependencies
Fixed
- Caching issues for reverse proxy
- Reverse proxy websockets.
- Reverse proxy for Jellyfin
- Auto cert made more robust
- Auto cert in development behaves better
- Auto cert private key having permission 644 instead of 600
- kvarn_signal (used by kvarnctl) fixed commands sometimes not being sent
v0.1.1
Official first release. Everything should work as expected now...
The moella-linux-posix
package doesn't use io_uring
and can be used with older kernels.
- Use specialized networking APIs for io_uring to massively increase performance
- io_uring is now the default for linux
auto_cert
is way more robust
v0.1.0-rc.4
- Add
--dev
flag: run with high ports & disable cache - Improved
--host
- Better performance in: cache, limiter, mime recognition, if-modified-since, HTTP/2 push.
- Cache CSP & templates for huge performance gains.
- Max body size restrictions (fixes potential OOM errors)
- Fix
kvarnctl
withouturing
feature. - Reduced logging with
uring
feature enabled.
Updates to other tools
- Chute now supports compiling in syntax highlighting
v0.1.0-rc.3 uring!
- Add support for Linux's uring interface, for more performant IO (both file system and network). Since Kvarn is a webserver which serves files, IO is critical.
You have to download the
moella-linux-uring
binary and have a recent kernel (>5.10 I think) to use it!
- Performance optimizations
- Don't allocate most strings
- Use a better cache
- HEAD method doesn't send body (a but that crept in during the last year...)
- Updated deps
Kvarn Changelog: Icelk/kvarn@6f4e307...eb4be3c
Full Changelog: v0.1.0-rc.2...v0.1.0-rc.3
v0.1.0-rc.2
- add flag
-h --host
to set default host (so you can specify which host to test on localhost) - Add support for auto certificates
- loads of bug fixes regarding kvarnctl
- server header now includes
Moella
. - strip macos builds (they're smaller now)
Kvarn Changelog: Icelk/kvarn@7634b3e...6f4e307
Full Changelog: v0.1.0-rc.1...v0.1.0-rc.2
v0.1.0-rc.1 Binaries available
Prebuilt binaries for linux and macOS