wrangler 0.0.0-ecba1ede → 0.0.0-ecdfabed0

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.
Files changed (278) hide show
  1. package/README.md +17 -15
  2. package/bin/wrangler.js +14 -95
  3. package/config-schema.json +3088 -0
  4. package/package.json +197 -192
  5. package/templates/__tests__/tsconfig-sanity.ts +12 -0
  6. package/templates/__tests__/tsconfig.json +8 -0
  7. package/templates/checked-fetch.js +19 -6
  8. package/templates/facade.d.ts +19 -0
  9. package/templates/gitignore +2 -3
  10. package/templates/init-tests/test-jest-new-worker.js +3 -5
  11. package/templates/init-tests/test-vitest-new-worker.js +4 -6
  12. package/templates/init-tests/test-vitest-new-worker.ts +25 -0
  13. package/templates/middleware/common.ts +9 -4
  14. package/templates/middleware/loader-modules.ts +94 -44
  15. package/templates/middleware/loader-sw.ts +6 -4
  16. package/templates/middleware/middleware-ensure-req-body-drained.ts +18 -0
  17. package/templates/middleware/middleware-miniflare3-json-error.ts +17 -5
  18. package/templates/middleware/middleware-scheduled.ts +15 -1
  19. package/templates/middleware/middleware-serve-static-assets.d.ts +6 -0
  20. package/templates/middleware/middleware-serve-static-assets.ts +56 -0
  21. package/templates/modules-watch-stub.js +4 -0
  22. package/templates/new-worker-scheduled.ts +1 -1
  23. package/templates/new-worker.ts +4 -1
  24. package/templates/pages-dev-pipeline.ts +6 -2
  25. package/templates/pages-dev-util.ts +4 -1
  26. package/templates/pages-shim.ts +1 -1
  27. package/templates/pages-template-plugin.ts +33 -14
  28. package/templates/pages-template-worker.ts +12 -3
  29. package/templates/startDevWorker/InspectorProxyWorker.ts +664 -0
  30. package/templates/startDevWorker/ProxyWorker.ts +336 -0
  31. package/templates/tsconfig-sanity.ts +11 -0
  32. package/templates/tsconfig.init.json +22 -0
  33. package/templates/tsconfig.json +5 -103
  34. package/wrangler-dist/InspectorProxyWorker.js +464 -0
  35. package/wrangler-dist/InspectorProxyWorker.js.map +6 -0
  36. package/wrangler-dist/ProxyWorker.js +241 -0
  37. package/wrangler-dist/ProxyWorker.js.map +6 -0
  38. package/wrangler-dist/cli.d.ts +26023 -529
  39. package/wrangler-dist/cli.js +166065 -118940
  40. package/wrangler-dist/wasm-sync.wasm +0 -0
  41. package/Cloudflare_CA.pem +0 -18
  42. package/import_meta_url.js +0 -3
  43. package/miniflare-config-stubs/.env.empty +0 -0
  44. package/miniflare-config-stubs/package.empty.json +0 -1
  45. package/miniflare-config-stubs/wrangler.empty.toml +0 -0
  46. package/miniflare-dist/index.mjs +0 -6364
  47. package/src/__tests__/access.test.ts +0 -25
  48. package/src/__tests__/api-dev.test.ts +0 -209
  49. package/src/__tests__/api-devregistry.test.js +0 -56
  50. package/src/__tests__/api.test.ts +0 -80
  51. package/src/__tests__/config-cache-without-cache-dir.test.ts +0 -38
  52. package/src/__tests__/config-cache.test.ts +0 -42
  53. package/src/__tests__/configuration.test.ts +0 -4192
  54. package/src/__tests__/d1.test.ts +0 -80
  55. package/src/__tests__/delete.test.ts +0 -263
  56. package/src/__tests__/deployments.test.ts +0 -91
  57. package/src/__tests__/dev.test.tsx +0 -1553
  58. package/src/__tests__/dialogs.test.tsx +0 -40
  59. package/src/__tests__/generate.test.ts +0 -235
  60. package/src/__tests__/get-host-from-url.test.ts +0 -16
  61. package/src/__tests__/guess-worker-format.test.ts +0 -85
  62. package/src/__tests__/helpers/clipboardy-mock.js +0 -4
  63. package/src/__tests__/helpers/cmd-shim.d.ts +0 -11
  64. package/src/__tests__/helpers/mock-account-id.ts +0 -48
  65. package/src/__tests__/helpers/mock-bin.ts +0 -36
  66. package/src/__tests__/helpers/mock-cfetch.ts +0 -333
  67. package/src/__tests__/helpers/mock-console.ts +0 -106
  68. package/src/__tests__/helpers/mock-dialogs.ts +0 -153
  69. package/src/__tests__/helpers/mock-get-zone-from-host.ts +0 -8
  70. package/src/__tests__/helpers/mock-http-server.ts +0 -46
  71. package/src/__tests__/helpers/mock-istty.ts +0 -74
  72. package/src/__tests__/helpers/mock-known-routes.ts +0 -7
  73. package/src/__tests__/helpers/mock-kv.ts +0 -33
  74. package/src/__tests__/helpers/mock-oauth-flow.ts +0 -256
  75. package/src/__tests__/helpers/mock-process.ts +0 -39
  76. package/src/__tests__/helpers/mock-stdin.ts +0 -108
  77. package/src/__tests__/helpers/mock-web-socket.ts +0 -29
  78. package/src/__tests__/helpers/msw/handlers/access.ts +0 -13
  79. package/src/__tests__/helpers/msw/handlers/deployments.ts +0 -59
  80. package/src/__tests__/helpers/msw/handlers/namespaces.ts +0 -104
  81. package/src/__tests__/helpers/msw/handlers/oauth.ts +0 -31
  82. package/src/__tests__/helpers/msw/handlers/r2.ts +0 -80
  83. package/src/__tests__/helpers/msw/handlers/script.ts +0 -75
  84. package/src/__tests__/helpers/msw/handlers/user.ts +0 -63
  85. package/src/__tests__/helpers/msw/handlers/zones.ts +0 -22
  86. package/src/__tests__/helpers/msw/index.ts +0 -21
  87. package/src/__tests__/helpers/run-in-tmp.ts +0 -38
  88. package/src/__tests__/helpers/run-wrangler.ts +0 -16
  89. package/src/__tests__/helpers/worker-scripts/child-wrangler.toml +0 -1
  90. package/src/__tests__/helpers/worker-scripts/hello-world-worker.js +0 -5
  91. package/src/__tests__/helpers/worker-scripts/hello-world-wrangler.toml +0 -1
  92. package/src/__tests__/helpers/worker-scripts/parent-worker.js +0 -8
  93. package/src/__tests__/helpers/worker-scripts/parent-wrangler.toml +0 -5
  94. package/src/__tests__/helpers/write-worker-source.ts +0 -31
  95. package/src/__tests__/helpers/write-wrangler-toml.ts +0 -17
  96. package/src/__tests__/https-options.test.ts +0 -163
  97. package/src/__tests__/index.test.ts +0 -266
  98. package/src/__tests__/init.test.ts +0 -2951
  99. package/src/__tests__/jest.setup.ts +0 -202
  100. package/src/__tests__/kv.test.ts +0 -1675
  101. package/src/__tests__/logger.test.ts +0 -141
  102. package/src/__tests__/logout.test.ts +0 -47
  103. package/src/__tests__/metrics.test.ts +0 -495
  104. package/src/__tests__/middleware.scheduled.test.ts +0 -135
  105. package/src/__tests__/middleware.test.ts +0 -726
  106. package/src/__tests__/package-manager.test.ts +0 -353
  107. package/src/__tests__/pages-deployment-tail.test.ts +0 -884
  108. package/src/__tests__/pages.test.ts +0 -2443
  109. package/src/__tests__/parse.test.ts +0 -330
  110. package/src/__tests__/paths.test.ts +0 -39
  111. package/src/__tests__/publish.test.ts +0 -7720
  112. package/src/__tests__/pubsub.test.ts +0 -490
  113. package/src/__tests__/queues.test.ts +0 -522
  114. package/src/__tests__/r2.test.ts +0 -393
  115. package/src/__tests__/route.test.ts +0 -45
  116. package/src/__tests__/secret.test.ts +0 -644
  117. package/src/__tests__/tail.test.ts +0 -899
  118. package/src/__tests__/test-old-node-version.js +0 -31
  119. package/src/__tests__/type-generation.test.ts +0 -233
  120. package/src/__tests__/user.test.ts +0 -129
  121. package/src/__tests__/utils-collectKeyValues.test.ts +0 -47
  122. package/src/__tests__/validate-dev-props.test.ts +0 -56
  123. package/src/__tests__/version.test.ts +0 -35
  124. package/src/__tests__/whoami.test.tsx +0 -278
  125. package/src/__tests__/worker-namespace.test.ts +0 -326
  126. package/src/abort.d.ts +0 -3
  127. package/src/api/dev.ts +0 -210
  128. package/src/api/index.ts +0 -2
  129. package/src/bundle-reporter.tsx +0 -68
  130. package/src/bundle.ts +0 -823
  131. package/src/cfetch/index.ts +0 -160
  132. package/src/cfetch/internal.ts +0 -270
  133. package/src/cli.ts +0 -28
  134. package/src/config/README.md +0 -107
  135. package/src/config/config.ts +0 -275
  136. package/src/config/diagnostics.ts +0 -80
  137. package/src/config/environment.ts +0 -577
  138. package/src/config/index.ts +0 -358
  139. package/src/config/validation-helpers.ts +0 -597
  140. package/src/config/validation.ts +0 -2152
  141. package/src/config-cache.ts +0 -85
  142. package/src/create-worker-preview.ts +0 -282
  143. package/src/create-worker-upload-form.ts +0 -325
  144. package/src/d1/backups.tsx +0 -223
  145. package/src/d1/constants.ts +0 -2
  146. package/src/d1/create.tsx +0 -63
  147. package/src/d1/delete.tsx +0 -56
  148. package/src/d1/execute.tsx +0 -352
  149. package/src/d1/formatTimeAgo.ts +0 -14
  150. package/src/d1/index.ts +0 -101
  151. package/src/d1/list.tsx +0 -48
  152. package/src/d1/migrations/apply.tsx +0 -187
  153. package/src/d1/migrations/create.tsx +0 -77
  154. package/src/d1/migrations/helpers.ts +0 -147
  155. package/src/d1/migrations/index.tsx +0 -3
  156. package/src/d1/migrations/list.tsx +0 -79
  157. package/src/d1/migrations/options.ts +0 -18
  158. package/src/d1/options.ts +0 -22
  159. package/src/d1/types.tsx +0 -24
  160. package/src/d1/utils.ts +0 -48
  161. package/src/delete.ts +0 -108
  162. package/src/deployments.ts +0 -77
  163. package/src/deprecated/index.ts +0 -444
  164. package/src/dev/dev-vars.ts +0 -39
  165. package/src/dev/dev.tsx +0 -614
  166. package/src/dev/get-local-persistence-path.tsx +0 -31
  167. package/src/dev/local.tsx +0 -920
  168. package/src/dev/remote.tsx +0 -603
  169. package/src/dev/start-server.ts +0 -535
  170. package/src/dev/use-esbuild.ts +0 -204
  171. package/src/dev/validate-dev-props.ts +0 -31
  172. package/src/dev-registry.tsx +0 -201
  173. package/src/dev.tsx +0 -930
  174. package/src/dialogs.tsx +0 -168
  175. package/src/dispatch-namespace.ts +0 -207
  176. package/src/docs/index.ts +0 -94
  177. package/src/durable.ts +0 -102
  178. package/src/entry.ts +0 -329
  179. package/src/environment-variables.ts +0 -50
  180. package/src/errors.ts +0 -11
  181. package/src/git-client.ts +0 -135
  182. package/src/global-wrangler-config-path.ts +0 -26
  183. package/src/https-options.ts +0 -127
  184. package/src/index.tsx +0 -697
  185. package/src/init.ts +0 -990
  186. package/src/inspect.ts +0 -767
  187. package/src/intl-polyfill.d.ts +0 -139
  188. package/src/is-ci.ts +0 -14
  189. package/src/is-interactive.ts +0 -16
  190. package/src/kv/helpers.ts +0 -430
  191. package/src/kv/index.ts +0 -596
  192. package/src/logger.ts +0 -92
  193. package/src/metrics/index.ts +0 -5
  194. package/src/metrics/metrics-config.ts +0 -239
  195. package/src/metrics/metrics-dispatcher.ts +0 -96
  196. package/src/metrics/metrics-usage-headers.ts +0 -24
  197. package/src/metrics/send-event.ts +0 -97
  198. package/src/miniflare-cli/README.md +0 -30
  199. package/src/miniflare-cli/assets.ts +0 -246
  200. package/src/miniflare-cli/index.ts +0 -214
  201. package/src/miniflare-cli/request-context.ts +0 -40
  202. package/src/module-collection.ts +0 -267
  203. package/src/open-in-browser.ts +0 -17
  204. package/src/package-manager.ts +0 -219
  205. package/src/pages/build.tsx +0 -270
  206. package/src/pages/constants.ts +0 -18
  207. package/src/pages/deployment-tails.tsx +0 -284
  208. package/src/pages/deployments.tsx +0 -84
  209. package/src/pages/dev.tsx +0 -713
  210. package/src/pages/errors.ts +0 -66
  211. package/src/pages/functions/buildPlugin.ts +0 -107
  212. package/src/pages/functions/buildWorker.ts +0 -166
  213. package/src/pages/functions/filepath-routing.test.ts +0 -234
  214. package/src/pages/functions/filepath-routing.ts +0 -189
  215. package/src/pages/functions/identifiers.ts +0 -78
  216. package/src/pages/functions/routes-consolidation.test.ts +0 -250
  217. package/src/pages/functions/routes-consolidation.ts +0 -73
  218. package/src/pages/functions/routes-transformation.test.ts +0 -282
  219. package/src/pages/functions/routes-transformation.ts +0 -115
  220. package/src/pages/functions/routes-validation.test.ts +0 -403
  221. package/src/pages/functions/routes-validation.ts +0 -202
  222. package/src/pages/functions/routes.ts +0 -151
  223. package/src/pages/functions.tsx +0 -82
  224. package/src/pages/hash.tsx +0 -13
  225. package/src/pages/index.tsx +0 -102
  226. package/src/pages/projects.tsx +0 -169
  227. package/src/pages/prompt-select-project.tsx +0 -31
  228. package/src/pages/publish.tsx +0 -461
  229. package/src/pages/types.ts +0 -41
  230. package/src/pages/upload.tsx +0 -447
  231. package/src/pages/utils.ts +0 -23
  232. package/src/parse.ts +0 -286
  233. package/src/paths.ts +0 -71
  234. package/src/proxy.ts +0 -694
  235. package/src/publish/index.ts +0 -270
  236. package/src/publish/publish.ts +0 -1036
  237. package/src/pubsub/index.ts +0 -286
  238. package/src/pubsub/pubsub-commands.tsx +0 -624
  239. package/src/queues/cli/commands/consumer/add.ts +0 -71
  240. package/src/queues/cli/commands/consumer/index.ts +0 -22
  241. package/src/queues/cli/commands/consumer/remove.ts +0 -38
  242. package/src/queues/cli/commands/create.ts +0 -25
  243. package/src/queues/cli/commands/delete.ts +0 -26
  244. package/src/queues/cli/commands/index.ts +0 -36
  245. package/src/queues/cli/commands/list.ts +0 -25
  246. package/src/queues/client.ts +0 -135
  247. package/src/queues/utils.ts +0 -18
  248. package/src/r2/constants.ts +0 -4
  249. package/src/r2/helpers.ts +0 -131
  250. package/src/r2/index.ts +0 -289
  251. package/src/routes.ts +0 -140
  252. package/src/secret/index.ts +0 -379
  253. package/src/selfsigned.d.ts +0 -29
  254. package/src/sites.tsx +0 -372
  255. package/src/tail/createTail.ts +0 -379
  256. package/src/tail/filters.ts +0 -277
  257. package/src/tail/index.ts +0 -214
  258. package/src/tail/printing.ts +0 -107
  259. package/src/type-generation.ts +0 -181
  260. package/src/update-check.ts +0 -19
  261. package/src/user/access.ts +0 -69
  262. package/src/user/choose-account.tsx +0 -69
  263. package/src/user/env-vars.ts +0 -46
  264. package/src/user/generate-auth-url.ts +0 -33
  265. package/src/user/generate-random-state.ts +0 -16
  266. package/src/user/index.ts +0 -3
  267. package/src/user/user.tsx +0 -1198
  268. package/src/utils/collectKeyValues.ts +0 -14
  269. package/src/whoami.tsx +0 -169
  270. package/src/worker.ts +0 -251
  271. package/src/yargs-types.ts +0 -24
  272. package/src/zones.ts +0 -191
  273. package/templates/d1-beta-facade.js +0 -205
  274. package/templates/first-party-worker-module-facade.ts +0 -18
  275. package/templates/format-dev-errors.ts +0 -32
  276. package/templates/serve-static-assets.ts +0 -63
  277. package/templates/service-bindings-module-facade.js +0 -54
  278. package/templates/service-bindings-sw-facade.js +0 -42
package/README.md CHANGED
@@ -1,15 +1,17 @@
1
1
  <h1 align="center"> ⛅️ wrangler </h1>
2
2
  <section align="center" id="shieldio-badges">
3
3
  <a href="https://www.npmjs.com/package/wrangler"><img alt="npm" src="https://img.shields.io/npm/dw/wrangler?style=flat-square"></a>
4
- <img alt="GitHub contributors" src="https://img.shields.io/github/contributors/cloudflare/wrangler2?style=flat-square">
5
- <img alt="GitHub commit activity (branch)" src="https://img.shields.io/github/commit-activity/w/cloudflare/wrangler2/main?style=flat-square">
6
- <a href="https://discord.gg/CloudflareDev"><img alt="Discord" src="https://img.shields.io/discord/595317990191398933?color=%23F48120&style=flat-square"></a>
4
+ <img alt="GitHub contributors" src="https://img.shields.io/github/contributors/cloudflare/workers-sdk?style=flat-square">
5
+ <img alt="GitHub commit activity (branch)" src="https://img.shields.io/github/commit-activity/w/cloudflare/workers-sdk/main?style=flat-square">
6
+ <a href="https://discord.cloudflare.com"><img alt="Discord" src="https://img.shields.io/discord/595317990191398933?color=%23F48120&style=flat-square"></a>
7
7
  </section>
8
8
 
9
- > This package is for wrangler v2.x, released first in May 2022. If you're looking for v1.x of the `@cloudflare/wrangler` package, visit https://www.npmjs.com/package/@cloudflare/wrangler / https://github.com/cloudflare/wrangler.
10
-
11
9
  `wrangler` is a command line tool for building [Cloudflare Workers](https://workers.cloudflare.com/).
12
10
 
11
+ > [!WARNING]
12
+ >
13
+ > Wrangler v2 is **only receiving critical security updates.** We recommend you [migrate to Wrangler v3](https://developers.cloudflare.com/workers/wrangler/migration/update-v2-to-v3/) if you can.
14
+
13
15
  ## Quick Start
14
16
 
15
17
  ```bash
@@ -17,8 +19,8 @@
17
19
  echo "export default { fetch() { return new Response('hello world') } }" > index.js
18
20
  # try it out
19
21
  npx wrangler dev index.js
20
- # and then publish it
21
- npx wrangler publish index.js --name my-worker
22
+ # and then deploy it
23
+ npx wrangler deploy index.js --name my-worker
22
24
  # visit https://my-worker.<your workers subdomain>.workers.dev
23
25
  ```
24
26
 
@@ -26,10 +28,10 @@ npx wrangler publish index.js --name my-worker
26
28
 
27
29
  ```bash
28
30
  # Generate a new project
29
- npx wrangler init my-worker
31
+ npx wrangler init my-worker --no-delegate-c3
30
32
  # try it out
31
33
  cd my-worker && npm run start
32
- # and then publish it
34
+ # and then deploy it
33
35
  npm run deploy
34
36
  ```
35
37
 
@@ -43,15 +45,15 @@ $ npm install wrangler --save-dev
43
45
 
44
46
  Wrangler is configured via a `wrangler.toml` file in the project root. When utilizing the `wrangler init` command, a `wrangler.toml` file will be created for you.
45
47
 
46
- example:
48
+ Example:
47
49
 
48
50
  ```toml
49
- main = "./src/index.ts" # init w/ TypeScript
50
51
  name = "my-worker"
51
- compatibility_date = "YYY-MM-DD"
52
+ main = "./src/index.ts" # init w/ TypeScript
53
+ compatibility_date = "YYYY-MM-DD"
52
54
  ```
53
55
 
54
- for more detailed information about configuration, see the [documentation](https://developers.cloudflare.com/workers/cli-wrangler/configuration)
56
+ For more detailed information about configuration, refer to the [documentation](https://developers.cloudflare.com/workers/wrangler/configuration/).
55
57
 
56
58
  ## Commands
57
59
 
@@ -63,11 +65,11 @@ Creates a Worker project. For details on configuration keys and values, refer to
63
65
 
64
66
  Start a local development server, with live reloading and devtools.
65
67
 
66
- ### `wrangler publish`
68
+ ### `wrangler deploy`
67
69
 
68
70
  Publish the given script to the worldwide Cloudflare network.
69
71
 
70
- For more commands and options, refer to the [documentation](https://developers.cloudflare.com/workers/cli-wrangler/commands).
72
+ For more commands and options, refer to the [documentation](https://developers.cloudflare.com/workers/wrangler/commands/).
71
73
 
72
74
  ## Pages
73
75
 
package/bin/wrangler.js CHANGED
@@ -20,7 +20,7 @@ function runWrangler() {
20
20
  // Note Volta and nvm are also recommended in the official docs:
21
21
  // https://developers.cloudflare.com/workers/get-started/guide#2-install-the-workers-cli
22
22
  console.error(
23
- `Wrangler requires at least node.js v${MIN_NODE_VERSION}. You are using v${process.versions.node}. Please update your version of node.js.
23
+ `Wrangler requires at least Node.js v${MIN_NODE_VERSION}. You are using v${process.versions.node}. Please update your version of Node.js.
24
24
 
25
25
  Consider using a Node.js version manager such as https://volta.sh/ or https://github.com/nvm-sh/nvm.`
26
26
  );
@@ -28,30 +28,6 @@ Consider using a Node.js version manager such as https://volta.sh/ or https://gi
28
28
  return;
29
29
  }
30
30
 
31
- let pathToCACerts = process.env.NODE_EXTRA_CA_CERTS;
32
- if (pathToCACerts) {
33
- // TODO:
34
- // - should we log a warning here?
35
- // - maybe we can generate a certificate that concatenates with ours?
36
- //
37
- // I do think it'll be rare that someone wants to add a cert AND
38
- // use Cloudflare WARP, but let's wait till the situation actually
39
- // arises before we do anything about it
40
- } else {
41
- const osTempDir = os.tmpdir();
42
- const certDir = path.join(osTempDir, "wrangler-cert");
43
- const certPath = path.join(certDir, "Cloudflare_CA.pem");
44
- // copy cert to the system temp dir if needed
45
- if (!fs.existsSync(certPath)) {
46
- fs.mkdirSync(certDir, { recursive: true });
47
- fs.writeFileSync(
48
- certPath,
49
- fs.readFileSync(path.join(__dirname, "../Cloudflare_CA.pem"), "utf-8")
50
- );
51
- }
52
- pathToCACerts = certPath;
53
- }
54
-
55
31
  return spawn(
56
32
  process.execPath,
57
33
  [
@@ -63,10 +39,6 @@ Consider using a Node.js version manager such as https://volta.sh/ or https://gi
63
39
  ],
64
40
  {
65
41
  stdio: ["inherit", "inherit", "inherit", "ipc"],
66
- env: {
67
- ...process.env,
68
- NODE_EXTRA_CA_CERTS: pathToCACerts,
69
- },
70
42
  }
71
43
  )
72
44
  .on("exit", (code) =>
@@ -76,75 +48,14 @@ Consider using a Node.js version manager such as https://volta.sh/ or https://gi
76
48
  if (process.send) {
77
49
  process.send(message);
78
50
  }
79
- });
80
- }
81
-
82
- /**
83
- * Runs a locally-installed version of wrangler, delegating from this version.
84
- * @throws {MODULE_NOT_FOUND} if there isn't a locally installed version of wrangler.
85
- */
86
- function runDelegatedWrangler() {
87
- const packageJsonPath = require.resolve("wrangler/package.json", {
88
- paths: [process.cwd()],
89
- });
90
- const {
91
- bin: { wrangler: binaryPath },
92
- version,
93
- } = JSON.parse(fs.readFileSync(packageJsonPath));
94
- const resolvedBinaryPath = path.resolve(packageJsonPath, "..", binaryPath);
95
-
96
- debug(`Delegating to locally-installed version of wrangler @ v${version}`);
97
-
98
- // this call to `spawn` is simpler because the delegated version will do all
99
- // of the other work.
100
- return spawn(
101
- process.execPath,
102
- [resolvedBinaryPath, ...process.argv.slice(2)],
103
- {
104
- stdio: ["inherit", "inherit", "inherit", "ipc"],
105
- }
106
- )
107
- .on("exit", (code) =>
108
- process.exit(code === undefined || code === null ? 0 : code)
109
- )
110
- .on("message", (message) => {
111
- if (process.send) {
112
- process.send(message);
51
+ })
52
+ .on("disconnect", () => {
53
+ if (process.disconnect) {
54
+ process.disconnect();
113
55
  }
114
56
  });
115
57
  }
116
58
 
117
- /**
118
- * Indicates if this invocation of `wrangler` should delegate
119
- * to a locally-installed version.
120
- */
121
- function shouldDelegate() {
122
- try {
123
- // `require.resolve` will throw if it can't find
124
- // a locally-installed version of `wrangler`
125
- const delegatedPackageJson = require.resolve("wrangler/package.json", {
126
- paths: [process.cwd()],
127
- });
128
- const thisPackageJson = path.resolve(__dirname, "..", "package.json");
129
- // if it's the same path, then we're already a local install -- no need to delegate
130
- return thisPackageJson !== delegatedPackageJson;
131
- } catch (e) {
132
- // there's no local version to delegate to -- `require.resolve` threw
133
- return false;
134
- }
135
- }
136
-
137
- async function main() {
138
- wranglerProcess = shouldDelegate() ? runDelegatedWrangler() : runWrangler();
139
- }
140
-
141
- process.on("SIGINT", () => {
142
- wranglerProcess && wranglerProcess.kill();
143
- });
144
- process.on("SIGTERM", () => {
145
- wranglerProcess && wranglerProcess.kill();
146
- });
147
-
148
59
  // semiver implementation via https://github.com/lukeed/semiver/blob/ae7eebe6053c96be63032b14fb0b68e2553fcac4/src/index.js
149
60
 
150
61
  /**
@@ -177,4 +88,12 @@ function semiver(a, b, bool) {
177
88
 
178
89
  // end semiver implementation
179
90
 
180
- void main();
91
+ if (module === require.main) {
92
+ wranglerProcess = runWrangler();
93
+ process.on("SIGINT", () => {
94
+ wranglerProcess && wranglerProcess.kill();
95
+ });
96
+ process.on("SIGTERM", () => {
97
+ wranglerProcess && wranglerProcess.kill();
98
+ });
99
+ }