Patch Changes
-
#14530
aad35b7Thanks @Partha-Shankar! - Validate optional configuration fields for D1 database bindingsEnforce type checks for the optional D1 database properties
database_name,migrations_dir,migrations_table, anddatabase_internal_envto ensure consistency with other binding types. -
#14492
1ac96a1Thanks @penalosa! - Replace the CommonJSxdg-app-pathsdependency with a vendored pure-ESM implementationxdg-app-paths(and itsxdg-portable/os-pathsdependencies) are CommonJS only, which caused "Dynamic require of 'path' is not supported" errors when the surrounding code was bundled to ESM. The global config/cache directory resolution is now provided by a small, dependency-free pure-ESM module in@cloudflare/workers-utilsthat reproduces the previous path resolution exactly (verified against the real package in unit tests), so existing config and credential locations are unchanged. This also drops the transitivefseventsoptional dependency thatxdg-app-pathspulled in.Miniflare and create-cloudflare now consume the shared helpers from
@cloudflare/workers-utilsinstead of maintaining their own copies, importing node-only leaf entry points (@cloudflare/workers-utils/fs-helpers,@cloudflare/workers-utils/global-wrangler-config-path) where ESM bundling is required. -
#14570
1ca8d8fThanks @penalosa! - Upgradesignal-exitfrom v3 to v4The bundled
signal-exitdependency was CJS-only. Upgrading to v4 (which ships a dual ESM/CJS build) unblocks ESM output. Exit-cleanup behaviour is unchanged, though v4 no longer registers handlers for a few signals that are no longer supported by the OS (SIGUNUSEDon Linux;SIGABRT/SIGALRMon Windows).