Part 01 of the notebook
TESTEDTested
Dev tools, measured for real: speed, size, what broke. Every entry lists the exact setup it was run on.
if it wasn't run, it isn't here.
Breaking changes tracker
Major releases I've upgraded real projects to, and what broke. Each test runs from a script in the public nk-repro repo, and is re-run when a new version ships. Last re-test: Nov 6, 2026.
Supabase CLI 3.0✗ Breaks
db push and gen types with no flags now target the local stack; --linked deprecated; [inbucket] config rejected.
Released Nov 2, 2026 · tested Nov 2, 2026 · repro
TypeScript 7.1 beta✗ Breaks
None of the 9 tool and framework breaks from 7.0 fixed; the compiler API moved to new entry points.
Released Oct 20, 2026 · tested Oct 31, 2026 · repro
Python 3.15~ Partly
6 of 45 popular packages still fail to install on Windows, including TensorFlow and PyYAML.
Released Oct 9, 2026 · tested Nov 5, 2026 · repro
SvelteKit 3.0✗ Breaks
sv migrate reports success, then the build fails 3 times and one link quietly breaks.
Released Oct 1, 2026 · tested Nov 3, 2026 · repro
Vitest 5.0✗ Breaks
6 checks that passed on Vitest 4 fail, from cleared mocks to renamed snapshots.
Released Sep 3, 2026 · tested Nov 2, 2026 · repro
Prisma 8 (release candidate on latest)✗ Breaks
prisma@latest has no generate, migrate dev or db push.
Released Aug 17, 2026 · tested Nov 6, 2026 · repro
npm 12~ Partly
Install scripts blocked by default; git and tarball dependencies refused; unknown flags throw.
Released Jul 8, 2026 · tested Nov 1, 2026 · repro
TypeScript 7.0✗ Breaks
13 tsconfig options that 6 only warned about are now rejected; several tools need workarounds.
Released Jul 8, 2026 · tested Nov 2, 2026 · repro
Node.js 26 (LTS from 26.13.0)✗ Breaks
Corepack and Yarn removed; Docker node:lts now points to Node 26.
Released May 5, 2026 · tested Oct 29, 2026 · repro
Entries
- No.095
Supabase CLI 3.0.0 tested: what breaks coming from v2
On release day, Supabase CLI 3.0.0 started the same local stack as 2.122.1, and row-level security behaved identically. What changed is the targeting: db push and gen types with no flags now run against the local stack and print Target: local stack, where v2 failed in the same unlinked project. --linked still works but warns, db remote commit is gone, an old [inbucket] section in config.toml now stops every command, and an invalid SUPABASE_* variable is rejected by name.
TESTED3 min - No.092
TypeScript 7.1 beta tested: ts-jest, ESLint, NestJS, Angular
On TypeScript 7.1.0-beta, ts-jest, typescript-eslint, ts-node and TypeDoc failed exactly as on 7.0, and so did NestJS, Angular, vue-tsc, svelte-check and astro check. The beta does ship a compiler API, but at new entry points (typescript/sync and typescript/async) that no tool uses yet. The side-by-side setup with TypeScript 6 fixed every one I re-ran.
TESTED4 min - No.067
bun check vs tsc: TypeScript type-check speed, tested
On Zod, bun check took 3.7 s against 13.7 s for tsc 7 and 58 s for tsc 6, and printed the same 31 errors as tsc 7, line for line. On Hono, 7 referenced projects, it took 3.8 s against 7.3 s for tsc 7 -b, with nothing built first. The trap: in a project whose package.json has a "check" script, bun check runs that script and never type-checks.
TESTED4 min - No.063
Python 3.15 on Windows: which packages install (tested)
Most of the stack is ready: numpy, pandas, scipy, scikit-learn, polars, pydantic, FastAPI, Django and the OpenAI and Anthropic SDKs all install on 3.15, and so do PyTorch (since torch 2.15.0) and sentencepiece (since 0.2.3). What fails on Windows: TensorFlow (no 3.15 builds at all), PyYAML and everything that needs it, such as transformers (no 3.15 wheel, so pip tries to compile it), jupyterlab, and langchain (Rust and C dependencies with no 3.15 wheels).
TESTED10 minWindows - No.058
Claude Code, Codex, Gemini CLI on Windows: install tested
All five install and start on Windows 11 with npm 11, in cmd, on Node 24 and Node 26. Two things trip people up. On a default Windows PowerShell setup all five fail with "running scripts is disabled on this system". And with npm 12, Claude Code and OpenCode install with no error but then refuse to start: "not compatible with the version of Windows you're running".
TESTED6 minWindows - No.057
Node 26 vs Node 24: what breaks when you upgrade, tested
Most projects move over cleanly: jsonwebtoken, bcrypt, sharp, better-sqlite3 13, tsx and Vitest all worked unchanged. What broke: Corepack and Yarn are gone (Docker builds fail with exit code 127), native modules installed under Node 24 refuse to load, fs.rmdir with recursive now throws (prisma generate with zod-prisma-types fails on the second run), and fs.W_OK disappeared without an error.
TESTED8 minWindows - No.055
18 framework starters tested on Windows: what breaks
15 of 18 starters work on Windows 11: 14 with no issues at all, 1 with a workaround. Every Remix 3 script still fails out of the box and works on Linux; Docusaurus's Windows build failure is fixed by SWC 1.16.21, Nuxt's Windows-only 500 is fixed in 4.6.1, and React Router's installer in 8.5.1. Three more break in ways that tutorials and CI scripts hit: Angular needs a newer Node 24, Electron Forge renamed its template, and Cloudflare's C3 can exit successfully with a broken project.
TESTED8 minWindows - No.052
Next.js 16.3 vulnerabilities: which version is patched?
On October 14, two critical remote code execution bugs were fixed in 16.4.1 only; every 16.3 release is affected and for days npm audit did not flag them. Before that, 16.3.0 carried 9 published advisories (3 critical) and 16.3.7 carried 6, because the September 30 fixes skipped it. By October 23, npm audit counted 10 on 16.3.7 and 3 on 16.3.8. The upgrade built cleanly on every version I tried. The traps are in the tools: npm audit fix jumps you a minor version or does nothing at all, and next upgrade crashes on Windows.
TESTED7 minWindows - No.042
SvelteKit 3 migration, tested: what sv migrate misses
sv migrate sveltekit-3 upgraded every package and moved the config correctly, but left three removed options in place, so the first build failed three times in a row. Worse, it rewrote a working {base}/about link into one that 404s, and that passed both the build and svelte-check.
TESTED5 min - No.041
Vitest 4 to 5 migration: 6 breaking changes, tested
Six behaviours that passed on Vitest 4.1.11 failed or changed on 5.0.3, each with a clear message and a one-line fix. The sneaky one is test.each titles: snapshot keys change, and locally Vitest 5 quietly writes new snapshots instead of failing.
TESTED5 min - No.037
npm 12 breaking changes, tested: what actually breaks
The headline change, install scripts blocked by default, broke puppeteer, cypress, sqlite3 and Claude Code's npm package, and silently skipped lefthook's git hooks. esbuild, bcrypt, sharp and better-sqlite3 kept working. Every install reported success, and the only sign was a warning after the summary.
TESTED6 minWindows - No.029
TypeScript 7 migration guide: breaking changes, tested
Every option TypeScript 6.0.3 marked as deprecated was a hard error on 7.0.2, and ignoreDeprecations no longer silences it. Two defaults that arrived in 6.0 (strict on, @types not loaded automatically) also break projects coming straight from 5.9.
TESTED6 min - No.028
Does NestJS, Next.js, Angular or Vue work with TypeScript 7?
Next.js 16.3.6 built and type-checked on plain TypeScript 7.0.2. Angular 22.2, Vue with vue-tsc 3.3 and NestJS 12 all failed, and all three built again on Microsoft's side-by-side setup, with tsc still on 7.0.2. Nuxt, Svelte and Astro still built on 7, but their type-check commands refused it until TypeScript 6 was installed alongside.
TESTED7 min - No.019
TypeScript 7 with ts-jest, ESLint, ts-node: 9 tools tested
Plain TypeScript 7 broke ts-node, ts-jest, typescript-eslint, TypeDoc and ts-loader, and npm refused to install it at all without a flag. Microsoft's side-by-side setup ran all 9 tools with no errors while tsc stayed on 7.
TESTED7 min - No.011
Bun vs Node.js 24 benchmark: startup, TypeScript and tests
Bun started 1.7× faster, ran a TypeScript file 3× faster and finished the same test suite 5× faster. The tight number-crunching loop was close: Node won it on Bun 1.4.2, and on 1.4.3 it was a toss-up. The HTTP test hit a limit of this machine, not of either runtime.
TESTED5 min - No.010
npm vs pnpm vs Yarn vs Bun: install speed benchmark (2026)
pnpm is the best all-rounder: 2.8× faster than npm from a cold start and near-instant when nothing changed. Bun wins with a warm cache. Yarn 1 was the slowest and needed a 3.7 GB cache.
TESTED5 min
Post card · Every Sunday
What broke this week.
One email on Sundays: the Node, TypeScript, Python and AI SDK releases that broke builds that week, each one reproduced, with a link to the fix that worked. Never shared, and you can leave any time.
— Nilay