BetaWeekly digests are a beta — we're trying something new. Feedback welcome.
Next.js patches two critical RCEs as its canary line rebuilds caching and bundling
August 24–30, 2026
Next.js shipped emergency patches for two unauthenticated remote code execution flaws across its 16.x and 15.x lines, while its canary branch reworked caching, Turbopack resolution, and image handling. Svelte and the Expo EAS CLI also landed notable feature work.
The week at a glance
Replay the weekBiggest releases
- 01Next.js v16.3.3 patches two critical unauthenticated RCE vulnerabilities
Next.js - 02Next.js v16.4.0-canary.10 launches Cache Components and deprecates React 18
Next.js - 03EAS CLI v23.0.0 renames serve-sim session type, caches CocoaPods deps
Expo - 04EAS CLI v22.6.0 adds idle timeout and resource class flags to eas simulator
Expo - 05Next.js v16.4.0-canary.12 improves codemod handling of .mjs files and non-interactive mode
Next.js
Critical RCE fixes land across two Next.js lines
The week's most urgent news is a pair of unauthenticated remote code execution vulnerabilities in Next.js, patched simultaneously on the current and previous major lines. Anyone hosting on Windows should treat this as a drop-everything upgrade: Next.js closed an RCE reachable on Windows-hosted servers, and the same fix is available to projects still on the older line through the 15.5 patch for Windows-hosted deployments. The second advisory is broader in reach, since it doesn't depend on the host OS — the Image Optimization API could be exploited when AVIF files are involved, an issue the 16.x line fixed and the 15.x line fixed in parallel. If you can't upgrade immediately, disabling AVIF optimization is the interim mitigation. Notably, the canary branch had re-enabled AVIF image optimization only a day before these advisories, after disabling it earlier in the week — a reminder that the image path was under active churn.
Canary groundwork for caching and routing
Behind the security work, the 16.4 canary line kept up a steady drumbeat of platform changes. Caching got the most attention: Cache Components arrived as an option in create-next-app, alongside a deprecation of React 18 support in the Pages Router, and use-cache entries grew more granular cache keys. A new types entrypoint for next/cache-handlers gives adapter authors something typed to build against.
Routing and resolution fixes filled out the rest. Optimistic routing for encoded dynamic params and intercepted route params after Proxy rewrites was corrected, metadata prefetch cache keys for search params were fixed, and ISR no longer misses when backslashes appear in segments on Windows deployments. Turbopack specifically got resolution through chained symlinks and /-rooted imports, which should unblock monorepo setups that lean on linked packages. Tooling around upgrades also improved: codemods now transform .mjs files and honor non-interactive mode, making scripted migrations viable.
Svelte rounds out its server and context APIs
Svelte's release was smaller but substantive for people writing server-rendered or context-heavy components. Svelte now exports RenderOutput, SyncRenderOutput, Csp, and Sha256Source from svelte/server, which lets integrations type their rendered output and CSP plumbing without reaching into internals. The same release added a has function to createContext for checking whether a context exists before consuming it, defaultValue support on <select> to match the behavior long available on inputs, and getOrInsert and getOrInsertComputed on SvelteMap.
Expo's EAS CLI cuts a major version
The EAS CLI crossed into v23 with a breaking rename: the simulator's preview-only session type is now --type web-preview-only, so any CI scripts passing serve-sim need updating. The same release caches CocoaPods dependencies between iOS builds — a real time saver on repeat builds — and adds EAS_BUN_FILTER_WORKSPACE for selective bun installs. Just before the major bump, the CLI gained an opt-in idle timeout that stops simulator sessions automatically and an experimental resource-class flag, giving teams a way to cap runaway simulator costs.
Releases covered12
- Next.js v16.3.3 patches two critical unauthenticated RCE vulnerabilities (opens in new tab)
- Next.js v16.4.0-canary.9 rejects non-2xx image responses and stabilizes bailout errors (opens in new tab)
- Next.js v16.4.0-canary.7 fixes ISR with Windows backslashes and wasm compatibility (opens in new tab)
- Next.js v16.4.0-canary.10 launches Cache Components and deprecates React 18 (opens in new tab)
- Next.js v16.4.0-canary.11 fixes encoded dynamic params and intercepted route params (opens in new tab)
- Next.js v16.4.0-canary.4 adds cache-handlers types entrypoint (opens in new tab)
- Next.js v16.4.0-canary.6 fixes metadata prefetch cache key for search params (opens in new tab)
- Next.js v16.4.0-canary.8 fixes Turbopack symlink and root import resolution (opens in new tab)
- Next.js v16.4.0-canary.12 improves codemod handling of .mjs files and non-interactive mode (opens in new tab)