Update @simplewebauthn/server to v14 and drop the removed transport type #125
No reviewers
Labels
No labels
dependencies
major
security-pin
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
trails-cool/trails!125
Loading…
Reference in a new issue
No description provided.
Delete branch "simplewebauthn-server-14"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Replaces #120, which could not work as raised.
v14 removes the exported type
AuthenticatorTransportFuture, so the version bump alone failsCI / Checks:Not a lockstep problem
The obvious theory — that this needs to move together with
@simplewebauthn/browser, which #119 already took to v14 — is wrong. The two packages declare no peer dependency on each other, andmainhas been running browser v14 against server v13 without complaint. Reproduced locally with both on v14 and got the same single error.What is true is that the bump and the code change have to arrive together, because the cast is required to compile against v13 and forbidden against v14. There is no intermediate state, which is why this can't be split into a code-first PR.
The change
v14 widened
WebAuthnCredential.transportsto plainstring[], so the cast is no longer needed at all.Deliberately not replaced with a cast to the new
AuthenticatorTransport[]: v14 dropped"cable"and"smart-card"from that union, whilecredentials.transportsisjsonb().$type<string[]>()in the schema and rows written by earlier versions may still hold those values.?? undefinedconverts Drizzle'sstring[] | nullto thestring[] | undefinedv14 wants without asserting anything about the contents.Why #120 isn't just fixed in place
Its branch forked before #119 landed, so
apps/journal/package.jsonandpnpm-lock.yamlboth conflict withmain— it reportsmergeable: false. Close it in favour of this.Verified locally
Server resolved to 14.0.1:
typechecklinttestpnpm dedupeproduces no further lockfile change, matching what renovate'spostUpgradeTaskwould have done.Unrelated, but worth knowing
mainis currently red.Checksfailed on #119's merge commit with the recurring gpx worker-timeout flake — all 89 tests passed, the vitest pool failed to start a forks worker. Not a regression from either simplewebauthn change.