Repository navigation
v0.5.75
Upgrading
- Run
kit:update plan|applyforcore(re-pinnedsha256:8f1166e6…0938→sha256:163ce1db…6da2):Kit/http.tsis new, andKit/Workbench/useWorkbench.ts,Kit/Workbench/workbenchLayout.tsandKit/Feedback/passkeyOffer.tstake the fix below. A host whose own code readsresponse.data.xfrom Inertia v3'shttpclient can read it throughresponseJson(response)from@/components/Kit/httpinstead.
Fixed
- The Workbench reorder kept a null version token after Inertia v3 returned a string body, so the next write got a 409. Inertia v3's HTTP client resolves
dataas the raw response text, andsendOrderreadresponse.data.versionfrom it, so after every reorder the token was lost and the next stale-safe write (another move, an add, a duplicate, a delete) was refused asstale_write. Bodies now go through core's newresponseJson, which returns an objectdataas it is and parses a string as JSON, and throws on an empty or non-JSON body instead of handing back null (allowEmptyreturns null where a caller expects no body);errorJsonreads a refused request's body, as null when it isn't JSON, since the status has already decided. The same string-body bug lost the stored layout and version on a 409 from the Workbench layout endpoint (sendLayout), and the creation options in the passkey offer (registerPasskey); both read through it now. A 2xx reorder answer that isn't JSON is a failed save, so the old order comes back.tests/js/response-json.test.mjscovers the helper,workbench.test.mjsandonboarding.test.mjsstring bodies, and a browser check makes two moves and a Duplicate against a stand-in server that refuses a stale or null version.
What's Changed
- Keep the Workbench reorder's version token: parse Inertia v3's string bodies (v0.5.75) by @jaspertey in #391
Full Changelog: v0.5.74...v0.5.75