The default reporter repaints the terminal over anything git or ssh prints, so when a git dependency's SSH remote needs a key passphrase or a host key confirmation the prompt is invisible and `pnpm install` looks hung. `GIT_TERMINAL_PROMPT=0` already made git's own credential prompts fail fast; ssh prompts on the terminal directly, so it needs `BatchMode=yes` through `GIT_SSH_COMMAND` to fail the same way. Both the git resolver's `ls-remote` and every git invocation of the git fetcher now go through one helper, `nonInteractiveGitEnv` in `@pnpm/network.git-utils` and `disable_git_prompts` in `pnpm-git-utils`, that sets both variables. The ssh override is skipped when the user already selected the ssh command through `GIT_SSH_COMMAND`, `GIT_SSH`, or the `core.sshCommand` git setting, so a custom key or a plink setup keeps working, and setting `GIT_SSH_COMMAND=ssh` opts back into prompting. Closes pnpm/pnpm#2227
53 lines
850 B
JSON
53 lines
850 B
JSON
{
|
|
"extends": "@pnpm/tsconfig",
|
|
"compilerOptions": {
|
|
"outDir": "lib",
|
|
"rootDir": "src"
|
|
},
|
|
"include": [
|
|
"src/**/*.ts",
|
|
"../../__typings__/**/*.d.ts"
|
|
],
|
|
"references": [
|
|
{
|
|
"path": "../../core/error"
|
|
},
|
|
{
|
|
"path": "../../core/logger"
|
|
},
|
|
{
|
|
"path": "../../core/types"
|
|
},
|
|
{
|
|
"path": "../../exec/prepare-package"
|
|
},
|
|
{
|
|
"path": "../../fs/packlist"
|
|
},
|
|
{
|
|
"path": "../../network/git-utils"
|
|
},
|
|
{
|
|
"path": "../../resolving/git-resolver"
|
|
},
|
|
{
|
|
"path": "../../store/cafs"
|
|
},
|
|
{
|
|
"path": "../../store/create-cafs-store"
|
|
},
|
|
{
|
|
"path": "../../store/index"
|
|
},
|
|
{
|
|
"path": "../../text/ordinal-comparator"
|
|
},
|
|
{
|
|
"path": "../../worker"
|
|
},
|
|
{
|
|
"path": "../fetcher-base"
|
|
}
|
|
]
|
|
}
|