pnpm / pnpm

Fast, disk space efficient package manager
https://pnpm.io
MIT License
29.58k stars 1k forks source link

Better log output for errors on recursive commands #1321

Open donaldpipowitch opened 6 years ago

donaldpipowitch commented 6 years ago

pnpm version:

2.13.1

Code to reproduce the issue:

Expected behavior:

Output of $ pnpm recursive run build should include errors like $ cd packages/client && pnpm run build:

> vscode-extension-client@1.0.0 build /Users/pipo/workspace/how-to-create-a-language-server-and-vscode-extension/packages/client
> tsc -p src

node_modules/.registry.npmjs.org/vscode-languageclient/4.4.0/node_modules/vscode-languageclient/lib/client.d.ts:1:707 - error TS2305: Module ''vscode'' has no exported member 'DocumentSymbol'.

1 import { TextDocumentChangeEvent, TextDocument, Disposable, OutputChannel, FileSystemWatcher as VFileSystemWatcher, DiagnosticCollection, Diagnostic as VDiagnostic, Uri, ProviderResult, CancellationToken, Position as VPosition, Location as VLocation, Range as VRange, CompletionItem as VCompletionItem, CompletionList as VCompletionList, SignatureHelp as VSignatureHelp, Definition as VDefinition, DocumentHighlight as VDocumentHighlight,SymbolInformation as VSymbolInformation, CodeActionContext as VCodeActionContext, Command as VCommand, CodeLens as VCodeLens, FormattingOptions asVFormattingOptions, TextEdit as VTextEdit, WorkspaceEdit as VWorkspaceEdit, Hover as VHover, CodeAction as VCodeAction, DocumentSymbol as VDocumentSymbol, DocumentLink as VDocumentLink, TextDocumentWillSaveEvent, WorkspaceFolder as VWorkspaceFolder, CompletionContext as VCompletionContext } from 'vscode';
                                                                                                                        ~~~~~~~~~~~~~~

node_modules/.registry.npmjs.org/vscode-languageclient/4.4.0/node_modules/vscode-languageclient/lib/protocolConverter.d.ts:54:54 - error TS2694: Namespace ''vscode'' has no exported member 'DocumentSymbol'.

54     asDocumentSymbol(value: ls.DocumentSymbol): code.DocumentSymbol;
                                                        ~~~~~~~~~~~~~~

node_modules/.registry.npmjs.org/vscode-languageclient/4.4.0/node_modules/vscode-languageclient/lib/protocolConverter.d.ts:56:57 - error TS2694: Namespace ''vscode'' has no exported member 'DocumentSymbol'.

56     asDocumentSymbols(value: ls.DocumentSymbol[]): code.DocumentSymbol[];
                                                           ~~~~~~~~~~~~~~

node_modules/.registry.npmjs.org/vscode-languageclient/4.4.0/node_modules/vscode-languageclient/lib/protocolConverter.d.ts:57:76 - error TS2694: Namespace ''vscode'' has no exported member 'DocumentSymbol'.

57     asDocumentSymbols(value: ls.DocumentSymbol[] | undefined | null): code.DocumentSymbol[] | undefined;
                                                                              ~~~~~~~~~~~~~~

Actual behavior:

Output of $ pnpm recursive run build:

$ pnpm recursive run build

packages/server                          |       build$ tsc -p src

packages/client                          |       build$ tsc -p src
packages/client                          |       build: node_modules/.registry.npmjs.org/vscode-languageclient/4.4.0/node_modules/vscode-language
packages/client                          |       build: node_modules/.registry.npmjs.org/vscode-languageclient/4.4.0/node_modules/vscode-language
packages/client                          |       build: Exited with 2
/Users/pipo/workspace/how-to-create-a-language-server-and-vscode-extension/packages/client:
 ERROR  undefined build: `tsc -p src`
Exit status 2

Additional information:

zkochan commented 5 years ago

I don't know yet why this happens but a workaround is to run pnpm m run build --workspace-concurrency 1