- 
                Notifications
    You must be signed in to change notification settings 
- Fork 124
Closed
Description
I'm still seeing this error on the latest, previously reported as #207.
TypeError: Found non-callable @@iterator at verifyConditions
It when running semantic-release in a private project, and when running via npx.
It happens in https://github.com/FauxFaux/testcase-semantic-release , although you will need to have write access to github to get to the point, making it hard to demo in docker.
% npm run semantic-release 
> revise@1.0.0 semantic-release /var/tmp/faux191028.revise
> semantic-release
[1:49:39 PM] [semantic-release] › ℹ  Running semantic-release version 15.13.28
[1:49:40 PM] [semantic-release] › ✔  Loaded plugin "verifyConditions" from "@semantic-release/npm"
[1:49:40 PM] [semantic-release] › ✔  Loaded plugin "verifyConditions" from "@semantic-release/github"
[1:49:40 PM] [semantic-release] › ✔  Loaded plugin "analyzeCommits" from "@semantic-release/commit-analyzer"
[1:49:40 PM] [semantic-release] › ✔  Loaded plugin "generateNotes" from "@semantic-release/release-notes-generator"
[1:49:40 PM] [semantic-release] › ✔  Loaded plugin "prepare" from "@semantic-release/npm"
[1:49:40 PM] [semantic-release] › ✔  Loaded plugin "publish" from "@semantic-release/npm"
[1:49:40 PM] [semantic-release] › ✔  Loaded plugin "publish" from "@semantic-release/github"
[1:49:40 PM] [semantic-release] › ✔  Loaded plugin "success" from "@semantic-release/github"
[1:49:40 PM] [semantic-release] › ✔  Loaded plugin "fail" from "@semantic-release/github"
[1:49:40 PM] [semantic-release] › ⚠  This run was not triggered in a known CI environment, running in dry-run mode.
[1:49:40 PM] [semantic-release] › ⚠  Run automated release from branch master in dry-run mode
[1:49:43 PM] [semantic-release] › ✔  Allowed to push to the Git repository
[1:49:43 PM] [semantic-release] › ℹ  Start step "verifyConditions" of plugin "@semantic-release/npm"
[1:49:43 PM] [semantic-release] [@semantic-release/npm] › ℹ  Verify authentication for registry https://registry.npmjs.org/
[1:49:43 PM] [semantic-release] › ✖  Failed step "verifyConditions" of plugin "@semantic-release/npm"
[1:49:43 PM] [semantic-release] › ℹ  Start step "verifyConditions" of plugin "@semantic-release/github"
[1:49:43 PM] [semantic-release] [@semantic-release/github] › ℹ  Verify GitHub authentication
[1:49:43 PM] [semantic-release] › ✔  Completed step "verifyConditions" of plugin "@semantic-release/github"
[1:49:43 PM] [semantic-release] › ✖  An error occurred while running semantic-release: { TypeError: Found non-callable @@iterator
    at verifyConditions (/var/tmp/faux191028.revise/node_modules/@semantic-release/npm/index.js:38:12) pluginName: '@semantic-release/npm' }
{ AggregateError: 
    TypeError: Found non-callable @@iterator
        at verifyConditions (/var/tmp/faux191028.revise/node_modules/@semantic-release/npm/index.js:38:12)
    at /var/tmp/faux191028.revise/node_modules/semantic-release/lib/plugins/pipeline.js:54:11 name: 'AggregateError' }npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! revise@1.0.0 semantic-release: `semantic-release`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the revise@1.0.0 semantic-release script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR!     /home/faux/.cache/npm/_logs/2019-10-28T13_49_43_571Z-debug.log
% npm ls @semantic-release/npm
revise@1.0.0 /var/tmp/faux191028.revise
└─┬ semantic-release@15.13.28
  └── @semantic-release/npm@5.3.1 
The error it is attempting to spread,
Lines 37 to 39 in 7db019f
| } catch (error) { | |
| errors.push(...error); | |
| } | 
is:
{ [Error: ENOENT: no such file or directory, stat '/var/tmp/faux191028.revise/.npmrc']
  errno: -2,
  code: 'ENOENT',
  syscall: 'stat',
  path: '/var/tmp/faux191028.revise/.npmrc' }
I do indeed not have a .npmrc in the current directory.