jiebi/CodeConvo huggingface dataset:
Change:
} const fgColor = theme.getColor(TERMINAL_FOREGROUND_COLOR); if (fgColor) { <del> css += `.monaco-workbench .panel.integrated-terminal .xterm { color: ${fgColor}; }` + `.monaco-workbench .panel.integrated-terminal .xterm:not(.xterm-cursor-style-underline):not(.xterm-cursor-style-bar).focus .terminal-cursor,` + `.monaco-workbench .panel.integrated-terminal .xterm:not(.xterm-cursor-style-underline):not(.xterm-cursor-style-bar):focus .terminal-cursor { background-color: ${fgColor} }` + `.monaco-workbench .panel.integrated-terminal .xterm:not(.focus):not(:focus) .terminal-cursor { outline-color: ${fgColor}; }` + </del> <ins> css += `.monaco-workbench .panel.integrated-terminal .xterm { color: ${fgColor}; }`; } const cursorFgColor = theme.getColor(TERMINAL_CURSOR_FOREGROUND_COLOR) || fgColor; if (cursorFgColor) { css += `.monaco-workbench .panel.integrated-terminal .xterm:not(.xterm-cursor-style-underline):not(.xterm-cursor-style-bar).focus .terminal-cursor,` + `.monaco-workbench .panel.integrated-terminal .xterm:not(.xterm-cursor-style-underline):not(.xterm-cursor-style-bar):focus .terminal-cursor { background-color: ${cursorFgColor} }` + `.monaco-workbench .panel.integrated-terminal .xterm:not(.focus):not(:focus) .terminal-cursor { outline-color: ${cursorFgColor}; }` + </ins> `.monaco-workbench .panel.integrated-terminal .xterm.xterm-cursor-style-bar .terminal-cursor::before,` + <del> `.monaco-workbench .panel.integrated-terminal .xterm.xterm-cursor-style-underline .terminal-cursor::before { background-color: ${fgColor}; }` + </del> <ins> `.monaco-workbench .panel.integrated-terminal .xterm.xterm-cursor-style-underline .terminal-cursor::before { background-color: ${cursorFgColor}; }` + </ins> `.monaco-workbench .panel.integrated-terminal .xterm.xterm-cursor-style-bar.focus.xterm-cursor-blink .terminal-cursor::before,` + <del> `.monaco-workbench .panel.integrated-terminal .xterm.xterm-cursor-style-underline.focus.xterm-cursor-blink .terminal-cursor::before { background-color: ${fgColor}; }`; </del> <ins> `.monaco-workbench .panel.integrated-terminal .xterm.xterm-cursor-style-underline.focus.xterm-cursor-blink .terminal-cursor::before { background-color: ${cursorFgColor}; }`; </ins> } <ins> const cursorBgColor = theme.getColor(TERMINAL_CURSOR_BACKGROUND_COLOR) || bgColor || theme.getColor(PANEL_BACKGROUND); if (cursorBgColor) { css += `.monaco-workbench .panel.integrated-terminal .xterm:not(.xterm-cursor-style-underline):not(.xterm-cursor-style-bar).focus .terminal-cursor,` + `.monaco-workbench .panel.integrated-terminal .xterm:not(.xterm-cursor-style-underline):not(.xterm-cursor-style-bar):focus .terminal-cursor { color: ${cursorBgColor} }`; } </ins> // TODO: Reinstate, see #28397 // const selectionColor = theme.getColor(TERMINAL_SELECTION_BACKGROUND_COLOR); // if (selectionColor) {

Discussion:
This involves adding a new theme key in and setting to right CSS class
We may want this in the recovery build since it's a regression that makes the cursor char unreadable /cc
Change:
saneAriaLabel }; }); <ins> this._saneDescription = mainItem.description; this._saneTooltip = mainItem.tooltip; </ins> } // #region Lazy Getters

Discussion:
So that we can add full path to Quick Search
Verification: Open from the command palette search for something Notice the folder paths next to the names of the files - that's the description! <img width="623" alt="image" src=""
Change:
//   ... // foo: (339) //   ... <del> `:? ?[[(]${l()}(?:, ?${c()})?[])]`, </del> <ins> `:? ?[[(]${l()}(?:, ?${c()})?[])]` + eolSuffix, </ins> ]; const suffixClause = lineAndColumnRegexClauses

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. --originally posted here: when using the OCaml ecosystem (in my example ) the errors can't be clicked on in the terminal: <img width="736" alt="Screenshot 2023-01-19 at 10 06 47 PM" src="https://user-"I often can't click on the file because it isn't relative to where I am, and when I can click it doesn't get me to the line number. I'm not sure how other languages do it but I don't remember having that problem in other ecosystems. I'm also not sure how to fix it. I believe the terminal / vscode will detect filename:linenumber all the time, but the "File "", line 588, characters 50-75" is not recognized.
yeah looks like we don't support that case atm, though this one comes close
<!-- -96bd-47a8-a0e8- --This feature request is now a candidate for our backlog. The community has 60 days to the issue. If it receives 20 upvotes we will move it to our backlog. If not, we will close it. To learn more about how we handle feature requests, please see our . Happy Coding!
<!-- -c9e0-7adb-d31b- --:slightlysmilingface: This feature request received a sufficient number of community upvotes and we moved it to our backlog. To learn more about how we handle feature requests, please see our . Happy Coding!
The situation is pretty good on Insiders after the many link changes that have gone in since December: ! Keeping this open to also match the part and ideally select the actual range in this case.
what's Insiders? EDIT: the beta,
I'm enjoying the improvement, but the pattern still doesn't work, e.g.: Thanks!
is that a real example or did you make up the characters part? I'm not sure what multi-line and multi-character means exactly
Forking proper multi-line support to , we should be able to support the simple case of just going to the first line easily in the one.
Thank you for your work!

It's a real example, just going to the first line is good enough for me! The meaning of is "in the selection within file F, spanning from line N1, character/column C1 to line N2, character/column C2" (subject to off-by-one errors, I don't remember how the characters are counted).
Oh ok, that makes sense
FYI the row/col end part of the link should work when is merged
Change:
title: terminalStrings.changeColor, f1: false, precondition: ContextKeyExpr.and(ContextKeyExpr.or(TerminalContextKeys.processSupported, TerminalContextKeys.terminalHasBeenCreated), TerminalContextKeys.tabsSingularSelection), <del> run: (c, accessor) => getSelectedInstances(accessor)?.[0].changeColor() </del> <ins> run: async (c, accessor) => { let color: string | undefined; for (const terminal of getSelectedInstances(accessor) ?? []) { color = await terminal.changeColor(color); } } </ins> }); registerTerminalAction({

Discussion:
Repro: Open multiple terminals Select multiple terminal tabs Right click and change color Change color only a single terminal is changed Real context stored with the action was done recently as part of Related:
/duplicate
Tracking each action separately
Thanks for creating this issue! We figured it's covering the same as another one we already have. Thus, we closed this one as a duplicate. You can search for . See also our . Happy Coding!
I'm not sure this is worth fixing as color is meant to differentiate between tabs. Same for the icon/ renaming.
you might want multiple red though, right now it doesn't work as expected. We were actually doing this wrong by querying which tabs were selected also, after we get the actual instances this was triggered on passed into the action, so we can probably remove the special tab instance command as part of this.

Repro: Open multiple terminals Select multiple terminal tabs Right click and change icon Change icon only a single terminal is changed Real context stored with the action was done recently as part of Related:
Change:
}); }); }; <ins> let globTasksDetected = false; </ins> // First check for globs before checking for the default tasks of the task group const absoluteURI = EditorResourceAccessor.getOriginalUri(this._editorService.activeEditor); if (absoluteURI) { const workspaceFolder = this._contextService.getWorkspaceFolder(absoluteURI); <del> // fallback to absolute path of the file if it is not in a workspace or relative path cannot be found const relativePath = workspaceFolder?.uri ? (resources.relativePath(workspaceFolder.uri, absoluteURI) ?? absoluteURI.path) : absoluteURI.path; </del> <ins> if (workspaceFolder) { const configuredTasks = this._getConfiguration(workspaceFolder)?.config?.tasks; if (configuredTasks) { globTasksDetected = configuredTasks.filter(task => task.group && typeof task.group !== 'string' && typeof task.group.isDefault === 'string').length > 0; // This will activate extensions, so only do so if necessary #185960 if (globTasksDetected) { // Fallback to absolute path of the file if it is not in a workspace or relative path cannot be found const relativePath = workspaceFolder?.uri ? (resources.relativePath(workspaceFolder.uri, absoluteURI) ?? absoluteURI.path) : absoluteURI.path; groupTasks = await this._findWorkspaceTasks((task) => { const currentTaskGroup = task.configurationProperties.group; if (currentTaskGroup && typeof currentTaskGroup !== 'string' && typeof currentTaskGroup.isDefault === 'string') { return (currentTaskGroup._id === taskGroup._id && glob.match(currentTaskGroup.isDefault, relativePath)); } </ins> <del> taskGroupTasks = await this._findWorkspaceTasks((task) => { const currentTaskGroup = task.configurationProperties.group; if (currentTaskGroup && typeof currentTaskGroup !== 'string' && typeof currentTaskGroup.isDefault === 'string') { return (currentTaskGroup._id === taskGroup._id && glob.match(currentTaskGroup.isDefault, relativePath)); </del> <ins> return false; }); } </ins> } <ins> } } </ins> <del> return false; }); </del> <ins> if (!globTasksDetected && groupTasks.length === 0) { groupTasks = await this._findWorkspaceTasksInGroup(TaskGroup.Build, true); </ins> } const handleMultipleTasks = (areGlobTasks: boolean) => {

Discussion:
Running the command is activating various unnecessary extensions
This is by design - we have to activate any extensions which contribute tasks to fetch the build tasks, if any, that they contribute.
is that the case even if there's a default task configured? I have a suspicion something has changed because building, for example, vscode repo or just a new extension repo with didn't use to activate, e.g., ocaml extension (and there weren't any changes on the ocaml ext side). I would imagine we in general don't need to activate many extensions if there's a default build task?
Note to self - this was happening before the change where we resolve workspace tasks
This is happening because we check for glob tasks as the default - since we aren't sure which it might be, we have to call with no args and that activates all task providers
this originated here seems like not worth it in most cases. this should probably behind a setting
Change:
import { sha1Hex } from 'vs/base/browser/hash'; import { IStorageService, StorageScope, StorageTarget } from 'vs/platform/storage/common/storage'; import { IActivityService, NumberBadge } from 'vs/workbench/services/activity/common/activity'; <ins> import { IEditorService } from 'vs/workbench/services/editor/common/editorService'; </ins> registerSingleton(IEditSessionsLogService, EditSessionsLogService, InstantiationType.Delayed); registerSingleton(IEditSessionsStorageService, EditSessionsWorkbenchService, InstantiationType.Delayed);

Discussion:
Testing I wonder if we should run the command to save all files (not untitled files) before triggering the "Continue on" fully? I think ensuring that dirty files are saved but also that the data was synced up before opening the workspace elsewhere would be best?
I am not presented with any options after running the command - perhaps we shouldn't show that in the command palette unless there are some or add an action that helps me get some options? !
Should we say here? !
Change:
) { super(); <del> extensionManagementService.removeUninstalledExtensions(this.userDataProfilesService.profiles.length > 1); </del> <ins> extensionManagementService.removeUninstalledExtensions(this.userDataProfilesService.profiles.length === 0); </ins> migrateUnsupportedExtensions(extensionManagementService, extensionGalleryService, extensionStorageService, extensionEnablementService, logService); ExtensionStorageService.removeOutdatedExtensionVersions(extensionManagementService, storageService); this._register(instantiationService.createInstance(ProfileExtensionsCleaner));

Discussion:
Create two profiles In one profile install latest version of an extension and in another install older version of the same extension Restart VS Code Lower version is getting removed This bug impacts other way around when Profiles are disabled: If you have two different versions of same extension in the disk, then the extension clean up does not remove the older version. I believe user can only end up in this state if user has manually copied the older version into the disk otherwise I assume VS Code handles it.
It seems I cannot reproduce this anymore.
Hmm I could see this happen today after restarting - but it is not due to auto update, seems like older versions are being removed. Hence reopening
We agreed to take this into June given that this can impact when profiles are disabled. Hence moving this back to June.
Change:
@IThemeService themeService: IThemeService, @IEditorGroupsService editorGroupService: IEditorGroupsService, @IEditorService editorService: IEditorService, <del> @IFileService fileService: IFileService </del> <ins> @IFileService fileService: IFileService, @IContextKeyService contextKeyService: IContextKeyService, </ins> ) { super(OUTPUT_VIEW_ID, telemetryService, instantiationService, storageService, textResourceConfigurationService, themeService, editorGroupService, editorService, fileService); <ins> this.resourceContext = this._register(instantiationService.createInstance(ResourceContextKey)); </ins> } override getId(): string {

Discussion:
! Observed by
Do you have special steps for this? Do you see this with all output channels or only the MySQL one? Can you do the following when this happens: F1 Inspect Context Keys and then share what's printed on dev tools console
No specific repro steps - this happened immediately after upgrading in a test session - will try to repo on desktop doing it and report back!
Hi there, I think I received this email erroneously? I'm Nick Carver, but it looks like the original msg was from a Nick Craver. Cheers, Nick.
any new insights here?
This issue has been closed automatically because it needs more information and has not had recent activity. See also our guidelines. Happy Coding!
Apologies I was on vacation for a bit - haven't been able to repro this since the latest update landed (but also have to unfortunately rebuild the machine we saw it on for terribad Windows reasons). Recommend we close this and if I can repro, will poke with more info :)
Leaving this open since saw this once but forgot to inspect context keys ()
This issue has been closed automatically because it needs more information and has not had recent activity. See also our guidelines. Happy Coding!
steps: empty profile have a file under merge-conflict open the output view open the merge editor for the conflict file :bug: output view shows the merge overlay button
Change:
"vscode-proxy-agent": "^0.12.0", "vscode-regexpp": "^3.1.0", "vscode-textmate": "7.0.1", <del> "xterm": "4.20.0-beta.13", "xterm-addon-search": "0.10.0-beta.2", "xterm-addon-serialize": "0.8.0-beta.2", </del> <ins> "xterm": "4.20.0-beta.20", "xterm-addon-search": "0.10.0-beta.3", "xterm-addon-serialize": "0.8.0-beta.3", </ins> "xterm-addon-unicode11": "0.4.0-beta.3", <del> "xterm-addon-webgl": "0.13.0-beta.7", "xterm-headless": "4.20.0-beta.13", </del> <ins> "xterm-addon-webgl": "0.13.0-beta.9", "xterm-headless": "4.20.0-beta.20", </ins> "yauzl": "^2.9.2", "yazl": "^2.4.3" },

Discussion:
Follow up on Thanks for the fix, but I can still reproduce the issue in the insiders build I just downloaded: ! I've opened lots of terminals which I have now closed again (only welcome screen opened now). If vscode is visible in the background: ! If vscode is either minimized or completely behind other windows: !
I feel like this is just Chromium perhaps batching the webgl calls or something, the GPU memory according to devtools jumps around a bit but always ends around the same value even after creating many terminals: ! The terminal is unique in VS Code wrt GPU as it's currently the only part that uses webgl, so that explains why GPU memory is affected primarily by the terminal and no other component. I'm not sure there is anything we can do here since we are now disposing of all the webgl objects that need to be manually freed in
This is very interesting, I get the same results as you with the frame rate performance overlay, one more clue I found but I guess that doesn't help too much is that this also is reflected in the gpu process memory usage. This is when many terminals has been opened and closed again: ! Same instance minimized: ! I can make GPU process usage go beyond 4GB without any sign of stopping by just opening ~10 tabs, closing them again and doing it over again many times, so I guess it's something more than just Chrome doing batching or keeping memory for performance reasons etc.
One more clue, after opening and closing terminals again (now with no terminals open) I take a javascript heap profile in devtools (after pressing "Collect garbage" a few times), top usage is from many instances of arrays in belonging to ! Number and size of these seems to scale well with how many terminals that have been opened historically, so I think each instance of still leave resources behind.
With ram, terminals take a fairly constant amount as it's pee allocated when you create the terminal. This is based on your scrollback setting so if you have that as a large number your memory usage per terminal will go up, even when the scrollback isn't full.
Change:
return; } <del> const didCommit = await this.smartCommit(repository, async () => repository.inputBox.value); </del> <ins> const didCommit = await this.smartCommit(repository, async () => repository.cleanUpCommitEditMessage(repository.inputBox.value)); </ins> if (didCommit) { repository.inputBox.value = await repository.getCommitTemplate();

Discussion:
VSCode Version: 1.1.1 OS Version: OS X Steps to Reproduce: into a merge conflict accepting Git's default message. It's equal to is no way to do that!
Will mention that it's also equivalent to and saving the default message that shows up in your editor - hence a very common workflow
My workaround is to invoke from a terminal. Maybe if the commit message field is empty, VSCode could just call as well and leave it up to user's configuration what happens (in my case, it would open a text editor from my system variable, which is fine).
Has the pull request been reviewed yet? Can it be pulled in?
Verification: When having a merge commit, VS Code should now automatically populate the input box with the default git merge commit message, so the user can just accept it.
Change:
extensionsToEnableOrDisable.push({ extension: e.identifier, enable: !e.disabled }); } } <del> const extensionsToUninstall: ILocalExtension[] = installedExtensions.filter(extension => !extension.isBuiltin && !profileExtensions.some(({ identifier }) => areSameExtensions(identifier, extension.identifier))); </del> <ins> const extensionsToUninstall: ILocalExtension[] = installedExtensions.filter(extension => !extension.isBuiltin && !profileExtensions.some(({ identifier }) => areSameExtensions(identifier, extension.identifier)) && !extension.isApplicationScoped); </ins> for (const { extension, enable } of extensionsToEnableOrDisable) { if (enable) { this.logService.trace(`Importing Profile (${profile.name}): Enabling extension...`, extension.id);

Discussion:
When enabling the feature "Apply Extensions to all Profiles" for extensions with dependencies, these extensions produce an error and get uninstalled from all profiles when a new profile is imported. <!-- 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. --Bug is also present on latest Insiders build. Does this issue occur when all extensions are disabled?: Problem involves extensions. <!-- 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.81.0 OS Version: Windows 11 Pro 22H2 Steps to Reproduce: any extension with a dependency, e.g. . This will install as well. "Apply Extension to all Profiles" for both extensions any profile, e.g. the Python profile the error: ! extension get's removed from all profiles, even the default profile!
Logs: <details<summaryShared</summary<p</p</details<details<summaryWindow</summary<p</p</details
/assign
I confirm and can reproduce. Example steps: start with no profiles install isort, Pylance and Python for each one of them, choose "Apply Extension to all Profiles" Import a builtin profile, like nodejs extensions get uninstalled and an error message is shown. This might share the same root cause as and could also be caused by . That commit already caused a candidate at
I have slightly simplified steps with no profiles isort isort, choose "Apply Extension to All Profiles" a builtin profile like nodejs get uninstalled I also see settings sync log errors which may be related, including for posterity <details</details
Reopening to consider as a candidate.

this should be fixed in the latest insiders build, can you please try it out there and let us know if it still repros for you or if you see other extension bugs?
Verified in insiders.
The bug seems to be fixed. Thank you very much!
Change:
) { super(); this._register(toDisposable(() => { <del> this.installingExtensions.forEach(task => task.cancel()); </del> <ins> this.installingExtensions.forEach(({ task }) => task.cancel()); </ins> this.uninstallingExtensions.forEach(promise => promise.cancel()); this.installingExtensions.clear(); this.uninstallingExtensions.clear();

Discussion:
VS Code Version: stable and from sources When launching the server and installing extensions using that have a common dependency, one of the extensions will fail activating, prompting to reload VS Code. For example installing, and contains which depends on also depends on installation task finishes first and then trying to activate fails as for installation which is part of installation task Steps to Reproduce: this branch in gitpod or codespaces will fail activating and a notification shows prompting to reload vscode <img width="448" alt="error_iamge" src="https://user-"cc
would you accept a PR fixing this? I took a look but it doesn't look something trivial to fix properly, I but I don't think is a good fix
PR would be always welcome. Agreed it is not trivial. Let's see if there is a simple fix that fixes this and won't cause any regressions.
Created a PR with a possible fix
ping, by any chance for July
I am sorry that I am on vacation so cannot be looked in July.
I was following this other , but it was marked as a duplicate and was therefore closed. This isse seems to be closed as well, although the issue persists. Specifically, it seems that VS Code Dev Containers installs extensions in alphabetical order, so that if an extension that comes later in the order is a pre-requisite for another that is earlier, then the installations will not behave as expected. Example, is a pre-requisite for , but comes later in alphabetical order. Thus, requires a VS Code Session restart after building the Dev Container. Is this issue fixed in VS Code Insiders, but not released yet?
The issue you reported is using the build 1.71. and this fix was pushed in 1.72.. So please update your VS Code and try.