Change:
<!-- Do Not Delete This! bugreporttemplate --<!-- Please read our Rules of Conduct: --<!-- Read our guide about submitting issues: --<!-- Search existing issues to avoid creating duplicates. --<!-- Test using the latest Insiders build to see if your issue has already been fixed: --<!-- Instead of creating your report here, use 'Report Issue' from the 'Help' menu in VS Code to pre-fill useful information. --- VS Code Version: 1.50 OS Version: Windows 10 and Mac OSX Catalina Steps to Reproduce: to a remote server the remote server's extension host to crash, possibly by running out of memory or by killing the process yourself. the remote server's extension host has crashed, attempt to file a bug by clicking the bug nub icon in the bottom right corner of the main window. Expected Result: Issue reporter window appears and allows user to file a bug Actual Result: Issue reporter window fails to launch. If you check the debugger, you will see that an exception stack trace for "ExtensionManagementService.getInstalled". Since the remote extension host is not active, doesn't work - it throws an exception rather than returning an empty list. <!-- Launch with to check. --Does this issue occur when all extensions are disabled?: Yes <!-- If you answered No above, use 'Help: Start Extension Bisect' from Command Palette to try to identify the cause. --<!-- Issues caused by an extension need to be reported direct to the extension publisher. The 'Help Report Issue' dialog can assist with this. --

Discussion:
) { } async openReporter(dataOverrides: Partial<IssueReporterData> = {}): Promise<void> { <del> const extensions = await this.extensionManagementService.getInstalled(); const enabledExtensions = extensions.filter(extension => this.extensionEnablementService.isEnabled(extension) || (dataOverrides.extensionId && extension.identifier.id === dataOverrides.extensionId)); const extensionData = enabledExtensions.map((extension): IssueReporterExtensionData => { const { manifest } = extension; const manifestKeys = manifest.contributes ? Object.keys(manifest.contributes) : []; const isTheme = !manifest.activationEvents && manifestKeys.length === 1 && manifestKeys[0] === 'themes'; const isBuiltin = extension.type === ExtensionType.System; return { name: manifest.name, publisher: manifest.publisher, version: manifest.version, repositoryUrl: manifest.repository && manifest.repository.url, bugsUrl: manifest.bugs && manifest.bugs.url, displayName: manifest.displayName, id: extension.identifier.id, isTheme, isBuiltin, }; }); </del> <ins> const extensionData: IssueReporterExtensionData[] = []; try { const extensions = await this.extensionManagementService.getInstalled(); const enabledExtensions = extensions.filter(extension => this.extensionEnablementService.isEnabled(extension) || (dataOverrides.extensionId && extension.identifier.id === dataOverrides.extensionId)); extensionData.push(...enabledExtensions.map((extension): IssueReporterExtensionData => { const { manifest } = extension; const manifestKeys = manifest.contributes ? Object.keys(manifest.contributes) : []; const isTheme = !manifest.activationEvents && manifestKeys.length === 1 && manifestKeys[0] === 'themes'; const isBuiltin = extension.type === ExtensionType.System; return { name: manifest.name, publisher: manifest.publisher, version: manifest.version, repositoryUrl: manifest.repository && manifest.repository.url, bugsUrl: manifest.bugs && manifest.bugs.url, displayName: manifest.displayName, id: extension.identifier.id, isTheme, isBuiltin, }; })); } catch (e) { extensionData.push({ name: 'Workbench Issue Service', publisher: 'Unknown', version: '0.0.0', repositoryUrl: undefined, bugsUrl: undefined, displayName: `Extensions not loaded: ${e}`, id: 'workbench.issue', isTheme: false, isBuiltin: true }); } </ins> const experiments = await this.experimentService.getCurrentExperiments(); const githubSessions = await this.authenticationService.getSessions('github'); const potentialSessions = githubSessions.filter(session => session.scopes.includes('repo'));