v0.208.2
Immutable
release. Only release title and notes can be modified.
What's Changed
- docs(track): draft the increment-allocation feature track by @accuser in #684
- docs(track): mark increment-allocation adopted, add it to the tracks map by @accuser in #686
- feat(xtask): pending-increment format + check-pending validator (Slice 0) by @accuser in #688
- feat(xtask): the merge-time stamp command (increment-allocation Slice 1) by @accuser in #690
- feat: per-merge stamp workflow + allocation-on-main ADR (increment-allocation Slice 2) by @accuser in #692
- feat(site): llms-full.txt is a build artifact, not committed (increment-allocation Slice 3) by @accuser in #694
- docs(track): retire the increment-allocation track by @accuser in #695
- docs(testing): mark Slice A shipped; record the deps.env non-finding and #655's real root by @accuser in #683
- feat(test): system-tier http boundary — real fetch, framework-signed credential (#667) by @accuser in #697
- chore(stamp): v0.187.0 + ADR 0207 for #698 (manual stamp recovery) by @accuser in #699
- fix(ci): stamp pushes as a GitHub App with ruleset bypass by @accuser in #700
- docs(track): mark testing-the-boundary Slice B shipped (v0.187, ADR 0207) by @accuser in #701
- fix(emit): stamp boundary-rejection responses with the service security policy (#659) by @accuser in #703
- feat(test): drive an http route with raw Wire input and observe the boundary rejection (#702) by @accuser in #704
- docs(track): retire testing-the-boundary — all four slices shipped (#656) by @accuser in #709
- feat(lang):
istests nested variant patterns structurally (#705) by @accuser in #710 - docs: correct retired testing syntax and driver command list (#740) by @accuser in #741
- ci(stamp): mint bypass-actor token after untrusted build/test code (#727) by @accuser in #742
- fix(new): preserve a hand-written
.gitignoreinstead of clobbering it (#737) by @accuser in #743 - fix(lsp): extract receiver/callee at a char boundary, not byte i+1 (#715) by @accuser in #744
- feat(test): drive a secured route with no credential via
by Nobody(#706) by @accuser in #745 - fix(lang): tie the normative grammar to the compiler parser (#635) by @accuser in #746
- docs(adr): correct ADR 0212 index summary (Bearer-secured, not any handler) by @accuser in #749
- fix(parse): an
if/matchcondition no longer swallows a single-ident brace body as a record (#636) by @accuser in #748 - fix(parse): bound recursion depth so nested source diagnoses instead of aborting by @accuser in #747
- feat(test): drive the wrong method for a 405 fall-through (#707) by @accuser in #750
- fix(parse): bound operator-chain depth so long chains can't overflow the stack (#714) by @accuser in #751
- fix(parse): rebase interpolation-hole lex-error spans into the full source (#716) by @accuser in #752
- fix(check): the linearity pass governs match-arm held bindings (#719) by @accuser in #753
- fix(emit): escape
*/in doc-block comments so source can't inject top-level TS (#720) by @accuser in #754 - fix(check): enforce held-resource linearity in fn/method bodies (#718) by @accuser in #755
- fix(emit): TOML-escape queue names & cron exprs in wrangler.toml (#722) by @accuser in #756
- fix(emit): escape route paths through escape_ts_string at every router site (#721) by @accuser in #757
- fix(emit): route Worker boundary param binders through ts_ident (#723) by @accuser in #758
- fix(check): reject ReDoS-prone
Matchespatterns (nested unbounded quantifiers) (#724) by @accuser in #759 - fix(check): validate record field set in service/agent handler bodies (#711) by @accuser in #760
- fix(parse): name the three identifier-reservation tiers; reject redeclaring a built-in type name (#637) by @accuser in #761
- fix(emit): thread the caller name into a bundle
by c: Callersurface (#655) by @accuser in #762 - fix(diagnostics): attribute project-level check/compile errors to their file (#696) by @accuser in #763
- fix(check): report unresolvable types in handler-body expression positions (#712) by @accuser in #764
- fix(wasm): install a panic hook and convert internal panics to diagnostics (#717) by @accuser in #765
- ci(release): default workflow permissions to contents:read (#728) by @accuser in #766
- ci(deploy): scope Cloudflare token to wrangler steps only (#729) by @accuser in #767
- fix(check): join match arms / if branches instead of requiring exact type equality (#726) by @accuser in #768
- fix(emit): require
expon HS256 bearer verification (#725) by @accuser in #769 - fix(fmt): guard output round-trip, write atomically, honour --check on stdin (#735) by @accuser in #770
- fix(playground): correct fallback highlighter comment + keyword/atom sets (#739) by @accuser in #772
- ci: close dependency-hygiene gaps (#731) by @accuser in #773
- fix(deploy): write the ledger atomically and reject a truncated one by @accuser in #771
- ci(release): require the released commit to be on main (#730) by @accuser in #774
- fix(xtask): make stamp
--applytransactional and harden its helpers (#738) by @accuser in #775 - perf(lsp): cache parsed project units, parse embedded surface once (#733) by @accuser in #776
- perf(lsp): share a per-snapshot line index for O(log n) position lookup by @accuser in #777
- perf(check): drop per-call type scans and deep clones (#734) by @accuser in #778
Full Changelog: v0.185.0...v0.208.2