node-gradle / node-gradle/gradle-node-plugin
pnpmInstall: Throws strange exceptions: Solved with "--no-parallel"
Nobody has claimed this yet.
- Dominant language
- Groovy
- Stars
- 677
- Forks
- 120
- PR merge metrics
- No merged PRs in 30d
Description
I get these exceptions when calling gradle pnpmInstall from my project root (with several sub projects configured for pnpm):
> Task :internal:closed:webapps:meistercharts.com:pnpmInstall FAILED
Caching disabled for task ':internal:closed:webapps:meistercharts.com:pnpmInstall' because:
Caching has not been enabled for the task
Task ':internal:closed:webapps:meistercharts.com:pnpmInstall' is not up-to-date because:
Output property 'nodeModulesDirectory' file /home/johannes/projects/com.cedarsoft.monorepo/internal/closed/webapps/meistercharts.com/node_modules/@astrojs/check has been removed.
Output property 'nodeModulesDirectory' file /home/johannes/projects/com.cedarsoft.monorepo/internal/closed/webapps/meistercharts.com/node_modules/@astrojs/check/LICENSE has been removed.
Output property 'nodeModulesDirectory' file /home/johannes/projects/com.cedarsoft.monorepo/internal/closed/webapps/meistercharts.com/node_modules/@astrojs/check/dist has been removed.
Starting process 'command '/home/johannes/projects/com.cedarsoft.monorepo/internal/closed/webapps/meistercharts.com/build/node/pnpm/pnpm-v8.15.1/bin/pnpm''. Working directory: /home/johannes/projects/com.cedarsoft.monorepo/internal/closed/webapps/meistercharts.com Command: /home/johannes/projects/com.cedarsoft.monorepo/internal/closed/webapps/meistercharts.com/build/node/pnpm/pnpm-v8.15.1/bin/pnpm install
Successfully started process 'command '/home/johannes/projects/com.cedarsoft.monorepo/internal/closed/webapps/meistercharts.com/build/node/pnpm/pnpm-v8.15.1/bin/pnpm''
Scope: all 12 workspace projects
../../../.. | Progress: resolved 1, reused 0, downloaded 0, added 0
../../../.. | +2358 ++++++++++++++++++++++++++++
../../../.. | Progress: resolved 2358, reused 288, downloaded 0, added 0
../../../.. | Progress: resolved 2358, reused 1799, downloaded 0, added 0
../../../.. | Progress: resolved 2358, reused 2352, downloaded 0, added 0
../../../.. | Progress: resolved 2358, reused 2352, downloaded 0, added 0, done
ENOENT ENOENT: no such file or directory, unlink '/home/johannes/projects/com.cedarsoft.monorepo/node_modules/.pnpm/node_modules/tunnel-agent'
The exact error message changes every time:
ERR_PNPM_LINKING_FAILED Error: ENOTEMPTY: directory not empty, rmdir '/home/johannes/projects/com.cedarsoft.monorepo/node_modules/.pnpm/shikiji@0.9.19/node_modules/shikiji/dist/langs'
ERR_PNPM_LINKING_FAILED Error: ENOTEMPTY: directory not empty, rename '/home/johannes/projects/com.cedarsoft.monorepo/node_modules/.pnpm/postcss-calc@8.2.4_postcss@8.4.33/node_modules/postcss-calc_tmp_15783' -> '/home/johannes/projects/com.cedarsoft.monorepo/node_modules/.pnpm/postcss-calc@8.2.4_postcss@8.4.33/node_modules/postcss-calc'
The exception does not happen if adding "--no-parallel".
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Reproduce the gradle pnpmInstall failure in a project with several pnpm subprojects, then compare it with the --no-parallel invocation. Investigate the pnpmInstall task's parallel execution and verify completion without ENOENT or ENOTEMPTY linking errors while retaining parallel operation.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- node.js
- Domain
- build-system
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100