Skip to content

build: define the verify:dist task the release script already calls - #3523

Merged
kojiwakayama merged 1 commit into
mainfrom
fix/define-verify-dist-task
Aug 10, 2026
Merged

build: define the verify:dist task the release script already calls#3523
kojiwakayama merged 1 commit into
mainfrom
fix/define-verify-dist-task

Conversation

@kojiwakayama

@kojiwakayama kojiwakayama commented Aug 10, 2026

Copy link
Copy Markdown
Contributor

Closes veryfront-issue-inbox#435.

Problem

scripts/release.ts runs deno task verify:dist whenever --no-build is not passed:

// 3. Verify distributable artifacts locally (CI will rebuild on publish)
if (!args["no-build"]) {
  console.log("\n📦 Verifying distribution artifacts (binary + npm package)...");
  await runCommand(["deno", "task", "verify:dist"]);
}

No such task existed. Running it printed Task not found: verify:dist followed by the task list, so any release cut without --no-build failed at that step.

Together with #3505 — which fixed deno task test dying on an orphaned #dnt import since #3212 — this is why recent releases were all cut as --no-test --no-build: both of the release script's own gates were unrunnable, for two unrelated reasons. With both fixed, releases can run their own gates again.

Fix

Defined as the two tasks the script's own comment names — binary and npm package:

"verify:dist": "deno task build && deno task build:npm"

Verified before proposing

Ran end to end on this branch:

$ deno task verify:dist
...
📦 Output: ./npm/
📦 Extension packages: ./npm/extensions/
exit=0

Both artifacts produced, and no build output leaks into git (git status shows only deno.json). Defining a task that does not work would only relocate the breakage, so it was executed rather than assumed.

Note on cost

It is not free — verify:dist compiles the binary and builds the npm package locally, so an ungated deno task release becomes substantially slower. That is presumably part of why the skip flags became habitual. If that tradeoff is unwanted, the alternative is to drop the call from release.ts rather than leave it referencing a task that does not exist.

Summary by CodeRabbit

  • Chores
    • Added a distribution verification task that runs both build processes to validate generated packages.

`scripts/release.ts` runs `deno task verify:dist` whenever `--no-build` is
not passed:

    // 3. Verify distributable artifacts locally (CI will rebuild on publish)
    if (!args["no-build"]) {
      await runCommand(["deno", "task", "verify:dist"]);
    }

No such task existed. Running it printed "Task not found: verify:dist"
followed by the task list, so any release cut without `--no-build` failed
at that step.

Together with #3505, which fixed `deno task test` dying on an orphaned
`#dnt` import, this is why recent releases were all cut as
`--no-test --no-build`: both of the release script's own gates were
unrunnable, for two unrelated reasons.

Defined as the two tasks the script's own comment names -- binary and npm
package. Verified by running it end to end on this branch: exit 0, both
artifacts produced. Defining a task that does not work would only move the
breakage, so it was run before being proposed.

Closes veryfront-issue-inbox#435.
@coderabbitai

coderabbitai Bot commented Aug 10, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 1bb1f8bd-4376-4214-aa50-68c9f98b1809

📥 Commits

Reviewing files that changed from the base of the PR and between bc9d253 and 3d1fac6.

📒 Files selected for processing (1)
  • deno.json

📝 Walkthrough

Walkthrough

The Deno task configuration adds verify:dist, which runs both the standard build and npm build tasks.

Changes

Distribution verification

Layer / File(s) Summary
Add distribution verification task
deno.json
Adds verify:dist to run deno task build and deno task build:npm.

Estimated code review effort: 1 (Trivial) | ~2 minutes

Suggested reviewers: kwakayama

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly identifies the addition of the missing verify:dist task and explains its purpose in the release script.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/define-verify-dist-task

Comment @coderabbitai help to get the list of available commands.

@kojiwakayama
kojiwakayama added this pull request to the merge queue Aug 10, 2026
Merged via the queue into main with commit 24c7b5a Aug 10, 2026
33 checks passed
@kojiwakayama
kojiwakayama deleted the fix/define-verify-dist-task branch August 10, 2026 04:11
@kwakayama kwakayama mentioned this pull request Aug 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant