jiebi/CodeConvo huggingface dataset:
Code change:
dependencies: object-keys "~0.4.0" <del> xterm-addon-canvas@0.4.0-beta.9: version "0.4.0-beta.9" resolved "https://registry.yarnpkg.com/xterm-addon-canvas/-/xterm-addon-canvas-0.4.0-beta.9.tgz#e570fa4592890f92cc86706f2bba0dd128a8641d" integrity sha512-BWRVWyUW7NY2g4BBMm3ecPQvbdyKXFgABnpmh4m0TVHqFJMNeXdNuTc94KiDbE+cvw8jtAY9NC/OIM4HcgjAIQ== </del> <ins> xterm-addon-canvas@0.4.0-beta.11: version "0.4.0-beta.11" resolved "https://registry.yarnpkg.com/xterm-addon-canvas/-/xterm-addon-canvas-0.4.0-beta.11.tgz#d627050d7e2290ae804c0ec730d5bfc5861afd78" integrity sha512-yfkx0R7wB3L+fWf1doDmEfwYIeNMVq4uXlq7sCvfPQAVA2H4eOH/s+SS1mhyy0A6DDEbM4eEQ7CroRZIsnVtMA== </ins> xterm-addon-search@0.11.0: version "0.11.0"

Related discussion:
text: Does this issue occur when all extensions are disabled?: Yes VS Code Version: OS Version: Steps to Reproduce: a terminal window within vscode and run this command: vscode hangs indefinitely, using 100% CPU on one core. It would be nice if that didn't happen.
Thanks for creating this issue! It looks like you may be using an old version of VS Code, the latest stable release is 1.78.0. Please try upgrading to the latest version and checking whether this issue remains. Happy Coding!
I'm using web version (Vscode Server) and this code snippet cause the entirely browser tab to crash: ! Wanted to provide profiling info but profiler hanged too
I can reproduce
Nice find
Upstream:
Code change:
i = wrappedLineEnd; lines.push(getXtermLineContent(buffer, wrappedLineStart, wrappedLineEnd, cols)); if (!match) { <del> match = lines.join('n').match(matcher); </del> <ins> match = lines[lines.length - 1].match(matcher); </ins> } <del> if (wrappedLines >= linesToCheck) { </del> <ins> if (lines.length >= linesToCheck) { </ins> break; } }

Related discussion:
text: going to keep track of examples here to see if there's a pattern <img width="1112" alt="Screenshot 2023-01-23 at 2 12 18 PM" src="https://user-"
far right terminal <img width="1120" alt="Screenshot 2023-01-23 at 3 07 17 PM" src="https://user-"
middle terminal !
far right terminal !
far right terminal <img width="1076" alt="Screenshot 2023-01-24 at 1 59 40 PM" src="https://user-"
right terminal <img width="1644" alt="Screenshot 2023-01-24 at 2 22 27 PM" src="https://user-"
right terminal !
here are the lines when there's not a quick fix result - it contains after which we don't account for here !
Seeing this frequently: <img width="726" alt="image" src="https://user-"
I think we just need to include the to fix this
or better yet, remove and just look for the link
ok I see the issue. when lines are wrapped a lot, we need to search more lines - setting the length to 10/15 fixes it even when the terminal is quite narrow
I see it on non-wrapped lines, I'm not sure I understand what you mean with the To?
The to comment above was actually wrong. What's happened in the screen shot above is we abort the search early - after looking at only 5 lines. When it's actually on line 9
this goes wrong when we break before reaching the content IE when line count length
I tried pushing up a new branch using pwsh in the integrated terminal on Windows, and the lightbulb did not show. !
you have shell integration disabled, it won't work at all there.
also make sure to not move issues to the next milestone, this one was marked important
Working much better now, but just reproduced !
Just happened and captured the trace log (escape sequence log would be better): <img width="806" alt="image" src="https://user-"
I've seen this not work twice today already for create PR !
even though the lightbulb didn't appear here, there was a match found !
Code change:
i = wrappedLineEnd; lines.push(getXtermLineContent(buffer, wrappedLineStart, wrappedLineEnd, cols)); if (!match) { <del> match = lines.join('n').match(matcher); </del> <ins> match = lines[lines.length - 1].match(matcher); </ins> } <del> if (wrappedLines >= linesToCheck) { </del> <ins> if (lines.length >= linesToCheck) { </ins> break; } }

Related discussion:
text: the match always happens, the lightbulb doesn't show up though until I resize the terminal
this happens when the have not yet been resolved by the time occurs ! !
I think we should be calling at the end of
have seen the create PR not show up 3 times today. resizing doesn't cause it to show up, which means our match range is wrong/ there isn't a match
this says unreleased, but was merged before the current version of insider's (5 hours ago) was released. create with PR still failing !
insider's is based on the release branch, so I was confused
<!-- UNABLETOLOCATECOMMITMESSAGE issue --Issue marked as unreleased but unable to locate closing commit in issue timeline. You can manually reference a commit by commenting , or directly add the label if you know this has already been releaased
Code change:
@command('git.clean') async clean(...resourceStates: SourceControlResourceState[]): Promise<void> { <del> resourceStates = resourceStates.filter(s => !!s); </del> <ins> // Remove duplicate resources const resourceUris = new Set<string>(); resourceStates = resourceStates.filter(s => { if (s === undefined) { return false; } if (resourceUris.has(s.resourceUri.toString())) { return false; } resourceUris.add(s.resourceUri.toString()); return true; }); </ins> if (resourceStates.length === 0 || (resourceStates[0] && !(resourceStates[0].resourceUri instanceof Uri))) { const resource = this.getSCMResource();

Related discussion:
text: Issue Type: <bBug</bThe source control pane allows discarding changes by right-clicking on selected items and then choosing "Discard Changes". If items are selected in a tree view, and part of the selection is a directory, then the confirmation dialog shows a wrong (impossible) number of files to be discarded. Steps: open vscode in a git directory, with no current changes switch to the source control pane, note the changes make sure that "View as Tree" mode is active select all three items in the treev view, comprising of 1 directory and 2 files right-click onto select items -"Discard Changes" //exp: Confirmation - "This will DELETE 2 untracked files" //act: Confirmation - "This will DELETE 3 untracked files" IOW, the directory is counted as a file. This is rather irritating if one expects to discard a very well-known number of files, only to discover that the UI confirmation dialog is off. VS Code version: Code 1.60.1 (, 2021-09-10T17:06:57.931Z) OS version: Linux x64 5.13.15-200.fc34.x8664 Restricted Mode: No <details<summarySystem Info</summary </detailsExtensions disabled<details<summaryA/B Experiments</summary</details<!-- generated by issue reporter --
Just noticed a simpler scenario: Just use tree view mode, have 1 file in the directory, and directly discard the directory. The confirmation dialog will ask for confirmation to delete 2 files, while there is 1 file only (the directory will not be touched by the git revert)
Funny enough - clicking on the "Discard All Changes" icon reports the correct number of files (2 files in the scenario above).
I see multiple options for implementing a fix for this: 1) Deduplicate the resources in the command 2) Deduplicate the resources in core before the are passed to the command as args
1 sounds great!
Code change:
setTimeout(() => { const idx = unhandledPromises.indexOf(promise); if (idx >= 0) { <del> unhandledPromises.splice(idx, 1); console.warn('rejected promise not handled within 1 second'); onUnexpectedError(reason); </del> <ins> promise.catch(e => { unhandledPromises.splice(idx, 1); console.warn(`rejected promise not handled within 1 second: ${e}`); if (e.stack) { console.warn(`stack trace: ${e.stack}`); } onUnexpectedError(reason); }); </ins> } }, 1000); });

Related discussion:
text: When I was debugging SVN extension () I saw this message in console: ! Then I've discovered that this promise is unhandled in another extension, after I've edited file and inserted breakpoint. Please provide some stacktrace or message of rejected Promise it's hard to find the root of the problem.
This issue is caused by an extension, please file it with the repository (or contact) the extension has linked in its overview in VS Code or the for VS Code. See also our guidelines. Happy Coding!
I think the ask here is that we improve our handler to display the call stack of the unhandled error...
Yeah, I got that. I have for that (thanks to
Code change:
if (!Array.isArray(extension.value)) { continue; } <del> const commands = new Map((extension.description.contributes?.commands ?? []).map(c => [c.command, c])); </del> for (const contribution of extension.value) { <del> if (!contribution.command || !contribution.when) { continue; </del> <ins> const command = MenuRegistry.getCommand(contribution.command); if (!command) { return; </ins> } <del> const fullCommand = commands.get(contribution.command); if (!fullCommand) { return; } </del> <ins> const icon = command.icon; const title = typeof command.title === 'string' ? command.title : command.title.value; </ins> continueEditSessionOptions.push(new ContinueEditSessionItem( <del> fullCommand.title, fullCommand.command, </del> <ins> ThemeIcon.isThemeIcon(icon) ? `$(${icon.id}) ${title}` : title, command.id, command.source, </ins> ContextKeyExpr.deserialize(contribution.when) )); }

Related discussion:
text: ! should align more with <img width="672" alt="image" src="https://user-"
Code change:
"command.branch": "Create Branch...", "command.pull": "Pull", "command.pullRebase": "Pull (Rebase)", <ins> "command.pullFrom": "Pull from...", </ins> "command.push": "Push", "command.pushTo": "Push to...", "command.sync": "Sync",

Related discussion:
text: We have the ability to select which branch to push to in the source control, could we please have a pull from option? To target specific branches. Unless it exists already? I have only recently started using VS Code and i love it!
This is an easy contribution, care to submit a PR? PS: You currently have the ability to select which remote to push to, not which branch.
I'll take on this. Is it correct that branch names are not stored anywhere? I've checked in and cannot find anywhere they could be stored. If there is nothing, I'll just take a user input using showInputBox.
I created a pull request for this: Please take a look when you have the chance.
merge conflict is fixed.
Merging with
Code change:
} else { // exec command, done <del> this._commandService.executeCommand(item.completion.command.id, ...(item.completion.command.arguments ? [...item.completion.command.arguments] : [])) .catch(onUnexpectedError) .finally(() => this.model.clear()); // <- clear only now, keep commands alive </del> <ins> tasks.push(this._commandService.executeCommand(item.completion.command.id, ...(item.completion.command.arguments ? [...item.completion.command.arguments] : [])).catch(onUnexpectedError)); </ins> this.model.cancel(); } if (flags & InsertFlags.KeepAlternativeSuggestions) { this._alternatives.value.set(event, next => { <ins> // cancel resolving of additional edits cts.cancel(); </ins> // this is not so pretty. when inserting the 'next' // suggestion we undo until we are at the state at // which we were before inserting the previous suggestion...

Related discussion:
text: Issue Type: <bBug</bLike what the heading says, inserting a code snippet anywhere in the code file causes an autoscroll. This is a slight inconvenience, as while inserting snippets, viewing code above it is desirable, causing us to rescroll into view. So adding an option to revert to the functionality in the stable release would be preferred VS Code version: Code - Insiders 1.46.0-insider (, 2020-05-07T16:36:39.681Z) OS version: Linux x64 5.4.38-1-MANJARO <details<summarySystem Info</summary </details<details<summaryExtensions (4)</summaryExtensionVersion ------ cpptools0.27.1 Go0.14.1 material-icon-theme4.1.0 material-theme3.5.0 (1 theme extensions excluded) </details<!-- generated by issue reporter --
Yeah - that's a regression from a recent change to keep the position stable when additional edits are inserted...
is the item that caused this regression.
fixed via
Yep, it works fine now. Thanks a lot!
This bug has been fixed in to 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 pallette to check), and leave a comment letting us know what isn't working as expected. Happy Coding!
/verified
Code change:
} else { // exec command, done <del> this._commandService.executeCommand(item.completion.command.id, ...(item.completion.command.arguments ? [...item.completion.command.arguments] : [])) .catch(onUnexpectedError) .finally(() => this.model.clear()); // <- clear only now, keep commands alive </del> <ins> tasks.push(this._commandService.executeCommand(item.completion.command.id, ...(item.completion.command.arguments ? [...item.completion.command.arguments] : [])).catch(onUnexpectedError)); </ins> this.model.cancel(); } if (flags & InsertFlags.KeepAlternativeSuggestions) { this._alternatives.value.set(event, next => { <ins> // cancel resolving of additional edits cts.cancel(); </ins> // this is not so pretty. when inserting the 'next' // suggestion we undo until we are at the state at // which we were before inserting the previous suggestion...

Related discussion:
text: I think this would be less confusing for users too; it's the only way it would be clear when VSCode is completely done applying the completion. I think many users would be confused if imports usually get but not when they resume typing too soon. FWIW I can syncronously generate the additional text edits I need, so I'd be happy if there were an API to synchronously generate them when the completion item is accepted. I know not everyone would be able to generate them sync though.
Also I know my questions may have seemed redundant, but I hadn't seen anyone on this thread point out that it would be ideal to avoid ever computing additional text edits (or even the primary insert text) for unselected completions. Since can get called before any item is accepted (I assume, since it seems to be for showing additional details in the menu), I'd think any solution via could still result in unnecessarily generating additional edits that are ultimately discarded.
The golden rule is that "you can always type inside the editor". Ignoring typing is not a good solution and will bug users. Just think of quick suggest and auto accept characters - you don't want the editor to stop typing just because an extension is taking a little longer (+50ms). To be precise you should have written "typing at or before the offset at which additional edits are going to happen" I honestly think the majority can generate them synchronously but this happens in the extension host process or the language server process, and all of that might happen on a different machine and there is no way to synchronously transport that into the UI.
re with the current changes you should be able to have a "simple insert text", say , and compute an additional text edit, like , that goes in front of it so that you eventually have . Right? Or am I missing something?
that might actually be a good idea ;-) In practice though, we might need to revisit the way the principal TextEdit is computed (i.e rewrite a bunch of stuff from upstream JDT)
I get the desire to be able to always be able to type inside the editor and agree that's an important principle. The only reason I think this case is an exception is that: The user would probably want to wait for all edits to get applied anyway.
Code change:
} else { // exec command, done <del> this._commandService.executeCommand(item.completion.command.id, ...(item.completion.command.arguments ? [...item.completion.command.arguments] : [])) .catch(onUnexpectedError) .finally(() => this.model.clear()); // <- clear only now, keep commands alive </del> <ins> tasks.push(this._commandService.executeCommand(item.completion.command.id, ...(item.completion.command.arguments ? [...item.completion.command.arguments] : [])).catch(onUnexpectedError)); </ins> this.model.cancel(); } if (flags & InsertFlags.KeepAlternativeSuggestions) { this._alternatives.value.set(event, next => { <ins> // cancel resolving of additional edits cts.cancel(); </ins> // this is not so pretty. when inserting the 'next' // suggestion we undo until we are at the state at // which we were before inserting the previous suggestion...

Related discussion:
text: so how do servers know that clients support lazy-loading of additional textedits? Surely this should be a client capability advertised by vscode (that needs to be specced in the LSP)
is the right person for that and you should probably create a follow up issue in the LSP land
corresponding LSP feature request created here please add more details if I miss anything.
Thanks
To verify: use TypeScript have a suggestion that will import a symbol make sure that suggestion isn't first or focused in the UI use the mouse(!) to select the suggestion make sure the import is there make sure undo, redo works as expected
Code change:
) { super(); <del> this.registerSchemas({ defaultSettingsSchema: {}, userSettingsSchema: {}, profileSettingsSchema: {}, machineSettingsSchema: {}, workspaceSettingsSchema: {}, folderSettingsSchema: {}, configDefaultsSchema: {}, }); </del> extensionService.whenInstalledExtensionsRegistered().then(() => { this.registerConfigurationSchemas();

Related discussion:
text: Type: <bBug</bI got the following error randomly while changing workspace settings. I used the extension bisect feature to see if it was an extension, but nothing was identified on the very first pass. The issue continued to persist, until Visual Studio Code was reloaded. Here's the message that appeared in the problem pane: Problems loading reference 'vscode://schemas/settings/workspace': Unable to load schema from 'vscode://schemas/settings/workspace': cannot open vscode://schemas/settings/workspace. Detail: Unable to resolve text model content for resource vscode://schemas/settings/workspace. I found a similar issue regarding multi-root workspaces on github: My workspace has multiple folders. I only edited the workspace settings and I never touched the folder settings for the workspace. I did made some recent adjustments by installing/uninstalling extensions, switching profiles, and editing workspace settings. VS Code version: Code - Insiders 1.77.0-insider (, 2023-03-14T05:23:49.668Z) OS version: WindowsNT x64 10.0. Modes: Sandboxed: Yes <details<summarySystem Info</summary </details<details<summaryExtensions (11)</summaryExtensionVersion ------ Ionide-fsharp7.5.1 csharp1.25.4 dotnet-interactive-vscode1.0. vscode-dotnet-pack1.0.12 python2023.4.1 vscode-pylance2023.3.20 jupyter2023.3. jupyter-keymap1.1.0 jupyter-renderers1.0.15 vscode-jupyter-cell-tags0.1.6 vscode-jupyter-slideshow0.1.5 </details<details<summaryA/B Experiments</summary</details<!-- generated by issue reporter --
This is probably caused by of the schema (and others) It would be better to register the schema immediately but empty, and to set it later again with content.
Can this be at least workarounded somehow? It's very irritating - I cant edit any workspace settings
I'm sure a hotfix will release the fix to all of us soon, but here's a workaround for now: I found that poking any settings key in restores proper autocomplete/hover in VSCode's until next VSCode restart. But a key must be poked after every restart.
Code change:
) { super(); <del> this.registerSchemas({ defaultSettingsSchema: {}, userSettingsSchema: {}, profileSettingsSchema: {}, machineSettingsSchema: {}, workspaceSettingsSchema: {}, folderSettingsSchema: {}, configDefaultsSchema: {}, }); </del> extensionService.whenInstalledExtensionsRegistered().then(() => { this.registerConfigurationSchemas();

Related discussion:
text: For example, put at the top of your and save the file. You will have to toggle and save this key every time you start VSCode. A detailed set of steps for doing this can be inspected at the end of this comment. If you use the VSCode extension , you can set up a hotfix keybind (like in this case), and press the keybind twice every time you restart VSCode. Or, just never restart VSCode until the patch drops! <details<summarydetails</summary<pI can confirm that setting allows hover hints and completion to function again, e.g. in VSCode's own modification. However, this workaround throws out all JSON linting and reporting in the "Problems" pane, so it's sort of the nuclear option. This issue just cropped up for me in the past few days, so it may be a regression associated with the latest release? After further investigation, I find that poking any settings key in restores proper autocomplete/hover in VSCode's until next VSCode restart. But a key must be poked after every restart. Here's a rundown: all tree of settings keys are initially at their defaults, e.g. none of these keys are explicitly specified in any of your (maybe unnecessary, but this is my starting state). VSCode (e.g. with ). Navigate to your user . The following warning presents in the Problems pane: a trivial setting modification in the tree of settings keys, even if that modification is a no-op, like explicitly specifying a default as its default value. For example, put at the top of your and save the file. (You could've also poked to be either or I think, maybe?) whether autocomplete/hover works properly in , completing settings names and such. It should work now. can even remove the edit you made in step (4), save again, and autocomplete/hover still works. VSCode. autocomplete/hover is broken again in , until some modification to the tree of settings keys is made again, like in step 4. For example, commenting out if it's there, and saving, restores autocomplete/hover.
Code change:
) { super(); <del> this.registerSchemas({ defaultSettingsSchema: {}, userSettingsSchema: {}, profileSettingsSchema: {}, machineSettingsSchema: {}, workspaceSettingsSchema: {}, folderSettingsSchema: {}, configDefaultsSchema: {}, }); </del> extensionService.whenInstalledExtensionsRegistered().then(() => { this.registerConfigurationSchemas();

Related discussion:
text: So this issue may have to do with unstable startup behavior of JSON schema handling, perhaps isolated to VSCode's own or perhaps all JSON schemas more broadly, and this unstable state can be temporarily fixed by poking a settings key, but the unstable behavior returns on the next program start. At least in my case. </p</details
I have encountered a similar error: So nothing I do in my file has any effect. Not only that, but when I type "" into the Settings search bar, the only thing that comes up is a reference to a file under .
In my case I think I found the culprit: The property above gives a "Value is not accepted" error even though it's a valid value that works when the is enabled (it's currently disabled). As soon as I delete this property, the "Unable to load schema" error goes away. Weird. Update: I spoke too soon -- after reloading VS Code, the "Unable to load schema" error is back
A few days/restarts later, and the error is gone. Looks like a Heisenbug.
For me the problem message appears in a typescript node project when I have open. Close this file and the problem message goes away. (The file contains no known issues). While others report either user or workspace settings reference loading problems, for me it is configurationDefaults:
is there any update on it? it's very frustrating and I don't see a reliable workaround
<!-- 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!
I still see this <img width="1619" alt="image" src=""Repro: a syntax error in , which will result in some setting's value being "changed" that forces restart of vscode dialog to restart vscode shows up, click on "Restart" restarted vscode will likely have this error
I cannot reproduce this, are you seeing this consistently?