From 772c24d489c5068545f1dba3b2d0fe9d3cc1b960 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 24 Aug 2026 13:54:47 +0000 Subject: [PATCH] Version Packages --- .changeset/cookies-survive-an-unloaded-page.md | 9 --------- ...ader-requests-stop-cancelling-each-other.md | 11 ----------- CHANGELOG.md | 18 ++++++++++++++++++ package.json | 2 +- src-tauri/Cargo.lock | 2 +- src-tauri/Cargo.toml | 2 +- src-tauri/tauri.conf.json | 2 +- 7 files changed, 22 insertions(+), 24 deletions(-) delete mode 100644 .changeset/cookies-survive-an-unloaded-page.md delete mode 100644 .changeset/loader-requests-stop-cancelling-each-other.md diff --git a/.changeset/cookies-survive-an-unloaded-page.md b/.changeset/cookies-survive-an-unloaded-page.md deleted file mode 100644 index f4e828c..0000000 --- a/.changeset/cookies-survive-an-unloaded-page.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -'fiber': patch ---- - -Stop "Pick credential…" timing out when no sign-in window is open yet. - -Reading `localStorage` means evaluating script in the page, which fails until the page has loaded. That failure was propagated, discarding the cookies along with it — even though cookies are read from the Rust side, need no script, and are there immediately. So opening the picker straight from a closed window reported "timed out reading the sign-in window" while the session cookie sat in hand; opening the window first, then picking, worked. - -Cookies are now kept when the page can't be read, and the timeout is only reported when there is genuinely nothing to show. The retry loop still waits for a complete read before settling, so a credential kept in `localStorage` isn't missed by returning the cookies-only snapshot the instant the window opens. diff --git a/.changeset/loader-requests-stop-cancelling-each-other.md b/.changeset/loader-requests-stop-cancelling-each-other.md deleted file mode 100644 index 22102f3..0000000 --- a/.changeset/loader-requests-stop-cancelling-each-other.md +++ /dev/null @@ -1,11 +0,0 @@ ---- -'fiber': patch ---- - -Stop two loader requests cancelling each other, and say when a rejection came from somewhere else. - -Every loader request for a section used the same id, and `HttpState` keys in-flight requests by that id — inserting a second under a key already there drops the first's cancel sender, which *is* the cancel signal. So a "Fetch a sample" while a background refresh was out came back "request cancelled", and which of the two died depended on timing. Loader requests now get a unique handle each; nothing cancels them by id, so there was never a reason for it to be predictable. - -A rejected manifest now also reports where the response actually came from, when that left the origin the request was aimed at. A Cookie or Authorization credential is dropped on a cross-host redirect, so "403" and "403, having ended up on a different host" are different problems wearing the same status — and only one of them is your API's fault. - -The sidebar's loader error is selectable and has a Copy button, because the first thing anyone does with an error they can't act on is send it to someone who can. diff --git a/CHANGELOG.md b/CHANGELOG.md index 841dc4c..7067b23 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,23 @@ # fiber +## 0.14.5 + +### Patch Changes + +- [#79](https://github.com/MathiasWP/fiber/pull/79) [`5ee2e66`](https://github.com/MathiasWP/fiber/commit/5ee2e6626d849ef0289293b4c8895588723d78f9) Thanks [@MathiasWP](https://github.com/MathiasWP)! - Stop "Pick credential…" timing out when no sign-in window is open yet. + + Reading `localStorage` means evaluating script in the page, which fails until the page has loaded. That failure was propagated, discarding the cookies along with it — even though cookies are read from the Rust side, need no script, and are there immediately. So opening the picker straight from a closed window reported "timed out reading the sign-in window" while the session cookie sat in hand; opening the window first, then picking, worked. + + Cookies are now kept when the page can't be read, and the timeout is only reported when there is genuinely nothing to show. The retry loop still waits for a complete read before settling, so a credential kept in `localStorage` isn't missed by returning the cookies-only snapshot the instant the window opens. + +- [#79](https://github.com/MathiasWP/fiber/pull/79) [`5ee2e66`](https://github.com/MathiasWP/fiber/commit/5ee2e6626d849ef0289293b4c8895588723d78f9) Thanks [@MathiasWP](https://github.com/MathiasWP)! - Stop two loader requests cancelling each other, and say when a rejection came from somewhere else. + + Every loader request for a section used the same id, and `HttpState` keys in-flight requests by that id — inserting a second under a key already there drops the first's cancel sender, which *is* the cancel signal. So a "Fetch a sample" while a background refresh was out came back "request cancelled", and which of the two died depended on timing. Loader requests now get a unique handle each; nothing cancels them by id, so there was never a reason for it to be predictable. + + A rejected manifest now also reports where the response actually came from, when that left the origin the request was aimed at. A Cookie or Authorization credential is dropped on a cross-host redirect, so "403" and "403, having ended up on a different host" are different problems wearing the same status — and only one of them is your API's fault. + + The sidebar's loader error is selectable and has a Copy button, because the first thing anyone does with an error they can't act on is send it to someone who can. + ## 0.14.4 ### Patch Changes diff --git a/package.json b/package.json index 3f5e53a..a720319 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "fiber", "private": true, - "version": "0.14.4", + "version": "0.14.5", "type": "module", "packageManager": "pnpm@11.22.0", "engines": { diff --git a/src-tauri/Cargo.lock b/src-tauri/Cargo.lock index d8c5fff..6a2feca 100644 --- a/src-tauri/Cargo.lock +++ b/src-tauri/Cargo.lock @@ -1285,7 +1285,7 @@ dependencies = [ [[package]] name = "fiber" -version = "0.14.4" +version = "0.14.5" dependencies = [ "base64 0.23.1", "dirs", diff --git a/src-tauri/Cargo.toml b/src-tauri/Cargo.toml index b503b91..e39cb44 100644 --- a/src-tauri/Cargo.toml +++ b/src-tauri/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "fiber" -version = "0.14.4" +version = "0.14.5" description = "A local-first API client" authors = ["Mathias Picker"] license = "MIT" diff --git a/src-tauri/tauri.conf.json b/src-tauri/tauri.conf.json index f652daf..a49d5c0 100644 --- a/src-tauri/tauri.conf.json +++ b/src-tauri/tauri.conf.json @@ -1,7 +1,7 @@ { "$schema": "../node_modules/@tauri-apps/cli/config.schema.json", "productName": "Fiber", - "version": "0.14.4", + "version": "0.14.5", "identifier": "dev.fiber.app", "build": { "frontendDist": "../build",