Skip to content

Commit b36a174

Browse files
committed
Adding more perf trace logs for terminal suggest
1 parent cbd026e commit b36a174

File tree

2 files changed

+12
-0
lines changed

2 files changed

+12
-0
lines changed

src/vs/workbench/contrib/terminalContrib/suggest/browser/terminalCompletionService.ts

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -223,6 +223,7 @@ export class TerminalCompletionService extends Disposable implements ITerminalCo
223223
}
224224
if (completions.resourceRequestConfig) {
225225
const resourceCompletions = await this.resolveResources(completions.resourceRequestConfig, promptValue, cursorPosition, `core:path:ext:${provider.id}`, capabilities, shellType);
226+
this._logService.trace(`TerminalCompletionService#_collectCompletions dedupe`);
226227
if (resourceCompletions) {
227228
for (const item of resourceCompletions) {
228229
const labels = new Set(completionItems.map(c => c.label));
@@ -232,11 +233,13 @@ export class TerminalCompletionService extends Disposable implements ITerminalCo
232233
}
233234
}
234235
}
236+
this._logService.trace(`TerminalCompletionService#_collectCompletions dedupe done`);
235237
}
236238
return completionItems;
237239
});
238240

239241
const results = await Promise.all(completionPromises);
242+
this._logService.trace('TerminalCompletionService#_collectCompletions done');
240243
return results.filter(result => !!result).flat();
241244
}
242245

@@ -367,6 +370,7 @@ export class TerminalCompletionService extends Disposable implements ITerminalCo
367370
// - (absolute) `/src/|` -> `/src/`
368371
// - (tilde) `~/|` -> `~/`
369372
// - (tilde) `~/src/|` -> `~/src/`
373+
this._logService.trace(`TerminalCompletionService#resolveResources cwd`);
370374
if (foldersRequested) {
371375
let label: string;
372376
switch (type) {
@@ -401,6 +405,7 @@ export class TerminalCompletionService extends Disposable implements ITerminalCo
401405
// - (relative) `cd ./src/` -> `cd ./src/folder1/`, ...
402406
// - (absolute) `cd c:/src/` -> `cd c:/src/folder1/`, ...
403407
// - (tilde) `cd ~/src/` -> `cd ~/src/folder1/`, ...
408+
this._logService.trace(`TerminalCompletionService#resolveResources direct children`);
404409
for (const child of stat.children) {
405410
let kind: TerminalCompletionItemKind | undefined;
406411
let detail: string | undefined = undefined;
@@ -467,6 +472,7 @@ export class TerminalCompletionService extends Disposable implements ITerminalCo
467472
// Support $CDPATH specially for the `cd` command only
468473
//
469474
// - (relative) `|` -> `/foo/vscode` (CDPATH has /foo which contains vscode folder)
475+
this._logService.trace(`TerminalCompletionService#resolveResources CDPATH`);
470476
if (type === 'relative' && foldersRequested) {
471477
if (promptValue.startsWith('cd ')) {
472478
const config = this._configurationService.getValue(TerminalSuggestSettingId.CdPath);
@@ -507,6 +513,7 @@ export class TerminalCompletionService extends Disposable implements ITerminalCo
507513
//
508514
// - (relative) `|` -> `../`
509515
// - (relative) `./src/|` -> `./src/../`
516+
this._logService.trace(`TerminalCompletionService#resolveResources parent dir`);
510517
if (type === 'relative' && foldersRequested) {
511518
let label = `..${resourceRequestConfig.pathSeparator}`;
512519
if (lastWordFolder.length > 0) {
@@ -527,6 +534,7 @@ export class TerminalCompletionService extends Disposable implements ITerminalCo
527534
// input.
528535
//
529536
// - (relative) `|` -> `~`
537+
this._logService.trace(`TerminalCompletionService#resolveResources tilde`);
530538
if (type === 'relative' && !lastWordFolder.match(/[\\\/]/)) {
531539
let homeResource: URI | string | undefined;
532540
const home = this._getHomeDir(useWindowsStylePath, capabilities);
@@ -548,6 +556,7 @@ export class TerminalCompletionService extends Disposable implements ITerminalCo
548556
});
549557
}
550558

559+
this._logService.trace(`TerminalCompletionService#resolveResources done`);
551560
return resourceCompletions;
552561
}
553562

src/vs/workbench/contrib/terminalContrib/suggest/browser/terminalSuggestAddon.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -356,10 +356,13 @@ export class SuggestAddon extends Disposable implements ITerminalAddon, ISuggest
356356
items.push(this._inlineCompletionItem);
357357
}
358358

359+
this._logService.trace('TerminalCompletionService#_collectCompletions create model');
359360
const model = new TerminalCompletionModel(
360361
items,
361362
lineContext
362363
);
364+
this._logService.trace('TerminalCompletionService#_collectCompletions create model done');
365+
363366
if (token.isCancellationRequested) {
364367
this._completionRequestTimestamp = undefined;
365368
return;

0 commit comments

Comments
 (0)