Skip to content

Commit 11d9ee3

Browse files
authored
⬆️ Pin CI to Deno 2.9.5 for the esbuild bundle deadlock fix (#359)
Every workflow pinned an exact `deno-version: v2.9.1`, so the fix for the `deno bundle` ↔ esbuild deadlock could not arrive on its own. That wedge — both processes at 0% CPU forever, never self-recovering — was filed upstream as denoland/deno#36417 and fixed by denoland/esbuild_client#18, which moves ping/on-start response handling off the packet-dispatch path. Deno picked the dependency up in denoland/deno#36427 and shipped it in v2.9.5, whose notes name `fix(bundle): avoid esbuild protocol deadlock (#36427)`. `publish-packages.yml` is generated, and CI verifies it is in sync, so the pin moves in `scripts/gen-publish-workflow.md` and the workflow is regenerated rather than hand-edited. Verified against a 2.9.5 binary rather than assumed: - `packages/cli/tests/agent-cli.test.ts` passes all 7 steps in 26s. This one mattered: under 2.9.4 it hung on every step, because `deno run` stalled given a scrubbed env plus a fresh HOME and the test spawns a literal `deno` from PATH. That minimal case now returns in 0.02s. - `deno bundle` itself bundles 2469 modules in 762ms — the deadlock path, exercised directly. - lint, check, test (363 passed / 0 failed) and check:jsr are all green. The per-command deadline and the composability backstop live on the unmerged #279 branch and are untouched here. Co-authored-by: Taras Mankovski <74687+taras@users.noreply.github.com>
1 parent df19a0e commit 11d9ee3

7 files changed

Lines changed: 12 additions & 12 deletions

File tree

‎.github/workflows/ci.yml‎

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ jobs:
3030

3131
- uses: denoland/setup-deno@e95548e56dfa95d4e1a28d6f422fafe75c4c26fb # v2.0.3
3232
with:
33-
deno-version: v2.9.1
33+
deno-version: v2.9.5
3434

3535
- name: Typecheck
3636
run: deno task check
@@ -63,7 +63,7 @@ jobs:
6363

6464
- uses: denoland/setup-deno@e95548e56dfa95d4e1a28d6f422fafe75c4c26fb # v2.0.3
6565
with:
66-
deno-version: v2.9.1
66+
deno-version: v2.9.5
6767

6868
- name: Install dependencies
6969
run: deno task deps
@@ -84,7 +84,7 @@ jobs:
8484

8585
- uses: denoland/setup-deno@e95548e56dfa95d4e1a28d6f422fafe75c4c26fb # v2.0.3
8686
with:
87-
deno-version: v2.9.1
87+
deno-version: v2.9.5
8888

8989
- name: Install dependencies
9090
run: deno task deps
@@ -260,7 +260,7 @@ jobs:
260260

261261
- uses: denoland/setup-deno@e95548e56dfa95d4e1a28d6f422fafe75c4c26fb # v2.0.3
262262
with:
263-
deno-version: v2.9.1
263+
deno-version: v2.9.5
264264

265265
# Caches the harness's own graph, so it can run --cached-only below.
266266
- name: Prepare this checkout
@@ -279,7 +279,7 @@ jobs:
279279

280280
- uses: denoland/setup-deno@e95548e56dfa95d4e1a28d6f422fafe75c4c26fb # v2.0.3
281281
with:
282-
deno-version: v2.9.1
282+
deno-version: v2.9.5
283283

284284
- name: Install workspace deps
285285
run: deno install
@@ -316,7 +316,7 @@ jobs:
316316
# node_modules so it survives.
317317
- uses: denoland/setup-deno@e95548e56dfa95d4e1a28d6f422fafe75c4c26fb # v2.0.3
318318
with:
319-
deno-version: v2.9.1
319+
deno-version: v2.9.5
320320

321321
- name: Install dependencies
322322
run: deno task deps

‎.github/workflows/deploy.yml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ jobs:
2727

2828
- uses: denoland/setup-deno@e95548e56dfa95d4e1a28d6f422fafe75c4c26fb # v2.0.3
2929
with:
30-
deno-version: v2.9.1
30+
deno-version: v2.9.5
3131

3232
- name: Install workspace deps
3333
run: deno install

‎.github/workflows/main-health.yml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ jobs:
3939

4040
- uses: denoland/setup-deno@e95548e56dfa95d4e1a28d6f422fafe75c4c26fb # v2.0.3
4141
with:
42-
deno-version: v2.9.1
42+
deno-version: v2.9.5
4343

4444
- name: Reconcile the report against main's authoritative CI state
4545
env:

‎.github/workflows/publish-one.yml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ jobs:
3838

3939
- uses: denoland/setup-deno@e95548e56dfa95d4e1a28d6f422fafe75c4c26fb # v2.0.3
4040
with:
41-
deno-version: v2.9.1
41+
deno-version: v2.9.5
4242

4343
# Node 24 ships npm >= 11.5, required for OIDC trusted publishing to npm.
4444
- uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4

‎.github/workflows/publish-packages.yml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -142,7 +142,7 @@ jobs:
142142

143143
- uses: denoland/setup-deno@e95548e56dfa95d4e1a28d6f422fafe75c4c26fb # v2.0.3
144144
with:
145-
deno-version: v2.9.1
145+
deno-version: v2.9.5
146146

147147
# A build installs nothing, so a fresh checkout prepares first (spec §8).
148148
- name: Install dependencies

‎.github/workflows/release.yml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ jobs:
6868

6969
- uses: denoland/setup-deno@e95548e56dfa95d4e1a28d6f422fafe75c4c26fb # v2.0.3
7070
with:
71-
deno-version: v2.9.1
71+
deno-version: v2.9.5
7272

7373
# `deno compile` embeds the generated browser bundle by following the
7474
# literal dynamic import, and compiles without complaint when the file is

‎scripts/gen-publish-workflow.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -145,7 +145,7 @@ npm stays per-package in `publish-one.yml`, and this job runs in the same
145145
146146
- uses: denoland/setup-deno@e95548e56dfa95d4e1a28d6f422fafe75c4c26fb # v2.0.3
147147
with:
148-
deno-version: v2.9.1
148+
deno-version: v2.9.5
149149
150150
# A build installs nothing, so a fresh checkout prepares first (spec §8).
151151
- name: Install dependencies

0 commit comments

Comments
 (0)