jiebi/CodeConvo huggingface dataset:
Change:
args = ['reset', '-q', treeish, '--']; } <del> if (paths && paths.length) { args.push.apply(args, paths.map(sanitizePath)); } else { args.push('.'); } </del> try { <del> await this.run(args); </del> <ins> if (paths && paths.length > 0) { for (const chunk of splitInChunks(paths, MAX_CLI_LENGTH)) { await this.run([...args, ...chunk]); } } else { args.push('.'); await this.run(args); } </ins> } catch (err) { // In case there are merge conflicts to be resolved, git reset will output // some "needs merge" data. We try to get around that.

Discussion:
Issue Type: <bBug</ba repo with a large amount of changed files in one folder and use the tree view <kbd+</kbdnext to the folder to stage the changes or <kbd-</kbdto unstage them. : ! This was supposedly fixed in for the discard command but either the other commands or the tree view was forgotten as a potential source of problems. Clicking the button next to "changes" works fine: ! VS Code version: Code 1.40.0 (, 2019-11-06T17:02:13.381Z) OS version: WindowsNT x64 6.1.7601 <details<summarySystem Info</summary </details<details<summaryExtensions (16)</summaryExtensionVersion ------ vscode-eslint1.9.1 gitlens10.1.2 toggle-excluded-files1.7.0 EditorConfig0.14.2 RunOnSave0.2.0 prettier-vscode3.3.5 vscode-test-explorer2.14.6 rest-client0.22.2 vscode-docker0.8.2 vscode-language-pack-de1.40.2 vscode-jest3.0.2 project-snippets0.5.0 java0.52.0 vscode-coverage-gutters2.4.2 vscode-icons9.5.0 vscode-todo-highlight1.0.4 </details<!-- generated by issue reporter --
Yup, the same fix as needs to be applied to the stage action.
+1 Same issue here in the latest vs code and latest git Windows 10 home: v10.0. VS Code: 1.44.2 Git version: 2.26.2.windows.1
Change:
this.tree.domFocus(); } <del> const treeInput = this.tree.getInput(); if (Array.isArray(treeInput)) { treeInput.forEach(folder => { folder.children.forEach(child => this.tree.hasNode(child) && this.tree.expand(child, true)); }); return; } </del> this.tree.expandAll(); }

Discussion:
Lately (since a few days) I see the explorer show an expand all icon even though some folders are expanded (in a multi root workspace): <img width="300" alt="image" src="https://user-"This must be a recent regression, not sure if in explorer or tree widget.
See
This breaks my muscle memory, I always collapse the explorer to start a new task and the new behaviour breaks this. I really see no value of this new behaviour? It is not even expanding all folders, only the ones that can be resolved? What is the use case?
As a suggestion: only show the expand button when really all nodes are collapsed, but keep the collapse button when any node is expanded.
I'm with this is quite different behavior in a multi-root workspace, I have one workspace with 5 root folders and another with 10+, prior to this change clicking the expand/collapse button in explorer would collapse all the folders in each root folder, clicking again would then collapse all the root folders. What I get now is the following: If all root folders are collapsed, clicking the expand/collapse button does nothing If one root folder is open the expand/collapse button expands and collapses folders within that root folder More than one root folder open the same as before for all of the open root folders Perhaps we could have an option to opt-in to this new behavior, I can't think of a single reason why I would want to expand every folder in a project.
Feature got removed.
Change:
'!src/vs/base/common/marked/marked.js', '!src/vs/base/common/winjs.base.js', '!src/vs/base/node/terminateProcess.sh', <del> '!src/vs/base/node/ps-win.ps1', </del> '!test/assert.js', // except specific folders

Discussion:
After updating the module to support getting memory, cpu, and command line for each process on windows (), the module can be used in more places within VSCode [x] Update existing version of the module that's being used in the terminal [x] Use the module in place of the PowerShell script in
Change:
import { IInstantiationService } from 'vs/platform/instantiation/common/instantiation'; import { IKeybindingService, IUserFriendlyKeybinding } from 'vs/platform/keybinding/common/keybinding'; import { DefineKeybindingWidget, KeybindingsSearchWidget } from 'vs/workbench/contrib/preferences/browser/keybindingWidgets'; <del> import { CONTEXT_KEYBINDING_FOCUS, CONTEXT_KEYBINDINGS_EDITOR, CONTEXT_KEYBINDINGS_SEARCH_FOCUS, KEYBINDINGS_EDITOR_COMMAND_RECORD_SEARCH_KEYS, KEYBINDINGS_EDITOR_COMMAND_SORTBY_PRECEDENCE, KEYBINDINGS_EDITOR_COMMAND_DEFINE, KEYBINDINGS_EDITOR_COMMAND_REMOVE, KEYBINDINGS_EDITOR_COMMAND_RESET, KEYBINDINGS_EDITOR_COMMAND_COPY, KEYBINDINGS_EDITOR_COMMAND_COPY_COMMAND, KEYBINDINGS_EDITOR_COMMAND_CLEAR_SEARCH_RESULTS, KEYBINDINGS_EDITOR_COMMAND_DEFINE_WHEN, KEYBINDINGS_EDITOR_COMMAND_SHOW_SIMILAR, KEYBINDINGS_EDITOR_COMMAND_ADD } from 'vs/workbench/contrib/preferences/common/preferences'; </del> <ins> import { CONTEXT_KEYBINDING_FOCUS, CONTEXT_KEYBINDINGS_EDITOR, CONTEXT_KEYBINDINGS_SEARCH_FOCUS, KEYBINDINGS_EDITOR_COMMAND_RECORD_SEARCH_KEYS, KEYBINDINGS_EDITOR_COMMAND_SORTBY_PRECEDENCE, KEYBINDINGS_EDITOR_COMMAND_DEFINE, KEYBINDINGS_EDITOR_COMMAND_REMOVE, KEYBINDINGS_EDITOR_COMMAND_RESET, KEYBINDINGS_EDITOR_COMMAND_COPY, KEYBINDINGS_EDITOR_COMMAND_COPY_COMMAND, KEYBINDINGS_EDITOR_COMMAND_CLEAR_SEARCH_RESULTS, KEYBINDINGS_EDITOR_COMMAND_DEFINE_WHEN, KEYBINDINGS_EDITOR_COMMAND_SHOW_SIMILAR, KEYBINDINGS_EDITOR_COMMAND_ADD, KEYBINDINGS_EDITOR_COMMAND_COPY_COMMAND_LABEL } from 'vs/workbench/contrib/preferences/common/preferences'; </ins> import { IContextMenuService, IContextViewService } from 'vs/platform/contextview/browser/contextView'; import { IKeybindingEditingService } from 'vs/workbench/services/keybinding/common/keybindingEditing'; import { IListContextMenuEvent, IListEvent } from 'vs/base/browser/ui/list/list';

Discussion:
<!-- Do Not Delete This! featurerequesttemplate --<!-- Please read our Rules of Conduct: --<!-- Please search existing issues to avoid creating duplicates. --<!-- Describe the feature you'd like. --Currently, for copying a command like on the "Keyboard Shortcuts" page, there're two options: Copies Command ID Copies But really, quite often, we just want to copy , and there's no option for that. Therefore, I'm making a feature request for it.
(Experimental duplicate detection) Thanks for submitting this issue. Please also check if it is already covered by an existing one, like: <!-- score: 0.526 --- <!-- score: 0.46 --- <!-- score: 0.447 --<!-- potentialduplicatescomment --
Hey I see this is assigned to you, I opened a PR to address this. It is my 1st PR so any constructive feedback would be appreciated ;-)
I hope this works for you? :smile_cat:
Sorry for the late response, but I don't know how to test this though.
Planning to look at this PR in July milestone.
Thanks for the PR - I did some small fine tunings after. !
To verify: Open Keyboard Shortcuts editor Right click on an entry and make sure you have an action to copy the command title Make sure this action works as expected
Change:
.extension-editor > .header { display: flex; <del> height: 134px; </del> padding-top: 20px; padding-bottom: 14px; padding-left: 20px;

Discussion:
Testing In a zoomed in view <img width="1053" alt="screen shot 2018-06-26 at 11 35 55 am" src="https://user-"
The Ignore button is missing top and bottom padding of 1 px, which you can see on the button <img width="904" alt="screen shot 2018-06-26 at 11 39 29 am" src="https://user-"
Change:
private readonly _mouseDownListener: IDisposable; private readonly _sliderMouseMoveMonitor: GlobalMouseMoveMonitor<IStandardMouseMoveEventData>; private readonly _sliderMouseDownListener: IDisposable; <ins> private readonly _sliderTouchStartListener: IDisposable; private readonly _sliderTouchMoveListener: IDisposable; private readonly _sliderTouchEndListener: IDisposable; </ins> private _options: MinimapOptions; private _lastRenderData: RenderData | null; private _selections: Selection[] = []; private _selectionColor: Color | undefined; private _renderDecorations: boolean = false; <ins> private _gestureInProgress: boolean = false; </ins> private _buffers: MinimapBuffers | null; constructor(context: ViewContext) {

Discussion:
Issue Type: <bFeature Request</bWhen using a touch screen, I want to be able to interact with VSCode in an intuitive manner. When I touch the minimap, I expect the document to scroll immediately on touch-down, not on touch-up. Mouse-up makes sense for a mouse, but not for a touch. When I touch and drag the minimap, I expect the minimap to scroll with my finger. VS Code version: Code 1.22.1 (, 2018-04-06T02:26:57.615Z) OS version: Windows_NT x64 10.0. <!-- generated by issue reporter --
(Experimental duplicate detection) Thanks for submitting this issue. Please also check if it is already covered by an existing one, like: <!-- score: 0.487 --- <!-- score: 0.464 --- <!-- score: 0.449 --<!-- potentialduplicatescomment --
I haven't PR'd vscode before, if anyone who cares about this issue has tips on getting my PR ^^ merged and released I'm happy to put more work into it. I find it very frustrating not having touch-scrolling on the minimap, as I'm so used to it working in old-school Visual Studio!
Change:
padding: 10px 0; } <del> .review-widget .body .edit-container .form-actions { display: flex; justify-content: flex-end; } </del> .review-widget .body .edit-textarea { height: 90px; margin: 5px 0 10px 0;

Discussion:
<img width="628" alt="image" src="https://user-"I often by accident click on the wrong button when adding a comment, imho this action is way too prominent there because it seems like the primary button to add the comment. //cc also because both buttons have the same color <img width="306" alt="image" src="https://user-"
The "Go to Review" button was to address confusion on how to complete a review: We could add some convention where the left-most button gets more prominent styling. what do you think?
Catching up after a week off.. I believe we should follow the same patterns used for dialogs and notifications where a single primary button is used alongside one or more secondary buttons. From what I understand, our the order the buttons in a dialog depends on the OS. Windows gets left-aligned primary buttons, vice versa for macOS. In this case, since the buttons are always right-aligned to the comment input on any platform, I think the primary button should be on the far right to align with the edge of the container. This looks to already be the case elsewhere in the extension: <img width="423" alt="CleanShot 2022-04-18 at 09 09 03 src="https://user-"
Thanks I want to update the style of this button to be a primary button, but there may be extensions that flip the order of importance for their buttons. I'll poll some other folks and see if it seems ok.
Verified. I assume that Go to Review button is renamed to Start Review !
The Start Review button is a Go to Review button once you have already started a review. But since you verified the button colors this is still verified.
Change:
) { super(instantiationService, viewModel); <ins> this.htmlElements.root.classList.add(`input`); </ins> this._register( new EditorGutter(this.editor, this.htmlElements.gutterDiv, { getIntersectingGutterItems: (range, reader) => {

Discussion:
Ref Thinking about various ways to reduce clutter and noise. Not sure if there's any reason to keep the branch aligned right and the commit to the left. Especially since we're looking at adding more actions via . What if we just combined them with a separator e.g. <img width="1148" alt="CleanShot 2022-09-07 at 15 18 17 src="https://user-"cc
It would also be nice if we could show more information about the commits somehow (maybe a hover or a clickable label). The hash doesn't really help, unless I have a different tool to look it up.
Here's what we explored in earlier design iterations: <img width="542" alt="CleanShot 2022-09-08 at 08 36 49 src="https://user-"
Change:
@IExtensionsWorkbenchService private readonly extensionsWorkbenchService: IExtensionsWorkbenchService, @IInstantiationService private readonly instantiationService: IInstantiationService, @INotificationService private readonly notificationService: INotificationService, <del> @IOpenerService private readonly openerService: IOpenerService </del> <ins> @IOpenerService private readonly openerService: IOpenerService, @IQuickInputService private readonly quickInputService: IQuickInputService, @IExtensionService private readonly runtimeExtensionService: IExtensionService, @IWorkbenchThemeService private readonly workbenchThemeService: IWorkbenchThemeService </ins> ) { super(`extensions.install`, InstallAction.INSTALL_LABEL, InstallAction.Class, false); this.update();

Discussion:
Improve user experience while installing themes
!
It would be cool if you could preview themes in the store, maybe with a split view hosting some example code, or even with the files you have open.
Please open a feature request for it
Change:
disturl "https://electronjs.org/headers" target "27.2.3" <del> ms_build_id "26378995" </del> <ins> ms_build_id "26495564" </ins> runtime "electron" build_from_source "true"

Discussion:
A possible regression from
Addressed by , Electron 27-x-y PR has not merged in I will backport it for endgame.
Backport created
Change:
} } <ins> private _setFocus(focused?: boolean): void { if (focused) { this._terminalFocusContextKey.set(true); this._onDidFocus.fire(this); } else { this._terminalFocusContextKey.reset(); this._onDidBlur.fire(this); this._refreshSelectionContextKey(); } } </ins> private _initDragAndDrop(container: HTMLElement) { this._dndObserver?.dispose(); const dndController = this._instantiationService.createInstance(TerminalInstanceDragAndDropController, container);

Discussion:
https://user- As shown in the recording, when I tried to paste in the editor The terminal paste command is matched, meaning that the terminal is still "focused" based on the context keys The terminal shows a context menu for paste. We are not seeing this in the editor, the terminal should handle in the same way
As long as the terminal is opened once, I have to reload the window to get it fixed.
I think this means that this isn't happening on safari for some reason
This gets hit even when I click in the editor area !
Still reproduced on latest codespace with VS Code insider bits.
Had a call, we believe it's happening because we set when hiding the panel which caused the blur/focusout events to not fire. We also noticed this happens in terminal editors as well. So to fix we need to reset or refresh the state of the context key when the terminal panel/view is hidden as well as when the terminal editor is hidden. Something to verify when these changes are made is to make sure if you have a single terminal editor and a single terminal in the panel, toggling the panel should still keep because the terminal editor will now be focused (ie. the panel hide context key reset should happen before the terminal editor focus is handled).
Change:
hide(): void { <ins> this.complexValueContainer.style.visibility = 'hidden'; </ins> if (this.showCancellationSource) { this.showCancellationSource.cancel(); this.showCancellationSource = undefined;

Discussion:
an object that has many long property values There is no scrollbar the prototype There is a scrollbar !
Probably only with the horizontalscrolling setting enabled? I know that's a bit tricky
What's the setting for that? I don't have any scroll setting that appears debug related enabled. Just sticky scroll for the editor.
I think you have set, right?
No I do not.
Change:
new CommentBasedVariableResolver(model), new TimeBasedVariableResolver, new WorkspaceBasedVariableResolver(workspaceService), <ins> new RandomBasedVariableResolver, </ins> ])); const offset = model.getOffsetAt(start) + delta;

Discussion:
[use case] generate a simple random string as a quick debug flag [feature request] add a $RANDOM varible to snippet or support JS expression as ES6 did e.g. ${().toString(36).slice(-6)}`
, I can take this up but need some starter and code pointers for this :) I just need some more understanding as we can do something like this (,$1);
Is this still open? Can I take this?
Go for it. Code pointer:
Duplicate of Alka
Change:
"git.path": { "type": [ "string", <del> "null" </del> <ins> "null", "array" </ins> ], "markdownDescription": "%config.path%", "default": null,

Discussion:
I use VSCode in three different places; my home computer, my work computer, and as a portable version I carry on a drive when I need to use a machine that doesn't have it. I use an extension to keep my settings synced up between editors, and the only issue I've encountered so far is that the git path doesn't match between any of them. On my home machine I have it installed to C of course, work likes to be funny and install it on A, and for the one on my drive I have a relative path set so that no matter what letter my drive gets, that VSCode can always find git. I already attempted to use an array myself just to see if it'd work: But VSCode reads it as one entire value. What I'd like is for it to recognize it as an array and then try each path in order until it finds Git or runs out of paths.
It is better to create an issue in extension repo with requesting the settings ignore feature.
Hy
This is a good feature request, please feel free to submit a PR.
Ah, thanks. I must have just seen the section title and completely glossed over it when I was reading through the docs.
I could help out with this feature-request, if you would like. At a glance, it looks like it would require a modification to the "createModel()" function in the "" file (line 34). We could get the "pathHint" as a string array and then possibly modify the logic inside of the "findGit()" function, or, if possible, iterate through the "pathHint" array until a valid "" value is returned. EDIT: Sorry, didn't realize a PR was already submitted...
Raised PR!
Verification The setting now accepts a list of values. The git extension must go through them one by one until it finds a usable git executable.
Change:
const languageIdentifier = this._modeService.getLanguageIdentifier(languageId); if (languageIdentifier) { <del> this._registrations.set(handle, LanguageConfigurationRegistry.register(languageIdentifier, configuration)); </del> <ins> this._registrations.set(handle, LanguageConfigurationRegistry.register(languageIdentifier, configuration, 100)); </ins> } }

Discussion:
<!-- Do Not Delete This! bugreporttemplate --<!-- Please read our Rules of Conduct: --<!-- Please search existing issues to avoid creating duplicates. --<!-- Also please test using the latest insiders build to make sure your issue has not already been fixed: --We have started to get reports from users that Toggle Line Comments does the wrong thing: I think this stems from the default Clojure extension which sets to be a single . Calva changes this here: This has been working for years, and still does for many people, but some days ago it stopped working for some. I also notice that the default extension has moved to its own repository, where there is now a PR to fix the line comment configuration: However, I think it is wrong that the default extension sometimes overrides an installed extension here. Then that API can't be trusted at all. I worry about what more configuration is now sometimes being overridden. <!-- Use Help Report Issue to prefill these. --- VSCode Version: 1.52.1 OS Version: N/A Steps to Reproduce: Calva a file the command Toggle Line Comment on an uncommented line Expected: It gets commented with Actual: It gets commented with Please let me know how I can assist in fixing this issue. <!-- Launch with to check. --Does this issue occur when all extensions are disabled?: Not applicable
I am surprised that this ever worked reliably, it must have been some amazing timing luck. defines a language configuration at . Language configuration file handling is implemented by waiting for the language to be first used (like embedded in another language like a markdown fence or a file using the language is opened) and then reading async the language configuration file and applying it. This is done . Whenever the language configuration file finishes reading, it will go and configure the in pretty much the exact same way an extension calling configures it . So deep down there is no difference between those two calls and basically those two calls are racing themselves and it is lucky that until now the call reading the descriptive file was always faster than the imperative call from your extension. If you want to be sure to overwrite the builtin language configuration, you can define your own language configuration file using: But I also see how you would expect that the imperative call would "win" over the descriptive way, so maybe we can do something on our side to give a higher priority to the imperative call way of configuring languages.
Thanks !

This is great information. Calva has been relying on this luck for a very long time. And yes, I actually choose to do it the imperative way very consciously, assuming it was the way to be sure I could override the defaults.
Change:
} } <ins> private storeTreeViewState() { this.storageService.store(ExplorerView.TREE_VIEW_STATE_STORAGE_KEY, JSON.stringify(this.tree.getViewState()), StorageScope.WORKSPACE, StorageTarget.MACHINE); } </ins> private setContextKeys(stat: ExplorerItem | null | undefined): void { const folders = this.contextService.getWorkspace().folders; const resource = stat ? stat.resource : folders[folders.length - 1].uri;

Discussion:
<!-- Do Not Delete This! featurerequesttemplate --<!-- Please read our Rules of Conduct: --<!-- Please search existing issues to avoid creating duplicates. --<!-- Describe the feature you'd like. --For example when I open a project in v, I expand the folder on the file tree. When I refresh the whole page, the default behavior now is that the folders are collapsed, which means that I need to expand the folders one by one again the last time I opened them. !
If the expansion state of the file tree folder can remember the last expansion like tabs, similar to the gif below, I think this is a better effect. !
I have fixed this problem and will mention a pr later.
The reason for this problem is that there are multiple calls to the function during the rendering of the file tree. The state will be read from the cache for the first time, but before the execution is completed for the first time, the will be executed again. At this time, the tree already has a value. However, because the file tree data is not ready (because the data on the Web side is asynchronous), the state returned by the function is empty, resulting in the final file tree returning to the default collapsed state.
Change:
await app.workbench.editors.newUntitledFile(); const untitled = 'Untitled-1'; <del> const textToTypeInUntitled = 'Hello, Untitled Code'; </del> <ins> const textToTypeInUntitled = untitled; </ins> await app.workbench.editor.waitForTypeInEditor(untitled, textToTypeInUntitled); const readmeMd = 'readme.md';

Discussion:
Could be related to the Untitled file title changes. The tests hang here: ! /cc
The same on macOS.

This was nicely uncovered by our internally implements a logic that throws an error in case multiple calls are made in parallel and a folder was created in the meantime. This is due to the fact that throws when a directory already exists. However, node's own implementation does not throw with the recurse option set to . We should align our implementation and not throw when a folder already exists.
Verification: run our smoke test and see how the hot-exit tests succeed.