jiebi/CodeConvo huggingface dataset:
Change:
<!-- 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.71.0 (user setup) OS Version: Windows_NT x64 10.0. Git Version: 2.30.2 (Windows) Steps to Reproduce: a new directory a new Git repository a new file and append some text on the first lines this file to the staging the line with text An OS native dialog box error pops up with the title of this issue as text. In the console output for Git: I have had this problem for a long time, 2 years I would say. I thought someone would have reported it but it seems not.
I'm having a similar issue on macOS 12.6 (21G115). If you have deleted lines at the top of a file and click the little arrow to undo the change, the error pops up. Notably, it still completes the undo. <img width="396" alt="image" src="https://user-"
apologies for not getting back to you on this. I used the repro steps above but I was unable to reproduce the problem with the latest VS Code Insiders (1.75) release. Could you please do me a favour and see if you are still able to reproduce the issue? If so, could you please share a recording using so that I can further investigate the issue? Thanks!
Issue is still present in the latest insider release on macOS. ! VSCode info: Version: 1.75.0-insider Commit: Date: 2022-12-19T05:35:41.089Z (10 hrs ago) Electron: 19.1.8 Chromium: 102.0.5005.167 16.14.2 V8: 10.2.154.15-electron.0 OS: Darwin arm64 21.6.0 Sandboxed: Yes

Discussion:
await this._stageChanges(textEditor, [changes[index]]); <del> const firstStagedLine = changes[index].modifiedStartLineNumber - 1; </del> <ins> const firstStagedLine = changes[index].modifiedStartLineNumber; </ins> textEditor.selections = [new Selection(firstStagedLine, 0, firstStagedLine, 0)]; }

await this._revertChanges(textEditor, [...changes.slice(0, index), ...changes.slice(index + 1)]); <del> const firstStagedLine = changes[index].modifiedStartLineNumber - 1; </del> <ins> const firstStagedLine = changes[index].modifiedStartLineNumber; </ins> textEditor.selections = [new Selection(firstStagedLine, 0, firstStagedLine, 0)]; }
Change:
The image paste handler introduced days ago overrides the notebook markdown paste handler The markdown workspace selector is and the notebook markdown one is , both matches the markdown cell in a notebook. The former is faster than the latter often times so most of the time, I got the workspace link instead of the notebook attachment link. Catch here is it's not guaranteed which one will take effect as it's all perf based.

Discussion:
import * as path from 'path'; import * as vscode from 'vscode'; import { Utils } from 'vscode-uri'; <ins> import { Schemes } from '../util/schemes'; </ins> import { createUriListSnippet, tryGetUriListSnippet } from './dropIntoEditor'; const supportedImageMimes = new Set([

return; } <ins> if (document.uri.scheme === Schemes.notebookCell) { return; } </ins> for (const imageMime of supportedImageMimes) { const file = dataTransfer.get(imageMime)?.asFile(); if (file) {
Change:
Type: <bBug</bIn the new shell integration options for Bash and Zsh, VS Code wraps the PS1 prompt variable to support new functionality. However, when it does this, it prefixes the PREFIX environment variable to the existing PS1 when creating the new PS1 prompt. See the picture below for an example. ! For Bash, the problem is at: For Zsh, see: Steps to reproduce: either Bash or Zsh, enable the integrated terminal a value to a variable named PREFIX in the integrated terminal that the value you assigned to PREFIX is prepended to the prompt The PREFIX environment variable is commonly used across a variety of projects in the Linux world for configuring and building applications (grepping for 'PREFIX during the build process and it makes the terminal hard to use. This issue is the cause of . I can submit a pull request for this if you'd like. VS Code version: Code 1.71.0 (, 2022-09-01T07:36:10.600Z) OS version: Windows_NT x64 10.0. Modes: Sandboxed: No Remote OS version: Linux x64 5.10.102.1-microsoft-standard-WSL2 <!-- generated by issue reporter --
thanks for the investigation and yes would appreciate a PR for this
I can't remember why PREFIX is there, we should blame history before doing the fix
Looks like PREFIX was only used in the initial commit to accomplish what is currently done with _vscpromptstart(), and it was safe to do so as PREFIX was declared as a local variable. Here are the original commits of the relevant files: Zsh: Bash: The second commit to modify these files () modified the updateprompt() function and removed the local PREFIX variable, but did not remove the variable from the PS1 assignment.
For Zsh specifically, in , extra references to PREFIX were to fix a separate issue.
Nice, looks like it's safe to switch to in bash. I'm guessing it's safe in zsh too, do you agree?
<!-- AUTHORVERIFICATIONREQUEST --This bug has been fixed in the latest release of ! you can help us out by commenting if things are now working as expected. If things still don't seem right, please ensure you're on version of Insiders (today's or later - you can use in the command palette to check), and leave a comment letting us know what isn't working as expected. Happy Coding!
/verified

Discussion:
# means the user re-exported the PS1 so we should re-wrap it if [[ "$__vsc_custom_PS1" == "" || "$__vsc_custom_PS1" != "$PS1" ]]; then __vsc_original_PS1=$PS1 <del> __vsc_custom_PS1="[$(__vsc_prompt_start)]$PREFIX$__vsc_original_PS1[$(__vsc_prompt_end)]" </del> <ins> __vsc_custom_PS1="[$(__vsc_prompt_start)]$__vsc_original_PS1[$(__vsc_prompt_end)]" </ins> PS1="$__vsc_custom_PS1" fi if [[ "$__vsc_custom_PS2" == "" || "$__vsc_custom_PS2" != "$PS2" ]]; then

if [ -z "${RPROMPT-}" ]; then RPROMPT="" fi <del> if [ -z "${PREFIX-}" ]; then PREFIX="" fi </del> fi __vsc_update_prompt() { __vsc_prior_prompt="$PS1" __vsc_in_command_execution="" <del> PS1="%{$(__vsc_prompt_start)%}$PREFIX$PS1%{$(__vsc_prompt_end)%}" </del> <ins> PS1="%{$(__vsc_prompt_start)%}$PS1%{$(__vsc_prompt_end)%}" </ins> PS2="%{$(__vsc_continuation_start)%}$PS2%{$(__vsc_continuation_end)%}" if [ -n "$RPROMPT" ]; then __vsc_prior_rprompt="$RPROMPT"
Change:
<!-- 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. --Version: 1.72.0-insider (user setup) Commit: Date: 2022-09-13T05:18:15.280Z Electron: 19.0.12 Chromium: 102.0.5005.167 16.14.2 V8: 10.2.154.15-electron.0 OS: Windows_NT x64 10.0. Sandboxed: Yes Steps to Reproduce: attempting a merge, I did "git merge --abort" from the terminal in VS Code. the command completed, I had another git command to run so I started typing it, assuming focus was still in the terminal. I was surprised to see though that focus had shifted to the editor after the git merge --abort command and that instead of typing my command in the terminal, I ended up modifying the editor. I expected that focus would remain in the terminal after the git merge --abort command.
does this happen with any other git commands or only git merge --abort?
I also saw this when testing merge editor and think this is relevant only for merge editors.
I haven't done extensive testing of many git commands but git merge --abort is the only one I have seen so far that does this.
is this something that you could look into? Thanks!
likely because of the workaround for The merge editor detect the inputs (current, incoming, base) going empty and closes itself. I guess we don't tell the workbench to preserve focus then which happens somewhere
Upon inspection I now wonder if there is a way to replace editors (via ) while preserving focus?
you can pass in editor options with the replace call, can you try passing via:

Discussion:
} // all empty -> replace this editor with a normal editor for result that.editorService.replaceEditors( <del> [{ editor: input, replacement: { resource: input.result }, forceReplaceDirty: true }], </del> <ins> [{ editor: input, replacement: { resource: input.result, options: { preserveFocus: true } }, forceReplaceDirty: true }], </ins> that.group ?? that.editorGroupService.activeGroup ); }
Change:
't have a git repo open in desktop VS Code Insiders web, enter the following into the address bar and hit enter :bug: desktop VS Code Insiders reports that git is not installed and fails to clone the url I believe the reason this happens is that as soon as the git extension calls , the API impl immediately tries to flush its buffer of URIs to be handled. Because we are now registering the uri handler early in the extension activation method, the git extension hasn't yet run discovery of the git executable and registered commands appropriately, so the handler gets called before the git extension is ready to handle the clone. The fix is to unconditionally register the uri handler as intended in , but to do it only after we've already attempted to locate git and register commands

Discussion:
const outputChannelLogger = new OutputChannelLogger(); disposables.push(outputChannelLogger); <del> disposables.push(new GitProtocolHandler(outputChannelLogger)); </del> const { name, version, aiKey } = require('../package.json') as { name: string; version: string; aiKey: string }; const telemetryReporter = new TelemetryReporter(name, version, aiKey); deactivateTasks.push(() => telemetryReporter.dispose());

warnAboutMissingGit(); return new GitExtensionImpl(); <ins> } finally { disposables.push(new GitProtocolHandler(outputChannelLogger)); </ins> } }
Change:
Open a text editor and settings editor side by side and resize the sash in between and notice a lot of lag: ! A lot of time spend in : !
Sadly, this is the cost of having dynamic heights. This is why dynamic height is disabled for all lists but is enabled (and actually created for) the settings editor. Will investigate and see if there's low hanging fruit.
Actually, this is the culprit: cc It broke what achieved. That statement was made sure we reused DOM nodes for this computation if they were already in the DOM tree. But that commit broke this for the Settings Editor, making recomputing heights based on wrap a lot more expensive.
Before, each frame takes 60ms: ! After, each frame takes 12ms: !

Discussion:
import { RangeMap, shift } from 'vs/base/browser/ui/list/rangeMap'; import { IRow, RowCache } from 'vs/base/browser/ui/list/rowCache'; import { IObservableValue } from 'vs/base/common/observableValue'; <ins> import { BugIndicatingError } from 'vs/base/common/errors'; </ins> interface IItem<T> { readonly id: string;

const size = item.size; <del> if (!this.setRowHeight && item.row) { const newSize = item.row.domNode.offsetHeight; item.size = newSize; </del> <ins> if (item.row) { item.row.domNode.style.height = ''; item.size = item.row.domNode.offsetHeight; </ins> item.lastDynamicHeightWidth = this.renderWidth; <del> return newSize - size; </del> <ins> return item.size - size; </ins> } const row = this.cache.alloc(item.templateId); row.domNode.style.height = ''; this.rowsContainer.appendChild(row.domNode); const renderer = this.renderers.get(item.templateId); <del> if (renderer) { renderer.renderElement(item.element, index, row.templateData, undefined); renderer.disposeElement?.(item.element, index, row.templateData, undefined); </del> <ins> if (!renderer) { throw new BugIndicatingError('Missing renderer for templateId: ' + item.templateId); </ins> } <ins> renderer.renderElement(item.element, index, row.templateData, undefined); </ins> item.size = row.domNode.offsetHeight; <ins> renderer.disposeElement?.(item.element, index, row.templateData, undefined); </ins> this.virtualDelegate.setDynamicHeight?.(item.element, item.size);
Change:
Collapse an output, it is not hidden in the webview <img width="596" alt="image" src="https://user-"
maybe ?

Discussion:
} const cell = new MarkupCell(init.cellId, init.mime, init.content, top, init.metadata); <del> cell.element.style.visibility = visible ? 'visible' : 'hidden'; </del> <ins> cell.element.style.visibility = visible ? '' : 'hidden'; </ins> this._markupCells.set(init.cellId, cell); await cell.ready;

public async ensureMarkupCell(info: webviewMessages.IMarkupCellInitialization): Promise<void> { let cell = this._markupCells.get(info.cellId); if (cell) { <del> cell.element.style.visibility = info.visible ? 'visible' : 'hidden'; </del> <ins> cell.element.style.visibility = info.visible ? '' : 'hidden'; </ins> await cell.updateContentAndRender(info.content, info.metadata); } else { cell = await this.createMarkupCell(info, info.offset, info.visible);

} public show(top: number, newContent: string | undefined, metadata: NotebookCellMetadata | undefined): void { <del> this.element.style.visibility = 'visible'; </del> <ins> this.element.style.visibility = ''; </ins> this.element.style.top = `${top}px`; if (typeof newContent === 'string' || metadata) { this.updateContentAndRender(newContent ?? this._content.value, metadata ?? this._content.metadata);

} public unhide() { <del> this.element.style.visibility = 'visible'; </del> <ins> this.element.style.visibility = ''; </ins> this.updateMarkupDimensions(); }

await outputElement.render(data.content, preloadErrors, signal); // don't hide until after this step so that the height is right <del> outputElement.element.style.visibility = data.initiallyHidden ? 'hidden' : 'visible'; </del> <ins> outputElement.element.style.visibility = data.initiallyHidden ? 'hidden' : ''; </ins> } public clearOutput(outputId: string, rendererId: string | undefined) {

return; } <del> this.element.style.visibility = 'visible'; </del> <ins> this.element.style.visibility = ''; </ins> this.element.style.top = `${top}px`; dimensionUpdater.updateHeight(outputId, outputContainer.element.offsetHeight, {

this.outputElements.get(request.outputId)?.updateScroll(request.outputOffset); if (request.forceDisplay) { <del> this.element.style.visibility = 'visible'; </del> <ins> this.element.style.visibility = ''; </ins> } } }
Change:
Type: <bBug</bin a small window, with multiple tab groups, open the keyboard shortcuts page in the left tab group. Mouse over the keyboad shortcuts view :bug: column UI shows up in the editor to the right VS Code version: Code - Insiders 1.72.0-insider (, 2022-09-22T07:20:03.786Z) OS version: WindowsNT x64 10.0. Modes: Sandboxed: Yes <details<summarySystem Info</summary </details<details<summaryExtensions (30)</summaryExtensionVersion ------ Bookmarks13.3.1 tsl-problem-matcher0.6.2 wwbd2022.1.0 vscode-eslint2.2.6 python-environment-manager1.0.4 gitlens-insiders2022.9.2205 EditorConfig0.16.4 prettier-vscode9.8.0 copilot1.46.6822 vscode-pull-request-github0.51. vscode-test-explorer2.21.1 svg1.4.20 prettify-json0.0.3 vscode-language-pack-de1.72. vscode-dotnet-runtime1.5.0 python2022.15. vscode-pylance2022.9.30 data-wrangler0.0.461 jupyter2022.9. jupyter-keymap1.0.0 jupyter-renderers1.0.9 remote-containers0.252.0 remote-ssh0.87. remote-wsl0.66.3 js-debug-nightly2022.9.717 remote-explorer0.1. test-adapter-converter0.1.6 vscode-github-issue-notebooks0.0.119 vscode-js-profile-flame1.0.4 vscode-yaml1.10.1 </details<details<summaryA/B Experiments</summary</details<!-- generated by issue reporter --
!
Is this table issue?

Discussion:
height: 100%; width: 100%; white-space: nowrap; <ins> overflow: hidden; </ins> } .monaco-table > .monaco-split-view2 {
Change:
Those who are used to having the collapse button on the far right might accidentally hit the search tree toggle. <img width="502" alt="image (2)" src="https://user-"Ideally, move this icon to the other side to prevent confusion. cc
To clarify: I think any new position will have an impact to someones muscle memory, that is probably hard to avoid. For me personally the collapse action was heavily used in search results. maybe for guidance, I also feel like we have quite exhausted the number of actions for the viewlet, maybe about time to think about introducing a "..." and move some there?
That's true, it is getting a little crowded. What else would be in the ? Might seem odd if we don't have plans for anything else in there?
For reference, the button is here for source control (outside of the ) so I wonder if people will expect it to be an actual button with an icon in search? <img width="241" alt="image" src="https://user-"
Yeah I like the idea of keeping this in sync with other views, though we probably missed out on keeping some of the buttons in sync, like the refresh button...
Should we remove the "Open Search Editor" action? it is duplicate, there is a link action also from the results: !
cc
Eh, I think you might want to open a search editor before doing a search in the sidebar too.
! I did some thinking and I think it should go here because: shouldn't go in the far left or right because people probably have muscle memory as refresh/collapse as side-most buttons. shouldn't go on either side of because the icon for that and are too similar, may cause misclicks. So, by process of elimination, it ends up where I placed it in the photo. Any opinions?
I created to move it to the place that I mentioned, but I'm open to other options in the future. Just seems that the new position should be better than what we have now, so I wanted to merge it into insiders at least.
Thanks!

Discussion:
menu: [{ id: MenuId.ViewTitle, group: 'navigation', <del> order: 3, </del> <ins> order: 2, </ins> when: ContextKeyExpr.and(ContextKeyExpr.equals('view', VIEW_ID), Constants.InTreeViewKey.toNegated()), }] });

menu: [{ id: MenuId.ViewTitle, group: 'navigation', <del> order: 3, </del> <ins> order: 2, </ins> when: ContextKeyExpr.and(ContextKeyExpr.equals('view', VIEW_ID), Constants.InTreeViewKey), }] });
Change:
Type: <bBug</bSet Editor : Hover : Sticky to false in Preferences, but then the hover remains there while mouseover, instead of disappearing out of the way like it used to. VS Code version: Code - Insiders 1.72.0-insider (, 2022-09-23T15:06:14.385Z) OS version: Darwin x64 21.6.0 Modes: Sandboxed: Yes <!-- generated by issue reporter --
maybe caused this.

Discussion:
} // The hover is currently visible <del> const isGettingCloser = (mouseEvent && this._widget.isMouseGettingCloser(mouseEvent.event.posx, mouseEvent.event.posy)); </del> <ins> const hoverIsSticky = this._editor.getOption(EditorOption.hover).sticky; const isGettingCloser = (hoverIsSticky && mouseEvent && this._widget.isMouseGettingCloser(mouseEvent.event.posx, mouseEvent.event.posy)); </ins> if (isGettingCloser) { // The mouse is getting closer to the hover, so we will keep the hover untouched // But we will kick off a hover update at the new anchor, insisting on keeping the hover visible.
Change:
For me on macOS: open a folder with 1 file right click rename to =console prints
This is interesting, the reason this is happening is because the label change doesn't trigger and open and close if it's the same URI with different casing, but our IDs are case sensitive so when we go to look up this tab to update it's label we go "hey we can't find it, it must not exist". Is there a case insensitive version of the URI that I should be using? Right now I use
Ah, canonical URIs is what I want. A bit weird that uppercase to lowercase triggers a label change, but not the other way around

Discussion:
private _generateTabId(editor: EditorInput, groupId: number) { let resourceString: string | undefined; // Properly get the resource and account for side by side editors <del> const resource = EditorResourceAccessor.getOriginalUri(editor, { supportSideBySide: SideBySideEditor.BOTH }); </del> <ins> const resource = EditorResourceAccessor.getCanonicalUri(editor, { supportSideBySide: SideBySideEditor.BOTH }); </ins> if (resource instanceof URI) { resourceString = resource.toString(); } else {
Change:
Hit Install, the button changes to "Installing" for 1sec, then goes back to "Install". Repeatedly fails. Reload showed the extension installed. <img width="1289" alt="image" src="https://user-"Version: 1.72.0-insider Commit: User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X ) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36 Edg/107.0.1387.2 Embedder: <!-- generated by web issue reporter --

Discussion:
} private filterEvent({ profileLocation, applicationScoped }: { profileLocation?: URI; applicationScoped?: boolean }): boolean { <ins> profileLocation = profileLocation ?? this.userDataProfilesService.defaultProfile.extensionsResource; </ins> return applicationScoped || this.uriIdentityService.extUri.isEqual(this.userDataProfileService.currentProfile.extensionsResource, profileLocation); }
Change:
Testing Reading the testplan item I got the impression that is a built in command to be recognised by quick fix. It does not get recognised for me. Did I misunderstand this? !
Sorry for the unclear directions. You should see the git create pr action when you run from a branch that has an upstream remote for the first time. So, for example: git checkout -b merogge/test git push quick fix should appear to push to upstream remote take that suggestion quick fix should appear to create pr
Thanks for clarifying. I just followed the steps you suggested and there is no quick fix to create a PR !
yeah can repro, looks like a regression
This flow is pretty sweet

Discussion:
export const GitSimilarOutputRegex = /most similar command iss+([^s]{3,})/; export const FreePortOutputRegex = /address already in use d.d.d.d:(dddd)|Unable to bind [^ ]*:(d+)|can't listen on port (d+)|listen EADDRINUSE [^ ]*:(d+)/; export const GitPushOutputRegex = /git push --set-upstream origin ([^s]+)/; <del> export const GitCreatePrOutputRegex = /Create a pull request for '([^s]+)' on GitHub by visiting:s+remote:s+(https:.+pull.+)/; </del> <ins> export const GitCreatePrOutputRegex = /Create a pull request for '([^s]+)' on GitHub by visiting:s*remote:s*(https:.+pull.+)/; </ins> export function gitSimilarCommand(): ITerminalQuickFixOptions { return {
Change:
Testing Open a notebook diff. Clicking on the left side of the scroll bar nicely navigates the editor viewport to the right location. Clicking on the middle and right part of the scroll bar does nothing Compare this with the Editor Diff where a click in any area navigates.
Hmm verifying as I no longer see the right hand side of the scrollbar. Which I guess is fine.

Discussion:
this._renderOverviewViewport(); })); <del> this._register(DOM.addStandardDisposableListener(this._overviewViewportDomElement.domNode, DOM.EventType.POINTER_DOWN, (e) => { </del> <ins> this._register(DOM.addStandardDisposableListener(container, DOM.EventType.POINTER_DOWN, (e) => { </ins> this.notebookEditor.delegateVerticalScrollbarPointerDown(e); })); }