jiebi/CodeConvo huggingface dataset:
Change:
if (foreground && background) { const backgroundColor = Color.fromHex(background), foregroundColor = Color.fromHex(foreground); if (backgroundColor.isOpaque()) { <del> result += `<tr><td class="tiw-metadata-key">contrast ratio</td><td class="tiw-metadata-value">${backgroundColor.getContrastRatio(foregroundColor.makeOpaque(backgroundColor)).toFixed(2)}</td></tr>`; </del> <ins> elements.push($('tr', undefined, $('td.tiw-metadata-key', undefined, 'contrast ratio' as string), $('td.tiw-metadata-value', undefined, backgroundColor.getContrastRatio(foregroundColor.makeOpaque(backgroundColor)).toFixed(2)) )); </ins> } else { <del> result += '<tr><td class="tiw-metadata-key">Contrast ratio cannot be precise for background colors that use transparency</td><td class="tiw-metadata-value"></td></tr>'; </del> <ins> elements.push($('tr', undefined, $('td.tiw-metadata-key', undefined, 'Contrast ratio cannot be precise for background colors that use transparency' as string), $('td.tiw-metadata-value') )); </ins> } } <del> let fontStyleLabels: string[] = []; </del> <ins> const fontStyleLabels = new Array<HTMLElement | string>(); </ins> function addStyle(key: 'bold' | 'italic' | 'underline') { if (semantic && semantic[key]) { <del> fontStyleLabels.push(`<span class='tiw-metadata-semantic'>${key}</span>`); </del> <ins> fontStyleLabels.push($('span.tiw-metadata-semantic', undefined, key)); </ins> } else if (tm && tm[key]) { fontStyleLabels.push(key); }

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. --The next step in resolving . Simirarly to , it aims to replace construction of HTML elements by string concatenation in file. The code contains mainly a table construction by concatenating strings of . The goal is to replace them all with function calls.
I verified by running the monaco editor from source and testing the inspect token hover
To verify, open the hover and verify it looks all proper.
Change:
super({ id: 'workbench.action.increaseViewHeight', title: { value: localize('increaseEditorHeight', "Increase Editor Height"), original: 'Increase Editor Height' }, <del> f1: true </del> <ins> f1: true, precondition: IsAuxiliaryWindowFocusedContext.toNegated() </ins> }); }

Discussion:
<!-- Do Not Delete This! bugreporttemplate --<!-- Please read our Rules of Conduct: --<!-- Read our guide about submitting issues: --<!-- Search existing issues to avoid creating duplicates. --<!-- Test using the latest Insiders build to see if your issue has already been fixed: --<!-- Instead of creating your report here, use 'Report Issue' from the 'Help' menu in VS Code to pre-fill useful information. --<!-- Launch with to check. --Does this issue occur when all extensions are disabled?: Yes/No Yes <!-- If you answered No above, use 'Help: Start Extension Bisect' from Command Palette to try to identify the cause. --<!-- Issues caused by an extension need to be reported directly to the extension publisher. The 'Help Report Issue' dialog can assist with this. --- VS Code Version: 1.85.0 x64 OS Version: Steps to Reproduce: a new floating window with (or any of the other ones) a few split editors in the main view and the floating view a split in floating window the floating view, execute floating window editor size doesn't change, it happens in the main one
Good catch, these commands should not be available in floating windows.
Change:
const defaultPreferencesEditorInput = this.instantiationService.createInstance(DefaultPreferencesEditorInput, this.getDefaultSettingsResource(configurationTarget)); const preferencesEditorInput = new PreferencesEditorInput(this.getPreferencesEditorInputName(configurationTarget, resource), editableSettingsEditorInput.getDescription(), defaultPreferencesEditorInput, <EditorInput>editableSettingsEditorInput); this.lastOpenedSettingsInput = preferencesEditorInput; <del> return this.editorService.openEditor(preferencesEditorInput, SettingsEditorOptions.create(options), group); </del> <ins> return this.editorService.openEditor(preferencesEditorInput, { ...SettingsEditorOptions.create(options), override: EditorOverride.DISABLED }, group); </ins> }); }

Discussion:
Steps to Reproduce: workbench editor associations to open *.json with a custom editor (e.g. HEX) to change this setting later = you cannot because in order to edit the values, you need to go to the JSON but it will open the custom editor always: ! Imho we should have a way to prevent the override from happening fro built in files such as settings. Only workaround is to entirely reset the setting. //cc
I've made a PR to fix this issue. I'm not sure why it is showing so many changes, it might be due to it being based off of the openWith PR that we had open before it got merged.
Change:
return { command: 'git.checkout', <del> tooltip: localize('checkout', 'Checkout...'), </del> <ins> tooltip: `${this.repository.headLabel}`, </ins> title, arguments: [this.repository.sourceControl] };

Discussion:
When hovering over large branch names, the branch name should be shown in the tooltip instead of static text <kbdcheck out ...</kbd. ! !
(Experimental duplicate detection) Thanks for submitting this issue. Please also check if it is already covered by an existing one, like: <!-- score: 0.653 --- <!-- score: 0.622 --- <!-- score: 0.611 --- <!-- score: 0.607 --- <!-- score: 0.606 --<!-- potentialduplicatescomment --
Hi, I would like to try fixing this bug. Could anyone point out to me where I should start looking ?
Hi! If this issue is not being worked on, I would like to try tackle it. May I do so?
have either of you progressed on this issue? if not I would be interested as well
I have looked into this issue and found the relevant area of the code base, . I have taken a swing at solving this and will submit a pull request soon.
I did not realize someone had created a PR for the issue, I thought I was free to work on it, I apologize for any confusion. I've looked at both and they are functionally the same fix.
Change:
return { name: 'vs/base', project: editorProject }; } else if (/^vs/code/.test(sourceFile)) { return { name: 'vs/code', project: workbenchProject }; <ins> } else if (/^vs/server/.test(sourceFile)) { return { name: 'vs/server', project: serverProject }; </ins> } else if (/^vs/workbench/contrib/.test(sourceFile)) { resource = sourceFile.split('/', 4).join('/'); return { name: resource, project: workbenchProject };

Discussion:
Testing in Firefox, with Spanish (es-es) set Open "Get Started with VS Code in the Web" walkthrough Select last step (open up your code), then first command ("Open Folder" in English, "Abrir carpeta" in Spanish) Modal is in English: ! It isn't a new string, and I didn't think getting started or this command would be from an extension, but perhaps that is the case.
I also see this on modals on the overall welcome page when I try opening a file or folder: !
Thank you for your feedback. We are currently reviewing it (reference ).
This is an odd one. The string looks good here: but the file that that comes from doesn't show up at all in our Spanish files: I'll have to dig into why this is... any ideas?
might be a bug in the tool so that the localize call is not detected. When you generate the export is the string included.
Ok the web strings are now bundled in language packs. It may take a minute for all these new strings to make their way through the translation system... but by end game it should be good.
Change:
resolve(node.tooltip); }); }, <del> markdownNotSupportedFallback: resource ? undefined : '' // Passing undefined as the fallback for a resource falls back to the old native hover </del> <ins> markdownNotSupportedFallback: resource ? undefined : label ?? '' // Passing undefined as the fallback for a resource falls back to the old native hover </ins> }; }

Discussion:
Issue Type: <bBug</bIn the past, if the tree item was falsy, the would be used instead on hover. makes it so that if the tree item's is falsy after calling , then instead of following the old behavior and using , it will stick as 'Loading...' forever. Instead, if is falsy, it should fall back to to most closely resemble prior behavior. VS Code version: Code - Insiders 1.53.0-insider (, 2021-01-27T08:59:32.031Z) OS version: WindowsNT x64 10.0. <details<summarySystem Info</summary </details<details<summaryExtensions (11)</summaryExtensionVersion ------ vscode-eslint2.1.14 vscode-docker1.9.1 csharp1.23.8 python2021.1. jupyter2020.12. remote-containers0.156.0 remote-ssh0.63.0 remote-ssh-edit0.63.0 remote-wsl0.53.2 vscode-remote-extensionpack0.20.0 azure-account0.9.5 </details<details<summaryA/B Experiments</summary</details<!-- generated by issue reporter --
FYI
this fix is out in the latest insiders, can you please let us know when you've verified, thanks
everything seems to be working nicely, thanks!
Change:
*  Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ <del> import { CancellationToken, Connection, InitializeParams, InitializeResult, NotebookDocuments, ResponseError, TextDocuments } from 'vscode-languageserver'; </del> <ins> import { CancellationToken, CompletionRegistrationOptions, CompletionRequest, Connection, Disposable, DocumentHighlightRegistrationOptions, DocumentHighlightRequest, InitializeParams, InitializeResult, NotebookDocuments, ResponseError, TextDocuments } from 'vscode-languageserver'; </ins> import { TextDocument } from 'vscode-languageserver-textdocument'; import * as lsp from 'vscode-languageserver-types'; import * as md from 'vscode-markdown-languageservice'; import { URI } from 'vscode-uri'; import { getLsConfiguration, LsConfiguration } from './config'; <del> import { ConfigurationManager } from './configuration'; </del> <ins> import { ConfigurationManager, Settings } from './configuration'; </ins> import { registerValidateSupport } from './languageFeatures/diagnostics'; import { LogFunctionLogger } from './logging'; import * as protocol from './protocol';

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.73.0 OS Version: macOS 12.1 21C52 x86_64 Recently upgraded to 1.73 and no longer seeing selection highlighting. <img width="1728" alt="Screen Shot 2022-11-09 at 8 44 07 AM" src="https://user-"Default setting still and set on the user level as well to no avail. <img width="1728" alt="Screen Shot 2022-11-09 at 8 41 34 AM" src="https://user-"<img width="803" alt="Screen Shot 2022-11-09 at 8 41 56 AM" src="https://user-"
I am only seeing this in Markdown (including code blocks) but not source code.
The problem seems to be that previously you'd get a match if the cursor was at the start of the word but now only if you select/highlight the entire word (or subset). If this is a change in functionality, any way to update settings to restore previous out-of-box behavior?
I believe this might be caused by markdown now registering a document highlight provider. When a language registers a document highlight provider, the non-semantic based, text editor word highlight takes a back seat. I think you can turn this down via , or maybe . Let me loop in , maybe he has more ideas.
Change:
}; class NotebookEventEmitter extends PauseableEmitter<NotebookTextModelChangedEvent> { <ins> get isEmpty() { return this._eventQueue.isEmpty(); } </ins> isDirtyEvent() { for (const e of this._eventQueue) { for (let i = 0; i < e.rawEvents.length; i++) {

Discussion:
When working a python jupyter notebook within vscode, I started occasionally seeing this notification: ! With this in the dev console: cc Version: 1.90.0-insider Commit: Date: 2024-05-03T18:08:45.720Z Electron: 28.2.8 ElectronBuildId: Chromium: 120.0.6099.291 18.18.2 V8: 12.0.267.19-electron.0 OS: Darwin arm64 23.4.0
I still see this in Version: 1.90.0-insider Commit: Date: 2024-05-10T06:01:29.967Z Electron: 28.2.8 ElectronBuildId: Chromium: 120.0.6099.291 18.18.2 V8: 12.0.267.19-electron.0 OS: Darwin arm64 23.4.0 ! !
The most consistent repro I found: auto save a cell with ctrl+enter (so that focus moves to the container) with the cell contents press escape and ctrl+enter again to close the input and then re-run the cell within the 1 second auto-save delay :bug: notification about save failure This specific set of operations will put the edit that removes the output last, and since it started with no output, nothing actually changes for that edit, but the version is still incremented. The fix should take care of any case where an edit doesn't actually update anything.
The latest fix is not released yet, but I started seeing ! with Version: 1.90.0-insider Commit: Date: 2024-05-10T18:24:16.069Z Electron: 29.3.1 ElectronBuildId: Chromium: 122.0.6261.156 20.9.0 V8: 12.2.281.27-electron.0 OS: Darwin arm64 23.4.0
that's probably the same error, but the catch block throws - should be fixed in
Good morning, I am getting a similar error message. I am connected to a VM through SSH. I am able to edit & save the Jupyter Notebook until I run any cell. After running a cell I can no longer save the notebook, even after the cell has finished running. !

Info: Version: 1.90.0-insider (user setup) Commit: Date: 2024-05-13T05:48:48.053Z Electron: 29.3.1 ElectronBuildId: Chromium: 122.0.6261.156 20.9.0 V8: 12.2.281.27-electron.0 OS: Windows_NT x64 10.0.
thanks for the update, sounds like the latest change might have made things worse, I'll take another look.
- is there a specific cell execution behavior that causes this, or just when any cell executes? how long the cell runs for if it produces output if it has an call
I think I found the issue introduced in my previous change
Change:
renderElement(node: ITreeNode<FolderMatch, any>, index: number, templateData: IFolderMatchTemplate): void { const folderMatch = node.element; <del> folderMatch.compressionStartParent = undefined; </del> if (folderMatch.resource) { const workspaceFolder = this.contextService.getWorkspaceFolder(folderMatch.resource); if (workspaceFolder && isEqual(workspaceFolder.uri, folderMatch.resource)) {

Discussion:
! repro steps a search that has a compressed node outside of the viewport to keep collapsing gets stuck when trying to collapse all.
repro: the repo folder into a multi-root workspace (where another workspace also has the word "debug" somewhere in it). for the string "debug" clicking the Collapse All button a bunch of times gets stuck after a few times :bug: This is because the tree needs info from the function, which hasn't been run yet since the "compressed" element is off of the view. Therefore, when I'm calling , I eventually get to the "compressed" element that doesn't have the info that I need.
What is the best way to collapse all nodes of a tree at a certain level? My current (buggy) strategy involves iterating through the nodes via and collapsing them based on element types, but that depends on knowing the parent-most node in a compression (which I store when I use ).
This is strange. Despite the elements never being rendered, the tree should know exactly which elements have been compressed. The function should never create any state that other code depends on... it's purely a rendering function. At a glance the problem seems to be that you're modifying the tree (collapsing element) as you iterate it (using navigator). Can you refactor that action such that it first collects all elements which should be collapsed and, once all are collected, calls on each?
oops, figured it out! Follow-up question: how do I collapse part of a compressed node? (ie: collapsing so that only the parent is visible?) I tried calling on the parent element and it seems to assume that I just want the existing compressed node collapsed.
Unsure what you mean. Take this example: ! In this scenario, , and are just one node, for all purposes. Do you mean you want to collapse , for example? What should be the visual outcome of that?
Yes, I'd be talking about collapsing or . Now that you mention it, it would be confusing to collapse partway like that. The reason I bring this up is because the "collapse/expand` button in search is multi-step in multi-root and tree modes. Ie: in multi-root, the collapse/expand would go: collapse button once: collapses all nodes one level below root collapse again: collapses all root nodes. everything.

and repeat How would you imagine that it should handle the first collapse if it's a compressed series of folders (ie: )? I was originally thinking that it would just compress , but that would have a weird visual outcome. Do you know anywhere else where we do something like this?
I would expect the node would be collapsed in that case. The key here is nodes, not folders. The node represents three folders.
Change:
registerDebugConfigurationProvider(debugConfigurationProvider: IDebugConfigurationProvider): IDisposable { this.configProviders.push(debugConfigurationProvider); <ins> this._onDidChangeConfigurationProviders.fire(); </ins> return { dispose: () => { this.unregisterDebugConfigurationProvider(debugConfigurationProvider); <ins> this._onDidChangeConfigurationProviders.fire(); </ins> } }; }

Discussion:
Type: <bBug</bI'm developing an extension for VSCode and found out that I can't enable Dynamic Debug Configurations unless I include in the list of activation events. I have tried not including this activation event but having my extension activated through other means (like activated on language), but the feature doesn't work. Only when I include , this feature works. My extension is now working properly, but I wouldn't be surprised if this prevents other extension developers from using this feature. I have found this very old post of someone who might have had that exact same issue VS Code version: Code 1.84.2 (Universal) (, 2023-11-09T10:52:33.687Z) OS version: Darwin arm64 23.1.0 Modes: <details<summarySystem Info</summary </details<details<summaryExtensions (36)</summaryExtensionVersion ------ vscode-markdownlint0.52.0 gitlens14.5.0 prettier-vscode10.1.0 custom-local-formatters0.0.6 vscode-clangd0.1.24 vscode-mlir0.0.11 rainbow-csv3.8.0 vscode-mojo5.0.4-dev csdevkit1.0.14 csharp2.10.28 vscode-dotnet-runtime2.0.0 vscodeintellicode-csharp0.1.26 black-formatter2023.6.0 isort2023.10.1 python2023.20.0 vscode-pylance2023.11.10 jupyter2023.10.

jupyter-keymap1.1.2 jupyter-renderers1.0.17 vscode-jupyter-cell-tags0.1.8 vscode-jupyter-slideshow0.1.5 remote-containers0.321.0 remote-ssh0.107.0 remote-ssh-edit0.86.0 remote-wsl0.81.8 vscode-remote-extensionpack0.24.0 cpptools1.18.5 cpptools-extension-pack1.3.0 remote-explorer0.4.1 remote-server1.5.0 reflow-paragraph1.3.0 errorlens3.15.0 vscode-icons12.6.0 vim1.27.0 clang-format1.9.0 markdown-all-in-one3.5.1 (1 theme extensions excluded) </details<details<summaryA/B Experiments</summary</details<!-- generated by issue reporter --
Can you explain a bit more what doesn't work?
, thanks for looking into this. I have an extension with a working debugger feature via file. I'm trying to register a DebugConfigurationProvider with kind = that implements . And, unless, I add as an activation event, my new provider doesn't get invoked at all and I don't see an entry for my debugger in the selector of the Debug View. I have confirmed that my extension was initialized right after VSCode is launched. It's as if this kind of provider is only enabled if the activation event is present.
There's some discussion about this in you've touched this too, should this be changed or just documented in
I think changing it is fine. An extension should register an activation for it, but this isn't something we enforce for any other API. Will take care of it.
Change:
import { IAccessibilityService } from 'vs/platform/accessibility/common/accessibility'; import { ITerminalInstanceService, ITerminalInstance, ITerminalExternalLinkProvider } from 'vs/workbench/contrib/terminal/browser/terminal'; import { TerminalProcessManager } from 'vs/workbench/contrib/terminal/browser/terminalProcessManager'; <del> import type { Terminal as XTermTerminal, IBuffer, ITerminalAddon } from 'xterm'; </del> <ins> import type { Terminal as XTermTerminal, IBuffer, ITerminalAddon, RendererType } from 'xterm'; </ins> import type { SearchAddon, ISearchOptions } from 'xterm-addon-search'; import type { Unicode11Addon } from 'xterm-addon-unicode11'; import type { WebglAddon } from 'xterm-addon-webgl';

Discussion:
Part of We should also improve the fallback logic to do this: Try webgl If it threw an exception, try canvas If frame rendering averages 50ms (existing detection), use DOM We will keep the canvas renderer around for now mainly because Safari doesn't support webgl2 and can evaluate again at a later date.
It looks like canvas is still the default for me -- the is present unless I explicitly enable experimentalWebgl. I don't see any notifications of errors that could be causing it.
Change:
clearSearchResults(): void { this.searchWidget.setValue(''); <ins> this.focusSearch(); </ins> } clearSearchFilters(): void {

Discussion:
<!-- Please search existing issues to avoid creating duplicates. --Currently the 'focusSearch' method is called directly after the 'clearSearchResults' method returns. I think they should be called in one function as they get called one after another anyways and effect the same widget. I propose to add the 'focus search' method to the code below.. Also.. there's an extra 'clear search' function in the settings editor that can be replaced by this code. <!-- Describe the feature you'd like. --
(Experimental duplicate detection) Thanks for submitting this issue. Please also check if it is already covered by an existing one, like: <!-- score: 0.508 --- <!-- score: 0.498 --<!-- potentialduplicatescomment --
Change:
constructor() { super({ id: 'workbench.files.action.createFolderFromExplorer', <del> title: nls.localize('createNewFolder', "New Folder"), </del> <ins> title: nls.localize('createNewFolder', "New Folder..."), </ins> f1: false, icon: Codicon.newFolder, precondition: ExplorerResourceNotReadonlyContext,

Discussion:
Related: Both need additional info: <img width="241" alt="Screen Shot 2021-04-27 at 4 55 10 AM" src="https://user-"
Any change I do in the explorer raises a user revolt. So could do this start of next milestone. Delete does not require additional user input (if I say do not ask again for prompt). So I think only should be However I would wait for the editor to change to be so they are aligned. fyi
Not so sure about the rules <img width="748" alt="Screenshot 2021-04-27 at 14 36 26" src="https://user-"
Finder is inconsistent; "Tags..." opens an inline pop similar to rename, but rename doesn't have the . It might not be the best example.
Using ... on actions when needing user input has been a consistent pattern we've used for named actions. So we should try to keep it consistent.
Will take this in start of next milestone
From a UX perspective it appears is used when a quick input is present but not when an inline edit widget is. So I believe that's why things like and do not have , so is the UX guideline that inline edit widgets also should have ?
I would say that any action that requires user input should use the . I am seeing the same for toolbar actions like new file/folder in the tooltip as well while the quick pick and app menu do show it. <img width="170" alt="CleanShot 2022-08-16 at 08 45 32 src="https://user-"<img width="202" alt="CleanShot 2022-08-16 at 08 45 40 src="https://user-"<img width="303" alt="CleanShot 2022-08-16 at 08 45 47 src="https://user-"