You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: src/content/changelog/workers/2025-02-27-wrangler-v4-rc.mdx
+41-13Lines changed: 41 additions & 13 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -8,27 +8,55 @@ date: 2025-02-27T11:00:00Z
8
8
9
9
import { PackageManagers } from"~/components";
10
10
11
-
We've released a release candidate of the next major version of [Wrangler](/workers/wrangler/), the CLI for Cloudflare Workers — `[email protected]`. You can run the following command to install it and be one of the first to try it out:
11
+
We've released a release candidate of the next major version of [Wrangler](/workers/wrangler/), the CLI for Cloudflare Workers — `[email protected]`.
12
+
13
+
You can run the following command to install it and be one of the first to try it out:
12
14
13
15
<PackageManagerspkg="wrangler@v4-rc" />
14
16
15
-
Unlike previous major versions of Wrangler, which were foundational rewrites and rearchitectures — Version 4 of Wrangler includes a much smaller set of changes. If you use Wrangler today, your workflow is very unlikely to change. Before we release Wrangler v4 and advance past the release candidate stage, we'll share a detailed migration guide in the Workers developer docs. But for the vast majority of cases, you won't need to do anything to migrate — things will just work as they do today.
17
+
Unlike previous major versions of Wrangler, which were [foundational rewrites](https://blog.cloudflare.com/wrangler-v2-beta/) and [rearchitectures](https://blog.cloudflare.com/wrangler3/) — Version 4 of Wrangler includes a much smaller set of changes. If you use Wrangler today, your workflow is very unlikely to change. Before we release Wrangler v4 and advance past the release candidate stage, we'll share a detailed migration guide in the Workers developer docs. But for the vast majority of cases, you won't need to do anything to migrate — things will just work as they do today. We are sharing this release candidate in advance of the official release of v4, so that you can try it out early and share feedback.
18
+
19
+
#### New JavaScript language features that you can now use with Wrangler v4
20
+
21
+
Version 4 of Wrangler updates the version of [esbuild](https://esbuild.github.io/) that Wrangler uses internally, allowing you to use modern JavaScript language features, including:
22
+
23
+
##### The `using` keyword from Explicit Resource Management
24
+
25
+
The [`using` keyword from the Explicit Resource Management standard](/workers/runtime-apis/rpc/lifecycle/#explicit-resource-management), making it easier to work with the [JavaScript-native RPC system built into Workers](/workers/runtime-apis/rpc/). This means that when you obtain a stub, you can ensure that it is automatically disposed when you exit scope it was created in:
26
+
27
+
```js
28
+
functionsendEmail(id, message) {
29
+
using user =awaitenv.USER_SERVICE.findUser(id);
30
+
awaituser.sendEmail(message);
31
+
32
+
// user[Symbol.dispose]() is implicitly called at the end of the scope.
33
+
}
34
+
```
35
+
36
+
##### Import attributes
37
+
38
+
[Import attributes](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/import/with) allow you to denote the type or other attributes of the module that your code imports. For example, you can import a JSON module, using the following syntax:
39
+
40
+
```js
41
+
importdatafrom"./data.json" with { type: "json" };
42
+
```
43
+
44
+
#### Other changes
45
+
46
+
##### `--local` is now the default for all CLI commands
47
+
48
+
All commands that access resources (for example, `wrangler kv`, `wrangler r2`, `wrangler d1`) now access local datastores by default, ensuring consistent behavior, intended to reduce confusion
16
49
17
-
Most notably, version 4 of Wrangler updates the version of [esbuild](https://esbuild.github.io/) that Wrangler uses internally, allowing you to use modern JavaScript language features, including:
50
+
##### Clearer policy for the minimum required version of Node.js required to run Wrangler
18
51
19
-
- the [`using` keyword from the Explicit Resourece Management standard](https://github.com/tc39/proposal-explicit-resource-management), making it easier to work with the [JavaScript-native RPC system built into Workers](/workers/runtime-apis/rpc/).
20
-
-importattributes
52
+
Moving forward, the [active, maintenance, and current versions of Node.js](https://nodejs.org/en/about/previous-releases) will be officially supported. This means the minimum officially supported version of Node.js for Wrangler v4 will e Node.js v18 or later. This policy mirrors how many other packages and CLIs support older versions of Node.js, and ensures that as long as you are using a version of Node.js that the Node.js project itself supports, this will be supported by Wrangler as well.
21
53
22
-
Version 4 alsointroducesthefollowingchanges:
54
+
##### Features previously deprecated in Wrangler v3 are now removed in Wrangler v4
Movingforward, the [active, maintenance, andcurrentversionsofNode.js](https://nodejs.org/en/about/previous-releases) will be officially supported. This means the minimum officially supported version of Node.js for Wrangler v4 will e Node.js v18 or later. This policy mirrors how many other packages and CLIs support older versions of Node.js, and ensures that as long as you are using a version of Node.js that the Node.js project itself supports, this will be supported by Wrangler as well.
AlldeprecatedfeatureswillberemovedfromWrangler, including
32
60
- Arguments:
33
61
-`wrangler dev/deploy --legacy-assets`
34
62
-`wrangler dev/deploy --format`
@@ -53,4 +81,4 @@ Version 4 also introduces the following changes:
53
81
-`kv-namespaces`
54
82
-`legacy_assets`
55
83
56
-
We'd love your feedback, etc.
84
+
We'd love your feedback! If you find a bug or hit a roadblock when upgrading to Wrangler v4, [open an issue on the `cloudflare/workers-sdk` repository on GitHub](https://github.com/cloudflare/workers-sdk/issues/new?template=bug-template.yaml).
0 commit comments