jiebi/CodeConvo huggingface dataset:
Change:
'</head>', `<body class="${scrollBeyondLastLine ? 'scrollBeyondLastLine' : ''}">` ).join('n'); <del> const body = this._renderer.render(this.getDocumentContentForPreview(document)); </del> <ins> const previewFrontMatter = vscode.workspace.getConfiguration('markdown')['previewFrontMatter']; const text = document.getText(); const contents = previewFrontMatter === 'hide' ? text.replace(FrontMatterRegex, '') : text; const body = this.engine.render(contents); </ins> const tail = [ '</body>',

Discussion:
It's very hard to navigate a large markdown file, such as our release notes. Outline information would be very helpful, let's do this!
See
Change:
/** The chat response contains multiple code blocks */ export const responseContainsMultipleCodeBlocks = new RawContextKey<boolean>(TerminalChatContextKeyStrings.ChatResponseContainsMultipleCodeBlocks, false, localize('chatResponseContainsMultipleCodeBlocksContextKey', "Whether the chat response contains multiple code blocks.")); <ins> /** A chat agent exists for the terminal location */ export const hasChatAgent = new RawContextKey<boolean>(TerminalChatContextKeyStrings.ChatAgentRegistered, false, localize('chatAgentRegisteredContextKey', "Whether a chat agent is registered for the terminal location.")); </ins> }

Discussion:
The context key used in terminal and notebook chat which is wrong because it signals that there is a chat participant for the editor location and it doesn't know anything about other locations.
It's now removed from the notebook side.
Change:
this._register(applyObservableDecorations(this.editor, this.decorations)); <ins> this.htmlElements.gutterDiv.style.width = '5px'; this._register( new EditorGutter(this.editor, this.htmlElements.gutterDiv, { getIntersectingGutterItems: (range, reader) => [], createView: (item, target) => { throw new BugIndicatingError(); }, }) ); </ins> this._register(autorun('update remainingConflicts label', reader => { const model = this.model.read(reader);

Discussion:
Note the shadow clipping on the left: <img width="256" alt="CleanShot 2022-07-25 at 09 57 06 src="https://user-"
Change:
"Import external module.": { "prefix": "import statement", "body": [ <del> "import ${1:name} = require('$0');" </del> <ins> "import { $0 } from "${1:module}";" </ins> ], "description": "Import external module." },

Discussion:
a .ts file tab to activate the "import statement" snippet Expected and actual: completes to a .tsx file (TypeScript + JSX) tab to activate the "import statement" snippet Actual: completes to Expected: completes to Is there any reason why the snippet is inconsistent between .ts and .tsx files?
Yes this is unintentional. I've marked this as help wanted in case anyone want to take a look. Here are the relevant snippet files:
Thanks! See I was also thinking it would be useful to add this to .js and .jsx extensions. What do you think?
Thanks for the PR! The change should be in the next insiders build Yes I think adding the same for js/jsx also make sense. Did you want to submit another PR that copies these snippets over to js/jsx?
Change:
position: absolute; pointer-events: none; z-index: 1; <del> padding: 2px 4px 3px 4px; </del> <ins> padding: 2px 6px 3px 6px; </ins> box-sizing: border-box; width: 100%; overflow: hidden;

Discussion:
Looking at ways to make VS Code feel ever so slightly more approachable. A subtle 2px border radius on our common input components could be one way to make the UI feel more inviting and less harsh: <img width="361" alt="CleanShot 2022-04-08 at 14 48 52 src="https://user-"<img width="522" alt="CleanShot 2022-04-08 at 14 55 52 src="https://user-"<img width="494" alt="CleanShot 2022-04-08 at 14 58 01 src="https://user-"<img width="437" alt="CleanShot 2022-04-08 at 14 49 46 src="https://user-"<img width="500" alt="CleanShot 2022-04-08 at 15 01 55 src="https://user-"! FWIW, we already use a border radius on our icon buttons: <img width="300" alt="CleanShot 2022-04-08 at 15 03 36 src="https://user-"cc
I like this idea for buttons. I am not so sure about input/combo boxes.
I'm a +1 on this one, I think the inputs might need a bit of spacing from the side to feel more natural. We should also make sure that our labels are distinguishable as they start looking similar. Maybe we update the labels to be more pill-like?
As in padding L/R? I think they are indeed a bit different from our dropdowns if memory serves. Good call on the labels/tags.
Border-radius on buttons was merged but inputs is still under discussion so I'll keep this one open.
Good job
Change:
for (const folder of treeInput) { if (tree.hasNode(folder) && !tree.isCollapsed(folder)) { for (const [, child] of folder.children.entries()) { <del> if (tree.hasNode(child) && !tree.isCollapsed(child)) { </del> <ins> if (tree.hasNode(child) && tree.isCollapsible(child) && !tree.isCollapsed(child)) { </ins> return true; } }

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: --<!-- Use Help Report Issue to prefill these. --- VSCode Version: 1.48.0 OS Version: Ubuntu 18.04 Steps to Reproduce: some folders into a workplace a folder (folder A) that contains only 1 file into the same workplace all folders "Collapse Folders In Explorer" button the result The interesting thing is: if you collapse the folder A, the "Collapse Folders In Explorer" button works normally again This is an animation to demonstrate that: ! <!-- Launch with to check. --Does this issue occur when all extensions are disabled?: Yes
Works fine for me. Thanks for filling this issue. Can you reproduce using Visual Studio Code Insiders Also if you F1 developer tools console do you see some errors? fyi
I tried with Insider version, the result is the same, the bug still happens. And when I open the console log, there is nothing. I guess the logic in code is incorrect, so it doesn't throw any error. Please check this gif below (for Insider version): ! This was captured in my MacBook at home, so this bug happened in both Ubuntu 18.04 and Mac OS 10.15.6
I can easily reproduce with a workspace containing just two folders: rootfolder 1 rootfolder 2 I'll create a PR with a fix.
Change:
)]); }); test('snippet completions - simple', function () { const provider = new SnippetCompletionProvider(modeService, snippetService);

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: --<!-- Use Help Report Issue to prefill these. --Version: 1.49.0-insider Commit: Date: 2020-08-17T17:11:16.078Z (1 day ago) Electron: 9.2.0 Chrome: 83.0.4103.122 12.14.1 V8: 8.3.110.13-electron.0 OS: Darwin x64 19.6.0 Steps to Reproduce: Add the following python snippet: or PowerShell snippet: : which will cause auto-closing pair... (at this point you have where is the cursor) add a or and hit TAB or ENTER on the intellisense item NOTE THE TRAILING . Snippets and auto-closing pairs should play nice together so that the whole experience generates valid code. <!-- Launch with to check. --Does this issue occur when all extensions are disabled?: Yes
Here's a javascript example for array destructuring: which gets you: when you type:
better example! A javascript example for : which gets you: when you type:
for verification, this: should get you: on insert mode replace (default is SHIFT + ENTER)
I'll note that it works fine in non-json files, but is reversed in a json file (as are the insert/replace hints in the suggestion box). W10
that seems like a separate issue not related to this fix. Can you open a new issue?
Yes, I'll open another issue.
Change:
} public notifyFindWidgetFocusChanged(isFocused: boolean): void { <del> // In order to support escape to close the find widget when the terminal // is focused terminalFocus needs to be true when either the terminal or // the find widget are focused. this._terminalFocusContextKey.set(isFocused || document.activeElement === this._xterm.textarea); </del> <ins> const terminalFocused = !isFocused && (document.activeElement === this._xterm.textarea || document.activeElement === this._xterm.element); this._terminalFocusContextKey.set(terminalFocused); </ins> } public dispose(): void {

Discussion:
<!-- Do you have a question? Please ask it on --<!-- Use Help Report Issues to prefill these. --- VSCode Version: 1.14.1 OS Version: Windows 10 Steps to Reproduce: some text on terminal and click ctrl+f and then ctrl+v Search input is focused but after clicking ctrl+v the text is pasted in terminal itself. <!-- Launch with to check. --Reproduces without extensions: Yes
Also on macOS when I focus in the search input and click command+a the text in terminal is selected, not the input content. Pasting works fine though. The problem seems to be that keyboard shortcuts don't always work in the context of the search input when it's focused...
The cmd+a thing is fixed in I believe.
This happens because is assigned the Ctrl+V shortcut and it hijacks the input from the . do you think changing the to Ctrl+Shift+V would be ok? In this case, pressing Ctrl+V in the find widget works as expected.
It's ctrl+v as I've tried to stay in line with OS standards and that's what uses. This should be able to get fixed by resolving the conflict. /cc
It also happens when you right click the search box, at least on Windows - see details .
Change:
box-sizing: border-box; border-width: 1px; border-color: transparent; <ins> cursor: text; } #container div.output .scrollable a { cursor: pointer; </ins> } #container div.output .scrollable.more-above { box-shadow: var(--vscode-scrollbar-shadow) 0 6px 6px -6px inset

Discussion:
Testing Have the following notebook cell Notice that the output is the text editor. Cursor should be an editor cursor, and not the default cursor.
Thanks for the fix. Works nicely -verified
Change:
} viewUpdateShowOutputs(initRendering: boolean): void { <ins> if (this._hasStaleOutputs) { this._hasStaleOutputs = false; this._outputEntries.forEach(entry => { entry.element.rerender(); }); } </ins> for (let index = 0; index < this._outputEntries.length; index++) { const viewHandler = this._outputEntries[index]; const outputEntry = viewHandler.element;

Discussion:
Type: <bBug</bWhen a notebook updates text in a collapsed cells unexpected things happen. The Jupyter Notebook renders the output while still showing that the output is collapsed. Node.JS Notebooks and httpBook show empty cells and will only show the output again when expanded, collapsed, expanded again In the the result looks like this: ! Issue created to hopefully follow up Extension version: 2023.9. VS Code version: Code 1.83.1 (Universal) (, 2023-10-10T23:46:55.789Z) OS version: Darwin arm64 23.0.0 Modes: <details<summarySystem Info</summary </details<!-- generated by issue reporter --
Change:
} ] <del> } </del>  No newline at end of file <ins> } </ins>

Discussion:
One of the first things I noticed when switching from Sublime Text 3 to VSCode for PowerShell code is VSCode doesn't change the syntax highlighting color for methods. In Sublime Text 3 and PowerShell IDE, methods use a separate color. VSCode method color is the same color as variables. Below, both editors are using the same TextMate color scheme: Sublime Text 3: ! VSCode: ! I am hoping someone with more experience in VSCode might have a temporary workaround in until there's an official fix for this. Wishful thinking.. but something like: below: VSCode Version: 1.36.1 (user setup) OS Version: (Windows 10 64bit) Steps to Reproduce: Open PowerShell code that has PowerShell methods
You can use the "Developer: Inspect TM scope" to get the correct scope for your setting: <img width="388" alt="textmatescope" src="https://user-"You could also make your own theme that does colors the way you want.
We try to keep VS Code lean and we think the functionality you're asking for is great for a VS Code extension. Maybe you can already find one that suits you in the . Just in case, in a few simple steps you can get started . See also our guidelines. Happy Coding!
I'll fix it for the default themes.
Thank you for the tip to use "Developer: Inspect TM scope". This was extremely helpful.
Change:
"@vscode/iconv-lite-umd": "0.7.0", "@vscode/tree-sitter-wasm": "^0.0.1", "@vscode/vscode-languagedetection": "1.0.21", <del> "@xterm/addon-clipboard": "0.2.0-beta.34", "@xterm/addon-image": "0.9.0-beta.51", "@xterm/addon-search": "0.16.0-beta.51", "@xterm/addon-serialize": "0.14.0-beta.51", "@xterm/addon-unicode11": "0.9.0-beta.51", "@xterm/addon-webgl": "0.19.0-beta.51", "@xterm/xterm": "5.6.0-beta.51", </del> <ins> "@xterm/addon-clipboard": "0.2.0-beta.35", "@xterm/addon-image": "0.9.0-beta.52", "@xterm/addon-search": "0.16.0-beta.52", "@xterm/addon-serialize": "0.14.0-beta.52", "@xterm/addon-unicode11": "0.9.0-beta.52", "@xterm/addon-webgl": "0.19.0-beta.52", "@xterm/xterm": "5.6.0-beta.52", </ins> "jschardet": "3.1.3", "tas-client-umd": "0.2.0", "vscode-oniguruma": "1.7.0",

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.92.0, commit OS Version: Windows 10 Enterprise, 22H2 build .4651 Error message: Steps to Reproduce: a new VS code window ! a new file and drag out to make another window ! "Create New Terminal in Editor Area" on that new window ! error will show up ! "Try Again" will reload the terminal, but it doesn't accept inputs, cannot type anything there ! Creating terminal in main window and drag it to side windows does work, but I have to do that with every window reload. Yesterday I could still use terminals in side windows like normal, this only occured after updating to 1.92 July update Thanks for reading :)
! Facing same issue
coming from xterm here I think !
I have the same problem on Fedora 40 Sway. After I click , it will create a non-interoperable terminal.
I'm also having this issue, I thought it might be a problem with WSL but it started for me after updating to VSCode 1.92.0 !
QUICK FIX!!! Just create a new In-window terminal and drag it to the new terminal window.
Will this be hotfixed or should we downgrade?
sorry this won't get a patch release as there's a few workarounds. To downgrade in the meantime you can grab 1.91.1 here , you'll also want to set
Hi. Didn't do the trick for me. Other hack: Ctrl+J (new term in main window) Ctrl + Shift + P Terminal: Move Into New Window Drag & Drop into wanted window. Cumbersom many many times a day.
Change:
// Watch Electron URLs and forward them to the UrlService const args = this.environmentService.args; const urls = args['open-url'] ? args._urls : []; <del> const urlListener = new ElectronURLListener(urls || [], urlService, windowsMainService); </del> <ins> const urlListener = new ElectronURLListener(urls || [], urlService, windowsMainService, this.environmentService); </ins> this._register(urlListener); // Open our first window

Discussion:
Issue Type: <bBug</bcode-oss on windows into the browser and click "Open" in resulting dialog ! Works on Mac still, haven't tried Linux VS Code version: Code - OSS Dev 1.41.0 (Commit unknown, Date unknown) OS version: Windows_NT x64 10.0. <!-- generated by issue reporter --
Hi, I have tracked this down to ! It seems that when you run Code - , the command is missing: ! By hardcoding my vscode folder location in: ! The app is able to open: ! Is there a command/utility function that will give this location?
Bingo! You should add this to the array only if not .
Verification: This is a Windows only issue.
Change:
export interface InputBoxOptions { /** <ins> * An optional string that represents the tile of the input box. */ title?: string; /** </ins> * The value to prefill in the input box. */ value?: string;

Discussion:
Currently, can only be set when going through the more complex API. It would be great if the title could be set via when using the simpler .
proposal: for quickpick or Input: This basically meshes with UI in: and in the class itself here: cc
what extensions have to do now in order to get the base functionality + a title:
In API sync there was no pushback or additional comments. I have moved to implementation ^
I will reopen this for API finalization next week.
This was covered on so there's nothing else to do here besides wait for the next release of vscode types :)
Change:
import { CONTEXT_KEYBINDINGS_EDITOR } from 'vs/workbench/contrib/preferences/common/preferences'; import { DeprecatedExtensionsChecker } from 'vs/workbench/contrib/extensions/browser/deprecatedExtensionsChecker'; import { ProgressLocation } from 'vs/platform/progress/common/progress'; <ins> import { IUriIdentityService } from 'vs/platform/uriIdentity/common/uriIdentity'; </ins> // Singletons registerSingleton(IExtensionsWorkbenchService, ExtensionsWorkbenchService, InstantiationType.Eager /* Auto updates extensions */);

Discussion:
For reference: I have found some peculiar things with the implementation, which I am not sure is by design or not. But here comes one: When working with remotes, such as remote ssh, I can see an extension in the "local" windows (greyed out) and in the remote window (not greyed out) in case it prefers to run on the remote extension host. But when I right-click on the local extension and select "Apply Extension to all Profiles" it does nothing. If I click it in the remote extension window and do the same, it gets the check mark. (But still not in the local window). As I suspect the intention behind "Apply Extension to all Profiles" is to actually apply it to all profiles, I should be able to right click and select it, so it gets selected, in all views under "Extensions". ( was also something I found needed.)
Thanks for the feedback. First request is a valid request. Can you please give more details about the second request? I would suggest to extract it into a new issue and provide exact steps to reproduce the issue.
I broke up the second item to a new issue: Let me know if still is not clear enough, and possibly which part.
is this an easy fix? I think it will clear up some confusion. I am surprised more people have not noticed and upvoted this, as local team members found this by themselves. It is causing quite a bit of confusion UX wise.
To verify: Open a remote window (WSL or Dev Container or SSH) Have an extension installed locally and remotely In Local Installed Extensions Section, Right click on the extension and apply it to all profiles. Verify that it also applies for the extension is remote installed extensions section. Verify vice-versa
Change:
private readPackageJsonInfo(folder: Uri, tree: JsonNode | undefined) { const engine = tree && findNodeAtLocation(tree, ['engines', 'vscode']); <ins> const parsedEngineVersion = engine?.type === 'string' ? normalizeVersion(parseVersion(engine.value)) : null; </ins> const repo = tree && findNodeAtLocation(tree, ['repository', 'url']); const uri = repo && parseUri(repo.value); const activationEvents = tree && parseImplicitActivationEvents(tree);

Discussion:
When developing extension the warning in : is wrong because it doesn't check if the extension is supported on older VSCode versions:
Change:
) { super(session, editor, widget, contextKeyService, storageService, bulkEditService, editorWorkerService, instaService); <del> this._diffZone = instaService.createInstance(InlineChatLivePreviewWidget, editor, session); this._previewZone = instaService.createInstance(InlineChatFileCreatePreviewWidget, editor); </del> <ins> this._diffZone = new Lazy(() => instaService.createInstance(InlineChatLivePreviewWidget, editor, session)); this._previewZone = new Lazy(() => instaService.createInstance(InlineChatFileCreatePreviewWidget, editor)); </ins> } override dispose(): void { <del> this._diffZone.hide(); this._diffZone.dispose(); this._previewZone.hide(); this._previewZone.dispose(); </del> <ins> this._diffZone.rawValue?.hide(); this._diffZone.rawValue?.dispose(); this._previewZone.rawValue?.hide(); this._previewZone.rawValue?.dispose(); </ins> super.dispose(); }

Discussion:
Steps to Reproduce: Copilot Chat the file in VS Code +i It takes like 2s for the UI to show up. One time when I was doing a lot with VS Code it took so long (like 10s) that I thought I didn't have the extension installed. Not sure if this is on the UI side or the extension side, but even still, I think the UI should be instant (even if it's perceived fastness) since all I'm seeing is an input box that I will type in.
I have done a bunch of tricks, most importantly to showing the UI while asking the extension to create a session. Also the UI is more lazily created which helps. However, once there are changes the bottleneck is setting up the embedded diff editor. There isn't much I can do about it <img width="726" alt="Screenshot 2023-06-15 at 16 10 35" src=""
Change:
super(anchor, messages, isComplete); } <del> public override filter(anchor: HoverAnchor): HoverResult | null { </del> <ins> public override filter(anchor: HoverAnchor): HoverResult { </ins> return this.original.filter(anchor); } }

Discussion:
I was trying to copying a new setting in the problems hover and it was extremely painful to do so: https://user-
This is editor hover and hence assigning to
FWIW this works fine for me on Windows.
Change:
}); }); <ins> test('Skip preferred search experiment when user defines sort order', () => { const searchText = 'search-me'; const realResults = [ fileBasedRecommendationA, workspaceRecommendationA, otherRecommendationA, workspaceRecommendationB ]; const queryTarget = <SinonStub>instantiationService.stubPromise(IExtensionGalleryService, 'query', aPage(...realResults)); const experimentTarget = <SinonStub>instantiationService.stubPromise(IExperimentService, 'getExperimentsByType', [{ id: 'someId', enabled: true, state: ExperimentState.Run, action: { type: ExperimentActionType.ExtensionSearchResults, properties: { searchText: 'search-me', preferredResults: [ workspaceRecommendationA.identifier.id, 'something-that-wasnt-in-first-page', workspaceRecommendationB.identifier.id ] } } }]); testableView.dispose(); testableView = instantiationService.createInstance(ExtensionsListView, {}); return testableView.show('search-me @sort:installs').then(result => { const options: IQueryOptions = queryTarget.args[0][0]; assert.ok(experimentTarget.calledOnce); assert.ok(queryTarget.calledOnce); assert.equal(options.text, searchText); assert.equal(result.length, realResults.length); for (let i = 0; i < realResults.length; i++) { assert.equal(result.get(i).id, realResults[i].identifier.id); } }); }); </ins> function aLocalExtension(name: string = 'someext', manifest: any = {}, properties: any = {}, type: LocalExtensionType = LocalExtensionType.User): ILocalExtension { const localExtension = <ILocalExtension>Object.create({ manifest: {} }); assign(localExtension, { type, manifest: {}, location: URI.file(`pub.${name}`) }, properties);

Discussion:
Issue Type: <bBug</bSee below screenshot, it is not sorted by install count: ! VS Code version: Code 1.28.0 (, 2018-10-05T14:58:53.203Z) 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.5 --- <!-- score: 0.458 --- <!-- score: 0.446 --<!-- potentialduplicatescomment --