Skip to content

Releases: rust-dd/tako

tako v.0.3.2

15 Aug 07:12
Compare
Choose a tag to compare

tako v.0.3.0

26 Jul 16:35
Compare
Choose a tag to compare

🐙 Tako 0.3.0

🚀 What’s New

  • Switched to matchit router – Faster, more scalable route matching.
  • Protobuf support – Handle binary payloads alongside JSON.
  • Auth example + fix – Improved token verification logic.
  • Memory optimization – Uses Weak refs to reduce overhead.
  • File stream utility – Stream large files efficiently over HTTP.
  • HTTP/2 WebSocket example – Showcases modern WS usage.
  • Docs cleanup – Simplified README and examples.

👉 Changelog: tako-v.0.2.4...tako-v.0.3.0

tako v.0.2.4

14 Jul 23:49
Compare
Choose a tag to compare

🐙 Tako 0.2.4

🚀 What’s New

  • SIMD-accelerated JSON (de)serialization

    • Significant performance boost for heavy JSON payloads using SIMD instructions under the hood.
  • Refactored extractors

    • Cleaner, more modular design — easier to use and extend.
    • Simplified API for creating custom extractors.
    • Better error handling.
    • Additional internal optimizations to reduce latency and allocations.

Full Changelog: tako-v.0.2.3...tako-v.0.2.4

tako v.0.2.3

10 Jul 16:19
Compare
Choose a tag to compare

🐙 Tako 0.2.3

🚀 What’s New

  • Transparent response compression
    • Streaming middleware negotiates gzip · brotli · deflate · zstd on-the-fly.
    • Fresh example & benchmark included.
  • Static file serving
  • URL-encoded form extractor  Form<T> for effortless application/x-www-form-urlencoded parsing.
  • Stream engine refactor — simpler state machine, no manual waker; ~12 % throughput boost in benchmarks.

🐛 Fixes & Docs

  • Multipart example and plugin-init race conditions fixed.
  • Added docs for deflate compression and form extractor.
  • README, feature table and benchmarks refreshed; dead feature-flags removed.

Full Changelog: tako-v.0.2.2...tako-v.0.2.3

tako v.0.2.2

05 Jul 23:37
Compare
Choose a tag to compare

🐙 Tako 0.2.2

🚀 What’s New

  • Multipart form parsing via new multipart feature (uses multer + uuid), supports UploadedFile (disk) and InMemoryFile (RAM), plus typed extraction with TakoTypedMultipart<T, F>.
  • Built-in HTTP client (TakoClient, TakoTlsClient) for simple outbound requests, enabled with client/tls features (uses rustls, no OpenSSL).
  • Basic Auth extractor (extractors::basic::Basic) for direct username/password access in handlers without middleware.
  • Body size limiter middleware with configurable max size (static value or closure), returns 413 on overflow, 10 MiB default.
  • Extractor trait rewrite: FromRequest, FromRequestParts, FromRequestMut now sync; async versions (AsyncFromRequest*) remain available.
  • Streaming support: TakoBody::from_stream & try_from_stream for building stream-based responses (e.g., SSE or proxy).
  • Router composition: Router::merge(other) merges routers and prepends middlewares automatically.
  • New helpers: IntoMiddleware, StaticHeaders for concise responder definitions.
  • New examples: with-state, multipart, streams.

Full Changelog: tako-v.0.2.1...tako-v.0.2.2

tako v.0.2.1

25 Jun 20:11
Compare
Choose a tag to compare

🐙 Tako 0.2.1

🚀 What’s New

🔐 Authentication Middlewares

  • Bearer / Token

    • Static token list
    • Pluggable async verify callback (DB lookup, JWT validation, etc.)
    • Static + dynamic checks can be combined
  • Basic Auth

    • Single-user, multi-user map, or static + dynamic combination
    • Custom realm support
    • Injects user claims into Request.extensions

Both middlewares return 401 Unauthorized with the correct WWW-Authenticate header when credentials are missing or invalid, and pass execution to your handler chain on success.


🐞 Bug Fixes

🛣️ route_tsr Redirect

Router::route_with_tsr now canonicalises paths correctly before matching, eliminating stray 307 loops when both /user and /user/{id} were registered.
Bonus: the generated Location header now preserves the original query-string, so clients (e.g. Postman) follow the redirect with every parameter intact.


Full Changelog: tako-v.0.2.0...tako-v.0.2.1

tako v.0.2.0

23 Jun 17:40
Compare
Choose a tag to compare

🐙 Tako v.0.2.0

🚀 Highlights

  • Typed extractor system for headers, query/body params, JSON, and form data.
  • Streaming & Server-Sent Events helpers for any Stream response.
  • Middleware chaining (sync or async) with minimal boilerplate.
  • Plugin system for opt-in functionality that keeps the core lean.
  • Native HTTP/2 + TLS 1.3 via rustls and ALPN.
  • Developer experience improvements

📦 Upgrade

tako-rs = "0.2"

Thank you for trying out Tako! 🦑
Questions or issues? [Open one here](https://github.com/tako-rs/tako/issues) — feedback is always welcome.

tako v.0.1.0

23 Jun 17:37
Compare
Choose a tag to compare

🐙 Tako v.0.1.0

First public preview – lightweight core to get you started.

🚀 Highlights

  • Path-based router with parameter extraction and automatic trailing-slash redirection.
  • Application-wide shared state without resorting to global unsafe variables.
  • HTTP 1.1 engine powered by hyper + tokio, including keep-alive.

📦 Install

# Cargo.toml
tako-rs = "0.1"