diff --git a/CHANGELOG.md b/CHANGELOG.md index d0276e2786b9..cdbe13756074 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,6 +14,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Fixed - Ensure `@tailwindcss/cli` in `--watch` mode doesn't crash on Windows when `@source` points to a directory that doesn't exist ([#20242](https://github.com/tailwindlabs/tailwindcss/pull/20242)) +- Ensure `@tailwindcss/vite` doesn't crash in Deno v2.8.x when `context.parentURL` is not a valid URL ([#20245](https://github.com/tailwindlabs/tailwindcss/pull/20245)) ## [4.3.1] - 2026-06-12 diff --git a/packages/@tailwindcss-node/src/esm-cache.loader.mts b/packages/@tailwindcss-node/src/esm-cache.loader.mts index 952b2f189d94..96d297a2997f 100644 --- a/packages/@tailwindcss-node/src/esm-cache.loader.mts +++ b/packages/@tailwindcss-node/src/esm-cache.loader.mts @@ -17,20 +17,24 @@ export let resolveSync: ResolveHookSync = (specifier, context, nextResolve) => { } function processResolve(context: ResolveHookContext, result: ResolveFnOutput) { - if (result.url === import.meta.url) return result - if (isBuiltin(result.url)) return result - if (!context.parentURL) return result + try { + if (result.url === import.meta.url) return result + if (isBuiltin(result.url)) return result + if (!context.parentURL) return result - let parent = new URL(context.parentURL) + let parent = new URL(context.parentURL) - let id = parent.searchParams.get('id') - if (id === null) return result + let id = parent.searchParams.get('id') + if (id === null) return result - let url = new URL(result.url) - url.searchParams.set('id', id) + let url = new URL(result.url) + url.searchParams.set('id', id) - return { - ...result, - url: `${url}`, + return { + ...result, + url: `${url}`, + } + } catch { + return result } }