Zum Inhalt springen

Developer Platform Updates & Release Notes

Einträge
583
Quellen
1
Zuletzt aktualisiert

Folge Developer Platform, um die Release Notes in deinen Feed zu holen.

Developer Platform von Cloudflare

Feinere Routensteuerung für SPAs

Die Option run_worker_first akzeptiert jetzt eine Liste von Routenmustern, um präzise zu steuern, wann der Worker bei Single-Page-Applications ausgeführt wird.

For those building Single Page Applications (SPAs) on Workers, you can now explicitly define which routes invoke your Worker script in Wrangler configuration. The run_worker_first config option has now been expanded to accept an array of route patterns, allowing you to more granularly specify when your Worker script runs.

Configuration example:

{
	"name": "my-spa-worker",
	// Set this to today's date
	"compatibility_date": "2026-10-11",
	"main": "./src/index.ts",
	"assets": {
		"directory": "./dist/",
		"not_found_handling": "single-page-application",
		"binding": "ASSETS",
		"run_worker_first": ["/api/*", "!/api/docs/*"]
	}
}
name = "my-spa-worker"
# Set this to today's date
compatibility_date = "2026-10-11"
main = "./src/index.ts"

[assets]
directory = "./dist/"
not_found_handling = "single-page-application"
binding = "ASSETS"
run_worker_first = [ "/api/*", "!/api/docs/*" ]

This new routing control was done in partnership with our community and customers who provided great feedback on our public proposal ↗︎. Thank you to everyone who brought forward use-cases and feedback on the design!

Prerequisites

…

Originalquelle(öffnet in neuem Tab)Problem melden

Developer Platform von Cloudflare

SSRF-Schwachstelle in @opennextjs/cloudflare für alle Kunden entschärft

Für alle bestehenden und künftigen Deployments mit dem Cloudflare-Adapter für Open Next wurden Schutzmaßnahmen gegen eine SSRF-Schwachstelle (CVE-2025-6087) über den /_next/image-Endpunkt eingeführt.

Mitigations have been put in place for all existing and future deployments of sites with the Cloudflare adapter for Open Next in response to an identified Server-Side Request Forgery (SSRF) vulnerability in the @opennextjs/cloudflare package.

The vulnerability stemmed from an unimplemented feature in the Cloudflare adapter for Open Next, which allowed users to proxy arbitrary remote content via the /_next/image endpoint.

This issue allowed attackers to load remote resources from arbitrary hosts under the victim site's domain for any site deployed using the Cloudflare adapter for Open Next. For example: https://victim-site.com/_next/image?url=https://attacker.com. In this example, attacker-controlled content from attacker.com is served through the victim site's domain (victim-site.com), violating the same-origin policy and potentially misleading users or other services.

References: https://www.cve.org/cverecord?id=CVE-2025-6087 ↗︎, https://github.com/opennextjs/opennextjs-cloudflare/security/advisories/GHSA-rvpw-p7vw-wj3m ↗︎

Impact

  • SSRF via unrestricted remote URL loading
  • Arbitrary remote content loading
  • Potential internal service exposure or phishing risks through domain abuse

Mitigation

The following mitigations have been put in place: …

Originalquelle(öffnet in neuem Tab)Problem melden

Developer Platform von Cloudflare

Schreibgeschützter Zugriff auf die Workers Platform für Account-Mitglieder

Es gibt die neue Rolle "Workers Platform (Read-only)" für lesenden Zugriff auf Produkte der Developer Platform, und die Rolle "Workers Admin" heißt jetzt "Workers Platform Admin".

You can now grant members of your Cloudflare account read-only access to the Workers Platform.

The new "Workers Platform (Read-only)" role grants read-only access to all products typically used as part of Cloudflare's Developer Platform, including Workers, Pages, Durable Objects, KV, R2, Zones, Zone Analytics and Page Rules. When Cloudflare introduces new products to the Workers platform, we will add additional read-only permissions to this role.

Additionally, the role previously named "Workers Admin" has been renamed to "Workers Platform Admin". This change ensures that the name more accurately reflects the permissions granted — this role has always granted access to more than just Workers — it grants read and write access to the products mentioned above, and similarly, as new products are added to the Workers platform, we will add additional read and write permissions to this role.

You can review the updated roles in the developer docs.

Originalquelle(öffnet in neuem Tab)Problem melden

Developer Platform von Cloudflare

Höhere Limits für Media Transformations in Stream

Bei Media Transformations steigt das Limit für Eingabedateien von 40 MB auf 100 MB und für die Ausgabedauer von 30 Sekunden auf 1 Minute, zudem wird das Eingabe-Asset besser gecacht, was Anfragen an den Origin-Speicher reduziert.

We have increased the limits for Media Transformations:

  • Input file size limit is now 100MB (was 40MB)
  • Output video duration limit is now 1 minute (was 30 seconds)

Additionally, we have improved caching of the input asset, resulting in fewer requests to origin storage even when transformation options may differ.

For more information, learn about Transforming Videos.

Originalquelle(öffnet in neuem Tab)Problem melden

Developer Platform von Cloudflare

Git-Commit-SHA und Branch-Name als Umgebungsvariablen in Workers Builds

Workers Builds setzt nun automatisch Standard-Umgebungsvariablen wie CI, WORKERS_CI, WORKERS_CI_BUILD_UUID, WORKERS_CI_COMMIT_SHA und WORKERS_CI_BRANCH, mit denen sich der Build je nach Kontext anpassen lässt.

Workers Builds connects your Worker to a Git repository, and automates building and deploying your code on each pushed change.

To make CI/CD pipelines even more flexible, Workers Builds now automatically injects default environment variables into your build process (much like the defaults in Cloudflare Pages projects). You can use these variables to customize your build process based on the deployment context, such as the branch or commit.

The following environment variables are injected by default:

Environment Variable

Injected value

Example use-case

CI

true

Changing build behavior when run on CI versus locally

WORKERS_CI

1

Changing build behavior when run on Workers Builds versus locally

WORKERS_CI_BUILD_UUID

<build-uuid-of-current-build>

Passing the Build UUID along to custom workflows

WORKERS_CI_COMMIT_SHA

<sha1-hash-of-current-commit>

Passing current commit ID to error reporting, for example, Sentry

WORKERS_CI_BRANCH

<branch-name-from-push-event

Customizing build based on branch, for example, disabling debug logging on production …

Originalquelle(öffnet in neuem Tab)Problem melden

Developer Platform von Cloudflare

Workers native integrations aus dem Cloudflare-Dashboard entfernt

Der Tab "Integrations" im Workers-Dashboard wurde entfernt, neue Verbindungen werden stattdessen per npx wrangler secret put als Secrets konfiguriert, während bestehende Integrationen unverändert weiterlaufen.

Workers native integrations were originally launched in May 2023 ↗︎ to connect to popular database and observability providers with your Worker in just a few clicks. We are changing how developers connect Workers to these external services. The Integrations tab in the dashboard has been removed in favor of a more direct, command-line-based approach using Wrangler secrets.

What's changed

  • Integrations tab removed: The integrations setup flow is no longer available in the Workers dashboard.
  • Manual secret configuration: New connections should be configured by adding credentials as secrets to your Workers using npx wrangler secret put commands.

Impact on existing integrations

Existing integrations will continue to work without any changes required. If you have integrations that were previously created through the dashboard, they will remain functional.

Updating existing integrations

If you'd like to modify your existing integration, you can update the secrets, environment variables, or Tail Workers that were created from the original integration setup. …

Originalquelle(öffnet in neuem Tab)Problem melden

Developer Platform von Cloudflare

Leistung und Größe des Cloudflare-Adapters für Open Next optimiert

@opennextjs/cloudflare v1.2 verkleinert das generierte Bundle für eine mit create-next-app erstellte App von 14 auf 8 MiB und verkürzt die Startzeit mittelgroßer Apps typischerweise um 100 ms, außerdem ist die SSRF-Schwachstelle ab v1.3.0 behoben.

With the release of the Cloudflare adapter for Open Next v1.0.0 in May 2025, we already had followups plans to improve performance and size ↗︎.

@opennextjs/cloudflare v1.2 released on June 5, 2025 delivers on these enhancements. By removing babel from the app code and dropping a dependency on @ampproject/toolbox-optimizer, we were able to reduce generated bundle sizes. Additionally, by stopping preloading of all app routes, we were able to improve the cold start time.

This means that users will now see a decrease from 14 to 8MiB (2.3 to 1.6MiB gzipped) in generated bundle size for a Next app created via create-next-app, and typically 100ms faster startup times for their medium-sized apps.

Users only need to update to the latest version of @opennextjs/cloudflare to automatically benefit from these improvements.

Note that we published CVE-2005-6087 ↗︎ for a SSRF vulnerability in the @opennextjs/cloudflare package. The vulnerability has been fixed from @opennextjs/cloudflare v1.3.0 onwards. Please update to any version after this one.

Originalquelle(öffnet in neuem Tab)Problem melden

Developer Platform von Cloudflare

AI Gateway: OpenAI-kompatibler Endpoint

AI Gateway bietet jetzt einen OpenAI-kompatiblen Chat-Completions-Endpoint, mit dem sich durch Ändern von model und apiKey zwischen Anbietern wechseln lässt, während Anfrage- und Antwortformat gleich bleiben; der Embeddings-Endpoint folgt.

Users can now use an OpenAI Compatible endpoint in AI Gateway to easily switch between providers, while keeping the exact same request and response formats. We're launching now with the chat completions endpoint, with the embeddings endpoint coming up next.

To get started, use the OpenAI compatible chat completions endpoint URL with your own account id and gateway id and switch between providers by changing the model and apiKey parameters.

OpenAI SDK Examplejs

import OpenAI from "openai";
const client = new OpenAI({
	apiKey: "YOUR_PROVIDER_API_KEY", // Provider API key
	baseURL:
		"https://gateway.ai.cloudflare.com/v1/{account_id}/{gateway_id}/compat",
});

const response = await client.chat.completions.create({
	model: "google-ai-studio/gemini-2.0-flash",
	messages: [{ role: "user", content: "What is Cloudflare?" }],
});

console.log(response.choices[0].message.content);

Additionally, the OpenAI Compatible endpoint can be combined with our Universal Endpoint to add fallbacks across multiple providers. That means AI Gateway will return every response in the same standardized format, no extra parsing logic required!

Learn more in the OpenAI Compatibility documentation.

Originalquelle(öffnet in neuem Tab)Problem melden

Developer Platform von Cloudflare

Workers: Architekturdiagramm im Cloudflare-Dashboard

Im Cloudflare-Dashboard lässt sich die Architektur eines Workers mit seinen Bindings wie D1, Durable Objects und KV nun in einem Diagramm ansehen und dort auch Bindings hinzufügen und verwalten.

You can now visualize, explore and modify your Worker’s architecture directly in the Cloudflare dashboard, making it easier to understand how your application connects to Cloudflare resources like D1 databases, Durable Objects, KV namespaces, and more.

Bindings canvas

With this new view, you can easily:

  • Explore existing bindings in a visual, architecture-style diagram
  • Add and manage bindings directly from the same interface
  • Discover the full range of compute, storage, AI, and media resources you can attach to your Workers application.

To get started, head to the Cloudflare dashboard ↗︎ and open the Bindings tab of any Workers application.

Originalquelle(öffnet in neuem Tab)Problem melden

Developer Platform von Cloudflare

Pages: Node.js v22 jetzt Standard in Builds

Das Build-Image von Cloudflare Pages enthält jetzt standardmäßig Node.js v22 statt v18, wobei neue Projekte das V3-Image nutzen und bestehende Projekte in den Einstellungen umstellen können.

When you use the built-in build system that is part of Cloudflare Pages, the Build Image now includes Node.js v22. Previously, Node.js v18 was provided by default, and Node.js v18 is now end-of-life (EOL).

If you are creating a new Pages project, the new V3 build image that includes Node.js v22 will be used by default. If you have an existing Pages project, you can update to the latest build image by navigating to Settings > Build & deployments > Build system version in the Cloudflare dashboard for a specific Pages project.

Note that you can always specify a particular version of Node.js or other built-in dependencies by setting an environment variable.

For more, refer to the developer docs for Cloudflare Pages builds

Originalquelle(öffnet in neuem Tab)Problem melden

Developer Platform von Cloudflare

Workers: Chrome Devtools im Cloudflare Vite plugin

Mit dem Cloudflare Vite plugin lassen sich lokal laufende Workers jetzt über eine Debug-URL mit Chrome Devtools debuggen, profilen und auf Logs sowie Speichernutzung analysieren.

You can now debug, profile, view logs, and analyze memory usage for your Worker ↗︎ using Chrome Devtools ↗︎ when your Worker runs locally using the Cloudflare Vite plugin ↗︎.

Previously, this was only possible if your Worker ran locally using the Wrangler CLI ↗︎, and now you can do all the same things if your Worker uses Vite ↗︎.

When you run vite, you'll now see a debug URL in your console:

  VITE v6.3.5  ready in 461 ms

  ➜  Local:   http://localhost:5173/
  ➜  Network: use --host to expose
  ➜  Debug:   http://localhost:5173/__debug
  ➜  press h + enter to show help

Open the URL in Chrome, and an instance of Chrome Devtools will open and connect to your Worker running locally. You can then use Chrome Devtools to debug and introspect performance issues. For example, you can navigate to the Performance tab to understand where CPU time is spent in your Worker:

CPU Profile

For more information on how to get the most out of Chrome Devtools, refer to the following docs: …

Originalquelle(öffnet in neuem Tab)Problem melden

Developer Platform von Cloudflare

D1: 50–500 ms schnellere REST-API-Anfragen

D1-REST-API-Anfragen sind um 50–500 ms schneller, da die Authentifizierung nun im nächstgelegenen Rechenzentrum statt in zentralen Core-Rechenzentren erfolgt.

Users using Cloudflare's REST API to query their D1 database can see lower end-to-end request latency now that D1 authentication is performed at the closest Cloudflare network data center that received the request. Previously, authentication required D1 REST API requests to proxy to Cloudflare's core, centralized data centers, which added network round trips and latency.

Latency improvements range from 50-500 ms depending on request location and database location and only apply to the REST API. REST API requests and databases outside the United States see a bigger benefit since Cloudflare's primary core data centers reside in the United States.

D1 query endpoints like /query and /raw have the most noticeable improvements since they no longer access Cloudflare's core data centers. D1 control plane endpoints such as those to create and delete databases see smaller improvements, since they still require access to Cloudflare's core data centers for other control plane metadata.

Originalquelle(öffnet in neuem Tab)Problem melden

Developer Platform von Cloudflare

Playwright MCP Server mit Browser Rendering kompatibel

Der Playwright MCP Server lässt sich nun mit Browser Rendering nutzen, sodass KI-Modelle über einen MCP-Client Browseraufgaben wie Screenshots, Formulare oder Scraping automatisieren können.

We're excited to share that you can now use the Playwright MCP ↗︎ server with Browser Rendering.

Once you deploy the server, you can use any MCP client with it to interact with Browser Rendering. This allows you to run AI models that can automate browser tasks, such as taking screenshots, filling out forms, or scraping data.

Access Analytics

Playwright MCP is available as an npm package at @cloudflare/playwright-mcp ↗︎. To install it, type:

npmyarnpnpmbun

npm i -D @cloudflare/playwright-mcp
yarn add -D @cloudflare/playwright-mcp
pnpm add -D @cloudflare/playwright-mcp
bun add -d @cloudflare/playwright-mcp

Deploying the server is then as easy as:

import { env } from "cloudflare:workers";
import { createMcpAgent } from "@cloudflare/playwright-mcp";

export const PlaywrightMCP = createMcpAgent(env.BROWSER);
export default PlaywrightMCP.mount("/sse");

Check out the full code at GitHub ↗︎.

Learn more about Playwright MCP in our documentation.

Originalquelle(öffnet in neuem Tab)Problem melden

Developer Platform von Cloudflare

Workers: Abbruch eingehender Anfragen mit Request.signal

In Workers kann man über Request.signal einen Event Listener anhängen, der reagiert, wenn der Client die Anfrage abbricht, sofern das Compatibility Flag enable_request_signal gesetzt ist.

In Cloudflare Workers, you can now attach an event listener to Request objects, using the signal property ↗︎. This allows you to perform tasks when the request to your Worker is canceled by the client. To use this feature, you must set the enable_request_signal compatibility flag.

You can use a listener to perform cleanup tasks or write to logs before your Worker's invocation ends. For example, if you run the Worker below, and then abort the request from the client, a log will be written:

index.jsjs

export default {
	async fetch(request, env, ctx) {
		// This sets up an event listener that will be called if the client disconnects from your
		// worker.
		request.signal.addEventListener("abort", () => {
			console.log("The request was aborted!");
		});

		const { readable, writable } = new IdentityTransformStream();
		sendPing(writable);
		return new Response(readable, {
			headers: { "Content-Type": "text/plain" },
		});
	},
};

async function sendPing(writable) {
	const writer = writable.getWriter();
	const enc = new TextEncoder();

	for (;;) {
		// Send 'ping' every second to keep the connection alive
		await writer.write(enc.encode("ping\r\n"));
		await scheduler.wait(1000);
	}
}

index.tsts

Originalquelle(öffnet in neuem Tab)Problem melden

Developer Platform von Cloudflare

Durable Objects jetzt in Python Workers unterstützt

Durable Objects lassen sich jetzt auch mit Python Workers erstellen, ähnlich wie in JavaScript definiert und über die Wrangler-Konfiguration eingebunden.

You can now create Durable Objects using Python Workers. A Durable Object is a special kind of Cloudflare Worker which uniquely combines compute with storage, enabling stateful long-running applications which run close to your users. For more info see here.

You can define a Durable Object in Python in a similar way to JavaScript:

from workers import DurableObject, Response, WorkerEntrypoint

from urllib.parse import urlparse

class MyDurableObject(DurableObject):
    def __init__(self, ctx, env):
        self.ctx = ctx
        self.env = env

    def fetch(self, request):
        result = self.ctx.storage.sql.exec("SELECT 'Hello, World!' as greeting").one()
        return Response(result.greeting)

class Default(WorkerEntrypoint):
    async def fetch(self, request):
        url = urlparse(request.url)
        id = env.MY_DURABLE_OBJECT.idFromName(url.path)
        stub = env.MY_DURABLE_OBJECT.get(id)
        greeting = await stub.fetch(request.url)
        return greeting

Define the Durable Object in your Wrangler configuration file:

{
	"durable_objects": {
		"bindings": [
			{
				"name": "MY_DURABLE_OBJECT",
				"class_name": "MyDurableObject"
			}
		]
	}
}
[[durable_objects.bindings]]
name = "MY_DURABLE_OBJECT"
class_name = "MyDurableObject"
``` …

Originalquelle(öffnet in neuem Tab)Problem melden

Developer Platform von Cloudflare

Hyperdrive erhält FedRAMP-Moderate-Impact-Autorisierung

Hyperdrive wurde für FedRAMP zugelassen und steht im FedRAMP Marketplace bereit, sodass US-Bundesbehörden den Dienst auf Moderate-Impact-Stufe nutzen dürfen.

Hyperdrive has been approved for FedRAMP Authorization and is now available in the FedRAMP Marketplace ↗︎.

FedRAMP is a U.S. government program that provides standardized assessment and authorization for cloud products and services. As a result of this product update, Hyperdrive has been approved as an authorized service to be used by U.S. federal agencies at the Moderate Impact level.

For detailed information regarding FedRAMP and its implications, please refer to the official FedRAMP documentation for Cloudflare ↗︎.

Originalquelle(öffnet in neuem Tab)Problem melden

Developer Platform von Cloudflare

Stream: Origin-Beschränkungen für Media Transformations

Die Media-Transformations-Beta unterstützt nun Beschränkungen der Quell-Origins, standardmäßig sind nur Originale von derselben Domain erlaubt, und weitere Quellen lassen sich im Dashboard freigeben.

We are adding source origin restrictions to the Media Transformations beta. This allows customers to restrict what sources can be used to fetch images and video for transformations. This feature is the same as --- and uses the same settings as --- Image Transformations sources.

When transformations is first enabled, the default setting only allows transformations on images and media from the same website or domain being used to make the transformation request. In other words, by default, requests to example.com/cdn-cgi/media can only reference originals on example.com.

Enable allowed origins from the Cloudflare dashboard

Adding access to other sources, or allowing any source, is easy to do in the Transformations tab under Stream. Click each domain enabled for Transformations and set its sources list to match the needs of your content. The user making this change will need permission to edit zone settings.

For more information, learn about Transforming Videos.

Originalquelle(öffnet in neuem Tab)Problem melden

Developer Platform von Cloudflare

Queues: Nachrichten direkt per HTTP veröffentlichen

Nachrichten lassen sich jetzt von jedem Dienst oder jeder Sprache per HTTP an Cloudflare Queues senden, wofür ein API-Token mit Queues Edit-Berechtigung nötig ist.

You can now publish messages to Cloudflare Queues directly via HTTP from any service or programming language that supports sending HTTP requests. Previously, publishing to queues was only possible from within Cloudflare Workers. You can already consume from queues via Workers or HTTP pull consumers, and now publishing is just as flexible.

Publishing via HTTP requires a Cloudflare API token with Queues Edit permissions for authentication. Here's a simple example:

curl "https://api.cloudflare.com/client/v4/accounts/<account_id>/queues/<queue_id>/messages" \
  -X POST \
  -H 'Authorization: Bearer <api_token>' \
  --data '{ "body": { "greeting": "hello", "timestamp":  "2025-07-24T12:00:00Z"} }'

You can also use our SDKs for TypeScript, Python, and Go.

To get started with HTTP publishing, check out our step-by-step example and the full API documentation in our API reference.

Originalquelle(öffnet in neuem Tab)Problem melden

Developer Platform von Cloudflare

Workers: Bessere Speichereffizienz für WebAssembly Workers

FinalizationRegistry ist in Workers über das Compatibility Flag enable_weak_ref verfügbar und kann Speicherlecks bei WebAssembly-basierten Workers wie Python und Rust Workers verringern.

FinalizationRegistry ↗︎ is now available in Workers. You can opt-in using the enable_weak_ref compatibility flag.

This can reduce memory leaks when using WebAssembly-based Workers, which includes Python Workers and Rust Workers. The FinalizationRegistry works by enabling toolchains such as Emscripten ↗︎ and wasm-bindgen ↗︎ to automatically free WebAssembly heap allocations. If you are using WASM and seeing Exceeded Memory errors and cannot determine a cause using memory profiling, you may want to enable the FinalizationRegistry.

For more information refer to the enable_weak_ref compatibility flag documentation.

Originalquelle(öffnet in neuem Tab)Problem melden

Developer Platform von Cloudflare

R2: Neuerungen im Dashboard

Das R2-Dashboard bietet eine neu gestaltete Einstellungsseite, Deeplinks für Präfix-Verzeichnisse, Objekte als klickbare Links sowie klarere Bezeichnungen und Statusanzeigen für öffentlichen Zugriff.

We're excited to announce several improvements to the Cloudflare R2 dashboard experience that make managing your object storage easier and more intuitive:

Cloudflare R2 Dashboard

All-new settings page

We've redesigned the bucket settings page, giving you a centralized location to manage all your bucket configurations in one place.

Improved navigation and sharing

  • Deeplink support for prefix directories: Navigate through your bucket hierarchy without losing your state. Your browser's back button now works as expected, and you can share direct links to specific prefix directories with teammates.
  • Objects as clickable links: Objects are now proper links that you can copy or CMD + Click to open in a new tab.

Clearer public access controls

  • Renamed "r2.dev domain" to "Public Development URL" for better clarity when exposing bucket contents for non-production workloads.
  • Public Access status now clearly displays "Enabled" when your bucket is exposed to the internet (via Public Development URL or Custom Domains).

We've also made numerous other usability improvements across the board to make your R2 experience smoother and more productive.

Originalquelle(öffnet in neuem Tab)Problem melden