Skip to content

Releases: rust-dd/tako

tako v.0.7.1-2

14 Jan 08:51

Choose a tag to compare

tako v.0.7.0

12 Jan 18:41

Choose a tag to compare

What's Changed

Notes

Compio support is experimental. If you want to use WebSocket then pick tokio runtime

Full Changelog: tako-v.0.6.1...tako-v.0.7.0

tako-v.0.6.1

30 Nov 10:43

Choose a tag to compare

What's Changed

  • feat: zero copy extractor by @dancixx in #12
  • feat: Fix build on FreeBSD by updating jwt-simple to use "pure-rust" by @yonas in #13
  • chore: Format fixes via cargo fmt. by @yonas in #15

New Contributors

  • @yonas made their first contribution in #13

Full Changelog: tako-v.0.6.0...tako-v.0.6.1

tako-v.0.6.0

17 Nov 15:03

Choose a tag to compare

tako-v.0.6.0

Features

  • Signals system + examples (#11)
  • Metrics plugin
  • State extractor, protocol version guard
  • Automatic fallback port if requested port is unavailable

Fixes

  • Updated CORS defaults
  • Stable global middleware execution
  • Naming/visibility cleanups
  • Import/module export fixes
  • Misc feature-flag fix

Refactors / Internals

  • Switch to http/http-body
  • Replace Incoming with TakoBody
  • Remove lifetimes from header map / path types
  • Introduce internal RwLock usage
  • Version bumps + doc updates

Migration notes

  • Update body types + imports to http/http-body
  • Replace Incoming with TakoBody
  • Adjust code using header/path lifetimes
  • Revisit CORS + middleware behavior if relying on old defaults

Full Changelog: tako-v.0.5.0...tako-v.0.6.0

tako-v.0.5.0

11 Nov 23:15

Choose a tag to compare

Release notes

  • Built in GraphQL support using async-graphql
  • Add more examples
  • Some performance updates

Full Changelog: tako-v.0.4.1...tako-v.0.5.0

tako-v.0.4.1

09 Nov 10:47

Choose a tag to compare

tako v.0.4.0

07 Nov 00:36

Choose a tag to compare

Tako v0.4.0

Tako v0.4.0 focuses on more ergonomic handler definitions and some quality-of-life improvements around plugins and responders

Added

  • Extractor-based handlers – Handlers can now take extractors directly in their parameter list (Axum-style), instead of manually calling extractors on a mutable Request.

  • anyhow::Result<T> as a Responder – You can now return anyhow::Result<T> from handlers where T: Responder; errors are converted into 500 responses.

  • Route-level plugins – Plugins (e.g. rate limiting, middleware-like logic) can be attached per-route.

  • Re-exportshyper::header (and related types) are re-exported for easier use from Tako.

  • Internal refactors and logging improvements around the rate limiter and plugins.

Breaking change: handler signatures

Previously, handlers typically looked like this:

// Tako 0.3.x
use tako::{Request, Responder};

pub async fn create_user(mut req: Request) -> impl Responder {
    // manually run extractors on &mut req
    // e.g. Json::extract(&mut req).await, etc.
}

In 0.4.0, handlers are expected to use extractors directly in the function parameters, instead of working off a mut Request:

// Tako 0.4.0
use tako::{extractors::Json, Responder};

pub async fn create_user(
    Json(payload): Json<CreateUser>,
) -> impl Responder {
    // `payload` is already extracted here
}

You can mix and match any supported extractors in the signature (e.g. Json<T>, path/query extractors, etc.), and still return any type that implements Responder. If you really need the raw request, you can add a corresponding extractor for it as one of the parameters, but the recommended style is to keep handler signatures extractor-based and avoid pub async fn handler(mut req: Request) going forward.

Full Changelog: tako-v.0.3.2...tako-v.0.4.0

tako v.0.3.2

15 Aug 07:12

Choose a tag to compare

tako v.0.3.0

26 Jul 16:35

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

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