lander/CHANGELOG.md

1.9 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

Added

  • LNM - Lander Network Module
    • Rewrite of the event loop & HTTP loop
    • Fully independent library
    • Numerous improvements
      • Streaming of headers
      • Allow custom & an arbitrary number of response headers
      • Better API for adding routes
      • State machine HTTP loop
    • Auomatically support HEAD requests for all GET requests
  • Landerctl
    • -c flag to use custom config file (useful for testing)

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