Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,9 @@ products:
date: 2025-04-04T14:00:00Z
---

We're excited to share that you can now use Playwright's browser automation [capabilities](https://playwright.dev/docs/api/class-playwright) from Cloudflare [Workers](/workers/).
We're excited to share that you can now use Playwright's browser automation [capabilities](/playwright/docs/api/class-playwright) from Cloudflare [Workers](/workers/).

[Playwright](https://playwright.dev/) is an open-source package developed by Microsoft that can do browser automation tasks; it's commonly used to write software tests, debug applications, create screenshots, and crawl pages. Like [Puppeteer](/browser-rendering/platform/puppeteer/), we [forked](https://github.com/cloudflare/playwright) Playwright and modified it to be compatible with Cloudflare Workers and [Browser Rendering](https://developers.cloudflare.com/browser-rendering/).
Like [Puppeteer](/browser-rendering/platform/puppeteer/), we [forked](https://github.com/cloudflare/playwright) Playwright and modified it to be compatible with Cloudflare Workers and [Browser Rendering](/browser-rendering/).

Below is an example of how to use Playwright with Browser Rendering to test a TODO application using assertions:

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ products:
date: 2025-04-07T6:00:00Z
---

Were excited to announce Browser Rendering is now available on the [Workers Free plan](https://www.cloudflare.com/plans/developer-platform/), making it even easier to prototype and experiment with web search and headless browser use-cases when building applications on Workers.
We're excited to announce Browser Rendering is now available on the [Workers Free plan](https://www.cloudflare.com/plans/developer-platform/), making it even easier to prototype and experiment with web search and headless browser use-cases when building applications on Workers.

The Browser Rendering **[REST API](/browser-rendering/rest-api/) is now Generally Available**, allowing you to control browser instances from outside of Workers applications. We've added three new endpoints to help automate more browser tasks:

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,4 +18,4 @@ When enabled, the tool automatically [hashes images for enabled websites as they

**Updated Service-Specific Terms**

We have also made updates to our **[Service-Specific Terms](https://www.cloudflare.com/service-specific-terms-application-services/#csam-scanning-tool-terms)** to reflect these changes.
We've also made updates to our **[Service-Specific Terms](https://www.cloudflare.com/service-specific-terms-application-services/#csam-scanning-tool-terms)** to reflect these changes.
6 changes: 3 additions & 3 deletions src/content/changelog/cache/2025-04-01-purge-for-all.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,10 @@ title: All cache purge methods now available for all plans
description: All Cloudflare plans can purge by tag, prefix, url, host, or everything to invalidate cached content on the fly.
products:
- cache
date: 2025-04-03T18:00:00Z
date: 2025-04-03T18:00:00Z
---

You can now access all Cloudflare cache purge methods no matter which plan youre on. Whether you need to update a single asset or instantly invalidate large portions of your sites content, you now have the same powerful tools previously reserved for Enterprise customers.
You can now access all Cloudflare cache purge methods - no matter which plan you're on. Whether you need to update a single asset or instantly invalidate large portions of your site's content, you now have the same powerful tools previously reserved for Enterprise customers.

**Anyone on Cloudflare can now:**
1. [Purge Everything](/cache/how-to/purge-cache/purge-everything/): Clears all cached content associated with a website.
Expand All @@ -15,5 +15,5 @@ You can now access all Cloudflare cache purge methods — no matter which plan y
4. [Purge by URL (single-file purge)](/cache/how-to/purge-cache/purge-by-single-file/): Precisely targets individual URLs.
5. [Purge by Tag](/cache/how-to/purge-cache/purge-by-tags/): Uses Cache-Tag response headers to invalidate grouped assets, offering flexibility for complex cache management scenarios.

Want to learn how each purge method works, when to use them, or what limits apply to your plan? Dive into our [purge cache documentation](/cache/how-to/purge-cache/) and [API reference](https://developers.cloudflare.com/api/resources/cache/methods/purge/) for all the details.
Want to learn how each purge method works, when to use them, or what limits apply to your plan? Dive into our [purge cache documentation](/cache/how-to/purge-cache/) and [API reference](/api/resources/cache/methods/purge/) for all the details.

2 changes: 1 addition & 1 deletion src/content/changelog/d1/2025-01-07-d1-faster-query.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ Users making [D1](/d1/) requests via the [Workers API](/d1/worker-api/) can see

![D1 Worker API latency](public/images/d1/faster-d1-worker-api.png)

*p50, p90, and p95 request latency aggregated across entire D1 service. These latencies are a reference point and should not be viewed as your exact workload improvement.*
*p50, p90, and p95 request latency aggregated across entire D1 service. These latencies are a reference point and shouldn't be viewed as your exact workload improvement.*

This performance improvement benefits all D1 Worker API traffic, especially cross-region requests where network latency is an outsized latency factor. For example, a user in Europe talking to a database in North America. D1 [location hints](/d1/configuration/data-location/#provide-a-location-hint) can be used to influence the geographic location of a database.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,11 @@ title: SQLite in Durable Objects GA with 10GB storage per object
description: SQLite-backed Durable Objects are generally available.
products:
- durable-objects
- workers
- workers
date: 2025-04-07T06:00:00Z
---

SQLite in Durable Objects is now generally available (GA) with 10GB SQLite database per Durable Object. Since the [public beta](https://blog.cloudflare.com/sqlite-in-durable-objects/) in September 2024, we've added feature parity and robustness for the SQLite storage backend compared to the preexisting key-value (KV) storage backend for Durable Objects.
SQLite in Durable Objects is now generally available (GA) with 10GB SQLite database per Durable Object. Since the [public beta](https://blog.cloudflare.com/sqlite-in-durable-objects/) in September 2024, we've added feature parity and robustness for the SQLite storage backend compared to the preexisting key-value (KV) storage backend for Durable Objects.

SQLite-backed Durable Objects are recommended for all new Durable Object classes, using `new_sqlite_classes` [Wrangler configuration](/durable-objects/best-practices/access-durable-objects-storage/#create-sqlite-backed-durable-object-class). Only SQLite-backed Durable Objects have access to Storage API's [SQL](/durable-objects/api/storage-api/#sql-api) and [point-in-time recovery](/durable-objects/api/storage-api/#pitr-point-in-time-recovery-api) methods, which provide relational data modeling, SQL querying, and better data management.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,8 @@ It's now possible to keep a threaded email conversation with an [Email Worker](/
Here's an example of a Worker responding to Emails using a Workers AI model:

```ts title="AI model responding to emails"
import PostalMime from "postal-mime";
import {createMimeMessage} from "mimetext"
import PostalMime from 'postal-mime';
import { createMimeMessage } from 'mimetext';
import { EmailMessage } from "cloudflare:email";

export default {
Expand Down Expand Up @@ -48,4 +48,5 @@ export default {
} satisfies ExportedHandler<Env>;
```

See [Reply to emails from Workers](/email-routing/email-workers/reply-email-workers/) for more information.
See [Reply to emails from Workers](/email-routing/email-workers/reply-email-workers/) for more information.

Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ export default {
};
```

Now when you run `npx wrangler dev`, wrangler will expose a local `/cdn-cgi/handler/email` endpoint that you can `POST` email messages to and trigger your Worker's `email()` handler:
When you run `npx wrangler dev`, wrangler exposes a local `/cdn-cgi/handler/email` endpoint that allows you to `POST` email messages and trigger your Worker's `email()` handler:

```bash
curl -X POST 'http://localhost:8787/cdn-cgi/handler/email' \
Expand All @@ -43,7 +43,7 @@ Message-ID: <6114391943504294873000@ZSH-GHOSTTY>
Hi there'
```

This is what you get in the console:
The following output appears in the console:

```json
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,10 @@ date: 2025-02-03
---
![Screenshot of Terraform defining a Zone](~/assets/images/changelog/2024-02-03-terraform-v5-screenshot.png)

Cloudflare's v5 Terraform Provider is now generally available. With this release, Terraform resources are now automatically generated based on OpenAPI Schemas. This change brings alignment across our SDKs, API documentation, and now Terraform Provider. The new provider boosts coverage by increasing support for API properties to 100%, adding 25% more resources, and more than 200 additional data sources. Going forward, this will also reduce the barriers to bringing more resources into Terraform across the broader Cloudflare API. This is a small, but important step to making more of our platform manageable through GitOps, making it easier for you to manage Cloudflare just like you do your other infrastructure.
The release of Cloudflare's v5 Terraform Provider marks its general availability. With this release, Terraform resources are now automatically generated based on OpenAPI Schemas. This update aligns our SDKs, API documentation, and Terraform Provider. The new provider boosts coverage by increasing support for API properties to 100%, adding 25% more resources, and more than 200 additional data sources. Going forward, this improvement will also reduce the barriers to bringing more resources into Terraform across the broader Cloudflare API. This milestone is a small, but important step to making more of our platform manageable through GitOps, making it easier for you to manage Cloudflare just like you do your other infrastructure.

The Cloudflare Terraform Provider v5 is a ground-up rewrite of the provider and introduces breaking changes for some resource types. Please refer to the [upgrade guide](https://registry.terraform.io/providers/cloudflare/cloudflare/latest/docs/guides/version-5-upgrade) for best practices, or the [blog post on automatically generating Cloudflare's Terraform Provider](https://blog.cloudflare.com/automatically-generating-cloudflares-terraform-provider/) for more information about the approach.
Please refer to the [upgrade guide](/terraform/providers/cloudflare/cloudflare/latest/docs/guides/version-5-upgrade) for best practices, or the [blog post on automatically generating Cloudflare's Terraform Provider](/blog/automatically-generating-cloudflares-terraform-provider/) for more information about the approach.

For more info
* [Terraform provider](https://registry.terraform.io/providers/cloudflare/cloudflare/latest/docs)
* [Documentation on using Terraform with Cloudflare](https://developers.cloudflare.com/terraform/)
* [Documentation on using Terraform with Cloudflare](/terraform/)
Loading