jiebi/CodeConvo huggingface dataset:
Change:
constructor() { super({ id: 'mergeEditor.compareInput1WithBase', <del> title: localize('mergeEditor.compareInput1WithBase', "Merge Editor: Compare Input 1 With Base"), </del> <ins> category: localize('mergeEditor', "Merge Editor"), title: localize('mergeEditor.compareInput1WithBase', "Compare Input 1 With Base"), </ins> f1: true, }); }

Discussion:
While working on I noticed that some of the UI elements (and maybe other things?) are not registered as disposable, and thus may leak when the merge editor is freed from an editor group that closes. For example the and all input views seem to not dispose.
Hm, I think also the merge model, I suggest to do a pass and register as appropiate.
Change:
import { AbstractDiskFileSystemProviderChannel, AbstractSessionFileWatcher, ISessionFileWatcher } from 'vs/platform/files/node/diskFileSystemProviderServer'; import { DefaultURITransformer, IURITransformer } from 'vs/base/common/uriIpc'; import { IEnvironmentService } from 'vs/platform/environment/common/environment'; <ins> import { toErrorMessage } from 'vs/base/common/errorMessage'; </ins> export class DiskFileSystemProviderChannel extends AbstractDiskFileSystemProviderChannel<unknown> {

Discussion:
Type: <bBug</bSince I've upgraded from Ventura to Sonoma, files must be deleted permanently. They can no longer be moved to trash. I'm seeing the following in the dev console: <img width="498" alt="Screenshot 2024-03-06 at 12 26 09 PM" src=""VS Code version: Code 1.87.0 (, 2024-02-27T23:42:51.279Z) OS version: Darwin arm64 23.3.0 Modes: <details<summarySystem Info</summary </details<details<summaryExtensions (13)</summaryExtensionVersion ------ theme-verdandi2.0.1 markdown-preview-github-styles2.0.3 vscode-eslint2.4.4 gitlens14.8.2 prettier-vscode10.1.0 copilot1.172.0 copilot-chat0.13.0 vscode-graphql-syntax1.3.4 vscode-scss0.10.0 debugpy2024.2.0 python2024.2.1 scala0.5.7 errorlens3.16.0 (2 theme extensions excluded) </details<details<summaryA/B Experiments</summary</details<!-- generated by issue reporter --
unfortunately we failed to log the actual error, but I have pushed a change for that. Can you test this scenario using latest insiders and report what you get as error? You can give our preview releases a try from:
Gahhh and, of course, now it works fine. I'm unaware of what changed since I logged this bug? I haven't had any system updates or VSCode updates that I'm aware of. Chrome has been updated, and I don't know if Electron shares code with it that might have impacted anything but I doubt it, given this was a file system issue... Thank you so much for trying to run this down, though. I appreciate you adding logging on a quick turnaround into the insiders edition. I'm not sure if there's anything else you might want to explore with this, but I'm happy to call this closed and write it off to the gods.
Change:
Registry.as<IConfigurationRegistry>(Extensions.Configuration) .registerConfiguration(editorConfiguration); <ins> Registry.as<IConfigurationRegistry>(Extensions.Configuration) .registerConfiguration(notebookEditorConfiguration); </ins> class WorkbenchConfigurationContribution { constructor( @IInstantiationService instantiationService: IInstantiationService,

Discussion:
Testing I have the following set: When using the sample extension at I expect this to not trigger the code action on save but it does do it. Because there is no auto-complete I tried a bunch of other things also to no avail.
Change:
return TPromise.as(null); // Global action disabled if user is in edit mode from another action } <del> viewer.collapseDeepestExpandedLevel(); </del> <ins> /** * The hierarchy is FolderMatch, FileMatch, Match. If the top level is FileMatches, then there is only * one level to collapse so collapse everything. If FolderMatch, check if there are visible grandchildren, * i.e. if Matches are returned by the navigator, and if so, collapse to them, otherwise collapse all levels. */ const navigator = viewer.getNavigator(); let node = navigator.first(); let collapseFileMatchLevel = false; if (node instanceof FolderMatch) { while (node = navigator.next()) { if (node instanceof Match) { collapseFileMatchLevel = true; break; } } } if (collapseFileMatchLevel) { node = navigator.first(); do { if (node instanceof FileMatch) { viewer.collapse(node); } } while (node = navigator.next()); } else { viewer.collapseAll(); } </ins> viewer.clearSelection(); viewer.clearFocus(); viewer.domFocus();

Discussion:
introduced a  API to the tree via I'm pretty sure that method's implementation can be achieved outside the tree itself. There are , and methods on it. If so, please remove the API method and implement on the search usage side.
This was to the tree with the idea in mind that it would be useful elsewhere like the file explorer. And in fact I'd really like to have the same behavior on the file explorer. So moving it into search code is not the right thing to do but it could go into some TreeHelper class outside of the tree itself.
No need to overload with classes. A simple util function would do.
I don't think this is actually achievable outside the tree itself with the current tree API. It needs to calculate the tree depth to collapse to, and the navigator from just returns elements of the tree without the context of where they are in the tree. IMO, it makes sense for this method to stay on the tree since it's coupled with the tree's data
Good point. But this is really only used for search. I don't really buy into the generic usefulness of this as an API call, which needs to be maintained for the entire tree's lifecycle. As far as I am aware, search trees can only go 2/3 levels deep, depending on whether there are multiple folders in the workspace or not. That knowledge is kept in the search's tree user; the same entity knows exactly what it should collapse or otherwise. Can't it just call the right calls?
Change:
run: () => { onDidRequestRerunCommand?.fire({ command: fix.terminalCommand, <del> addNewLine: fix.addNewLine </del> <ins> addNewLine: fix.addNewLine ?? true </ins> }); }, tooltip: label, command: fix.terminalCommand <del> } as ITerminalAction; expectedCommands.push(fix.terminalCommand); </del> <ins> }; </ins> break; } case TerminalQuickFixType.Opener: {

Discussion:
Testing For built-in quick fixes, the command is automatically run after selecting it. However, for custom ones, it just emits a ctrl+c and writes out the command without actually running it !
Cannot reproduce on Windows
!
can you reproduce only w the contributed fix or also the builtin ones IE ?
The built-in git one works fine, only the contributed one doesn't. The command being returned is the string . There's no new line at the end of that string, which might(?) be triggering the automatic entering if that's being returned in built-in matchers...
Updated my original comment. It's not an OS thing, just built-in vs contributed
This was working at one pt. Probably a regression when I removed as a property. thanks for the info
Change:
} } }; <del> const multiDiffSource = URI.from({ scheme: 'refactor-preview' }); </del> <ins> const multiDiffSource = URI.from({ scheme: BulkEditPane.Schema }); </ins> const label = 'Refactor Preview'; this._editorService.openEditor({ multiDiffSource,

Discussion:
Make a refactor and open the refactor preview Click on accept/discard The editor showing the refactor preview does not close
Change:
return false; } <ins> if (prevChange.originalEndLineNumber === originalLineNumber && prevChange.modifiedEndLineNumber === modifiedLineNumber) { if (this.shouldComputeCharChanges && prevChange.charChanges) { prevChange.charChanges.push(new CharChange( originalLineNumber, originalStartColumn, originalLineNumber, originalEndColumn, modifiedLineNumber, modifiedStartColumn, modifiedLineNumber, modifiedEndColumn )); } return true; } </ins> if (prevChange.originalEndLineNumber + 1 === originalLineNumber && prevChange.modifiedEndLineNumber + 1 === modifiedLineNumber) { prevChange.originalEndLineNumber = originalLineNumber; prevChange.modifiedEndLineNumber = modifiedLineNumber;

Discussion:
Version: 1.75.0 from main set "diffEditor.ignoreTrimWhitespace": falseFile 1, using 4 spaces as indentationFile 2, using tab as indentationSelect both files and invoke Dev tools pop up on debugger statement `
I'm having trouble reproducing. Have you customized other settings? <img width="866" alt="image" src="https://user-"
Blocks
I can reproduce when typing a in one of the sides: <img width="865" alt="image" src="https://user-"
It looks like there's an assertion checking that these produced diffs should be reported in a different shape (introduced via )
You are correct, there needs to be additional spaces in file 2 after . Sorry for that. I fixed the description
Change:
import { EditSessionsDataViews } from 'vs/workbench/contrib/editSessions/browser/editSessionsViews'; import { ITextModelService } from 'vs/editor/common/services/resolverService'; import { EditSessionsContentProvider } from 'vs/workbench/contrib/editSessions/browser/editSessionsContentProvider'; <ins> import { isNative } from 'vs/base/common/platform'; import { WorkspaceFolderCountContext } from 'vs/workbench/common/contextkeys'; </ins> registerSingleton(IEditSessionsLogService, EditSessionsLogService); registerSingleton(IEditSessionsWorkbenchService, EditSessionsWorkbenchService);

Discussion:
Steps: some changes on the "continue working on..." command and open in desktop :bug: VS Code opens but nothing loads https://user- Desktop Version: 1.70.0-insider (Universal) Commit: Date: 2022-07-26T05:17:37.262Z Electron: 18.3.5 Chromium: 100.0.4896.160 16.13.2 V8: 10.0.139.17-electron.0 OS: Darwin arm64 21.6.0 Web Version: 1.70.0-insider Commit: Date: 2022-07-26T05:17:04.193Z Browser: Mozilla/5.0 (Macintosh; Intel Mac OS X ) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.5060.114 Safari/537.36
This action should be disabled in since we cannot access the local filesystem from the browser.
I'm still able to run the command from insiders vscode dev in Firefox. My Desktop Insiders then opens the repo using remote repositories but on the main branch instead of the branch I was working on. I'm not sure if this is the expected behaviour
I verified that this now works as expected https://user-
Change:
return { mode, object, size: parseInt(size) }; } <del> async lstree(treeish: string, path: string): Promise<LsTreeElement[]> { const { stdout } = await this.exec(['ls-tree', '-l', treeish, '--', sanitizePath(path)]); </del> <ins> async lstree(treeish: string, path?: string): Promise<LsTreeElement[]> { const args = ['ls-tree', '-l', treeish]; if (path) { args.push('--', sanitizePath(path)); } const { stdout } = await this.exec(args); </ins> return parseLsTree(stdout); }

Discussion:
Verification steps: Open a folder/workspace that contains a git repository Modify an existing file, and save it Add a new file, add some contents to it, and save it Invoke the "Git: Stash (Include Untracked)" command, and create a new stash Invoke the "Git: View Stash", and pick the stash that you have created Confirm that all files from the stash have the correct content
Change:
} }); <del> const mtw: MainThreadWorkspace = instantiationService.createInstance(<any>MainThreadWorkspace, SingleProxyRPCProtocol({ $initializeWorkspace: () => { } })); </del> <ins> const mtw = instantiationService.createInstance(MainThreadWorkspace, SingleProxyRPCProtocol({ $initializeWorkspace: () => { } })); </ins> return mtw.$startFileSearch('', null, 'exclude/**', 10, new CancellationTokenSource().token); }); });

Discussion:
Due to an oversight, does not enforce arguments or its return type. Fixing this exposes around 80 typings errors in our codebase that should be addressed To fix this issue in your code: , comment out the . (Do not check in this change. I will check in the change to the signature once all error have been fixed) look at the file assigned to you and fix the type error (you may need to restart the compile since we are changing such a core type) [x] — [x] — [x] — [x] — [x] — [x] — [x] — [ ] — [ ] — [ ] — [ ] — [x] — [x] — [x] — [x] — [x] — [x] — [ ] — [x] —
Change:
this.firstOutput = outputElement; } <ins> public get cellElement() { return this.cell; } </ins> public getFirstOuputElement() { return this.firstOutput; }

Discussion:
Inconsistent repro, not sure what triggers it yet. <img width="301" alt="image" src=""
this is caused by the first one or two lines of output to be in one output item and the rest in another. In the case above: While the second output keeps streaming in, it is supposed to be replaced each time, but we were looking in the wrong element for the previous output to be replaced. I don't know why the outputs are split like this and is the first time I've ever noticed it happening.
Another progress with simple ASCII output (previous sample was HTML) (install using )
Some other samples, that seems to be flaky Code
verification steps: run the example that Don provided in a notebook cell only one progress bar should appear and refresh
Change:
this._register(this.registerSwitchProfileAction()); this.registerOpenProfileSubMenu(); <ins> this.registerNewWindowWithProfileAction(); </ins> this.registerProfilesActions(); this._register(this.userDataProfilesService.onDidChangeProfiles(() => this.registerProfilesActions()));

Discussion:
<!-- Do Not Delete This! featurerequesttemplate --<!-- Please read our Rules of Conduct: --<!-- Please search existing issues to avoid creating duplicates. --VSCode Version 1.91.0 introduces a new "New Window with Profile menu item". I see it's not currently available in the command palette, like the "New Window" command. <img width="603" alt="image" src=""It would be nice to have this available in the command palette.
Change:
const minimapSide = minimapOpts.side; const themeColor = theme.getColor(editorOverviewRulerBackground); const defaultBackground = TokenizationRegistry.getDefaultBackground(); <del> let backgroundColor: Color | null = null; if (themeColor !== undefined) { backgroundColor = themeColor; } else if (minimapEnabled) { backgroundColor = defaultBackground; } if (backgroundColor === null || minimapSide === 'left') { this.backgroundColor = null; </del> <ins> if (themeColor) { this.backgroundColor = themeColor; } else if (minimapEnabled && minimapSide === 'right') { this.backgroundColor = defaultBackground; </ins> } else { <del> this.backgroundColor = Color.Format.CSS.formatHex(backgroundColor); </del> <ins> this.backgroundColor = null; </ins> } const layoutInfo = options.get(EditorOption.layoutInfo);

Discussion:
Ruler background is set to black with 50% transparency, but vscode shows solid black! ! ! Description for editorOverviewRuler.background also says: , but vscode use this background if minimap is enabled or not!
The color description is out of date. We changed the behavior of via so we now always respect . However, it never supported transparency, so we could add support for that.
Change:
const { cell, match } = this._findModel.getCurrentMatch(); this._progressBar.infinite().show(); <ins> const replacePattern = this.replacePattern; const replaceString = replacePattern.buildReplaceString(match.matches, this._state.preserveCase); </ins> const viewModel = this._notebookEditor._getViewModel(); <del> viewModel.replaceOne(cell, match.range, this.replaceValue).then(() => { </del> <ins> viewModel.replaceOne(cell, match.range, replaceString).then(() => { </ins> this._progressBar.stop(); }); }

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. --In Jupyter Notebooks, finding witrh regex works but replacing with capturing groups doesn't. I'd like if it does. I tried as in the usual editor, but the replacement treats as literal. I had to work around by copying the code section to the usual editor, and then find and replace. This seems like an inconsistent UX, and personally quite inconvinient.
Should I have opened this at ? If so, please close this so I can move on.
Thanks again for the help, it makes the find experience in notebook closer to the normal text editor one.
did you create a test plan item for this? I just the verification needed to it.
Change:
get onDidChangeSelection(): Event<ITreeEvent<T>> { return Event.map(this.tree.onDidChangeSelection, asTreeEvent); } get onDidOpen(): Event<ITreeEvent<T>> { return Event.map(this.tree.onDidOpen, asTreeEvent); } <ins> get onKeyDown(): Event<KeyboardEvent> { return this.tree.onKeyDown; } </ins> get onMouseClick(): Event<ITreeMouseEvent<T>> { return Event.map(this.tree.onMouseClick, asTreeMouseEvent); } get onMouseDblClick(): Event<ITreeMouseEvent<T>> { return Event.map(this.tree.onMouseDblClick, asTreeMouseEvent); } get onContextMenu(): Event<ITreeContextMenuEvent<T>> { return Event.map(this.tree.onContextMenu, asTreeContextMenuEvent); }

Discussion:
Issue Type: <bBug</bVS Code version: Code - Insiders 1.32.0-insider (, 2019-02-27T21:19:19.351Z) OS version: Windows_NT x64 10.0.
(Experimental duplicate detection) Thanks for submitting this issue. Please also check if it is already covered by an existing one, like: <!-- score: 0.572 --- <!-- score: 0.463 --- <!-- score: 0.453 --<!-- potentialduplicatescomment --
To verify make sure that windows and linux enter collapses / expands folders mac cmd + down collapses / expands folders
Change:
"tas-client-umd": "0.1.6", "vscode-oniguruma": "1.6.1", "vscode-textmate": "7.0.1", <del> "xterm": "4.19.0-beta.56", </del> <ins> "xterm": "4.19.0-beta.58", </ins> "xterm-addon-search": "0.9.0-beta.39", "xterm-addon-unicode11": "0.4.0-beta.3", <del> "xterm-addon-webgl": "0.12.0-beta.36" </del> <ins> "xterm-addon-webgl": "0.12.0-beta.37" </ins> } }

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 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: Version: 1.67.2 OS Version: macOS 12.4 My project uses unicode box characters to render scrollbars in the terminal. They don't render as expected in the vscode terminal. Here's the scrollbars in the VSCode terminal: https://user- Here's how the scrollbars look in iTerm on MacOS (and other terminal emulators): https://user- It looks as though these box characters render with the wrong color. The border around the window above is also rendered with the same box characters, and produces a darker color in VSCode. Steps to Reproduce: I've isolated a string which demonstrates the issue (in Python) This produces the following in iTerm: <img width="588" alt="Screenshot 2022-05-31 at 09 12 06" src="https://user-"And in VSCode: <img width="588" alt="Screenshot 2022-05-31 at 09 15 26" src="https://user-"
Another issue caused by 1: ! 5: !
We should also exclude box drawing characters from the setting, anything decorative.
Upstream
After fix: ! Marking as verified.
You guys are awesome.
Change:
} public run(terminal?: TerminalEntry): TPromise<any> { <del> const terminalInstance = terminal ? this.terminalService.getInstanceFromId(parseInt(terminal.getLabel().split(':')[0], 10)) : this.terminalService.getActiveInstance(); </del> <ins> const terminalInstance = terminal ? this.terminalService.getInstanceFromIndex(parseInt(terminal.getLabel().split(':')[0], 10) - 1) : this.terminalService.getActiveInstance(); </ins> if (!terminalInstance) { return TPromise.as(void 0); }

Discussion:
testing Version 1.15.0-insider Commit Date 2017-08-01T05:10:12.703Z Shell 1.6.6 Renderer 56.0.2924.87 Node 7.4.0 Architecture x64 Linux Testing "Rename some terminals through the gear icon on the right." Start VS Code Open a new terminal with ctrl+backtick Press , then type in Click on the gear, you can rename Delete the terminal Open a new terminal with ctrl+backtick Press , type in Click on the gear Result: Can no longer rename.
Change:
return false; } <ins> const alternateAction = e.event.altKey; </ins> switch (getTestingConfiguration(this.configurationService, TestingConfigKeys.DefaultGutterClickAction)) { case DefaultGutterClickAction.ContextMenu: this.showContextMenu(e); break; case DefaultGutterClickAction.Debug: <del> this.defaultDebug(); </del> <ins> (alternateAction ? this.defaultRun() : this.defaultDebug()); </ins> break; case DefaultGutterClickAction.Run: default: <del> this.defaultRun(); </del> <ins> (alternateAction ? this.defaultDebug() : this.defaultRun()); </ins> break; }

Discussion:
What we have: If we want to run a test in debug mode, we have to right click on the following green tick button: ! then click on . What I would like: Pressing on the same green tick button could run the test in debug mode too. Thanks a lot!
This can be changed in configuration to debug when you click it: !
/cc
I this using the key, to match alternate behavior in other areas of the UI (and general semantics)
Love it, would be cool if the icon could change when I hold alt and hover, but I'm not sure we can do that with gutter decorations. I would never find this though, maybe the hover text could say something about alt+click?
We could add a listener for the "alt" key and change the icons in decorations when pressed.
Change:
} } <del> const enum ChatElementSelectors { ResponseEditor = '.chatMessageContent textarea', ResponseMessage = '.chatMessageContent', } </del>

Discussion:
Note that both of these scenarios used to work. In the terminal inine chat, run a command like which yields just a chat message response. Try to tab to it. one cannot Run a command like which yields a code block response. Try to use to go from the input box to a code block response and vice versa. one cannot
Note that the keybindings are important because it's annoying as a SR /keyboard only user to have to tab through a bunch of things to reach the response.
This works for me, I do the following with success cmd+i, paste , press Enter wait for the response press tab repeatedly and reach the response
the tabbing part works for me in today's insider's
I'm able to spam Ctrl+Up on Windows to focus between the inputbox and the chat response, but I'm not able to spam Ctrl+Down to do the same. I'm unable to use either shortcut to focus from the inputbox directly into a code block within the chat response. Let me know if the behaviour is as expected or if there's some other steps I can follow.
I haven't tried windows yet. This won't directly focus the code editor, just the response.
this works on mac, could you pls try on windows?
The behavior seems wrong now and is quite disorienting: Input: ctrl+up will focus the response list ctrl+down will focus the response list Response list: ctrl+up does nothing ctrl+down does nothing Response code block: ctrl+up focuses the input ctrl+down focuses the response list I would expect: Input: ctrl+up does nothing ctrl+down will focus the response code block Response list: ctrl+up focuses the input Not sure? Response code block: ctrl+up focuses the input ctrl+down focuses the next code block, otherwise not sure
This issue was about cmdCtrl+up/down going between the response list and the input. This is unexpected, but unlikely to be attempted by the user IMO. Input: ctrlCmd+up will focus the response list This works on mac. Not sure why it doesn't on windows. Response list: ctrlCmd+up does nothing I didn't implement this yet, but can in April. Response code block: ctrl+up focuses the input ctrl+down focuses the response list
verified that this does work. I'm making a new issue about focusing the code block(s) and the bug with in the input focusing the list