npm 12 - `npm run tap` (2 failures)
Nobody has claimed this yet.
Assessment
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Newbie friendliness
- 68/100
- Issue type
- Bug
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- javascript, nodejs
- Domain
- testing-qa
Research direction
Start by running npm run tap with npm 12 and inspect the failing cases in test/npm/test-npm-install.js and test/test-citgm.js. Trace the reported failures through lib/package-manager/install.js and lib/grab-project.js, then verify that both tests pass under npm 12 while the full suite remains green.
Written by the indexing model from the issue text.
Description
Situation
Running npm run tap (part of npm test) under npm 12 causes 2 tests from the suite to fail:
✖ npm-install: custom install command > Install Failed
lib/package-manager/install.js:151:23
✖ citgm: omg-i-pass from git url > Failure getting project from npm npm warn Unknown env config "tmp". This will error in a future major version of npm. See `npm
help npmrc` for supported config options. npm error code EALLOWGIT npm error Fetching packages of type "git" have been disabled npm error Refusing to fetch
"git+https://github.com/MylesBorins/omg-i-pass.git" npm error
Asserts: 318 pass 2 fail 320 of 320 complete
Suites: 25 pass 2 fail 27 of 27 complete
(Under npm 11.17.0, all tests pass.)
Steps to reproduce
Ubuntu 24.04.4 LTS, Node.js 24.19.0, initially with npm 11.17.0
git clone https://github.com/nodejs/citgm
cd citgm
npm install
npm run tap #
npm install -g npm@12.0.2
npm run tap #
Logs
PASS test/bin/test-citgm-all.js 20 OK 1m
PASS test/bin/test-citgm.js 8 OK 20s
PASS test/npm/test-npm-author-name.js 5 OK 880ms
FAIL test/npm/test-npm-install.js 1 failed of 10 3.009s
✖ npm-install: custom install command > Install Failed
lib/package-manager/install.js:151:23
PASS test/npm/test-npm-test.js 12 OK 2.180s
PASS test/pnpm/test-pnpm-install.js 10 OK 2.410s
PASS test/pnpm/test-pnpm-test.js 12 OK 3.778s
PASS test/reporter/test-reporter-junit.js 9 OK 931ms
PASS test/reporter/test-reporter-logger.js 3 OK 879ms
PASS test/reporter/test-reporter-markdown.js 3 OK 875ms
PASS test/reporter/test-reporter-tap.js 7 OK 932ms
PASS test/reporter/test-reporter-util.js 20 OK 834ms
PASS test/reporter/test-reporter.js 8 OK 880ms
PASS test/test-check-tags.js 28 OK 956ms
PASS test/test-citgm-timeout.js 4 OK 1m
FAIL test/test-citgm.js 1 failed of 5 5.894s
✖ citgm: omg-i-pass from git url > Failure getting project from npm npm warn Unknown env config "tmp". This will error in a future major version of npm. See `npm
help npmrc` for supported config options. npm error code EALLOWGIT npm error Fetching packages of type "git" have been disabled npm error Refusing to fetch
"git+https://github.com/MylesBorins/omg-i-pass.git" npm error A complete log of this run can be found in:
/home/mike/.npm/_logs/2026-08-19T12_09_53_713Z-debug-0.log
test/test-citgm.js:52:9
PASS test/test-create-options.js 7 OK 880ms
PASS test/test-grab-module-data.js 11 OK 5.758s
PASS test/test-grab-project.js 10 OK 8.689s
PASS test/test-lookup.js 26 OK 887ms
PASS test/test-match-conditions.js 51 OK 865ms
PASS test/test-spawn.js 2 OK 808ms
PASS test/test-temp-directory.js 8 OK 908ms
PASS test/test-timeout.js 16 OK 1.341s
PASS test/test-unpack.js 4 OK 917ms
PASS test/yarn/test-yarn-install.js 9 OK 3.276s
PASS test/yarn/test-yarn-test.js 12 OK 2.968s
----------------------|---------|----------|---------|---------|---------------------------------------
File | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s
----------------------|---------|----------|---------|---------|---------------------------------------
All files | 94.98 | 92.4 | 98.75 | 94.98 |
lib | 93.93 | 88.76 | 100 | 93.93 |
citgm.js | 100 | 91.3 | 100 | 100 | 97,133
git-clone.js | 89.47 | 85.71 | 100 | 89.47 | 28-31
grab-module-data.js | 88.42 | 90 | 100 | 88.42 | 28,74-76,85-91
grab-project.js | 96.24 | 96.55 | 100 | 96.24 | 79-81,96-97
lookup.js | 91.07 | 86.36 | 100 | 91.07 | 67-77,116-117,185-186,188-189,191-192
match-conditions.js | 91 | 85.36 | 100 | 91 | 12-14,24-29
out.js | 97.43 | 65 | 100 | 97.43 | 35-36
spawn.js | 23.07 | 66.66 | 100 | 23.07 | 5-24
unpack.js | 95.34 | 85.71 | 100 | 95.34 | 15-16
lib/bin | 95.67 | 93.93 | 88.88 | 95.67 |
citgm-all.js | 94.51 | 93.18 | 85.71 | 94.51 | 98-100,102-103,114-115,138-143
citgm.js | 98.18 | 95.45 | 100 | 98.18 | 61-62
lib/package-manager | 98.38 | 94.89 | 100 | 98.38 |
install.js | 96.91 | 89.65 | 100 | 96.91 | 22-23,120-122
test.js | 99.37 | 95.83 | 100 | 99.37 | 147
lib/reporter | 94.01 | 98.93 | 100 | 94.01 |
logger.js | 77.21 | 94.11 | 100 | 77.21 | 22-39
----------------------|---------|----------|---------|---------|---------------------------------------
🌈 TEST COMPLETE 🌈
FAIL test/npm/test-npm-install.js 1 failed of 10 3.009s
✖ npm-install: custom install command > Install Failed
lib/package-manager/install.js
148
149 proc.on('close', (code) => {
150 if (code > 0) {
151 return finish(Error('Install Failed'));
━━━━━━━━━━━━━━━━━━━━━━━━━━┛
152 }
153 context.emit(
154 'data',
155 'info',
tapCaught: returnedPromiseRejection
ChildProcess.<anonymous> (lib/package-manager/install.js:151:23)
FAIL test/test-citgm.js 1 failed of 5 5.894s
✖ citgm: omg-i-pass from git url > Failure getting project from npm npm warn Unknown env config "tmp". This will error in a future major version of npm. See `npm
help npmrc` for supported config options. npm error code EALLOWGIT npm error Fetching packages of type "git" have been disabled npm error Refusing to fetch
"git+https://github.com/MylesBorins/omg-i-pass.git" npm error A complete log of this run can be found in:
/home/mike/.npm/_logs/2026-08-19T12_09_53_713Z-debug-0.log
test/test-citgm.js
49 );
50 })
51 .on('fail', (err) => {
52 t.error(err);
━━━━━━━━━━━┛
53 })
54 .on('end', () => {
55 t.notOk(process.exitCode, 'it should not exit');
56 t.end();
Tester.<anonymous> (test/test-citgm.js:52:9)
Tester.run (lib/citgm.js:107:16)
cause: Error: Failure getting project from npm
npm warn Unknown env config "tmp". This will error in a future major version of npm. See `npm help npmrc` for supported config options.
npm error code EALLOWGIT
npm error Fetching packages of type "git" have been disabled
npm error Refusing to fetch "git+https://github.com/MylesBorins/omg-i-pass.git"
npm error A complete log of this run can be found in: /home/mike/.npm/_logs/2026-08-19T12_09_53_713Z-debug-0.log
lib/grab-project.js
85 if (bailed) return;
86 clearTimeout(timeoutId);
87 if (code > 0) {
88 return reject(new Error(`Failure getting project from npm\n${stderr}`));
━━━━━━━━━━━━━━━━━━━━━━━━━┛
89 }
90 filename = filename.trim();
91 if (context.module.type === 'directory') {
92 filename = filename.trim().split('\n');
ChildProcess.<anonymous> (lib/grab-project.js:88:23)
Asserts: 318 pass 2 fail 320 of 320 complete
Suites: 25 pass 2 fail 27 of 27 complete
# { total: 320, pass: 318, fail: 2 }
# time=213913.589ms
- Dominant language
- JavaScript
- Stars
- 605
- Forks
- 157
- Avg merge
- 3d 23h
- Merged PRs (30d)
- 3
Contributor guide
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.
More from nodejs/citgm
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
-
Difficulty 3/5 1-2 days Newbie friendliness 48/100
-
Review all tests Open
Difficulty 4/5 3-5 days Newbie friendliness 35/100
-
Difficulty 3/5 1-2 days Newbie friendliness 55/100
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
HarperFast/skills#96 ·
-
[Block] Latest Posts [Type] Bug
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Automattic/studio#4908 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 86/100
sugarlabs/musicblocks#8847 ·