jiebi/CodeConvo huggingface dataset:
Change:
import { KeybindingsRegistry, KeybindingWeight } from 'vs/platform/keybinding/common/keybindingsRegistry'; import { ContextKeyExpr, ContextKeyExpression, IContextKeyService } from 'vs/platform/contextkey/common/contextkey'; import { IViewDescriptorService, IViewsService, ViewContainerLocation, IViewDescriptor, ViewContainerLocationToString } from 'vs/workbench/common/views'; <del> import { QuickPickItem, IQuickInputService, IQuickPickItem, IQuickPickSeparator } from 'vs/platform/quickinput/common/quickInput'; </del> <ins> import { QuickPickItem, IQuickInputService, IQuickPickItem, IQuickPickSeparator, IQuickPick } from 'vs/platform/quickinput/common/quickInput'; </ins> import { IDialogService } from 'vs/platform/dialogs/common/dialogs'; import { IPaneCompositePartService } from 'vs/workbench/services/panecomposite/browser/panecomposite'; import { ToggleAuxiliaryBarAction } from 'vs/workbench/browser/parts/auxiliarybar/auxiliaryBarActions';

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.67 OS Version: macOS 12.3.1 (21E258) using the button the button again to close it but cannot close it3. <img width="1076" alt="a" src="https://user-" Its always running show method, so I think it should have an open/close state to manage it.
Try clicking here: !
Thank you for the comment. Yes, I know I can close it by clicking the button, but it would be nice to close it by clicking the original button.
please improve the issue title, which currently states that you "cannot close" it.
My bad. I'll fix it now
for UX guidance here. when actions open quick picks we don't tend to have an inverse action if its still open. this is not usually the case because it is closed when focus is lost, but not something we can rely on here.
Thank you Even if the focus is lost, the action view won't be closed on Mac. Also, other buttons allow us to open and close by clicking, so it should be consistent. I often click the button by accident and need to move cursor to close the view. That would be nice to have a toggle feature on the button too.
Maybe use the setting which removes the button completely?
We don't currently hide any of the quick picks with other actions or clicking the same action (changing focus would actually close it). I think given that we have the key and the close button in the top right of the quick pick, I don't think we'd be able to do anything else.
Change:
const selection = this.getSelectedHistoryItems(); const contextIsSelected = selection.some(s => s === context); if (contextIsSelected && selection.length > 1) { <del> args.push(...[selection[0], selection[selection.length - 1]] .map(h => ( { id: h.historyItemViewModel.historyItem.id, parentIds: h.historyItemViewModel.historyItem.parentIds, message: h.historyItemViewModel.historyItem.message, author: h.historyItemViewModel.historyItem.author, icon: h.historyItemViewModel.historyItem.icon, timestamp: h.historyItemViewModel.historyItem.timestamp, statistics: h.historyItemViewModel.historyItem.statistics, } satisfies ISCMHistoryItem))); </del> <ins> args.push(...selection.map(h => ( { id: h.historyItemViewModel.historyItem.id, parentIds: h.historyItemViewModel.historyItem.parentIds, message: h.historyItemViewModel.historyItem.message, author: h.historyItemViewModel.historyItem.author, icon: h.historyItemViewModel.historyItem.icon, timestamp: h.historyItemViewModel.historyItem.timestamp, statistics: h.historyItemViewModel.historyItem.statistics, } satisfies ISCMHistoryItem))); </ins> } else { args.push({ id: context.historyItemViewModel.historyItem.id,

Discussion:
Testing Have remote commits. Click on a remote commit to view the commit Use the commit menu to view the commit Expected: Focus shifts to the already opened editor Actual: New diff editor opened for the commit. !
Change:
* A complex edit that will be applied in one transaction on a TextEditor. * This holds a description of the edits and if the edits are valid (i.e. no overlapping regions, document was not changed in the meantime, etc.) * they can be applied on a [document](#TextDocument) associated with a [text editor](#TextEditor). <del> * </del> */ export interface TextEditorEdit { /**

Discussion:
does not appear in other doc strings. I know this is petty but it's bugging me
Change:
reportProgress(0, 0); // Handle file upload <ins> const resource = joinPath(parentResource, entry.name); </ins> if (entry.isFile) { const file = await new Promise<File>((resolve, reject) => entry.file(resolve, reject));

Discussion:
Refs: have a folder with a few files drag and drop into web file explorer drag and drop the folder again Observe: Multiple dialogs appear that ask whether to replace the existing files/folder: first for the folder then for the individual files From this behaviour I assume that the drag and drop is not a "replace" but a "merge". This is confirmed by adding another file into the original folder and then dnd it again. Or empty the original folder and then dnd it only asks for the folder but leaves the existing containing files alone. But this "Merge" semantics needs a completely different UI than "Replace": it is not necessary to ask for replacing the folder because there will be more questions for the individual files inside anyways. the dialog needs three buttons: "replace", "do not replace", and "cancel" Alternatively you could implement the "Replace" logic. In this case there is no need to ask for the individual files inside a folder if the whole folder is replaced anyway. A third option is to ask initially whether to "Replace" or to "Merge" and then have different UI for the two strategies.
Will check how the explorer does this, we may behave the same already for native drops.
The simplest solution is to implement the "Replace" strategy. That's what macOS Finder does. IIRC Windows implements the "Merge" strategy.
Yes this is also how our non web explorer behaves. So we will show a dialog for each conflict. We do not allow to bulk cancel. Since this can be handled in the Explorer, unassigning from and renaming I am opening this up for PRs. Code pointer
via the solution is to ask for each thing that gets uploaded and then delete it upfront. This means, when you are being asked to replace a folder, you will not be asked for each file within. It will be a "Replace" and not "Merge".
Change:
* Returns an action item to render an action. */ getActionItem(tree: ITree, element: any, action: IAction): IActionItem; <del> } </del>  No newline at end of file <ins> } </ins>

Discussion:
VSCode Version: Version: 1.27.1 (user setup) Commit: Date: 2018-09-06T09:21:18.328Z Electron: 2.0.7 Chrome: 61.0.3163.100 8.9.3 V8: 6.1.534.41 Architecture: x64 OS Version: Windows 10 Pro 64-bit (10.0, Build ) Steps to Reproduce: click item in explorer icon appear ! If you open developers tools works as expected Does this issue occur when all extensions are disabled?: Yes/No Yes
(Experimental duplicate detection) Thanks for submitting this issue. Please also check if it is already covered by an existing one, like: <!-- score: 0.478 --- <!-- score: 0.463 --<!-- potentialduplicatescomment --
Hmm strangely I am no longer getting a event when I do a middle mouse click This nicely works in stable. I see we use a different electron 2.0.9 compared to 2.0.7 but not sure if that update includes something which would influence this. Also the middle click nicely works in the tabs title area - how are you handling it there? did we change something in the tree which might effect this?
yeah see I removed  to prepare for Electron 3.0.x. We should probably wire this into the tree so that people can react to it ("onMiddleClick"). Simply forwarding the was resulting in other issues.
ok so the tree should still listen on events but bobble them up in a different way ? I can create a PR for this and you review?
yeah, the thing is, middle-click should not trigger the click, otherwise we might get wrong behaviour where people do not expect middle-click to do anything. Instead we can check clients of the tree (and list?) that want to do something on middle click and update them accordingly. Otherwise every client has to do an extra check for which mouse button was used for click.
currently the only clients of the tree that check something on middle click are explorer and quick open . For the list they are open editors view and the breakpoints view, however this still works for the breakpoints view and does not work for the open editors due to
Change:
}); configHelper = new TerminalConfigHelper(Platform.Linux, configurationService, null, null, null); configHelper.panelContainer = fixture; <del> assert.equal(configHelper.getFont().fontFamily, 'foo', 'editor.fontFamily should be the fallback when terminal.integrated.fontFamily not set'); </del> <ins> if (isFedora) { assert.equal(configHelper.getFont().fontFamily, ''DejaVu Sans Mono'', 'Fedora should have its font overridden when terminal.integrated.fontFamily not set'); } else { assert.equal(configHelper.getFont().fontFamily, 'foo', 'editor.fontFamily should be the fallback when terminal.integrated.fontFamily not set'); } </ins> }); test('TerminalConfigHelper - getFont fontSize', function () {

Discussion:
VSCode Version: Code 1.17.0 (, 2017-10-04T23:33:45.303Z) OS Version: Linux x64 4.12.0-2-amd64 Extensions: Extensions are disabled Steps to Reproduce: window doesn't look well ! <!-- Launch with to check. --Reproduces without extensions: Yes/No
Here is how my integrated terminal looks like !
what distro are you using? I've seen Fedora acts a little odd with font rendering both in the editor and the terminal. see
I'm experiencing the same issue on Fedora 26 / Gnome 3.24.2 / VSCode version 1.17.0. The only affected component is the terminal so far, other fonts look good. The issue is not present in VSCode 1.16.1.
i am using debian 9 / xfce4 / VSCode version 1.17.0
For Fedora right now the workaround is to use a different font:
it works like a charm. Thanks a lot :)
Thks now looks very well.
Pushed to master and release/1.17
Not sure I've got issue right, but looks like custom fonts such as are not working after last update. Before update everything worked fine. Wouldn't say it is too important, but would be nice to get it back. Linux Mint 18.2 x64. !
Same issue here with Fira Code font Ubuntu 17.04 x64
yes also here FiraCode looks weird now. macOS 10.13
same here as after 1.17.1 update it looks weird now with SF Mono on macOS. ! it looks weird, because before 1.17.1 it was awesome
This is the issue tracking the blurry text in 1.17.1
Change:
command: { command: rebaseWhenSync ? 'git.syncRebase' : 'git.sync', title: `${icon}${behind}${ahead}`, <del> tooltip: this.state.isActionRunning ? </del> <ins> tooltip: this.state.isSyncInProgress ? </ins> localize('syncing changes', "Synchronizing Changes...") : this.repository.syncTooltip, arguments: [this.repository.sourceControl], }, description: localize('scm button sync description', "{0} Sync Changes{1}{2}", icon, behind, ahead), <del> enabled: !this.state.isActionRunning </del> <ins> enabled: !this.state.isSyncInProgress </ins> }; } private onDidChangeOperations(): void { <del> const isActionRunning = </del> <ins> const isCommitInProgress = this.repository.operations.isRunning(Operation.Commit); const isSyncInProgress = </ins> this.repository.operations.isRunning(Operation.Sync) || this.repository.operations.isRunning(Operation.Push) || <del> this.repository.operations.isRunning(Operation.Pull) || this.repository.operations.isRunning(Operation.Commit); </del> <ins> this.repository.operations.isRunning(Operation.Pull); </ins> <del> this.state = { ...this.state, isActionRunning }; </del> <ins> this.state = { ...this.state, isCommitInProgress, isSyncInProgress }; </ins> } private onDidRunGitStatus(): void {

Discussion:
Create a commit. While the commit runs, the sync button spins as if it's syncing . The one in the statusbar does not. !
Change:
services.set(ILogService, logService); // Lifecycle <del> this.lifecycleService = new SharedProcessLifecycleService(logService); </del> <ins> this.lifecycleService = this._register(new SharedProcessLifecycleService(logService)); </ins> services.set(ISharedProcessLifecycleService, this.lifecycleService); // Worker

Discussion:
This here: Is strange to me because while this call is , it will not prolong the shutdown on the main process which is sync: Since the user of this event does not seem to use , I suggest to make the not support promises.
Change:
"vscode-proxy-agent": "^0.5.2", "vscode-ripgrep": "^1.5.7", "vscode-textmate": "4.4.0", <del> "xterm": "4.3.0-beta.28.vscode.1", </del> <ins> "xterm": "4.4.0-beta.13", </ins> "xterm-addon-search": "0.4.0-beta4", "xterm-addon-web-links": "0.2.1", <del> "xterm-addon-webgl": "0.4.0-beta.11", </del> <ins> "xterm-addon-webgl": "0.5.0-beta.7", </ins> "yauzl": "^2.9.2", "yazl": "^2.4.3" },

Discussion:
Re macOS zsh with oh my zsh Run scripts described in Open with Canvas rendering and select all ! Open with WebGL rendering ! !
Upstream: I think the problem with inverse is the only issue there? Let me know if I'm wrong.
yup, that's the only issue I saw.
Change:
default: 'on', restricted: true }, <del> [TaskSettingId.ShowDecorations]: { type: 'boolean', markdownDescription: nls.localize('task.showDecorations', "Shows decorations at points of interest in the terminal buffer such as the first problem found via a watch task. Note that this will only take effect for future tasks. {0} will take precedence over this setting", '`#terminal.integrated.shellIntegration.decorationsEnabled#`'), default: true }, </del> [TaskSettingId.Reconnection]: { type: 'boolean', description: nls.localize('task.reconnection', "On window reload, reconnect to tasks that have problem matchers."),

Discussion:
I noticed this: We always want to add the sequences as it enabled command navigation, the decorations showing is purely a visual thing that hides the decoration button. So I suggest we remove the ShowDecorations check there and instead call into the terminal addon to disable the decoration.
To verify: repo (or any repo with a task that exits) the default build task to some file the test task it the test task it /ctrl+up should take you to the start of the task in step 6, not the very top of the terminal
I actually think we should remove the setting outright as we already have which essentially does the same thing. This would save us from exposing outside of the terminal part the ability to configure decoration visibility. Timeline: The terminal setting was as a boolean in Feb The task setting was in June The terminal setting was made more granular in July The interaction between the 2 settings confused someone in I'll leave the decision up to you whether we remove it, it feels like too much granularity to me as the user must like the terminal ones but not the task ones.
Let's remove it
Change:
this.state = RepositoryState.Disposed; } <ins> if (!operation.readOnly) { await this.updateModelState(); } </ins> throw err; } finally { this._operations.end(operation);

Discussion:
Steps to Reproduce: a repository on GitHub the repository locally and open it in VS Code Insiders a file on the remote through the same file locally to cause a conflict and commit the changes the "Sync Changes" action button, which will result in a failure Expected behaviour: Resource groups should be updated Actual behaviour: Resource groups are not updated
Change:
err.gitErrorCode = GitErrorCodes.PushRejected; } else if (/Could not read from remote repository/.test(err.stderr || '')) { err.gitErrorCode = GitErrorCodes.RemoteConnectionError; <ins> } else if (/^fatal: The current branch .* has no upstream branch/.test(err.stderr || '')) { err.gitErrorCode = GitErrorCodes.NoUpstreamBranch; </ins> } throw err;

Discussion:
VSCode Version: Code 1.14.0 (, 2017-07-10T18:24:22.120Z) OS Version: Darwin x64 16.6.0 When working on a new branch and trying to when no upstream branch has been set, an error pops up stating: It would be nice if it could ask for the user to input a branch name to set as an upstream branch for the local one.
We should instead ask the user if he wants to the branch instead. Want to attempt a PR?
I'm in the beginning, but I would like to contribute. Can you give me some initial help? To define the problem... I could check if the upstream is set and If I did not set, call up the "push to ..." function?
You don't need to check if the upstream is set. You can actually try to figure out which error comes from git (). If you detect that the error is related to the fact that there is no upstream branch configured, you can ask the user whether he wants to publish the current branch in a message. If so, just run the command.
[ the link is broken. I try to debug the git extension but the breakpoint, It does not work because source map not present... how to ? system osx sierra 10.12.5 (16F73) vscode 1.14.1 (1.14.1)]
Fixed the link. Debugging is currently not set up. Sorry.
right link ok. So i add the if condition, in try catch block related to ?
It seems to me this message: git remote -v pipop /Users/userpippo/Desktop/progetti/remote/ (fetch) pipop /Users/userpippo/Desktop/progetti/remote/ (push) git push fatal: No configured push destination. .... or this ? git push pipop fatal: The current branch master has no upstream branch. To push the current branch and set the remote as upstream, use git push --set-upstream pipop master
Change:
if (!textContent) { return; } <del> const focusedElement = getActiveWindow().document.activeElement; </del> const range = new globalThis.Range(); range.setStart(textContent, selectionOffsetStart); range.setEnd(textContent, selectionOffsetEnd); activeDocumentSelection.removeAllRanges(); activeDocumentSelection.addRange(range); <del> if (isHTMLElement(focusedElement)) { focusedElement.focus(); } </del> } }

Discussion:
Type: <bBug</bSteps to reproduce: window right click in editor area - it's hidden almost immediately (in come cases recording didn't catch it) right click in explorer tree, tabs, status bar - works as expected VS Code version: Code - Insiders 1.94.0-insider (, 2024-09-11T05:04:03.124Z) OS version: WindowsNT x64 10.0. Modes: <details<summarySystem Info</summary </detailsExtensions disabled <!-- generated by issue reporter --
Seems to happen on Windows but not on MacOS
The source of this bug has been found. After the context menu is shown, the screen reader content of the native edit context is updated, the document range is set. The context menu loses focus and is hidden. This issue happens in Windows but not on MacOS because Windows uses a different context menu logic. A fix will be found.
Works on my machine now Version: 1.94.0-insider Commit: Date: 2024-09-16T05:03:40.122Z Browser: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Code-Insiders/1.94.0-insider Chrome/124.0.6367.243 Electron/30.4.0 Safari/537.36
Thank you for verifying
Change:
height: calc(100% - 38px); } <ins> .extensions-viewlet > .extensions .list-actionbar-container { margin-right: 10px; } </ins> .extensions-viewlet > .extensions .list-actionbar-container .monaco-action-bar .action-item > .octicon { font-size: 12px; line-height: 1;

Discussion:
on insiders !
Do you know of any recent changes to relevant CSS? If not I'll take a look
Good chance it was this () commit.
I suppose this is a duplicate.
Yes that was part of it
Change:
} } <del> private async removeExtensionsFromProfile(removedProfile: URI): Promise<void> { for (const key of [...this.allExtensions.keys()]) { this.removeExtensionWithKey(key, removedProfile); } await this.uninstallExtensionsNotInProfiles(); } </del> private async uninstallExtensionsNotInProfiles(toUninstall?: IExtension[]): Promise<void> { if (!toUninstall) { const installed = await this.extensionManagementService.scanAllUserInstalledExtensions();

Discussion:
I had a "Testing" profile with various remote extensions installed. I deleted it (while being in it) and then recreated it empty. I still found all remote menu contributions even though the profile should have been empty. Maybe switching profiles should ask to reload the window when extensions require so? Steps to Reproduce: fresh user data dir, fresh extensions dir create an empty profile install SSH extension notice how the remote explorer view appears delete the profile notice how the remote explorer view is still there, same as the status bar entry for remote
Another case from is interesting: I do not think using a profile is a good idea for when extensions require a window reload to be disabled. So you need to then probably ask the user to reload the window or do it automatically.
AFAIK every extension requires a window reload after being disabled (except for package-json only extensions). We cannot unload code from extensions and cannot enforce them not doing anything anymore. There we always reload the window or at least the extension host
While switching profiles we restart extension host. You say this is not enough to unload extensions? Also while trusting/untrusting a workspace.
No, only those that are activate with code loaded. Here are steps: fresh user data dir, fresh extensions dir create an empty profile install SSH extension notice how the remote explorer view appears delete the profile notice how the remote explorer view is still there, same as the status bar entry for remote
I see this can be reproduced with above steps. But Remote Explorer view disappears with switching profile. So I think this is a bug (either in views or profiles) when profile is deleted. But status bar entries always appear.
Change:
} } } <del> const newDecorationIds = this._editor.deltaDecorations(decorationIdsToReplace, newDecorationsData.map(d => d.decoration)); for (let i = 0; i < newDecorationIds.length; i++) { const data = newDecorationsData[i]; this._decorationsMetadata.set(newDecorationIds[i], data); } </del> <ins> this._editor.changeDecorations(accessor => { const newDecorationIds = accessor.deltaDecorations(decorationIdsToReplace, newDecorationsData.map(d => d.decoration)); for (let i = 0; i < newDecorationIds.length; i++) { const data = newDecorationsData[i]; this._decorationsMetadata.set(newDecorationIds[i], data); } }); </ins> } private _fillInColors(props: CssProperties, hint: languages.InlayHint): void {

Discussion:
<img width="776" alt="image" src="https://user-"I don't have stable reproduce, but this happens pretty often, especially I'm moving lines around.
I don't think this is a bug of injected text: When there are not decorations, there cannot be any injected text. This looks like there are some orphaned decorations.
Do you use the setting? Do you still see this with latest & greatest insiders?
I'm using the setting but haven't seen it for a while since I reported the issue.
Leaving this open, lets find steps
Is it possible that this is caused by the recursive issue?
Could be the case! The fix is to use it like this:
Oh, so inside the runner?
Yes, because change events are only send out after returns. Thus, is not reentrant anymore and will be assigned correctly.