v4.0.0
@hyphen/sdk@4.0.0 — 2026-06-12
Raises the minimum Node.js runtime to 22.18+/24+ (drops Node 20/21) and fixes QR-code creation with custom options.
⚠ BREAKING CHANGES
- Minimum Node.js is now
^22.18.0 || >=24.0.0— Node 20 and 21 are no longer supported. Theengines.nodefloor was raised (45d8439, #134) to matchtsdown@0.22.2andhookified@3.0.0(865a5f3, #138), both of which require Node ≥22.18. Node 20 reached end-of-life in April 2026.
Migration: upgrade your runtime to Node 22.18+ or Node 24+. No SDK code changes are required — the public API (Hyphen,Toggle,Link,BaseService,HookifiedOptions) is unchanged. hookifiedupgraded 2.1.1 → 3.0.0 (major) (865a5f3, #138). Surfaced for consumers who usehookifieddirectly; its only breaking change is the Node ≥22.18 floor above. No SDK API changes.
Bug Fixes
createQrCodenow sends custom options asmultipart/form-datainstead of JSON (6de740b, #137). Creating a QR code withtitle,backgroundColor,color,size, orlogopreviously failed with HTTP 400; these options now work. Calls without options are unaffected. Closes #133.
Internal
- Migrate npm publish to OIDC trusted publishing with provenance attestations; drop the long-lived
NPM_TOKEN(de6caf4, #140) - Pin all third-party GitHub Actions to full commit SHAs — supply-chain hardening (cb849f9, #139)
- Upgrade GitHub Actions to latest majors: checkout v6, setup-node v6, codecov v7, codeql v4 (8506977, #136)
- Upgrade TypeScript and build tooling: typescript 6.0.3, tsdown 0.22.2, @types/node 25.9.2 (78cebba, #134)
- Upgrade cacheable ecosystem: @cacheable/net 2.0.8 (now uses the runtime's native fetch), cacheable 2.3.5 (ec25054, #132)
- Adopt pnpm 11 via corepack and
allowBuilds; consolidate the CI matrix to Node 22/24/26 (24a8dde, #132) - Pin
pnpm/action-setupto v6.0.8 by commit SHA (7d1930f, #132) - Upgrade code quality dependencies: @biomejs/biome 2.4.16, vitest & coverage-v8 4.1.8 (9a242b2, #132)
- Quarantine the live-API QR custom-options test (later re-enabled by #137) and add stubbed unit coverage to hold 100% (781e1a2, #132)
Contributors
- @jaredwray (7 PRs)
Full List of Changes
- root - chore: upgrade code quality dependencies + adopt pnpm 11 / Node 22-26 CI by @jaredwray in #132
- root - chore: upgrade TypeScript and build tooling (breaking) by @jaredwray in #134
- fix(link): send QR code custom options as multipart/form-data by @jaredwray in #137
- root - chore: upgrade GitHub Actions (breaking) by @jaredwray in #136
- root - chore: upgrade hookified (breaking) by @jaredwray in #138
- root - chore: defense - pin all GitHub Actions to full SHAs by @jaredwray in #139
- ci: migrate npm release to OIDC trusted publishing with provenance by @jaredwray in #140
Full diff: v3.1.0...v4.0.0