Minor Changes
-
#4877
3e7cd6e4
Thanks @magnusdahlstrand! - fix: Do not show unnecessary errors during watch rebuildsWhen Pages is used in conjunction with a full stack framework, the framework
build will temporarily remove files that are being watched by Pages, such as
_worker.js
and_routes.json
.
Previously we would display errors for these changes, which adds confusing and excessive messages to the Pages dev output. Now builds are skipped if a watched_worker.js
or_routes.json
is removed. -
#4901
2469e9fa
Thanks @penalosa! - feature: implemented Python support in WranglerPython Workers are now supported by
wrangler deploy
andwrangler dev
. -
#4922
4c7031a6
Thanks @dario-piotrowicz! - feature: add actx
field to thegetBindingsProxy
resultAdd a new
ctx
filed to thegetBindingsProxy
result that people can use to mock the production
ExecutionContext
object.Example:
const { ctx } = await getBindingsProxy(); ctx.waitUntil(myPromise);
Patch Changes
-
#4914
e61dba50
Thanks @nora-soderlund! - fix: ensure d1 validation errors render user friendly messages -
#4907
583e4451
Thanks @mrbbot! - fix: mark R2 object and bucket not found errors as unreportablePreviously, running
wrangler r2 objects {get,put}
with an object or bucket that didn't exist would ask if you wanted to report that error to Cloudflare. There's nothing we can do to fix this, so this change prevents the prompt in this case. -
#4872
5ef56067
Thanks @rozenmd! - fix: intercept and stringify errors thrown by d1 execute in --json modePrior to this PR, if a query threw an error when run in
wrangler d1 execute ... --json
, wrangler would swallow the error.This PR returns the error as JSON. For example, the invalid query
SELECT asdf;
now returns the following in JSON mode:{ "error": { "text": "A request to the Cloudflare API (/accounts/xxxx/d1/database/xxxxxxx/query) failed.", "notes": [ { "text": "no such column: asdf at offset 7 [code: 7500]" } ], "kind": "error", "name": "APIError", "code": 7500 } }
-
#4888
3679bc18
Thanks @petebacondarwin! - fix: ensure that the Pages dev proxy server does not change the Host headerPreviously, when configuring
wrangler pages dev
to use a proxy to a 3rd party dev server,
the proxy would replace the Host header, resulting in problems at the dev server if it was
checking for cross-site scripting attacks.Now the proxy server passes through the Host header unaltered making it invisible to the
3rd party dev server.Fixes #4799
-
#4909
34b6ea1e
Thanks @rozenmd! - feat: add an experimentalinsights
command towrangler d1
This PR adds a
wrangler d1 insights <DB_NAME>
command, to let D1 users figure out which of their queries to D1 need to be optimised.This command defaults to fetching the top 5 queries that took the longest to run in total over the last 24 hours.
You can also fetch the top 5 queries that consumed the most rows read over the last week, for example:
npx wrangler d1 insights northwind --sortBy reads --timePeriod 7d
Or the top 5 queries that consumed the most rows written over the last month, for example:
npx wrangler d1 insights northwind --sortBy writes --timePeriod 31d
Or the top 5 most frequently run queries in the last 24 hours, for example:
npx wrangler d1 insights northwind --sortBy count
-
#4830
48f90859
Thanks @Lekensteyn! - fix: listen on loopback for wrangler dev port check and loginAvoid listening on the wildcard address by default to reduce the attacker's
surface and avoid firewall prompts on macOS.Relates to #4430.
-
#4907
583e4451
Thanks @mrbbot! - fix: ensurewrangler dev --log-level
flag applied to all logsPreviously,
wrangler dev
may have ignored the--log-level
flag for some startup logs. This change ensures the--log-level
flag is applied immediately. -
Updated dependencies [
148feff6
]:- miniflare@3.20240129.1