Releases: webjsdev/webjs
Releases · webjsdev/webjs
Release list
@webjsdev/server 0.8.46
Fixes
- route(module) auto-applies an action's declared middleware and validate (#876) (#879)
72bb3611- The
route()REST adapter only ran themiddleware/validatepassed via itsopts, so an action's declaredexport const middlewareprotected the RPC boundary but not the REST one (a function reference cannot reach its sibling config exports). route()now also accepts the action's module namespace (import * as postActions from '...'; export const POST = route(postActions)) and auto-applies the declaredmiddlewareandvalidate, so a guard declared once beside the action protects both boundaries. The bare-function form is unchanged, and an explicitoptsvalue still overrides the declared config.
- The
@webjsdev/cli 0.10.36
Features
- close coverage-gate deferred gaps with real scaffold demos (#870)
e62d7e41 - add a tier-2 scaffold teaching-coverage gate for core exports (#861)
35d180d2 - add a boundaries gallery demo and harden the scaffold-sync skill (#854)
5f7bd1f0
Fixes
- fresh saas scaffold passes typecheck and axe out of the box (#877, #878) (#879)
72bb3611- Rewrite the
onBeforeCacheimport to#lib/utils/dom.ts(it kept a registry-relative../lib/dom.tsand failed TS2307), and resolveAUTH_SECRETthrough a typed const with a production fail-fast guard (it was assigned asstring | undefinedto a requiredstring). - Give every generated page exactly one
<h1>, raise the gallery label text to fulltext-muted-foregroundcontrast, and add accessible names to the file-upload and ref-focus inputs, so a fresh app returns zero axe violations.
- Rewrite the
@webjsdev/ui 0.3.8
@webjsdev/server 0.8.45
@webjsdev/server 0.8.44
Fixes
- four verified webjs iteration-loop gaps from the tic-tac-toe dogfood (#845) (#846)
34ba0a74
Add theno-interpolation-in-raw-text-elementconvention check. It flags a template interpolation (${...}) placed as a child of a<style>or<script>element in a component. The server renderer emits it but the client renderer drops the raw-text hole, so it paints at SSR then wipes to empty on hydrate. Scoped to components, so a page or layout interpolating acssresult into<style>(which renders server-only) is not flagged. Found dogfooding a tic-tac-toe app (#845).
@webjsdev/server 0.8.43
@webjsdev/server 0.8.42
@webjsdev/mcp 0.1.7
Fixes
sourcetool no longer reads as "not found" when nothing was searched (#838)e5eb00b5
Thesource({ query })grep returned a misleading "no matches" when zero
@webjsdev/*packages resolved (so nothing was actually searched); it now
reports that distinctly, and a genuine no-match discloses the searched scope so
absence is trustworthy (#837).
@webjsdev/core 0.7.32
@webjsdev/core 0.7.31
Fixes
-
four verified webjs iteration-loop gaps from the tic-tac-toe dogfood (#845) (#846)
34ba0a74- fix(core): rebuild a mixed attribute when only a later hole changes
A multi-hole attribute (class="a ${x} b ${y}") is anchored at its first hole with the remaining holes as noop parts, so updateInstance's per-hole dirty-check dropped a change confined to a later hole and the attribute went stale. Point every non-anchor member at the anchor so any hole change rebuilds the whole attribute. Found dogfooding a tic-tac-toe app (#845): a cell kept a stale class when only its second class hole changed.