Skip to content

Stoneware v0.1.6

Choose a tag to compare

@stone-main stone-main released this 15 Aug 12:47
· 21 commits to master since this release
Immutable release. Only release title and notes can be modified.

Stoneware v0.1.6

A release focused on resilience, observability, performance, and a more reliable development workflow.

Highlights

  • Server-side error boundaries — isolate failures to individual server-rendered components with <Boundary>, so one failing widget doesn't take down the entire page.
  • Request observability — add an observe hook with route, request kind, status, duration, and caught-error information.
  • Faster request path — optimized static-path handling, route matching, and render classification. The measured /plain request path improved from roughly 300 µs to ~80 µs in the benchmark environment.
  • Faster development rebuilds — template and static-file changes no longer rebuild unaffected islands.
  • Reliable hot reload — fixed the development server creating multiple servers during --hot re-evaluation.
  • Production build optimization — server output now uses whitespace-only minification while preserving useful function names, line information, and source maps. Browser islands and CSS remain fully minified.

Error boundaries

import { Boundary } from "stoneware";

<Boundary fallback={<p>Reviews are unavailable right now.</p>}>
  <Reviews rows={rows} />
</Boundary>