R2 SQL goes analytical, Vercel goes realtime
June 15–21, 2026
Cloudflare R2 SQL gained window functions, set operations, and analytical aggregates, while Vercel launched WebSocket support for Functions in public beta, and the Vercel CLI added signed blob URLs.
R2 SQL turns into a real analytical engine
The biggest bang this week came from Cloudflare's R2 SQL, which shipped a massive batch of query capabilities that turn it from a serviceable SQL interface into a genuine analytical engine. R2 SQL now supports window functions — ROW_NUMBER, RANK, LAG, LEAD, and more — alongside SELECT DISTINCT, set operations (UNION, INTERSECT, EXCEPT), grouping extensions (GROUPING SETS, ROLLUP, CUBE), and exact aggregates like MEDIAN and PERCENTILE_CONT. The QUALIFY clause for filtering on window function results is also included. For anyone querying Iceberg tables stored in R2, this eliminates a whole category of preprocessing steps that previously had to happen outside the database.
Across the Cloudflare Workers SDK, the week brought a steady stream of improvements. Wrangler 4.103.0 moved the unstable_getWorkerNameFromProject export to @cloudflare/workers-utils (now stable as getWorkerNameFromProject) and removed experimental autoconfig exports. The same release fixed a dev crash on truncated error chunks and a SQLITE_TOOBIG bug in local Workflows where Uint8Array step outputs were persisted with their full backing ArrayBuffer. Miniflare 4.20260617.1 also addresses that Uint8Array issue directly. The Vite plugin v1.42.1 fixed relative cf-worker entrypoint resolution so ./src/index.ts imports now resolve relative to the importing module, not the config file. And create-cloudflare 2.70.5 stopped an infinite re-launch loop under pnpm 11 caused by that version's supply-chain protection.
Vercel goes realtime with WebSocket Functions
Vercel's biggest news this week is WebSocket support for Functions, now in public beta. Functions can serve WebSocket connections using standard Node.js libraries, with billing only for active CPU time — idle connections don't cost anything. This opens up realtime features like interactive AI streaming, chat, and collaborative apps on Vercel's Fluid compute. The ecosystem is already adapting: @vercel/functions 3.7.2 added a maxPayload option (defaulting to 256 KiB) to experimental_upgradeWebSocket(), and the Vercel CLI Python side added WebSocket support for ASGI apps via a vendored wsproto.
The Vercel CLI 5.14.5 introduced vercel blob presign for generating signed URLs directly from the command line, scoped per operation (get, head, put, delete) with configurable expiration up to 7 days. A companion vercel blob signed-token command separates token generation from URL generation for advanced workflows. Meanwhile, Vercel raised the project-per-repo limit for hobby users from 10 to 25, making monorepo workflows more practical on the free tier.
The Go builder 3.9.1 now supervises standalone server processes after the startup handshake, reporting unrecoverable errors over IPC so the platform can recycle instances instead of serving stale 502s. Dev mode fixes include persisting the server across requests and waiting for the server port to be ready instead of a fixed 2-second window. The AI Gateway added Sakana Fugu Ultra, a model that coordinates multiple frontier agents into a single answer.
Next.js, AI SDK, and Railway tweaks
Next.js continued its canary cycle: v16.3.0-canary.58 added chunk loading retries on failure and upgraded React, while v16.3.0-canary.59 fixed after(callback) being called after the response had ended and upgraded to swc 70. The embedded Claude Code plugin marketplace was removed in canary.60. On the AI SDK front, WorkflowAgent v1.0.0-beta.101 now rejects system messages inside prompt by default, and @ai-sdk/tui v1.0.0-beta.18 added a sandbox option for tool execution.
Railway shipped five CLI releases this week, adding private networking, network flow logs, WAF under attack commands, and CDN management commands. The config output now includes terraform-style plan summaries with optional detailed exit codes and value revelation.
Releases covered
- Cloudflare R2 SQL adds window functions, DISTINCT, and set operations
- Wrangler 4.103.0 moves and removes experimental APIs, fixes dev crash and worker output bug
- Workers SDK miniflare@4.20260617.1 fixes Uint8Array step output buffer over-persistence in local Workflows
- Workers vite plugin v1.42.1 fixes relative cf-worker entrypoint resolution
- Workers create-cloudflare 2.70.5 fixes infinite loop with pnpm 11
- Vercel launches WebSocket support in Public Beta for Functions
- @vercel/functions 3.7.2 adds maxPayload option for WebSocket upgrade
- Vercel CLI v0.15.0 adds WebSocket support for Python ASGI apps
- Vercel CLI 5.14.5 signs blob URLs from the command line
- Vercel increases project-per-repo limit to 25 for hobby users
- Vercel CLI Go builder 3.9.1 supervises standalone servers and fixes vc dev
- Vercel AI Gateway adds Sakana Fugu Ultra model
- Next.js v16.3.0-canary.58 retries chunk loading on failure, upgrades React
- Next.js v16.3.0-canary.59 fixes after() callback timing and request API issues
- Next.js v16.3.0-canary.60 removes embedded Claude Code plugin marketplace
- AI SDK Workflow v1.0.0-beta.101 rejects system messages in prompt by default
- AI SDK @ai-sdk/tui@1.0.0-beta.18 adds sandbox option for tool execution