wrangler 4.89.1 → 4.90.1

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "wrangler",
3
- "version": "4.89.1",
3
+ "version": "4.90.1",
4
4
  "description": "Command-line interface for all things Cloudflare Workers",
5
5
  "keywords": [
6
6
  "assembly",
@@ -54,16 +54,16 @@
54
54
  "esbuild": "0.27.3",
55
55
  "path-to-regexp": "6.3.0",
56
56
  "unenv": "2.0.0-rc.24",
57
- "workerd": "1.20260507.1",
57
+ "workerd": "1.20260508.1",
58
58
  "@cloudflare/kv-asset-handler": "0.5.0",
59
59
  "@cloudflare/unenv-preset": "2.16.1",
60
- "miniflare": "4.20260507.1"
60
+ "miniflare": "4.20260508.0"
61
61
  },
62
62
  "devDependencies": {
63
63
  "@aws-sdk/client-s3": "^3.721.0",
64
64
  "@bomb.sh/tab": "^0.0.12",
65
65
  "@cloudflare/types": "6.18.4",
66
- "@cloudflare/workers-types": "^4.20260507.1",
66
+ "@cloudflare/workers-types": "^4.20260508.1",
67
67
  "@cspotcode/source-map-support": "0.8.1",
68
68
  "@netlify/build-info": "^10.5.1",
69
69
  "@sentry/node": "^7.86.0",
@@ -144,17 +144,17 @@
144
144
  "xxhash-wasm": "^1.0.1",
145
145
  "yaml": "^2.8.1",
146
146
  "yargs": "^17.7.2",
147
- "@cloudflare/cli-shared-helpers": "0.1.2",
148
147
  "@cloudflare/codemod": "1.1.0",
149
- "@cloudflare/pages-shared": "^0.13.133",
148
+ "@cloudflare/cli-shared-helpers": "0.1.3",
150
149
  "@cloudflare/containers-shared": "0.14.1",
151
- "@cloudflare/workers-shared": "0.19.5",
152
- "@cloudflare/workers-utils": "0.20.0",
153
- "@cloudflare/workflows-shared": "0.10.0",
154
- "@cloudflare/workers-tsconfig": "0.0.0"
150
+ "@cloudflare/pages-shared": "^0.13.134",
151
+ "@cloudflare/workers-shared": "0.19.6",
152
+ "@cloudflare/workers-tsconfig": "0.0.0",
153
+ "@cloudflare/workers-utils": "0.21.0",
154
+ "@cloudflare/workflows-shared": "0.10.0"
155
155
  },
156
156
  "peerDependencies": {
157
- "@cloudflare/workers-types": "^4.20260507.1"
157
+ "@cloudflare/workers-types": "^4.20260508.1"
158
158
  },
159
159
  "peerDependenciesMeta": {
160
160
  "@cloudflare/workers-types": {
@@ -592,6 +592,10 @@ declare class DevEnv extends EventEmitter implements ControllerBus {
592
592
  * - RuntimeController emits devRegistryUpdate → ConfigController
593
593
  * - ProxyController emits previewTokenExpired → RuntimeControllers
594
594
  * - Any controller emits error → DevEnv error handler
595
+ *
596
+ * `reloadComplete` is also re-emitted as an external EventEmitter event
597
+ * (`devEnv.on("reloadComplete", ...)`) so callers like
598
+ * `RemoteProxySession.updateBindings` can wait for the reload to finish.
595
599
  */
596
600
  dispatch(event: ControllerEvent): void;
597
601
  private handleErrorEvent;
@@ -38858,6 +38858,11 @@ Please add a binding for "${configBindingName}" to "env.${envName}.${field}.bind
38858
38858
  isValid22 = false;
38859
38859
  }
38860
38860
  }
38861
+ if (hasProperty(value, "delivery_delay") && value.delivery_delay !== void 0) {
38862
+ diagnostics.warnings.push(
38863
+ `The "delivery_delay" field in "${field}" is deprecated and has no effect. Queue-level settings should be configured using "wrangler queues update" instead. This setting will be removed in a future version.`
38864
+ );
38865
+ }
38861
38866
  if (!isRemoteValid(value, field, diagnostics)) {
38862
38867
  isValid22 = false;
38863
38868
  }
@@ -55813,7 +55818,7 @@ var name, version;
55813
55818
  var init_package = __esm({
55814
55819
  "package.json"() {
55815
55820
  name = "wrangler";
55816
- version = "4.89.1";
55821
+ version = "4.90.1";
55817
55822
  }
55818
55823
  });
55819
55824
  function getWranglerVersion() {
@@ -133185,7 +133190,7 @@ var init_fetch_accounts = __esm({
133185
133190
  init_import_meta_url();
133186
133191
  init_dist();
133187
133192
  init_cfetch();
133188
- MEMBERSHIPS_INACCESSIBLE_CODES = [9109, 1e4];
133193
+ MEMBERSHIPS_INACCESSIBLE_CODES = [9106, 1e4];
133189
133194
  __name(isMembershipsInaccessible, "isMembershipsInaccessible");
133190
133195
  __name(fetchAllAccounts, "fetchAllAccounts");
133191
133196
  }
@@ -137299,13 +137304,13 @@ var require_eventemitter3 = __commonJS({
137299
137304
  }
137300
137305
  __name(EventEmitter5, "EventEmitter");
137301
137306
  EventEmitter5.prototype.eventNames = /* @__PURE__ */ __name(function eventNames() {
137302
- var names = [], events6, name2;
137307
+ var names = [], events7, name2;
137303
137308
  if (this._eventsCount === 0) return names;
137304
- for (name2 in events6 = this._events) {
137305
- if (has2.call(events6, name2)) names.push(prefix ? name2.slice(1) : name2);
137309
+ for (name2 in events7 = this._events) {
137310
+ if (has2.call(events7, name2)) names.push(prefix ? name2.slice(1) : name2);
137306
137311
  }
137307
137312
  if (Object.getOwnPropertySymbols) {
137308
- return names.concat(Object.getOwnPropertySymbols(events6));
137313
+ return names.concat(Object.getOwnPropertySymbols(events7));
137309
137314
  }
137310
137315
  return names;
137311
137316
  }, "eventNames");
@@ -137394,12 +137399,12 @@ var require_eventemitter3 = __commonJS({
137394
137399
  clearEvent(this, evt);
137395
137400
  }
137396
137401
  } else {
137397
- for (var i7 = 0, events6 = [], length = listeners.length; i7 < length; i7++) {
137402
+ for (var i7 = 0, events7 = [], length = listeners.length; i7 < length; i7++) {
137398
137403
  if (listeners[i7].fn !== fn2 || once && !listeners[i7].once || context2 && listeners[i7].context !== context2) {
137399
- events6.push(listeners[i7]);
137404
+ events7.push(listeners[i7]);
137400
137405
  }
137401
137406
  }
137402
- if (events6.length) this._events[evt] = events6.length === 1 ? events6[0] : events6;
137407
+ if (events7.length) this._events[evt] = events7.length === 1 ? events7[0] : events7;
137403
137408
  else clearEvent(this, evt);
137404
137409
  }
137405
137410
  return this;
@@ -154918,7 +154923,7 @@ var init_config5 = __esm({
154918
154923
  observability: {
154919
154924
  logs_enabled: config.observability?.logs?.enabled ?? config.observability?.enabled === true
154920
154925
  },
154921
- wrangler_ssh: container.wrangler_ssh,
154926
+ wrangler_ssh: container.ssh ?? container.wrangler_ssh,
154922
154927
  authorized_keys: container.authorized_keys,
154923
154928
  trusted_user_ca_keys: container.trusted_user_ca_keys
154924
154929
  };
@@ -184441,14 +184446,16 @@ function createHandler(def, argv) {
184441
184446
  addBreadcrumb2(def.command);
184442
184447
  try {
184443
184448
  const shouldPrintBanner = def.behaviour?.printBanner ?? true;
184444
- if (shouldPrintBanner === true || typeof shouldPrintBanner === "function" && shouldPrintBanner(args) === true) {
184449
+ const bannerEnabled = shouldPrintBanner === true || typeof shouldPrintBanner === "function" && shouldPrintBanner(args) === true;
184450
+ if (bannerEnabled) {
184445
184451
  await printWranglerBanner();
184446
184452
  }
184453
+ const statusMessageEnabled = typeof shouldPrintBanner !== "function" || bannerEnabled;
184447
184454
  if (!getWranglerHideBanner()) {
184448
184455
  if (def.metadata.deprecated) {
184449
184456
  logger.warn(def.metadata.deprecatedMessage);
184450
184457
  }
184451
- if (def.metadata.statusMessage) {
184458
+ if (statusMessageEnabled && def.metadata.statusMessage) {
184452
184459
  logger.warn(def.metadata.statusMessage);
184453
184460
  }
184454
184461
  }
@@ -290792,8 +290799,8 @@ var init_create14 = __esm({
290792
290799
  workerName: args.workerName,
290793
290800
  workflowName: args.workflowName
290794
290801
  });
290795
- const events6 = args.events.split(",").map((event) => event.trim()).filter(Boolean);
290796
- if (events6.length === 0) {
290802
+ const events7 = args.events.split(",").map((event) => event.trim()).filter(Boolean);
290803
+ if (events7.length === 0) {
290797
290804
  throw new UserError(
290798
290805
  "No events specified. Use --events to provide a comma-separated list of event types to subscribe to. For a complete list of sources and corresponding events, please refer to: https://developers.cloudflare.com/queues/event-subscriptions/events-schemas/",
290799
290806
  { telemetryMessage: "queues subscription create missing events" }
@@ -290807,7 +290814,7 @@ var init_create14 = __esm({
290807
290814
  type: "queues.queue",
290808
290815
  queue_id: ""
290809
290816
  },
290810
- events: events6
290817
+ events: events7
290811
290818
  };
290812
290819
  logger.log(`Creating event subscription for queue '${args.queue}'...`);
290813
290820
  const subscription = await createEventSubscription(
@@ -291095,14 +291102,14 @@ var init_update6 = __esm({
291095
291102
  updateRequest.name = args.name;
291096
291103
  }
291097
291104
  if (args.events !== void 0) {
291098
- const events6 = args.events.split(",").map((event) => event.trim()).filter(Boolean);
291099
- if (events6.length === 0) {
291105
+ const events7 = args.events.split(",").map((event) => event.trim()).filter(Boolean);
291106
+ if (events7.length === 0) {
291100
291107
  throw new UserError(
291101
291108
  "No events specified. Use --events to provide a comma-separated list of event types to subscribe to. For a complete list of sources and corresponding events, please refer to: https://developers.cloudflare.com/queues/event-subscriptions/events-schemas/",
291102
291109
  { telemetryMessage: "queues subscription update missing events" }
291103
291110
  );
291104
291111
  }
291105
- updateRequest.events = events6;
291112
+ updateRequest.events = events7;
291106
291113
  }
291107
291114
  if (args.enabled !== void 0) {
291108
291115
  updateRequest.enabled = args.enabled;
@@ -317636,6 +317643,9 @@ var init_RemoteRuntimeController = __esm({
317636
317643
  }
317637
317644
  );
317638
317645
  this.#activeTail.on("message", realishPrintLogs);
317646
+ this.#activeTail.on("error", (err) => {
317647
+ logger.debug("Active tail WebSocket error (ignored):", err);
317648
+ });
317639
317649
  }
317640
317650
  return workerPreviewToken;
317641
317651
  } catch (err) {
@@ -317995,6 +318005,10 @@ var init_DevEnv = __esm({
317995
318005
  * - RuntimeController emits devRegistryUpdate → ConfigController
317996
318006
  * - ProxyController emits previewTokenExpired → RuntimeControllers
317997
318007
  * - Any controller emits error → DevEnv error handler
318008
+ *
318009
+ * `reloadComplete` is also re-emitted as an external EventEmitter event
318010
+ * (`devEnv.on("reloadComplete", ...)`) so callers like
318011
+ * `RemoteProxySession.updateBindings` can wait for the reload to finish.
317998
318012
  */
317999
318013
  dispatch(event) {
318000
318014
  switch (event.type) {
@@ -318021,6 +318035,7 @@ var init_DevEnv = __esm({
318021
318035
  break;
318022
318036
  case "reloadComplete":
318023
318037
  this.proxy.onReloadComplete(event);
318038
+ this.emit("reloadComplete", event);
318024
318039
  break;
318025
318040
  case "devRegistryUpdate":
318026
318041
  this.config.onDevRegistryUpdate(event);
@@ -318179,7 +318194,17 @@ ${errorMessage}`
318179
318194
  { ...binding, raw: true }
318180
318195
  ])
318181
318196
  );
318197
+ const reloadComplete = events__default.default.once(worker.raw, "reloadComplete");
318182
318198
  await worker.patchConfig({ bindings: rawNewBindings });
318199
+ try {
318200
+ await reloadComplete;
318201
+ } catch (errOrEvent) {
318202
+ throw errOrEvent instanceof Error ? errOrEvent : new Error(
318203
+ `RemoteProxySession.updateBindings failed during reload: ${errOrEvent?.reason ?? "unknown"}`,
318204
+ { cause: errOrEvent }
318205
+ );
318206
+ }
318207
+ await worker.raw.proxy.runtimeMessageMutex.drained();
318183
318208
  }, "updateBindings");
318184
318209
  return {
318185
318210
  ready: worker.ready,
@@ -321650,7 +321675,7 @@ async function startDev(args) {
321650
321675
  return {
321651
321676
  devEnv: primaryDevEnv,
321652
321677
  secondary,
321653
- unregisterHotKeys
321678
+ unregisterHotKeys: /* @__PURE__ */ __name(() => unregisterHotKeys?.(), "unregisterHotKeys")
321654
321679
  };
321655
321680
  } catch (e10) {
321656
321681
  await Promise.allSettled([