PackageTrack
Sign in Get early access

relic_io

dart:io adapter for Relic web server.

1.2.0 357K downloads/mo #621 most downloaded on pub.dev serverpod/relic

What this package is like to depend on

Last release 13 days ago

10 Aug 2026

Release timing varies

gaps range from 9 days to 4 months

Nearly every release is documented

notes for 6 of 6 stable releases

Nothing withdrawn

no release was ever pulled

6 months old

8 releases · first in 2026

8 releases in the last 12 months

see the full history below

Release timeline

8 releases · Feb 2026 to Aug 2026
Release Pre-release

Releases

latest 8
  1. 2.0.0-beta.1 10 Aug 2026 pre-release
    Release notes
    • feat: Add CacheControlHeader.parseStrict for validating own values (#370)
      • Throws a FormatException for an unrecognized directive or a malformed delta-seconds value instead of ignoring it
      • Intended for values under the sender's own control, such as server configuration; parse remains lenient per RFC 9111 5.2
    Open source →
  2. 2.0.0-beta.0 24 Jun 2026 pre-release
    Release notes

    Overhaul of typed HTTP headers for RFC compliance, landing in concert with serverpod 4.0. Parsing of received (request) headers is lenient (except security-sensitive ones), while construction and serialization are always strict. Many typed headers changed shape and/or semantics, so this is a breaking release.

    • refactor!: Cookie and Set-Cookie headers (#361)
      • BREAKING: SetCookie now represents a single cookie, and SetCookieHeader is a List<SetCookie> collection (one Set-Cookie line per cookie, RFC 6265 4.1). The previous single-cookie SetCookieHeader(name:, value:, ...) API is replaced by SetCookie(...); augment a response with mh.setCookie = (mh.setCookie ?? const SetCookieHeader.empty()).add(cookie)
      • The request Cookie header is parsed leniently: a malformed cookie is skipped and the header is rejected only when no cookie in it is usable
      • Add CookieHeader.getCookies(name) returning every cookie with that name in order; byte-identical duplicates are preserved (not collapsed)
      • Set-Cookie decode is strict (it is produced by the server): a malformed attribute rejects the cookie
      • Domain is normalized per RFC 6265 5.2.3 — the full leading-dot run is stripped and the host is lower-cased; an all-dots Domain is rejected
      • Max-Age is parsed as a strict decimal integer per RFC 6265 5.2.2; non-decimal values such as 0xFF are rejected
      • Nameless =value segments are dropped when parsing the request Cookie header
    • feat!: RFC compliant typed headers (#360) — fixes #113, #142
      • Many typed headers changed their Dart interface and/or their parse/serialize semantics
      • Parsing is lenient on receive; construction and serialization are strict
    Open source →
  3. 1.2.0 11 Mar 2026
    Release notes
    • feat: Make NormalizedPath interning cache configurable (#343)
      • Introduce abstract Cache<K, V> interface
      • Add NoCache implementation for high-cardinality workloads
      • LruCache now implements Cache
      • NormalizedPath.interned can be swapped to any Cache implementation
    • feat: Add staticChangeCount and VM service extension to DeveloperTools (#341)
    • feat: Add DeveloperTools class to RelicApp (#340)
    Open source →
  4. 1.1.1 05 Mar 2026
    Release notes
    • docs(ai): Adds skills for AI agents based on documentation. (#338)
    Open source →
  5. 1.1.0 23 Feb 2026
    Release notes
    • feat: Allow internal request forwarding with req.forwardTo(newReq) (#331)
    • feat: Add indexAssets() and tryAssetPathSync() to CacheBustingConfig (#332)
    • feat: Auto-index assets in StaticHandler when cache busting is configured (#332)
    Open source →
  6. 1.0.0 10 Feb 2026
    Release notes

    Relic is now considered stable and production-ready! 🎉

    Open source →
  7. 0.15.1 04 Feb 2026
    Release notes
    • fix: Downgrade meta dep to ^1.16.0 to match flutter 3.32.0 (serverpod lower bound) (#325)
    Open source →
  8. 0.15.0 03 Feb 2026
    Release notes
    • feat: Add virtual host routing support (#322)
      • Add useHostWhenRouting parameter to routeWith() middleware
      • Add useHostWhenRouting parameter to RelicApp
      • When enabled, routing uses {host}{path} for route matching
    • feat: Add paths, toString(), and toDot() to PathTrie for debugging (#320)
    • feat: Add force parameter to server close() method (#317)
    • refactor: Restructure into multi-package workspace with relic_core, relic_io, and relic packages
    Open source →

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive