wrangler 4.123.0 → 4.125.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -61,9 +61,8 @@ function runCfWranglerDevFromArgs(parsedArgs) {
61
61
 
62
62
  function createDevOptions(parsedArgs) {
63
63
  // Build wrangler dev's full (yargs-derived) options object. Every field
64
- // must be present; we set the four accepted flags plus `wrangler dev`'s
65
- // defaults and leave everything else `undefined`, which makes wrangler's
66
- // ConfigController resolve those exactly as `wrangler dev` would.
64
+ // must be present; we set the four accepted flags, force cf's new config
65
+ // format, and otherwise use `wrangler dev`'s defaults.
67
66
  return {
68
67
  _: [],
69
68
  $0: "",
@@ -77,6 +76,7 @@ function createDevOptions(parsedArgs) {
77
76
  testScheduled: false,
78
77
  processEntrypoint: false,
79
78
  experimentalAutoCreate: false,
79
+ experimentalNewConfig: true,
80
80
  types: false,
81
81
  disableDevRegistry: false,
82
82
  config: undefined,
@@ -1,6 +1,5 @@
1
1
  {
2
2
  "$schema": "http://json-schema.org/draft-07/schema#",
3
- "$ref": "#/definitions/RawConfig",
4
3
  "definitions": {
5
4
  "RawConfig": {
6
5
  "type": "object",
@@ -660,6 +659,38 @@
660
659
  "producers": []
661
660
  }
662
661
  },
662
+ "connect": {
663
+ "type": "array",
664
+ "items": {
665
+ "type": "object",
666
+ "properties": {
667
+ "protocol": {
668
+ "type": "string",
669
+ "const": "tcp",
670
+ "description": "The transport protocol to listen for.",
671
+ "markdownDescription": "The transport protocol to listen for."
672
+ },
673
+ "port": {
674
+ "type": "number",
675
+ "description": "The port to listen on.",
676
+ "markdownDescription": "The port to listen on."
677
+ },
678
+ "address": {
679
+ "type": "string",
680
+ "description": "The address to bind to. Defaults to `127.0.0.1`.",
681
+ "markdownDescription": "The address to bind to. Defaults to `127.0.0.1`."
682
+ }
683
+ },
684
+ "required": [
685
+ "protocol",
686
+ "port"
687
+ ],
688
+ "additionalProperties": false
689
+ },
690
+ "description": "Specifies raw sockets that this Worker should listen on. Each entry opens a listening socket on the given port that delivers incoming connections directly to the Worker's `connect(socket, env, ctx)` handler.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
691
+ "markdownDescription": "Specifies raw sockets that this Worker should listen on.\nEach entry opens a listening socket on the\ngiven port that delivers incoming connections directly to the Worker's\n`connect(socket, env, ctx)` handler.\n\nNOTE: This field is not automatically inherited from the top level environment,\nand so must be specified in every named environment.",
692
+ "default": []
693
+ },
663
694
  "r2_buckets": {
664
695
  "type": "array",
665
696
  "items": {
@@ -2426,6 +2457,38 @@
2426
2457
  "producers": []
2427
2458
  }
2428
2459
  },
2460
+ "connect": {
2461
+ "type": "array",
2462
+ "items": {
2463
+ "type": "object",
2464
+ "properties": {
2465
+ "protocol": {
2466
+ "type": "string",
2467
+ "const": "tcp",
2468
+ "description": "The transport protocol to listen for.",
2469
+ "markdownDescription": "The transport protocol to listen for."
2470
+ },
2471
+ "port": {
2472
+ "type": "number",
2473
+ "description": "The port to listen on.",
2474
+ "markdownDescription": "The port to listen on."
2475
+ },
2476
+ "address": {
2477
+ "type": "string",
2478
+ "description": "The address to bind to. Defaults to `127.0.0.1`.",
2479
+ "markdownDescription": "The address to bind to. Defaults to `127.0.0.1`."
2480
+ }
2481
+ },
2482
+ "required": [
2483
+ "protocol",
2484
+ "port"
2485
+ ],
2486
+ "additionalProperties": false
2487
+ },
2488
+ "description": "Specifies raw sockets that this Worker should listen on. Each entry opens a listening socket on the given port that delivers incoming connections directly to the Worker's `connect(socket, env, ctx)` handler.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
2489
+ "markdownDescription": "Specifies raw sockets that this Worker should listen on.\nEach entry opens a listening socket on the\ngiven port that delivers incoming connections directly to the Worker's\n`connect(socket, env, ctx)` handler.\n\nNOTE: This field is not automatically inherited from the top level environment,\nand so must be specified in every named environment.",
2490
+ "default": []
2491
+ },
2429
2492
  "r2_buckets": {
2430
2493
  "type": "array",
2431
2494
  "items": {
@@ -3595,6 +3658,11 @@
3595
3658
  },
3596
3659
  "storage": {
3597
3660
  "$ref": "#/definitions/DurableObjectExportStorage"
3661
+ },
3662
+ "container": {
3663
+ "type": "string",
3664
+ "description": "Attach a container to this Durable Object. Must match the `name` of an entry in the top-level `containers` array, and requires `storage: \"sqlite\"`.",
3665
+ "markdownDescription": "Attach a container to this Durable Object. Must match the `name` of an\nentry in the top-level `containers` array, and requires\n`storage: \"sqlite\"`."
3598
3666
  }
3599
3667
  },
3600
3668
  "required": [
@@ -3681,6 +3749,11 @@
3681
3749
  },
3682
3750
  "transfer_from": {
3683
3751
  "type": "string"
3752
+ },
3753
+ "container": {
3754
+ "type": "string",
3755
+ "description": "Attach a container to this Durable Object. Must match the `name` of an entry in the top-level `containers` array, and requires `storage: \"sqlite\"`.",
3756
+ "markdownDescription": "Attach a container to this Durable Object. Must match the `name` of an\nentry in the top-level `containers` array, and requires\n`storage: \"sqlite\"`."
3684
3757
  }
3685
3758
  },
3686
3759
  "required": [
@@ -3692,8 +3765,8 @@
3692
3765
  "additionalProperties": false
3693
3766
  }
3694
3767
  ],
3695
- "description": "A single declarative Durable Object export entry in the `exports` config map. `type` is reserved for the export kind. `state` carries the Durable Object lifecycle and defaults to `\"created\"` (live) when omitted.\n\nMutually exclusive with {@link DurableObjectMigration } at the config- validation boundary.\n\n - `created` (default, live): `storage` is required. - `deleted` (tombstone): retire a provisioned namespace whose class has been removed from code. - `renamed` (tombstone): rewrite a provisioned namespace's class name to `renamed_to`. The target name must also appear as a live (state `\"created\"`) `durable-object` entry in the same map. - `transferred` (tombstone): hand ownership of the namespace to another script in the same account (`transferred_to`). Two-phase commit; the target must first deploy an `expecting-transfer` entry naming this script via `transfer_from`. - `expecting-transfer` (live): receiving side of a two-phase transfer; `storage` and `transfer_from` are both required.",
3696
- "markdownDescription": "A single declarative Durable Object export entry in the `exports` config\nmap. `type` is reserved for the export kind. `state` carries the Durable\nObject lifecycle and defaults to `\"created\"` (live) when omitted.\n\nMutually exclusive with {@link DurableObjectMigration } at the config-\nvalidation boundary.\n\n - `created` (default, live): `storage` is required.\n - `deleted` (tombstone): retire a provisioned namespace whose class has\n been removed from code.\n - `renamed` (tombstone): rewrite a provisioned namespace's class name to\n `renamed_to`. The target name must also appear as a live (state\n `\"created\"`) `durable-object` entry in the same map.\n - `transferred` (tombstone): hand ownership of the namespace to another\n script in the same account (`transferred_to`). Two-phase commit;\n the target must first deploy an `expecting-transfer` entry naming this\n script via `transfer_from`.\n - `expecting-transfer` (live): receiving side of a two-phase transfer;\n `storage` and `transfer_from` are both required."
3768
+ "description": "A single declarative Durable Object export entry in the `exports` config map. `type` is reserved for the export kind. `state` carries the Durable Object lifecycle and defaults to `\"created\"` (live) when omitted.\n\nMutually exclusive with {@link DurableObjectMigration } at the config- validation boundary.\n\n - `created` (default, live): `storage` is required. - `deleted` (tombstone): retire a provisioned namespace whose class has been removed from code. - `renamed` (tombstone): rewrite a provisioned namespace's class name to `renamed_to`. The target name must also appear as a live (state `\"created\"`) `durable-object` entry in the same map. - `transferred` (tombstone): hand ownership of the namespace to another script in the same account (`transferred_to`). Two-phase commit; the target must first deploy an `expecting-transfer` entry naming this script via `transfer_from`. - `expecting-transfer` (live): receiving side of a two-phase transfer; `storage` and `transfer_from` are both required.\n\nThe live states may additionally attach a container via `container`, which names an entry in the top-level `containers` array. Tombstones cannot.",
3769
+ "markdownDescription": "A single declarative Durable Object export entry in the `exports` config\nmap. `type` is reserved for the export kind. `state` carries the Durable\nObject lifecycle and defaults to `\"created\"` (live) when omitted.\n\nMutually exclusive with {@link DurableObjectMigration } at the config-\nvalidation boundary.\n\n - `created` (default, live): `storage` is required.\n - `deleted` (tombstone): retire a provisioned namespace whose class has\n been removed from code.\n - `renamed` (tombstone): rewrite a provisioned namespace's class name to\n `renamed_to`. The target name must also appear as a live (state\n `\"created\"`) `durable-object` entry in the same map.\n - `transferred` (tombstone): hand ownership of the namespace to another\n script in the same account (`transferred_to`). Two-phase commit;\n the target must first deploy an `expecting-transfer` entry naming this\n script via `transfer_from`.\n - `expecting-transfer` (live): receiving side of a two-phase transfer;\n `storage` and `transfer_from` are both required.\n\nThe live states may additionally attach a container via `container`, which\nnames an entry in the top-level `containers` array. Tombstones cannot."
3697
3770
  },
3698
3771
  "DurableObjectExportStorage": {
3699
3772
  "type": "string",
@@ -4027,16 +4100,16 @@
4027
4100
  "additionalProperties": false,
4028
4101
  "properties": {
4029
4102
  "logpush": {
4030
- "$ref": "#/definitions/interface-769040647-10754-21116-769040647-0-543362004818536"
4103
+ "$ref": "#/definitions/interface-769040647-11843-22205-769040647-0-559642004818536"
4031
4104
  },
4032
4105
  "observability": {
4033
- "$ref": "#/definitions/interface-769040647-10754-21116-769040647-0-543362004818536"
4106
+ "$ref": "#/definitions/interface-769040647-11843-22205-769040647-0-559642004818536"
4034
4107
  },
4035
4108
  "limits": {
4036
- "$ref": "#/definitions/interface-769040647-10754-21116-769040647-0-543362004818536"
4109
+ "$ref": "#/definitions/interface-769040647-11843-22205-769040647-0-559642004818536"
4037
4110
  },
4038
4111
  "cache": {
4039
- "$ref": "#/definitions/interface-769040647-10754-21116-769040647-0-543362004818536"
4112
+ "$ref": "#/definitions/interface-769040647-11843-22205-769040647-0-559642004818536"
4040
4113
  },
4041
4114
  "define": {
4042
4115
  "type": "object",
@@ -4310,6 +4383,38 @@
4310
4383
  "producers": []
4311
4384
  }
4312
4385
  },
4386
+ "connect": {
4387
+ "type": "array",
4388
+ "items": {
4389
+ "type": "object",
4390
+ "properties": {
4391
+ "protocol": {
4392
+ "type": "string",
4393
+ "const": "tcp",
4394
+ "description": "The transport protocol to listen for.",
4395
+ "markdownDescription": "The transport protocol to listen for."
4396
+ },
4397
+ "port": {
4398
+ "type": "number",
4399
+ "description": "The port to listen on.",
4400
+ "markdownDescription": "The port to listen on."
4401
+ },
4402
+ "address": {
4403
+ "type": "string",
4404
+ "description": "The address to bind to. Defaults to `127.0.0.1`.",
4405
+ "markdownDescription": "The address to bind to. Defaults to `127.0.0.1`."
4406
+ }
4407
+ },
4408
+ "required": [
4409
+ "protocol",
4410
+ "port"
4411
+ ],
4412
+ "additionalProperties": false
4413
+ },
4414
+ "description": "Specifies raw sockets that this Worker should listen on. Each entry opens a listening socket on the given port that delivers incoming connections directly to the Worker's `connect(socket, env, ctx)` handler.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
4415
+ "markdownDescription": "Specifies raw sockets that this Worker should listen on.\nEach entry opens a listening socket on the\ngiven port that delivers incoming connections directly to the Worker's\n`connect(socket, env, ctx)` handler.\n\nNOTE: This field is not automatically inherited from the top level environment,\nand so must be specified in every named environment.",
4416
+ "default": []
4417
+ },
4313
4418
  "r2_buckets": {
4314
4419
  "type": "array",
4315
4420
  "items": {
@@ -5308,7 +5413,7 @@
5308
5413
  "description": "Configuration for Worker Previews.\n\nThis defines the settings used when creating Preview deployments. Previews are branches of your Worker's main instance used to test features during feature development outside of production.\n\nThe `previews` block contains any intentionally divergent configuration intended solely for Previews, including:\n- All non-inheritable properties (environment variables and bindings like KV, D1, R2, etc.)\n- Select inheritable properties: `logpush`, `observability`, `limits`, `cache`",
5309
5414
  "markdownDescription": "Configuration for Worker Previews.\n\nThis defines the settings used when creating Preview deployments.\nPreviews are branches of your Worker's main instance used to test features\nduring feature development outside of production.\n\nThe `previews` block contains any intentionally divergent configuration intended solely for Previews, including:\n- All non-inheritable properties (environment variables and bindings like KV, D1, R2, etc.)\n- Select inheritable properties: `logpush`, `observability`, `limits`, `cache`"
5310
5415
  },
5311
- "interface-769040647-10754-21116-769040647-0-543362004818536": {
5416
+ "interface-769040647-11843-22205-769040647-0-559642004818536": {
5312
5417
  "type": "object",
5313
5418
  "properties": {
5314
5419
  "name": {
@@ -5782,11 +5887,6 @@
5782
5887
  "description": "The script where the Workflow is defined (if it's external to this Worker)",
5783
5888
  "markdownDescription": "The script where the Workflow is defined (if it's external to this Worker)"
5784
5889
  },
5785
- "remote": {
5786
- "type": "boolean",
5787
- "description": "Whether the Workflow should be remote or not in local development",
5788
- "markdownDescription": "Whether the Workflow should be remote or not in local development"
5789
- },
5790
5890
  "limits": {
5791
5891
  "type": "object",
5792
5892
  "properties": {
@@ -5864,8 +5964,8 @@
5864
5964
  "properties": {
5865
5965
  "name": {
5866
5966
  "type": "string",
5867
- "description": "Name of the application",
5868
- "markdownDescription": "Name of the application"
5967
+ "description": "Name of the application.\n\nThis is also the identifier used to reference the container from a Durable Object's `exports` entry via its `container` field.",
5968
+ "markdownDescription": "Name of the application.\n\nThis is also the identifier used to reference the container from a Durable\nObject's `exports` entry via its `container` field."
5869
5969
  },
5870
5970
  "max_instances": {
5871
5971
  "type": "number",
@@ -6084,8 +6184,7 @@
6084
6184
  }
6085
6185
  },
6086
6186
  "required": [
6087
- "image",
6088
- "class_name"
6187
+ "image"
6089
6188
  ],
6090
6189
  "additionalProperties": false,
6091
6190
  "description": "Configuration for a container application",
@@ -6280,5 +6379,10 @@
6280
6379
  "additionalProperties": false
6281
6380
  }
6282
6381
  },
6283
- "allowTrailingCommas": true
6382
+ "allowTrailingCommas": true,
6383
+ "allOf": [
6384
+ {
6385
+ "$ref": "#/definitions/RawConfig"
6386
+ }
6387
+ ]
6284
6388
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "wrangler",
3
- "version": "4.123.0",
3
+ "version": "4.125.0",
4
4
  "description": "Command-line interface for all things Cloudflare Workers",
5
5
  "keywords": [
6
6
  "assembly",
@@ -66,17 +66,17 @@
66
66
  "esbuild": "0.28.1",
67
67
  "path-to-regexp": "6.3.0",
68
68
  "unenv": "2.0.0-rc.24",
69
- "workerd": "1.20260811.1",
69
+ "workerd": "1.20260820.1",
70
70
  "@cloudflare/kv-asset-handler": "0.5.0",
71
- "@cloudflare/unenv-preset": "2.16.1",
72
- "miniflare": "5.20260811.1-alpha"
71
+ "miniflare": "5.20260820.0-alpha",
72
+ "@cloudflare/unenv-preset": "2.16.1"
73
73
  },
74
74
  "devDependencies": {
75
75
  "@aws-sdk/client-s3": "^3.721.0",
76
76
  "@aws-sdk/s3-request-presigner": "^3.721.0",
77
77
  "@bomb.sh/tab": "^0.0.12",
78
78
  "@cloudflare/types": "6.18.4",
79
- "@cloudflare/workers-types": "^5.20260811.1",
79
+ "@cloudflare/workers-types": "^5.20260820.1",
80
80
  "@cspotcode/source-map-support": "0.8.1",
81
81
  "@netlify/build-info": "^10.5.1",
82
82
  "@sentry/node": "^7.86.0",
@@ -125,7 +125,7 @@
125
125
  "mime": "^3.0.0",
126
126
  "minimatch": "^5.1.0",
127
127
  "mock-socket": "^9.3.1",
128
- "msw": "2.12.4",
128
+ "msw": "2.14.6",
129
129
  "node-forge": "^1.3.2",
130
130
  "open": "11.0.0",
131
131
  "p-queue": "^9.0.0",
@@ -156,25 +156,25 @@
156
156
  "yaml": "^2.8.1",
157
157
  "yargs": "^17.7.2",
158
158
  "zod": "4.4.3",
159
- "@cloudflare/autoconfig": "0.2.7",
160
- "@cloudflare/build-output-utils": "0.1.1",
161
- "@cloudflare/cli-shared-helpers": "0.1.23",
162
- "@cloudflare/codemod": "1.1.0",
163
- "@cloudflare/config": "0.5.0",
159
+ "@cloudflare/autoconfig": "0.2.9",
160
+ "@cloudflare/build-output-utils": "0.1.3",
161
+ "@cloudflare/cli-shared-helpers": "0.1.25",
164
162
  "@cloudflare/containers-shared": "0.16.0",
165
- "@cloudflare/deploy-helpers": "0.7.0",
163
+ "@cloudflare/config": "0.7.0",
164
+ "@cloudflare/deploy-helpers": "0.8.0",
166
165
  "@cloudflare/pages-functions": "0.1.0",
167
- "@cloudflare/pages-shared": "^0.13.169",
168
- "@cloudflare/remote-bindings": "0.0.12",
169
- "@cloudflare/runtime-types": "0.0.14",
170
- "@cloudflare/workers-auth": "0.6.3",
166
+ "@cloudflare/pages-shared": "^0.13.171",
167
+ "@cloudflare/remote-bindings": "0.0.14",
168
+ "@cloudflare/runtime-types": "0.0.16",
169
+ "@cloudflare/shared-ast-primitives": "1.1.0",
170
+ "@cloudflare/workers-auth": "0.6.5",
171
171
  "@cloudflare/workers-shared": "0.19.9",
172
- "@cloudflare/workflows-shared": "0.12.2",
173
172
  "@cloudflare/workers-tsconfig": "0.0.0",
174
- "@cloudflare/workers-utils": "0.33.0"
173
+ "@cloudflare/workers-utils": "0.34.0",
174
+ "@cloudflare/workflows-shared": "0.13.0"
175
175
  },
176
176
  "peerDependencies": {
177
- "@cloudflare/workers-types": "^5.20260811.1"
177
+ "@cloudflare/workers-types": "^5.20260820.1"
178
178
  },
179
179
  "peerDependenciesMeta": {
180
180
  "@cloudflare/workers-types": {
@@ -1,6 +1,6 @@
1
1
  import { Rule as Rule$1, CfModule, Environment as Environment$1, Entry, CfModuleType, Config as Config$1, StartDevWorkerInput, NodeJSCompatMode, CfScriptFormat, AsyncHook, CfAccount, AssetsOptions as AssetsOptions$1, Binding, ConfigBindingFieldName, RawConfig as RawConfig$1, NormalizeAndValidateConfigArgs, ResolveConfigPathOptions, ParseError, LoggerLevel, ComplianceConfig, ApiCredentials, UserError, FatalError } from '@cloudflare/workers-utils';
2
2
  export { Binding, experimental_patchConfig, experimental_readRawConfig, defaultWranglerConfig as unstable_defaultWranglerConfig } from '@cloudflare/workers-utils';
3
- import { Json as Json$1, WorkerdStructuredLog, DispatchFetch, Miniflare, WorkerRegistry, V4MiniflareOptions, Mutex, Response as Response$1, DurableObjectStorageOptions, DurableObjectStorageHandle, RemoteProxyConnectionString, V4WorkerOptions, V4ModuleRule, Request } from 'miniflare';
3
+ import { Json as Json$1, WorkerdStructuredLog, DispatchFetch, Miniflare, WorkerRegistry, V4MiniflareOptions, Mutex, Response as Response$1, DurableObjectStorageOptions, DurableObjectStorageHandle, V4WorkerOptions, V4ModuleRule, RemoteProxyConnectionString, Request } from 'miniflare';
4
4
  import * as undici from 'undici';
5
5
  import { RequestInfo, RequestInit, Response, FormData } from 'undici';
6
6
  import { Metafile } from 'esbuild';
@@ -1298,8 +1298,14 @@ type UnsafeBinding = {
1298
1298
  */
1299
1299
  type ContainerApp = {
1300
1300
  /**
1301
- * Name of the application
1302
- * @optional Defaults to `worker_name-class_name` if not specified.
1301
+ * Name of the application.
1302
+ *
1303
+ * This is also the identifier used to reference the container from a Durable
1304
+ * Object's `exports` entry via its `container` field.
1305
+ *
1306
+ * @optional Defaults to `worker_name-class_name` if not specified. A name is
1307
+ * required when `class_name` is not set, since there is no class name to
1308
+ * derive the default from.
1303
1309
  */
1304
1310
  name?: string;
1305
1311
  /**
@@ -1330,8 +1336,12 @@ type ContainerApp = {
1330
1336
  image_vars?: Record<string, string>;
1331
1337
  /**
1332
1338
  * The class name of the Durable Object the container is connected to.
1339
+ *
1340
+ * @optional Instead of naming the Durable Object here, you can reference this
1341
+ * container from the Durable Object's `exports` entry via its `container`
1342
+ * field. Exactly one of the two directions must be configured.
1333
1343
  */
1334
- class_name: string;
1344
+ class_name?: string;
1335
1345
  /**
1336
1346
  * The scheduling policy of the application
1337
1347
  * @optional
@@ -1543,11 +1553,22 @@ type DurableObjectExportStorage = "sqlite" | "legacy-kv";
1543
1553
  * script via `transfer_from`.
1544
1554
  * - `expecting-transfer` (live): receiving side of a two-phase transfer;
1545
1555
  * `storage` and `transfer_from` are both required.
1556
+ *
1557
+ * The live states may additionally attach a container via `container`, which
1558
+ * names an entry in the top-level `containers` array. Tombstones cannot.
1546
1559
  */
1547
1560
  type DurableObjectExport = {
1548
1561
  type: "durable-object";
1549
1562
  state?: "created";
1550
1563
  storage: DurableObjectExportStorage;
1564
+ /**
1565
+ * Attach a container to this Durable Object. Must match the `name` of an
1566
+ * entry in the top-level `containers` array, and requires
1567
+ * `storage: "sqlite"`.
1568
+ *
1569
+ * @optional
1570
+ */
1571
+ container?: string;
1551
1572
  } | {
1552
1573
  type: "durable-object";
1553
1574
  state: "deleted";
@@ -1564,6 +1585,14 @@ type DurableObjectExport = {
1564
1585
  state: "expecting-transfer";
1565
1586
  storage: DurableObjectExportStorage;
1566
1587
  transfer_from: string;
1588
+ /**
1589
+ * Attach a container to this Durable Object. Must match the `name` of an
1590
+ * entry in the top-level `containers` array, and requires
1591
+ * `storage: "sqlite"`.
1592
+ *
1593
+ * @optional
1594
+ */
1595
+ container?: string;
1567
1596
  };
1568
1597
  interface WorkerEntrypointExport {
1569
1598
  type: "worker";
@@ -1957,8 +1986,6 @@ type WorkflowBinding = {
1957
1986
  class_name: string;
1958
1987
  /** The script where the Workflow is defined (if it's external to this Worker) */
1959
1988
  script_name?: string;
1960
- /** Whether the Workflow should be remote or not in local development */
1961
- remote?: boolean;
1962
1989
  /** Optional limits for the Workflow */
1963
1990
  limits?: {
1964
1991
  /** Maximum number of steps a Workflow instance can execute */
@@ -2156,6 +2183,26 @@ interface EnvironmentNonInheritable {
2156
2183
  retry_delay?: number;
2157
2184
  }[];
2158
2185
  };
2186
+ /**
2187
+ * Specifies raw sockets that this Worker should listen on.
2188
+ * Each entry opens a listening socket on the
2189
+ * given port that delivers incoming connections directly to the Worker's
2190
+ * `connect(socket, env, ctx)` handler.
2191
+ *
2192
+ * NOTE: This field is not automatically inherited from the top level environment,
2193
+ * and so must be specified in every named environment.
2194
+ *
2195
+ * @default []
2196
+ * @nonInheritable
2197
+ */
2198
+ connect: {
2199
+ /** The transport protocol to listen for. */
2200
+ protocol: "tcp";
2201
+ /** The port to listen on. */
2202
+ port: number;
2203
+ /** The address to bind to. Defaults to `127.0.0.1`. */
2204
+ address?: string;
2205
+ }[];
2159
2206
  /**
2160
2207
  * Specifies R2 buckets that are bound to this Worker environment.
2161
2208
  *
@@ -3201,7 +3248,7 @@ type VarBinding = Extract<Binding, {
3201
3248
  declare function getVarsForDev(configPath: string | undefined, envFiles: string[] | undefined, vars: Config$1["vars"], env: string | undefined, silent?: boolean, secrets?: Config$1["secrets"]): Record<string, VarBinding>;
3202
3249
 
3203
3250
  /**
3204
- * @deprecated Use today's date as the compatibility date instead.
3251
+ * @deprecated Set a compatibility date explicitly instead.
3205
3252
  */
3206
3253
  declare function unstable_getDevCompatibilityDate(): `${number}${number}${number}${number}-${number}${number}-${number}${number}`;
3207
3254