Wrangler
Minor Changes
#7856
2b6f149Thanks @emily-shen! - feat: add sanitised error messages to Wrangler telemetryError messages that have been audited for potential inclusion of personal information, and explicitly opted-in, are now included in Wrangler's telemetry collection. Collected error messages will not include any filepaths, user input or any other potentially private content.
#7900
bd9228eThanks @vicb! - chore(wrangler): update unenv dependency versionunenv@2.0.0-rc.1allows using the workerd implementation for the Node modulesnet,timers, andtimers/promises. Seeunjs/unenv#396.
Patch Changes
#7904
50b13f6Thanks @WalshyDev! - fix: validation for R2 bucket names, the regex was wrongly rejecting buckets starting with a number and the message wasn't as clear as it could be on what was going wrong.#7895
134d61dThanks @jahands! - Fix regression in retryOnAPIFailure preventing any requests from being retriedAlso fixes a regression in pipelines that prevented 401 errors from being retried when waiting for an API token to become active.
#7879
5c02e46Thanks @andyjessop! - Fix to not require local connection string when using Hyperdrive and wrangler dev --remote#7860
13ab591Thanks @vicb! - refactor(wrangler): make JSON parsing independent of NodeSwitch
jsonc-parserto parse json:JSON.parse()exception messages are not stable across Node versions- While
jsonc-parseris used, JSONC specific syntax is disabled
Updated dependencies []:
Patch Changes
#7884
fd5a455Thanks @emily-shen! - feat: make experiemntal auto-provisioning non-interactive by default.#7811
7d138d9Thanks @joshthoward! - Fix RPC method invocations showing up as unknown eventsUpdated dependencies [
40f89a9]:
Minor Changes
#7466
e5ebdb1Thanks @Ltadrian! - feat: implement thewrangler cert uploadcommandThis command allows users to upload a mTLS certificate/private key or certificate-authority certificate chain.
For uploading mTLS certificate, run:
wrangler cert upload mtls-certificate --cert cert.pem --key key.pem --name MY_CERT
For uploading CA certificate chain, run:
wrangler cert upload certificate-authority --ca-cert server-ca.pem --name SERVER_CA
Patch Changes
#7867
bdc7958Thanks @penalosa! - Revert https://github.com/cloudflare/workers-sdk/pull/7816. This feature added support for the ASSETS bindings to thegetPlatformProxy()API, but caused a regression when runningnpm run previewin newly generated Workers Assets projects.#7868
78a9a2dThanks @penalosa! - Revert "Hyperdrive dev remote fix". This PR includes e2e tests that were not run before merging, and are currently failing.Updated dependencies []:
Patch Changes
- #7798
a1ff045Thanks @CarmenPopoviciu! - Reverts #7720 as it introduced breakage in some of the C3 templates (eg. Nuxt)
Minor Changes
#5086
8faf2c0Thanks @dario-piotrowicz! - add--strict-varsoption towrangler typesadd a new
--strict-varsoption towrangler typesthat developers can (by setting the flag tofalse) use to disable the default strict/literal types generation for their variablesopting out of strict variables can be useful when developers change often their
varsvalues, even more so when multiple environments are involvedExample
With a toml containing:
[vars] MY_VARIABLE = "production_value" MY_NUMBERS = [1, 2, 3] [env.staging.vars] MY_VARIABLE = "staging_value" MY_NUMBERS = [7, 8, 9]the
wrangler typescommand would generate the following interface:interface Env { MY_VARIABLE: "production_value" | "staging_value"; MY_NUMBERS: [1,2,3] | [7,8,9]; }while
wrangler types --strict-vars=falsewould instead generate:interface Env { MY_VARIABLE: string; MY_NUMBERS: number[]; }(allowing the developer to easily change their toml variables without the risk of breaking typescript types)
Patch Changes
#7720
902e3afThanks @vicb! - chore(wrangler): use the unenv preset from@cloudflare/unenv-preset#7760
19228e5Thanks @vicb! - chore: update unenv dependency version#7735
e8aaa39Thanks @penalosa! - Unwrap the error cause when available to send to Sentry#5086
8faf2c0Thanks @dario-piotrowicz! - fix: widen multi-envvarstypes inwrangler typesCurrently, the type generated for
varsis a string literal consisting of the value of the variable in the top level environment. If multiple environments are specified this wrongly restricts the type, since the variable could contain any of the values from each of the environments.For example, given a
wrangler.tomlcontaining the following:[vars] MY_VAR = "dev value" [env.production.vars] MY_VAR = "prod value"running
wrangler typeswould generate:interface Env { MY_VAR: "dev value"; }making typescript incorrectly assume that
MY_VARis always going to be"dev value"after these changes, the generated interface would instead be:
interface Env { MY_VAR: "dev value" | "prod value"; }#7733
dceb196Thanks @emily-shen! - feat: pull resource names for provisioning from config if providedUses
database_nameandbucket_namefor provisioning if specified. For R2, this only happens if there is not a bucket with that name already. Also respects R2jurisdictionif provided.Updated dependencies []: