jiebi/CodeConvo huggingface dataset:
Change:
// icon (search) const searchIcon = document.createElement('span'); <ins> searchIcon.ariaHidden = 'true'; </ins> searchIcon.className = action.class ?? ''; searchIcon.classList.add('search-icon');

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. --<!-- 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.84.1 OS Version: macOS (I'm using 14.1 but not specific to this version) Note that this issue is specific to Mac VoiceOver. Not a problem on Windows using NVDA or JAWS . Steps to Reproduce: VoiceOver on macOS via <kbdCmd</kbd+<kbdF5</kbdVisual Studio code <kbdCtrl</kbd+<kbdOption</kbd+<kbdShift</kbd+<kbdUp Arrow</kbdto move up until "Application" is announced (might take several times depending on starting location) <kbdCtrl</kbd+<kbdOption</kbd+<kbdShift</kbd+<kbdDown Arrow</kbdto enter the "Application", should announce you are on a toolbar (the one with the left/right arrows and search) <kbdCtrl</kbd+<kbdOption</kbd+<kbdShift</kbd+<kbdDown Arrow</kbdto enter the toolbar forward using VoiceOver cursor until the magnifying glass icon is selected (using <kbdCtrl</kbd+<kbdOption</kbd+<kbdRight Arrow</kbd) element is selectable via VoiceOver, but says nothing (no accessible text) <img width="1032" alt="Screenshot of top toolbar with arrow pointing at the magnifying glass icon" src=""Expected: I'd lean towards making this icon aria-hidden. It's already that way with other screen readers and you can't just add an aria-label to it (it would need a for that to be fully supported).
Thanks for creating this issue!

It looks like you may be using an old version of VS Code, the latest stable release is 1.84.1. Please try upgrading to the latest version and checking whether this issue remains. Happy Coding!
FYI (looks like you do a lot of a11y work).
Change:
const path = require('path'); const mocha = require('mocha'); const events = require('events'); <del> // const MochaJUnitReporter = require('mocha-junit-reporter'); </del> <ins> const MochaJUnitReporter = require('mocha-junit-reporter'); </ins> const url = require('url'); const defaultReporterName = process.platform === 'win32' ? 'list' : 'spec';

Discussion:
<!-- Do Not Delete This! featurerequesttemplate --<!-- Please read our Rules of Conduct: --<!-- Please search existing issues to avoid creating duplicates. --- [x] Adopt a multi-stage pipeline for better visibility into dependencies [x] Review all test suites and ensure that they emit XML test results [x] Add pipeline task to publish the test results
Change:
return [this.instantiationService.createInstance(UnstageRangesAction, <tdeditor.TextDiffEditor>context.editor)]; } <del> return [this.instantiationService.createInstance(StageRangesAction, <tdeditor.TextDiffEditor>context.editor)]; </del> <ins> return [ this.instantiationService.createInstance(StageRangesAction, <tdeditor.TextDiffEditor>context.editor), this.instantiationService.createInstance(RevertRangesAction, <tdeditor.TextDiffEditor>context.editor)]; </ins> } }

Discussion:
There's probably already a feature request for this but I can't find it. I want to be able to select a change in the diff editor and revert it, same as how I can stage it. In SourceTree this is called "discard selected lines" although "revert" seems better, unless it's "discard selected changes". I'm working on a PR for this.
I think it is connected with
Change:
} }); } <ins> if (Array.isArray(target)) { return deepClone(target); } </ins> return target; }; result = cloneOnWriteProxy(result, key);

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. --<!-- Launch with to check. --Does this issue occur when all extensions are disabled?: 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 directly to the extension publisher. The 'Help Report Issue' dialog can assist with this. --- VS Code Version: 1.72.1 and 1.72.0-insider OS Version: Windows_NT x64 10.0. Steps to Reproduce: Run the following code from a VSCode extension: The expected behavior would be that the does not contain an entry for "test" since there was no call to . It appears that modifications to the workspaceConfig are stored in memory but are not reflected in The workaround is to use to prevent modification of the This does not repro if the configuration type is a string or an object. For example:
Change:
} this._previewState = PreviewState.Visible; } <del> this.webviewEditor.webview.postMessage({ type: 'setActive', value: this.webviewEditor.active }); </del> } private getWebiewContents(): string {

Discussion:
Repo an image to the side of a text editor with the text editor focused click into the image editor to focus it Bug The first click ends up zooming the image. Clicking should only zoom when the editor is already focused
Here's the relevant code about click handling in the image preview:
If focus is required for zoom, then the cursor when hovering over the image preview should be the default arrow cursor when unfocused, currently it is the zoom-in cursor. Also zooming with the mouse wheel should not be allowed when unfocused. Thoughts?
Fixed by
I'm still seeing the first click zoom. Steps: a typescript file. a gif gif to the right so that both typescript and gif are visible and side by side in typescript. in gif Expected: no zoom Actual: it zooms on the click in the gif in (5).
I'm not able to reproduce. Have tried on both insiders 1.40.0 and OSS. Does this only occur with gifs for you?
I can repo this. You may need to click back and forth multiple times trigger the error
I'm still not able to. Will try more tomorrow. A possible cause might be that the event is fired before the event on the first click. This could be tested by checking the order of execution for the corresponding event handlers in . I'll do it if I manage to reproduce the bug.
Change:
import { ITextModelService } from 'vs/editor/common/services/resolverService'; import { ApplyCodeActionReason, applyCodeAction, getCodeActions } from 'vs/editor/contrib/codeAction/browser/codeAction'; import { CodeActionKind, CodeActionTriggerSource } from 'vs/editor/contrib/codeAction/common/types'; <del> import { getDocumentFormattingEditsUntilResult } from 'vs/editor/contrib/format/browser/format'; </del> <ins> import { FormattingMode, getDocumentFormattingEditsWithSelectedProvider } from 'vs/editor/contrib/format/browser/format'; </ins> import { SnippetController2 } from 'vs/editor/contrib/snippet/browser/snippetController2'; import { localize } from 'vs/nls'; import { IConfigurationService } from 'vs/platform/configuration/common/configuration';

Discussion:
Related: Looking into reports of X formatter being used instead of Y in various flows. Looking at both on save and on execution formatting participants, one common point is that when is specifically being used, the intended formatter is applied as expected. Some early digging is pointing to a use of instead of , so will be working out a fix there. Will update this thread as is relevant.
do you have some minimal verif steps?
Verification Steps: Install Black Formatter + Ruff Create with only the following:create notebook with a single code cell, and contents In Stable () Save Notebook Black formatter runs =nothing changes Ruff formatter runs =Single quotations turned to double quotations () In Insiders () Save Notebook ONLY Black formatter runs =nothing changes

<!-- 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. --<!-- 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 directly to the extension publisher. The 'Help Report Issue' dialog can assist with this. --- VS Code Version: 1.83.1 OS Version: 12.6.9 Steps to Reproduce: or the Python and Black Vscode extensions a new notebook and execute any cell or save it You'll a "Formatting with autopep8" message in the status bar even though that formatter extension isn't installed! However manually triggering "Format Cell" does use black.
Change:
override dispose() { super.dispose(); <ins> this._activeToken?.dispose(true); </ins> this._notebookViewModel.deltaCellStatusBarItems(this._currentItemIds, [{ handle: this._cell.handle, items: [] }]); this._currentItemLists.forEach(itemList => itemList.dispose && itemList.dispose());

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. --<!-- 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 directly to the extension publisher. The 'Help Report Issue' dialog can assist with this. --- VS Code Version: Insiders OS Version: Mac Basically when i have a statusbar item (extension that contributes statusbar items), VS Code re-creates all of the statusbar items for all cells. This causes ALL statubar items in all cells to flicker (as its destroyed and re-created) & we also end up with duplicates. /cc Flickering UI Duplicate statusbar items See below (from latest VS Code Insiders, can also replicate in latest main branch) Note how we end up with two language pickers in statusbar. ! After the fix (re-use instead of re-creating & only create what we need): !
Thought I had squashed all of these. Thanks for the PR!
The power tools don't seem to provide line numbers anymore so I tried switching the language mode around to repro and couldn't so I'm not sure if that's good enough for verification
I think it's sufficient to mess around with it and not see any dupes. And there were random reports of dupes earlier and I haven't heard that in awhile.
Change:
import { isFirefox } from 'vs/base/browser/browser'; import { TerminalLinkQuickpick } from 'vs/workbench/contrib/terminal/browser/links/terminalLinkQuickpick'; import { fromNow } from 'vs/base/common/date'; <del> import { ICommandService } from 'vs/platform/commands/common/commands'; </del> import { TerminalCapabilityStoreMultiplexer } from 'vs/workbench/contrib/terminal/common/capabilities/terminalCapabilityStore'; import { TerminalCapability } from 'vs/workbench/contrib/terminal/common/capabilities/capabilities'; <ins> import { ITextModel } from 'vs/editor/common/model'; import { IModelService } from 'vs/editor/common/services/model'; import { ITextModelContentProvider, ITextModelService } from 'vs/editor/common/services/resolverService'; </ins> const enum Constants { /**

Discussion:
Testing I feel like I would mostly open output as a "one-off" editor to inspect test failures, for example. Having the prompt whenever I want to close the editor, since it's marked as untitled, is annoying. Instead, should it be opened as an ordinary read-only file which allows the user to if they want to keep it?
do you know how to do this in core? I also want to know how to do it in extensions for a similar problem in luna paint.
You can register an , I do that for test output: Alternatively (and in extensions) you can register a readonly FileSystemProvider.
Thanks, I'm a little surprised there's no option for extensions in as it seems like a common thing people would want to do.
Change:
}); } <ins> async rebaseAbort(): Promise<void> { await this.run(Operation.RebaseAbort, async () => await this.repository.rebaseAbort()); } </ins> checkIgnore(filePaths: string[]): Promise<Set<string>> { return this.run(Operation.CheckIgnore, () => { return new Promise<Set<string>>((resolve, reject) => {

Discussion:
It's very common to have to resolve merge conflicts during a pull with rebase. You might decide that you want to stop and try something else. There's no way, that I found, through the source control UI or command palette to properly abort a rebase. You can get into a jam trying to abort, though. Like clicking the branch button in the status bar. You can choose your local branch and have the local branch's contents restored, but Code leaves you in a rebase (and that's no good). You're stuck running on the command line. (I'll upload some pics later when I can contrive some examples... sorry, I didn't capture them while I was causing trouble earlier.)
I'd like to work on the implementation. But there are 2 options when a repository is being rebased: continue and abort. I can add two menu items right under "Pull (Rebase)": "Rebase Continue" and "Rebase Abort". Will it work from the UX perspective?
Rebase continue is already implemented: if you try to commit during a rebase, it will run rebase continue instead. All we're missing is the abort action.
So, adding "Rebase Continue" option under the "Pull (Rebase)" will be ok. Am I right?
This is good to know and takes some exploring to figure out. Are there any good patterns to explain this like during your 1st use of the feature? Or in the docs somewhere? This is a problem any time you combine git commands (like Sync).
We could maybe add that to the docs. :+1: Wanna submit a PR on ?
Hey, to this point (), I don't recall anywhere except maybe the Output | Git log that you can tell that the rebase has continued. There's no obvious status that commits are being replayed or that you may need to wait a few seconds for the next merge conflict to render in the source control explorer (if there are more conflicts) or even if the rebase is "done". You end up needing to check the Git status on the command line anyway. I think if you're going to wrap up the workflow by offering "abort", you need to make the entire experience better.
I did some exploration on supporting rebase features, which is related to this.
looks like your implementation covers git abort and my PR is not required anymore. Closing it.
Change:
const config = workspace.getConfiguration('git'); const shouldIgnore = config.get<boolean>('ignoreLimitWarning') === true; const useIcons = !config.get<boolean>('decorations.enabled', true); this.isRepositoryHuge = didHitLimit; <ins> const mergeMessage = await this.repository.getMergeMessage(); if (mergeMessage) { this.inputBox.value = mergeMessage; } </ins> if (didHitLimit && !shouldIgnore && !this.didWarnAboutLimit) { const knownHugeFolderPaths = await this.findKnownHugeFolderPathsToIgnore();

Discussion:
VSCode Version: 1.1.1 OS Version: OS X Steps to Reproduce: into a merge conflict accepting Git's default message. It's equal to is no way to do that!
Will mention that it's also equivalent to and saving the default message that shows up in your editor - hence a very common workflow
My workaround is to invoke from a terminal. Maybe if the commit message field is empty, VSCode could just call as well and leave it up to user's configuration what happens (in my case, it would open a text editor from my system variable, which is fine).
Has the pull request been reviewed yet? Can it be pulled in?
Verification: When having a merge commit, VS Code should now automatically populate the input box with the default git merge commit message, so the user can just accept it.
Change:
export interface IShareableItemDto { resourceUri: UriComponents; <del> range?: IRange; </del> <ins> selection?: IRange; </ins> } export interface ISignatureHelpProviderMetadataDto {

Discussion:
Testing My extension's provider is not receiving the within the passed to its I think this's caused by this -

Testing takes a but doesn't respect the selector's . I created an extension which uses Share Provider API, but its share contribution wasn't being invoked. It seems the language isn't being passed - see 3rd arg being an empty string .
I observe the same, using: registers the share provider, however as soon as I add a language, this is no longer the case
Change:
// Rerender the element whenever the editor content height changes const onDidChangeContentHeight = () => { const contentHeight = templateData.inputWidget.getContentHeight(); <del> const lastContentHeight = this.contentHeights.get(input)!; </del> this.contentHeights.set(input, contentHeight); <del> if (lastContentHeight !== contentHeight) { </del> <ins> if (templateData.inputWidgetHeight !== contentHeight) { </ins> this.updateHeight(input, contentHeight + 10); <ins> templateData.inputWidgetHeight = contentHeight; </ins> templateData.inputWidget.layout(); } };

Discussion:
I'm seeing some flickering here, just Write a multi-line commit message cmd+enter to commit !
Change:
@ICommandService private readonly _commandService: ICommandService, @IChatCodeBlockContextProviderService private readonly _codeBlockContextProviderService: IChatCodeBlockContextProviderService, @IStorageService private readonly _storageService: IStorageService, <ins> @ITextModelService private readonly textModelResolverService: ITextModelService, </ins> @IQuickInputService private readonly _quickInputService: IQuickInputService ) { super();

Discussion:
Testing Repro: "getting started with accessiblity features" second step click on blue button to "open accessible view" results in an error in dev console says that "the editor is not accessible at this time" and advises to turn on screen optimized view, but I already have that on as you can see in status bar item. Version: 1.94.0-insider Commit: Date: 2024-09-24T05:04:12.797Z Electron: 30.5.1 ElectronBuildId: Chromium: 124.0.6367.243 20.16.0 V8: 12.4.254.20-electron.0 OS: Darwin arm64 23.6.0
As part of this flow - I was also confused why a new file is opened after I close the Accessible View: !
I'm getting "the editor is not accessible at this time" messages while moving focus to the Python REPL input box or the Copilot Chat input box !
seems like an issue with the walkthrough accessible view?
this looks an issue with the accessible view editor. I'm seeing a similar issue when I open the chat-panel and request the accessible view.
Change:
// Write initial text, deferring onLineFeed listener when applicable to avoid firing // onLineData events containing initialText if (this._shellLaunchConfig.initialText) { <del> this.xterm.raw.writeln(this._shellLaunchConfig.initialText, () => { </del> <ins> this._writeInitialText(this.xterm, () => { </ins> lineDataEventAddon.onLineData(e => this._onLineData.fire(e)); }); } else {

Discussion:
!
works in OSS !
also works for me in insider's
works for that exact task for me !
It's because of this: Here's the I was using:
This works but it adds an extra line because of initialText so it doesn't look quite right: Before: ! After: !
Change:
const sorter = new SCMTreeSorter(() => this._viewModel); const keyboardNavigationLabelProvider = this.instantiationService.createInstance(SCMTreeKeyboardNavigationLabelProvider, () => this._viewModel); const identityProvider = new SCMResourceIdentityProvider(); <ins> const dnd = new SCMTreeDragAndDrop(this.instantiationService); </ins> this.tree = this.instantiationService.createInstance( WorkbenchCompressibleObjectTree,

Discussion:
<!-- Do Not Delete This! featurerequesttemplate --<!-- Please read our Rules of Conduct: --<!-- Please search existing issues to avoid creating duplicates. --I frequently use the drag-and-drop feature from the Explorer view to open files into specific panes. It would be really nice if this functionality was supported in the Source Control panel as well. I imagine it working like: Drag from filename into pane opens diff in that pane Drag from file icon into pane opens original file in that pane with reversed behavior if .
Not sure if this belongs here, or would be better a new feature request: If I have already two panels open next to each other, opening the git diff in one panel is pretty small and no fun to read, e.g.: ! For me it would be nice, if the first two panels would be used for the diff In IntelliJ the diffs opens in a detached popup, which I can move around and resize individually. I also like this feature a lot
please open a new issue -- although note, that the behavior you describe is unlikely to change, as that is how tab management works in VS Code.
One additional use case: I just enabled drag and drop into the SCM input box. It would be nice if we could drag and drop files from the SCM panel into the box to insert this file path (this already works with files from the explorer)
Change:
} } <ins> private updateRestrictedMode(restrictedMode: boolean) { this.issueReporterModel.update({ restrictedMode }); } </ins> private updateExperimentsInfo(experimentInfo: string | undefined) { this.issueReporterModel.update({ experimentInfo }); const target = document.querySelector<HTMLElement>('.block-experiments .block-info');

Discussion:
When I report an issue from our issue reporter from an untrusted workspace, there is no info about this in the GH issue.
Marking as important to make sure we care about this before enabling trust by default to not make our life harder for triaging issues than it needs to be.
Two examples: in an effort to make the smallest change this late in the game, I’ve put it in System Info however when you report a performance issue, we also have a section called “Workspace Info” that shows up that gives details on the workspace (like number of files, etc). I think it should eventually go there
lol jk sent a PR putting it next to the OS which I don't love... but the change is small and it means the user can't not tell us their WT situation which is good.
Change:
import { ISCMRepository } from 'vs/workbench/contrib/scm/common/scm'; export interface ISCMHistoryProviderMenus { <del> readonly incomingHistoryItemGroupMenu: IMenu; readonly incomingHistoryItemGroupContextMenu: IMenu; readonly outgoingHistoryItemGroupMenu: IMenu; readonly outgoingHistoryItemGroupContextMenu: IMenu; </del> <ins> getHistoryItemGroupMenu(historyItemGroup: SCMHistoryItemGroupTreeElement): IMenu; getHistoryItemGroupContextMenu(historyItemGroup: SCMHistoryItemGroupTreeElement): IMenu; </ins> getHistoryItemMenu(historyItem: SCMHistoryItemTreeElement): IMenu; }

Discussion:
Testing I expected the action to appear on an unpublished branch, not the action. I am aware they both do the same. <img width="647" alt="Screenshot 2024-01-24 at 11 37 40" src=""