chore: upgrade deno to 2.7.14#14504
Open
cderv wants to merge 6 commits into
Open
Conversation
Deno 2.7.14 bundles TypeScript 5.9.2 with tightened generics (Uint8Array<ArrayBuffer> vs <ArrayBufferLike>) and resolves the bare 'path' specifier's types via node:path compat instead of the import-map target. Add a non-colliding '@std/path' alias for named imports of SEPARATOR/fromFileUrl/etc., and cast Uint8Array at Response/digest call sites where the new BufferSource/BodyInit signatures require an ArrayBuffer-backed view.
Prose said the hash appears in three places (echo, curl, tar) but the example block only showed it on curl + tar, contradicting the prose.
Collaborator
✅ Snyk checks have passed. No issues have been found so far.
💻 Catch issues earlier using the plugins for VS Code, JetBrains IDEs, Visual Studio, and Eclipse. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Bumps bundled Deno from v2.4.5 to v2.7.14, fixing #14291 (silent crash on Windows builds older than 16299).
Why
Deno v2.4.5 transitively depends on
quinn-udp 0.5.8, which calls the Windows APIIsWow64Process2. That API is absent on Windows builds older than 16299 (Windows Server 2016 = build 14393, early Windows 10). On those systems Quarto exits silently before any code runs.quinn-udp 0.5.9(shipped in Deno v2.6.9 onward, per thedenoland/denoCargo.lock) removed the call. v2.7.14 is the latest stable as of this PR.Verification
Verified via
gh api repos/denoland/deno/contents/Cargo.lock?ref=<tag>.Cannot be reproduced locally (no Server 2016 / pre-16299 Windows hardware on hand). Reporter to confirm against the prerelease build.
Notable changes beyond the version bump
Uint8Array<ArrayBuffer>vs<ArrayBufferLike>and Deno resolves the barepathspecifier's types vianode:pathcompat instead of the import map. Fixed insrc/deno_ral/path.ts(new@std/pathalias for named imports ofSEPARATOR/fromFileUrl/etc.) andsrc/core/{deno-dom,hash,http,path}.ts(targeted casts atResponse/crypto.subtle.digestcall sites)..github/workflows/create-release.ymlupdated toh6046fbb_0(linux-64 build for 2.7.14). Themake-tarball-rheljob staysif: falseper existing project decision; hash updated for forward consistency.deno.land/std@xexample that predated the JSR migration, missingcheck.tssync step). Fixed in this PR alongside the actual upgrade..bat/.cmd spawn audit
Audited
Deno.Commandcall sites undersrc/for direct.bat/.cmdinvocation (Deno 2.5.2 briefly rejected these; 2.5.6+ re-allowed). Findings:safeWindowsExec— routes viacmd /c✓devconfig.ts— explicit["cmd", "/c", ...]wrapper ✓dart-sass.ts— bypassessass.bat, invokesdart.exe+sass.snapshotdirectly ✓texlive.tstlmgrCommand— routes viasafeWindowsExecon Windows ✓verapdf.ts— string references for path-building only; no direct spawn ✓serve.ts/preview-server.ts(npm.cmdfor external preview): verified directDeno.Command("npm.cmd", ...)works under Deno 2.7.14 — no wrapper needed.Test plan
configure.cmdsucceeds against new binary (verified locally on Windows)quarto checkreports Deno 2.7.14 with no version mismatch and clean TS typecheckunit/preview-initial-path.test.ts,smoke/render/render-html|reveal|pdf|docx|typst-package-staging.test.ts,smoke/engine/*(29/0/0)