2.3 KiB
2.3 KiB
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Unreleased
0.2.1
Added
- LNM - Lander Network Module
- Rewrite of the event loop & HTTP loop
- Fully independent library, maintained in its own repository
- Numerous improvements
- Streaming of headers
- Allow custom & an arbitrary number of response headers
- Better API for adding routes
- State machine HTTP loop
- Automatically support HEAD requests for all GET requests
- Event loop uses
epoll
instead ofpoll
- Configurable multithreading using
epoll
- Trie-based router (no more RegEx)
- Landerctl
-c
flag to use custom config file (useful for testing)
Removed
- Content-Disposition header for files
- Secure routes with a specified key (e.g.
/sl/:key
), as these were identical to/s/:key
routes
0.2.0
Added
- HTTP Loop
- Fully decoupled functionality from Lander-specific code
- Users can now define custom global & request-local contexts
- Introduced "response steps", allowing custom code during the response part of a request
- LSM - Lander Storage Module
- Rewrite of trie codebase
- Introduced a custom data store using an in-memory trie as index and a
custom binary on-disk format
- Support for lookup, insert & a basic remove
- Lander
- Replaced old trie implementation with LSM store
- Add support for hosting arbitrary files
- Content type of file is set if provided when uploading file
- Support removing entries
- Landerctl
- Replaced old Bash script with Libcurl-based application
- Supporting posting redirects, pastes & arbitrarily large files
0.1.0
Added
- Implemented own event & HTTP loop (used Crow framework before)
- Serve redirects & pastes
- Support uploading pastes & redirects
- Env vars for configuring data dir and port