jiebi/CodeConvo huggingface dataset:
Change:
import { Application } from '../../../../automation'; <del> export async function setTerminalTestSettings(app: Application) { // Always show tabs to make getting terminal groups easier await app.workbench.settingsEditor.addUserSetting('terminal.integrated.tabs.hideCondition', '"never"'); // Use the DOM renderer for smoke tests so they can be inspected in the playwright trace // viewer await app.workbench.settingsEditor.addUserSetting('terminal.integrated.gpuAcceleration', '"off"'); </del> <ins> export async function setTerminalTestSettings(app: Application, additionalSettings: [key: string, value: string][] = []) { await app.workbench.settingsEditor.addUserSettings([ // Work wrap is required when calling settingsEditor.addUserSetting multiple times or the // click to focus will fail ['editor.wordWrap', '"on"'], // Always show tabs to make getting terminal groups easier ['terminal.integrated.tabs.hideCondition', '"never"'], // Use the DOM renderer for smoke tests so they can be inspected in the playwright trace // viewer ['terminal.integrated.gpuAcceleration', '"off"'], ...additionalSettings ]); </ins> // Close the settings editor await app.workbench.quickaccess.runCommand('workbench.action.closeAllEditors');

Discussion:
With support for for Electron tests, we should enable terminal tests: I eagerly had enabled them but since we don't know whether Electron smoke tests with are stable, I moved back to only running them in web. We should not enable these tests until we are sure, smoke tests are stable, so maybe this should only happen in May.
Failing macOS run for reference: !
Still not passing, deferring to a debt week
Change:
getInputFromResource(resource: URI): TerminalEditorInput { throw new Error('Method not implemented.'); } setActiveInstance(instance: ITerminalInstance): void { throw new Error('Method not implemented.'); } focusActiveInstance(): Promise<void> { throw new Error('Method not implemented.'); } <ins> focusInstance(instance: ITerminalInstance): void { throw new Error('Method not implemented.'); } </ins> getInstanceFromResource(resource: URI | undefined): ITerminalInstance | undefined { throw new Error('Method not implemented.'); } focusFindWidget(): void { throw new Error('Method not implemented.'); } hideFindWidget(): void { throw new Error('Method not implemented.'); }

Discussion:
Type: <bBug</bPreparation: create the following file: the terminals panel, create a new shell terminal it to the main editor area to make it a full-size terminal open an editor tab (any file will do, including Command-N) sure the panel is closed (press Command-J to close it if it is open) the above task (e.g. with Command-P, then type ) Expected: the panel opens and shows the running task Actual: the editor terminal is brought to the front, and the panel stays closed VS Code version: Code - Insiders 1.92.0-insider (, 2024-07-11T05:03:58.450Z) OS version: Darwin arm64 23.5.0 Modes: <details<summarySystem Info</summary </detailsExtensions disabled <!-- generated by issue reporter --
In this scenario, focus also fails.
I can confirm that fixes the problem for me. Thanks!
Change:
isPure: (actual === expected) }; } <ins> private _showBanner(): void { const checksumFailMoreInfoUrl = this.productService.checksumFailMoreInfoUrl; this.bannerService.show({ id: 'installation.corrupt', message: localize('integrity.banner', "Your {0} installation appears to be corrupt. Please reinstall.", this.productService.nameShort), icon: Codicon.warning, actions: checksumFailMoreInfoUrl ? [ { label: localize('integrity.moreInformation', "More Information"), href: checksumFailMoreInfoUrl } ] : undefined }); } private _showNotification(): void { const checksumFailMoreInfoUrl = this.productService.checksumFailMoreInfoUrl; const message = localize('integrity.prompt', "Your {0} installation appears to be corrupt. Please reinstall.", this.productService.nameShort); if (checksumFailMoreInfoUrl) { this.notificationService.prompt( Severity.Warning, message, [ { label: localize('integrity.moreInformation', "More Information"), run: () => this.openerService.open(URI.parse(checksumFailMoreInfoUrl)) }, { label: localize('integrity.dontShowAgain', "Don't Show Again"), isSecondary: true, run: () => this._storage.set({ dontShowPrompt: true, commit: this.productService.commit }) } ], { sticky: true, priority: NotificationPriority.URGENT } ); } else { this.notificationService.notify({ severity: Severity.Warning, message, sticky: true, priority: NotificationPriority.URGENT }); } } </ins> } registerSingleton(IIntegrityService, IntegrityService, InstantiationType.Delayed);

Discussion:
Originally posted by in
This is a great idea: !
Previously, extensions that patched VSCode like would occasionally result in a notification only after VSCode was updated. After this change, this banner appears every time VSCode is opened, even if it was previously dismissed for the same version. This feels very obtrusive. Was that an intended part of this change? !
Banner will be removed again in , I think it will cause more harm than being useful.
Change:
<key>comment</key> <string>${var}, ${script:var}</string> <key>match</key> <del> <string>($)({)((?i:global|local|script|private|using|env|function|alias|cert|variable|hkcu|hklm|wsman):)?(.+)(})((.[w"']+)*)</string> </del> <ins> <string>($)({)((?i:global|local|script|private|using|env|function|alias|cert|variable|hkcu|hklm|wsman):)?(.+?)(})((.[w"'- @#]+)*)</string> </ins> </dict> <dict> <key>captures</key>

Discussion:
VSCode Version: Code 1.3.0 (, 2016-07-07T16:56:12.476Z) OS Version: Windows_NT ia32 6.3.9600 Steps to Reproduce: a powershell script an object with a property that has a space, such as $obj."Property with space" highlight for the quotes doesn't display properly.
This should be fixed soon I think. CC
That's correct. This bug is fixed in
I noticed a similar effect with this: ! With VSCode Version 1.3.1 on a Windows7 64Bit system.
Similar issue as ! VSCode Version 1.3.1 on Windows10 64Bit
Change:
"src/**/*", "../../../src/vscode-dts/vscode.d.ts", "../../../src/vscode-dts/vscode.proposed.testObserver.d.ts", <del> "../../../src/vscode-dts/vscode.proposed.testMessageStackTrace.d.ts", </del> "../../../src/vscode-dts/vscode.proposed.testRelatedCode.d.ts", "../../../src/vscode-dts/vscode.proposed.attributableCoverage.d.ts" ]

Discussion:
Currently, messages that are shown when tests fail can only be shown at a single . Often (, , among others) folks want to see the full call stack of the test failure. I propose some API to add this information:
does this track that not only the stack but stack + any stdout would show in same UX? /cc
Yes, output is already trackable and associable to a test case via the API
We are using to record all stdout written by tests. In addition, the is used to record the failure message and stack for each test failure.
UI:
Just check with Joh and this looks good to move into finalized!
do we want to bundle this with any of the other testing proposals (, )?
Change:
} terminalService.setActiveInstance(instance); await focusActiveTerminal(instance, terminalEditorService, terminalGroupService); <del> } else if (TerminalContextKeys.webExtensionContributedProfile) { commandService.executeCommand(TerminalCommandId.NewWithProfile); </del> <ins> } else { if (terminalProfileService.contributedProfiles.length > 0) { commandService.executeCommand(TerminalCommandId.NewWithProfile); } else { commandService.executeCommand(TerminalCommandId.Toggle); } </ins> } } });

Discussion:
In the recent Edit Sessions UX study we ran, we saw several participants searching in vain for the terminal item in the compact menu on , sometimes for minutes: ! Could we consider bringing it back? I'm guessing we intentionally suppressed it because terminals can't run in the web, but participants were simply confused that it wasn't there without connecting its absence to the fact that was a browser application. Additionally, RemoteHub contributes a welcome view for the terminal which is one of the primary ways we explain that users must continue working elsewhere to run or debug code, and the fact that the terminal is completely suppressed means one less opportunity for users to organically learn the limitations of through our welcome views. ! cc
Yes that is why it was removed. It doesn't do much but if it helps reduce confusion I guess it's worth it?
Not against the idea of having the terminal menu in web but in its current form it's useless and doesn't allow me to actually show a terminal pane, it just deadends all over https://user-
Reverting in
when I enable the menu again and fix up the terminal command, the run/customize task items give this on the scripts/code-web sample-folder: <img width="1229" alt="image" src="https://user-"That does actually run, not sure what it's doing exactly though. Is that a custom execution task running in the web worker ext host? If so you might need a context key on those menu items to only show them when a custom execution task is registered?
Unless I'm missing something, I believe only registered tasks will show there - if they're running when you select them, then I don't think there's an issue.
I think there's a built-in fake task when running code-web is what I mean, when run in actual then running it might do nothing. In that case it should hide similar to how we're changing the behavior of New Terminal depending on whether extension contributed profiles exist
Change:
import * as vscode from 'vscode'; /** <del> * This interface describes the shape for the references viewlet API. It consists * of a single `setInput` function which must be called with a full implementation </del> <ins> * This interface describes the shape for the references viewlet API. It consists * of a single `setInput` function which must be called with a full implementation </ins> * of the `SymbolTreeInput`-interface. To acquire this API use the default mechanics, e.g: <del> * </del> <ins> * </ins> * ```ts * // get references viewlet API <del> * const api = await vscode.extensions.getExtension<SymbolTree>('ms-vscode.references-view').activate(); * </del> <ins> * const api = await vscode.extensions.getExtension<SymbolTree>('vscode.references-view').activate(); * </ins> * // instantiate and set input which updates the view * const myInput: SymbolTreeInput<MyItems> = ... * api.setInput(myInput)

Discussion:
Ah, sorry for the breakage... I believe asking for both is the best option for now but I can also add a "migration" path into the implementation, e.g use when seeing Originally posted by in
Change:
import { IWorkspaceContextService } from 'vs/platform/workspace/common/workspace'; import { IContextKeyService, ContextKeyExpr, RawContextKey, IContextKey } from 'vs/platform/contextkey/common/contextkey'; import { IContextMenuService } from 'vs/platform/contextview/browser/contextView'; <del> import { getMaliciousExtensionsSet } from 'vs/platform/extensionManagement/common/extensionManagementUtil'; </del> import { ILogService } from 'vs/platform/log/common/log'; import { INotificationService } from 'vs/platform/notification/common/notification'; import { IHostService } from 'vs/workbench/services/host/browser/host';

Discussion:
<!-- 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. --When installing an extensions with , users can freely install extensions which are malicious, which is not possible from the UI. <!-- 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 directly to the extension publisher. The 'Help Report Issue' dialog can assist with this. --- VS Code Version: 1.69.0 OS Version: macOS 13 Steps to Reproduce: your 's to . a terminal inside of VS Code The CLI either refuses to install these extensions or warns the user.
Thanks for creating this issue! It looks like you may be using an old version of VS Code, the latest stable release is 1.69.0. Please try upgrading to the latest version and checking whether this issue remains. Happy Coding!
Sorry, mistyped the version by one patch release, all fixed now.
Can you please let me know which extension you are trying to install that is malicious and VS Code allows it from CLI?
that would be any extension list that I tried and exists in the Marketplace, for example installs just fine although not allowing me to install via the UI <img width="725" alt="image" src="https://user-"
Change:
constructor( id: string, label: string, <del> @IQuickOpenService private quickOpenService: IQuickOpenService, @ITerminalService private terminalService: ITerminalService </del> <ins> @IQuickOpenService protected quickOpenService: IQuickOpenService, @ITerminalService protected terminalService: ITerminalService </ins> ) { super(id, label); } <del> public run(): TPromise<any> { const terminalInstance = this.terminalService.getActiveInstance(); </del> <ins> public run(terminal?: TerminalEntry): TPromise<any> { const terminalInstance = terminal ? this.terminalService.getInstanceFromId(parseInt(terminal.getLabel().split(':')[0], 10)) : this.terminalService.getActiveInstance(); </ins> if (!terminalInstance) { return TPromise.as(void 0); }

Discussion:
Needs one for some keybindings
Also should add a rename terminal button to each entry for easy discoverability
Change:
await wait; controller.accept(); <del> const pick = await pickPromise; </del> <ins> const pick = await raceTimeout(pickPromise, 2000); </ins> assert.strictEqual(pick, item); });

Discussion:
all out of ideas on this one. I'm not relying on setTimeouts or anything. It's a totally responsive test:
Maybe add some logging that only prints if the event does not fire in 4 seconds.
Ok I've better logging in the form of... if takes too long, the test failure will be different. Additionally, just in case this is a weird focus artifact, I have set ignoreFocusOut
I've not heard any reports of this failing recently... once it fails again, I'll revisit now that I have extra logging. With that said, it's possible that because of I have fixed the test failure.
Change:
} } <ins> preselectKernelForNotebook(kernel: INotebookKernel, notebook: INotebookTextModelLike): void { const key = NotebookTextModelLikeId.str(notebook); const oldKernel = this._notebookBindings.get(key); if (oldKernel !== kernel?.id) { this._notebookBindings.set(key, kernel.id); this._persistMementos(); } } </ins> updateKernelNotebookAffinity(kernel: INotebookKernel, notebook: URI, preference: number | undefined): void { const info = this._kernels.get(kernel.id); if (!info) {

Discussion:
Error from telemetry. I ran into this as well sometimes when opening a second IW.
Here are some of my findings: We don't have smoke tests for IW Some how the stable version of Jupyter is in the smoke tests Stable version is some how (for some reason) launching IW, hence we see errors Could be because we're testing in stable vs code and requires insiders.
Note: These are messages on the CI server (in our tests). Seems to be in smoke tests.
I believe we get these on CI too: Here's an example from running on main:
I believe this is an issue in core. We might be changing the selected notebook to nothing and it doesn't handle it.
is used only when an issue isn't yet assigned to its rightful owner.
this repros every time an interactive window with a specific name is created for the first time - we haven't created the document for that IW yet. But then the same $acceptNotebookAssociation is fired again after creating that document anyway
Change:
private _lastWorkspaceFolder: IWorkspaceFolder; constructor( <del> envVariables: { [key: string]: string }, </del> <ins> envVariables: IProcessEnvironment, </ins> @IWorkbenchEditorService private editorService: IWorkbenchEditorService, @IEnvironmentService environmentService: IEnvironmentService, @IConfigurationService private configurationService: IConfigurationService,

Discussion:
VSCode Version:0.10.13 alpha OS Version:Windows 10 Steps to Reproduce: an variable to your ex. ${env.PATH} "command": "echo", "isShellCommand": true, "args": ["${env.PATH}"], the task. This will expand correctly on Linux and OS X but not Windows since the expansion is case sensitive and PATH on Windows is "Path". Env Var expansion shouldn't be case sensitive so that the same task can run on all platform. This bug was requested by in vscode-docs issue
this is done by the resolver service. IMO env variables on all OSes are case insensitive. Should we address this.
Let's keep it open and if some user is passionate he can tackle it
On linux and macOS environment variables are case sensitive, so "Path" and "PATH" are different variables on linux and macOS (but not on Windows). So your statement from above "IMO env variables on all OSes are case insensitive." is not correct, right? so you are asking for making env var lookup case insensitive on Windows only, correct?
I thought they are always case insensitive. So it should be case insensitive then on Windows only
I'm actually about done with a change for this if you want to take a look.
thanks, I will review the PR.
did you want me to squash it or anything (fixed a broken test because I forgot the existing code returned an empty string for missing environment variables)? Different projects have different requirements and I didn't see anything about squashing in your contrib docs.
no need to squash, I will add the comments to the PR directly if something is needed. Thanks
Change:
padding-left: ${this.options.leftMargin}px; } <ins> #container > div > div.preview.selected { background: var(--vscode-notebook-selectedCellBackground); } </ins> #container > div > div.preview img { max-width: 100%; max-height: 100%;

Discussion:
<!-- 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.54-Insiders OS Version: macOS open a GitHub issue notebook cmd+shift+o navigate down only code cells are highlighted https://user- <!-- Launch with to check. --Does this issue occur when all extensions are disabled?: Yes/No <!-- 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. --

Verifying in the vscode repo across some of the markdown headers ! If I put them into edit mode, then I see the background change on multiselect
I guess you don't see this issue when commenting out from the workspace setting?
Yeah, that's correct! I see everything get highlighted as expected when that setting is off
The root cause is that the for webview backed markdown cells has a height of zero. This element gets the correct background color during selection, but is not visible due to the height. We have zero height so that you can click through to the webview instead of to the cell I will prototype telling the cell in the webview if it is selected or not. Then we can add styling inside the webview to show selection state
Change:
} let resolverResult: ResolverResult; <del> const sw = StopWatch.create(false); this._logService.info(`Invoking resolveAuthority(${getRemoteAuthorityPrefix(remoteAuthority)})`); </del> try { <del> resolverResult = await this._resolveAuthority(remoteAuthority); this._logService.info(`resolveAuthority(${getRemoteAuthorityPrefix(remoteAuthority)}) returned '${resolverResult.authority.host}:${resolverResult.authority.port}' after ${sw.elapsed()} ms`); </del> <ins> resolverResult = await this._resolveAuthorityInitial(remoteAuthority); </ins> } catch (err) { <del> this._logService.error(`resolveAuthority(${getRemoteAuthorityPrefix(remoteAuthority)}) returned an error after ${sw.elapsed()} ms`, err); </del> if (RemoteAuthorityResolverError.isNoResolverFound(err)) { err.isHandled = await this._handleNoResolverFound(remoteAuthority); } else {

Discussion:
When connecting to a remote, if the initial connection fails, we will give up. The idea was that retrying would be useless, since the initial setup might have failed. But it is possible that perhaps it was an intermittent network error.
One of the annoyances I have is all my open editors tabs are closed. I have to try and remember what editor tabs I had open which often leads to lost time and effort trying to recall. I did create a ticket for this, which is how I found this as it was suggested, Ideally, even if can't connect need the ability to save/restore the prior editor tabs that were open or currently opened.
This can be verified running from source with the test resolver, using a change like the following: Then, run and from the bottom left open the test resolver. The resulting window should connect despite the resolver returning errors or resolving with an address which leads to a connection error.
Change:
} } <del> const dataPaths: string[] = params.initializationOptions.dataPaths; </del> <ins> const dataPaths: string[] = params.initializationOptions.dataPaths || []; </ins> const customDataProviders = getDataProviders(dataPaths); function getClientCapability<T>(name: string, def: T) {

Discussion:
VSCode Version: 1.37.1 OS Version: Fedora 30 I'm extracting the CSS Language Server for usage in 3rd party IDE (Eclipse IDE). I noticed that if I start the CSS-LS without passing a element to initialization, the LS will fail because of . One of the important lines in the stack trace is .
Submitted PR for this issue.
Fixed by .
Verified in master by removing the dataPaths
Change:
import { IInstantiationService } from 'vs/platform/instantiation/common/instantiation'; import { INotificationService } from 'vs/platform/notification/common/notification'; import * as DOM from 'vs/base/browser/dom'; <del> import { IUserDataProfileImportExportService, PROFILE_FILTER, PROFILE_EXTENSION, IUserDataProfileContentHandler, IS_PROFILE_IMPORT_EXPORT_IN_PROGRESS_CONTEXT, PROFILES_TTILE, defaultUserDataProfileIcon, IUserDataProfileService, IProfileResourceTreeItem, IProfileResourceChildTreeItem, PROFILES_CATEGORY, isUserDataProfileTemplate, IUserDataProfileManagementService, ProfileResourceType } from 'vs/workbench/services/userDataProfile/common/userDataProfile'; </del> <ins> import { IUserDataProfileImportExportService, PROFILE_FILTER, PROFILE_EXTENSION, IUserDataProfileContentHandler, IS_PROFILE_IMPORT_EXPORT_IN_PROGRESS_CONTEXT, PROFILES_TTILE, defaultUserDataProfileIcon, IUserDataProfileService, IProfileResourceTreeItem, IProfileResourceChildTreeItem, PROFILES_CATEGORY, IUserDataProfileManagementService, ProfileResourceType } from 'vs/workbench/services/userDataProfile/common/userDataProfile'; </ins> import { Disposable, DisposableStore, IDisposable, toDisposable } from 'vs/base/common/lifecycle'; import { IDialogService, IFileDialogService } from 'vs/platform/dialogs/common/dialogs'; import { IUriIdentityService } from 'vs/platform/uriIdentity/common/uriIdentity';

Discussion:
Testing Try to import this profile file: Restart VS Code. Observe that VS Code does not load anymore.
Change:
const openRepository = { repository, dispose }; this.openRepositories.push(openRepository); <ins> updateMergeChanges(); </ins> this._onDidOpenRepository.fire(repository); }

Discussion:
have a merge conflict have multiple repos open open a file with conflicts :bug: depending on which repo was refreshed last the blue button shows/hides
This is because the command runs in the scope of a single  and thereby competes with others. I have copied an here and I am unsure where the good place to set context keys is
Which blue button are you describing and how is it supposed to act? (just trying to verify)