Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
Review the following changes in direct dependencies. Learn more about Socket for GitHub.
|
There was a problem hiding this comment.
🔧 Build Fix:
The Vitest configuration uses the default fork-based process pool which causes intermittent EPIPE errors during test cleanup due to race conditions in child process communication. Tests pass but the build fails during teardown.
View Details
📝 Patch Details
diff --git a/apps/app/vitest.config.mts b/apps/app/vitest.config.mts
index 0866bcb..fabada1 100644
--- a/apps/app/vitest.config.mts
+++ b/apps/app/vitest.config.mts
@@ -6,6 +6,12 @@ export default defineConfig({
plugins: [react()],
test: {
environment: "jsdom",
+ pool: "threads",
+ poolOptions: {
+ threads: {
+ singleThread: true,
+ },
+ },
},
resolve: {
alias: {
Analysis
Vitest EPIPE error during test cleanup causes intermittent build failures
What fails: Vitest test runner fails intermittently with EPIPE (broken pipe) error during child process cleanup, causing the build to fail even when all tests pass
How to reproduce:
cd apps/app && pnpm testResult:
✓ __tests__/sign-in.test.tsx (1 test) 21ms
✓ __tests__/sign-up.test.tsx (1 test) 25ms
Test Files 2 passed (2)
Tests 2 passed (2)
Error: write EPIPE
at ChildProcess.target._send (node:internal/child_process:877:20)
at ForksPoolWorker.send (...vitest/dist/chunks/cli-api.D24RdiHp.js:6559:13)
[... stack trace continues]
errno: -32,
code: 'EPIPE',
syscall: 'write'
The error occurs intermittently during test cleanup when Vitest tries to communicate with child processes that have already terminated.
db8b729 to
1b2774c
Compare
Bumps [@turbo/gen](https://github.com/vercel/turborepo/tree/HEAD/packages/turbo-gen) from 2.5.8 to 2.6.0. - [Release notes](https://github.com/vercel/turborepo/releases) - [Changelog](https://github.com/vercel/turborepo/blob/main/release.md) - [Commits](https://github.com/vercel/turborepo/commits/v2.6.0/packages/turbo-gen) --- updated-dependencies: - dependency-name: "@turbo/gen" dependency-version: 2.6.0 dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com>
1b2774c to
faa66d4
Compare
Bumps @turbo/gen from 2.5.8 to 2.6.0.
Release notes
Sourced from
@turbo/gen's releases.... (truncated)
Commits
f601651publish 2.6.0 to registry0f63f6erelease(turborepo): 2.5.9-canary.11 (#11030)1cb78e2release(turborepo): 2.5.9-canary.10 (#11001)bff33eerelease(turborepo): 2.5.9-canary.9 (#11000)c3d5d99release(turborepo): 2.5.9-canary.8 (#10983)afaa443release(turborepo): 2.5.9-canary.7 (#10947)7720979release(turborepo): 2.5.9-canary.6 (#10946)6a9855brelease(turborepo): 2.5.9-canary.5 (#10937)39c6c2brelease(turborepo): 2.5.9-canary.4 (#10922)840576erelease(turborepo): 2.5.9-canary.3 (#10917)You can trigger a rebase of this PR by commenting
@dependabot rebase.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot mergewill merge this PR after your CI passes on it@dependabot squash and mergewill squash and merge this PR after your CI passes on it@dependabot cancel mergewill cancel a previously requested merge and block automerging@dependabot reopenwill reopen this PR if it is closed@dependabot closewill close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually@dependabot show <dependency name> ignore conditionswill show all of the ignore conditions of the specified dependency@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)