jiebi/CodeConvo huggingface dataset:
Change:
registerWorkbenchContribution2(ReplWindowWorkingCopyEditorHandler.ID, ReplWindowWorkingCopyEditorHandler, WorkbenchPhase.BlockRestore); registerWorkbenchContribution2(ReplDocumentContribution.ID, ReplDocumentContribution, WorkbenchPhase.BlockRestore); <ins> AccessibleViewRegistry.register(new ReplEditorAccessibilityHelp()); </ins> registerAction2(class extends Action2 { constructor() { super({

Discussion:
verification steps: get the latest pre-release for python extension run while focused in the REPL editor, press alt+F1 to open the a11y help view press escape to return focus to the editor
Change:
`[good]`, `[good]: http://example.com`, )); <del> assert.strictEqual(links.length, 1); assertRangeEqual(links[0].range, new vscode.Range(2, 8, 2, 26)); // Should only find the definition </del> <ins> assertLinksEqual(links, [ new vscode.Range(2, 8, 2, 26) // Should only find the definition ]); </ins> }); test('Should not consider links in code fenced with backticks', async () => {

Discussion:
Does this issue occur when all extensions are disabled?: Yes VS Code Version: 1.61.2 OS Version: macOS Big Sur Steps to Reproduce: a new markdown file. ! But according to it isn't necessary to escape spaces when the text is enclosed in :
Removing help wanted since this is a bit more complicated than anticipated
Thanks!
Change:
comment: ['Label for action that will increase the hover verbosity level.'] }, "Increase Hover Verbosity Level"), alias: 'Increase Hover Verbosity Level', <del> precondition: EditorContextKeys.hoverFocused, kbOpts: { kbExpr: EditorContextKeys.hoverFocused, primary: KeyChord(KeyMod.CtrlCmd | KeyCode.KeyK, KeyMod.CtrlCmd | KeyCode.KeyP), weight: KeybindingWeight.EditorContrib } </del> <ins> precondition: EditorContextKeys.hoverFocused </ins> }); }

Discussion:
Testing The keybinding does not work on windows due to quick open. Also the keybinding collides with the command. I wonder if this could be solved without registering keybindings. One idea could be that when the hover is focused the user could just use and on the keyboard to increase and decrease the hover (possibly also arrow keys could work). Make sure to mention in the hover of the increase and decrease actions what the keybinding or keyboard key is.
That's a very good point. I think we would still want ideally the + and - to be linked to keybindings so they can be configured by the user. I'll remove the keybindings, so they can simply be set by the users if they so wish. The current code already renders the keybindings if they are set: Perhaps they are not fetched correctly in your case because of the keybinding collisions. !
Change:
donotIncludePackAndDependencies: false, context: { [EXTENSION_INSTALL_SKIP_WALKTHROUGH_CONTEXT]: true } }); <ins> } private async runRemoteStartCommand(extensionId: string, startCommand: string) { // check to ensure the extension is installed </ins> await retry(async () => { <del> const ext = await this.extensionService.getExtension(metadata.id); </del> <ins> const ext = await this.extensionService.getExtension(extensionId); </ins> if (!ext) { throw Error('Failed to find installed remote extension'); } return ext; }, 300, 10); <del> this.commandService.executeCommand(metadata.startCommand); </del> <ins> this.commandService.executeCommand(startCommand); </ins> this.telemetryService.publicLog2<WorkbenchActionExecutedEvent, WorkbenchActionExecutedClassification>('workbenchActionExecuted', { id: 'remoteInstallAndRun', detail: extensionId,

Discussion:
Testing After clicking the "Install" entry in the quick pick, there's progress for a few moments, then the quick pick flashes back to showing all the previous entries again, before finally landing on the setup options for the remote extension. !
Change:
update_prompt() { PRIOR_PROMPT="$PS1" IN_COMMAND_EXECUTION="" <del> PS1="$(prompt_start)$PREFIX$PS1$(prompt_end)" PS2="$(continuation_start)$PS2$(continuation_end)" </del> <ins> PS1="%{$(prompt_start)%}$PREFIX$PS1%{$(prompt_end)%}" PS2="%{$(continuation_start)%}$PS2%{$(continuation_end)%}" </ins> } precmd() {

Discussion:
System info: macOs, Zsh, shell integration on. to vscode folder and hit tab it autocompletes to Hit tab again to autocomplete the names, it instead creates a big space and adds again. !
Not sure if we're tracking this one yet but I've seen it too in pwsh/Windows.
Works fine in pwsh.
It only occurs for me when shell integration is on. I've had to disable it in the meantime
Maybe I didn't see it on Windows actually. Happens on zsh/mac when pasting followed by enter/left: <img width="418" alt="Screen Shot 2022-03-17 at 10 57 44 am" src="https://user-"
Oh I bet I know what's causing this, we need to wrap "invisible" parts of the prompt in and
Simpler repro: tab <img width="242" alt="Screen Shot 2022-03-17 at 11 08 21 am" src="https://user-"l
Change:
const done = once((commit: boolean, blur: boolean) => { tree.clearHighlight(); <ins> label.element.style.display = 'none'; </ins> if (commit && inputBox.value) { editableData.action.run({ value: inputBox.value });

Discussion:
VSCode Version: 1.21.0-insider OS Version: MacOS Sierra 10.12.6 Steps to Reproduce: a file in explorer enter to rename the file renamed the file, press enter again and observe the glitch Does this issue occur when all extensions are disabled?: Yes ! I think, this issue may be related with Have a nice day and happy valentine's day
Change:
})); } <del> private registerDecorations() { // Apply decorations this._register(this.viewCell.onCellDecorationsChanged((e) => { e.added.forEach(options => { if (options.className) { this.templateData.rootContainer.classList.add(options.className); } if (options.outputClassName) { this.notebookEditor.deltaCellContainerClassNames(this.viewCell.id, [options.outputClassName], []); } }); e.removed.forEach(options => { if (options.className) { this.templateData.rootContainer.classList.remove(options.className); } if (options.outputClassName) { this.notebookEditor.deltaCellContainerClassNames(this.viewCell.id, [], [options.outputClassName]); } }); })); this.viewCell.getCellDecorations().forEach(options => { if (options.className) { this.templateData.rootContainer.classList.add(options.className); } if (options.outputClassName) { this.notebookEditor.deltaCellContainerClassNames(this.viewCell.id, [options.outputClassName], []); } }); } </del> private registerMouseListener() { this._register(this.templateData.editor.onMouseDown(e => { // prevent default on right mouse click, otherwise it will trigger unexpected focus changes

Discussion:
Testing I select a set of cells with Shift+Click, and I hit Ctrl+F to open the find widget. The cells are then highlighted as such: <img width="981" alt="image" src=""I scroll down a full page length, and then scroll back up. The cells are now highlighted as such, with no click or type input on my part: <img width="980" alt="image" src=""It appears that the Code cells lost their yellow highlight.
Change:
}); } <del> run() { that.clearAuthenticationPreference(); </del> <ins> async run() { const result = await that.dialogService.confirm({ type: 'info', message: localize('sign out of edit sessions clear data prompt', 'Do you want to sign out of edit sessions?'), checkbox: { label: localize('delete all edit sessions', 'Delete all stored edit sessions from the cloud.') }, primaryButton: localize('clear data confirm', 'Yes'), }); if (result.confirmed) { if (result.checkboxChecked) { that.storeClient?.delete('editSessions', null); } that.clearAuthenticationPreference(); } </ins> } })); }

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. --
Change:
$customDebugAdapterRequest(id: DebugSessionUUID, command: string, args: any): Promise<any>; $getDebugProtocolBreakpoint(id: DebugSessionUUID, breakpoinId: string): Promise<DebugProtocol.Breakpoint | undefined>; $appendDebugConsole(value: string): void; <del> $startBreakpointEvents(): void; </del> $registerBreakpoints(breakpoints: Array<ISourceMultiBreakpointDto | IFunctionBreakpointDto | IDataBreakpointDto>): Promise<void>; $unregisterBreakpoints(breakpointIds: string[], functionBreakpointIds: string[], dataBreakpointIds: string[]): Promise<void>; }

Discussion:
Set some breakpoints Access from an extension- it's an empty array Try again - it's full Seems that we don't sync breakpoint into to the EH until the first call to one of the breakpoint properties do you have some context on this? It's a little confusing because I wouldn't expect sending breakpoint infos to be expensive, and I would expect to be able to access the breakpoints array immediately.
I do not have more context. I believe is the author of this code. I like your suggestion that we change this and actively sync the breakpoints into the EH (since it should not be expensive).
The observed behavior is by design: we want to avoid that all breakpoints get transferred to all active extensions all the time. But the API doc doesn't explain this...
Thanks is the worry that it's too much data/too expensive? What's the solution for extensions that need to access the list of breakpoints?
yes, potentially too much data and traffic for all extensions. What's the solution for extensions that need to access the list of breakpoints? adding a to the function of an extension will register the extension to receive live updates for . With this will always reflect the current set of breakpoints.
Thanks, I don't really understand that though, it doesn't seem like that much traffic/data, compared to something like the full text of open documents. If it's going to work this way, I should document it in But I might try doing some testing to remove this restriction because I think it's unexpected.
Verification steps: Create an extension that can log the value of Set a breakpoint in any file Then trigger your extension to check the length of the breakpoints array It should log the correct value on the first try- previously it would have been 0 on the first access, then the correct value afterwards
Change:
primary: KeyCode.F4, weight: KeybindingWeight.WorkbenchContrib, }], <del> category: category.value, </del> <ins> category: category, f1: true, </ins> precondition: ContextKeyExpr.or(Constants.HasSearchResults, SearchEditorConstants.InSearchEditor), }); }

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 <!-- 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.1 OS Version: Ventura 13.0.1 Steps to Reproduce: shift + p "replace" replace in files command is found
Was there ever such a command? is there.
that's exactly the one I'm talking about. I looked it up in 3 computers and only found the command in the one I update vscode the least. I'm going to see if it's any plugin I have. I recall using it very recently and the only thing I remember adding or updating was vscode itself
is in the Command Palette of both Stable v1.73.1 and Insiders v1.74 for me.
ok, thanks for verifying. I am going to validate, report my findings and close the ticket when I get home
the command i was looking for is a different one. it is like "Search: Replace in files" and what it used to do is switch to the search tab and automatically open the replace box like the following screenshot. the pc that had the command automatically updated, i was going to show the screenshot but it was too late :(. the command was no longer there !
it was this one. found it in another laptop i no longer used. i disabled wifi to prevent auto updating. !
what version is the still visible?
I saw it in the latest version as of two weeks ago. I got the screenshot from 1.71.2
Caused by a regression in , will fix after is merged
this was released in 1.74.0
Change:
assertVariableResolve3(resolver, 'CURRENT_DAY_NAME_SHORT'); assertVariableResolve3(resolver, 'CURRENT_MONTH_NAME'); assertVariableResolve3(resolver, 'CURRENT_MONTH_NAME_SHORT'); <ins> assertVariableResolve3(resolver, 'CURRENT_SECONDS_UNIX'); </ins> }); test('creating snippet - format-condition doesn't work #53617', function () {

Discussion:
I would like a new Snippet Variable for time to be to the variables listed here. Something like or Number of seconds since the unix epoch.
Nice. I would like to work on that
I've got a commit here that works on my local build. Does this look good to you? I just get the milliseconds since epoch using and divide by 1,000. However I use to round to the nearest integer so there aren't a bunch of decimals. If that's what you wanted, I'll go ahead and open the PR, but just wanted to share it for discussion before I go ahead and do that.
I thought was the normal way of doing that? PS: just occurred, would be better since could go upwards
Ah you are right, completely forgot about . Definitely a cleaner look, and I've also changed round to floor. The new commit is and local build works perfect. Was there anything else that crossed your mind?
tested this is a Snippet in Insiders edition today. Works as expected. Thank you very much.
Change:
if (error) { collector.addRule(`.no-results.matchesCount { color: ${error}; }`); } <ins> const toolbarHoverBackgroundColor = theme.getColor(toolbarHoverBackground); if (toolbarHoverBackgroundColor) { collector.addRule(` div.simple-find-part-wrapper div.button:hover:not(.disabled) { background-color: ${toolbarHoverBackgroundColor}; } `); } const toolbarHoverOutlineColor = theme.getColor(toolbarHoverOutline); if (toolbarHoverOutlineColor) { collector.addRule(` div.simple-find-part-wrapper div.button:hover:not(.disabled) { outline: 1px dashed ${toolbarHoverOutlineColor}; outline-offset: -1px; } `); } </ins> });

Discussion:
And instead pass in (or don't) a new option for the type
so the complexity here is that we can't reference the keybinding service within the super call to the constructor and need to do that to provide the options to the find input object that's read only.
the alternative would be to pass in the options from both the terminal view and terminal editor (redundant)
going to pass in an options object and handle the keybinding in simple find widget
Spent awhile on this, don't think we will get to it
Change:
import { IStorageService, StorageScope, StorageTarget } from 'vs/platform/storage/common/storage'; import { DEFAULT_PRODUCT_ICON_THEME_SETTING_VALUE } from 'vs/workbench/services/themes/common/themeConfiguration'; import { fontIdRegex, fontWeightRegex, fontStyleRegex, fontFormatRegex } from 'vs/workbench/services/themes/common/productIconThemeSchema'; <del> import { isString } from 'vs/base/common/types'; </del> <ins> import { isObject, isString } from 'vs/base/common/types'; </ins> import { ILogService } from 'vs/platform/log/common/log'; import { IconDefinition, getIconRegistry, IconContribution, IconFontDefinition, IconFontSource } from 'vs/platform/theme/common/iconRegistry'; import { ThemeIcon } from 'vs/platform/theme/common/themeService';

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?: No <!-- If you answered No above, use 'Help: Start Extension Bisect' from Command Palette to try to identify the cause. --<!-- Issues caused by an extension need to be reported directly to the extension publisher. The 'Help Report Issue' dialog can assist with this. --- VS Code Version: 1.64.0 OS Version: Windows 11 21H2 Steps to Reproduce: a window another window with and observe that product icon themes don't load immediately and you are shown the default ones for a short while. https://user- The video above contains an example of this issue happening. If it matters, I am using the Fluent Icons product icon theme.
Why does this have the feature request label? This is a bug.
Change:
this.ignoreUnhandledExtHostErrors = options?.ignoreUnhandledErrors ?? false; this._ignoreBuiltinCommonProperties = options?.ignoreBuiltInCommonProperties ?? false; this._additionalCommonProperties = options?.additionalCommonProperties; <del> this._appender = sender; </del> <ins> this._sender = sender; </ins> this._telemetryEnablements = { isUsageEnabled: telemetryEnablements.isUsageEnabled, isErrorsEnabled: telemetryEnablements.isErrorsEnabled }; }

Discussion:
This looks like we have telemetry loggers without appenders. Can we add a strict check or in the API impl?
Change:
instantiationService.get(IUserDataSyncAccountService) || instantiationService.stub(IUserDataSyncAccountService, UserDataSyncAccountService), instantiationService.get(ILifecycleService) || instantiationService.stub(ILifecycleService, new TestLifecycleService()), instantiationService.get(INotificationService) || instantiationService.stub(INotificationService, new TestNotificationService()), <del> instantiationService, </del> <ins> instantiationService.get(IHostService) </ins> ); }

Discussion:
Steps to Reproduce: = workbench does not open From: Workaround:
I think depending on is logically correct. But, in web is depending on other workbench services like --and causing cycle. Not having consistent base services in desktop and web is causing confusion and debt and it might add up as we evolve. I think fixing in is just a patch. To unblock for now, I removed the dependency on and used . Assigning back to you for fixing this in .
Change:
resolved "https://registry.yarnpkg.com/xterm-addon-unicode11/-/xterm-addon-unicode11-0.5.0-beta.1.tgz#8a9e9356018e082318abbe2be1f9599fcc6b46a2" integrity sha512-uAErX4gwhW6N524stLG6oZR3yBGgPnFmZ2Tv4vyYy7tcgDuHRoc22xYSCDgO1ohz1FLlOm8JGXRjXliwO9ic3A== <del> xterm-addon-webgl@0.14.0-beta.8: version "0.14.0-beta.8" resolved "https://registry.yarnpkg.com/xterm-addon-webgl/-/xterm-addon-webgl-0.14.0-beta.8.tgz#486ae22b2eb88a12ebded366c4019ee26409cbb8" integrity sha512-G0F70f6zGWtXuZxKiTn9BQswaVz85wcCuadnWRdPFDBlgdEfcboCvVZgQetklOIkluVpt8tYYK013/25iMRKTA== </del> <ins> xterm-addon-webgl@0.14.0-beta.16: version "0.14.0-beta.16" resolved "https://registry.yarnpkg.com/xterm-addon-webgl/-/xterm-addon-webgl-0.14.0-beta.16.tgz#161d5329e8b82fb80cb333f3b957d9c1fb735b63" integrity sha512-W985IS9RTwcwaVlmw8UOxqHur7YSP+EoaYHLvxyj5Flih0tZgJdWjlXs6Om2PmT5VifB+c88AUjL5SeZTjRgqQ== </ins> <del> xterm-headless@5.1.0-beta.15: version "5.1.0-beta.15" resolved "https://registry.yarnpkg.com/xterm-headless/-/xterm-headless-5.1.0-beta.15.tgz#fba76c8e95b552e922354409864c0f55d3b499f7" integrity sha512-LVtB+KkHs1R2RG8ug3IfOOU0J+qEGttfXagGxfzNq8zxxoSsgoY4D0YvLpM7M/5FK6eGK5K8/yol9XAK63ENog== </del> <ins> xterm-headless@5.1.0-beta.25: version "5.1.0-beta.25" resolved "https://registry.yarnpkg.com/xterm-headless/-/xterm-headless-5.1.0-beta.25.tgz#9c9e117caa7c5fb56e4518e6ca14549c3d64d974" integrity sha512-NsEsf/tGdIuoi7Ey/jIPFbRVWgNFhlmw9PKibW8GsudfAZkbbgggLe/gCHFlOYXpa+vYNGr8cDmDqGT86mFvvw== </ins> <del> xterm@5.1.0-beta.15: version "5.1.0-beta.15" resolved "https://registry.yarnpkg.com/xterm/-/xterm-5.1.0-beta.15.tgz#146b70c81fd286dbb003d18449918326fa355b6b" integrity sha512-fO87pEPFMr+h7eo51+6+ew3OhzLm2wwSYz6w/y5lH986rD1lgAeEqFuzjr64pjBzwAihnoaTpumYg5lTZDQpSA== </del> <ins> xterm@5.1.0-beta.25: version "5.1.0-beta.25" resolved "https://registry.yarnpkg.com/xterm/-/xterm-5.1.0-beta.25.tgz#e926e1bbfe64deee5138dbde4e233963fe9baa9c" integrity sha512-bX1XJcFWcAvkEoDSGsJa/2hcgHFdLcF9/QnfgsRyePJniTOYuXSK3Z4JK4h+2myUyHMeXjqUehMsfzQ/hA8k9w== </ins> yallist@^4.0.0: version "4.0.0"

Discussion:
Testing using canvas render. ! Should the line be continuous even though it overlaps the characters? vs "on": ! I'm talking about characters like and .
I didn't bother adding this to the canvas renderer as it's the fallback which is primarily for iPad atm, nothing stopping it from working there too though. Should really consolidate the rendering code for webgl and canvas as they mostly do the same thing when drawing the actual characters.
The wavy underline looks off with gpu enabled (first example in the attached screenshot). With the canvas setting, it's not rendered at all. !
The look of curly was going to be revisited in
Change:
// Do not sort roots if (statA.isRoot) { <ins> if (statB.isRoot) { const ws = this.contextService.getWorkspace(); return ws.roots.indexOf(statA.resource) - ws.roots.indexOf(statB.resource); } </ins> return -1; } if (statB.isRoot) {

Discussion:
VSCode Version: Code - Insiders 1.17.0-insider (, 2017-09-08T10:13:13.694Z) OS Version: Darwin x64 16.7.0 Extensions: Extensions are disabled Steps to Reproduce: a workspace file with the following order of root folders in the multi root workspace is not as expected: ! With more root folders, the order is completely unpredictable, but always consistent. Reproduces without extensions: Yes
This appears to be an issue with how v8 implements as an unstable sort. Preliminary fix at
Change:
} protected renderValue(dataElement: SettingsTreeSettingElement, template: ISettingEnumItemTemplate, onChange: (value: string) => void): void { <ins> const enumItemLabels = dataElement.setting.enumItemLabels; </ins> const enumDescriptions = dataElement.setting.enumDescriptions; const enumDescriptionsAreMarkdown = dataElement.setting.enumDescriptionsAreMarkdown;

Discussion:
Issue Type: <bBug</b! VS Code version: Code - Insiders 1.50.0-insider (, 2020-09-12T00:56:22.923Z) OS version: Darwin x64 19.4.0 Remote OS version: Linux x64 4.19.76-linuxkit <details<summarySystem Info</summary </details<!-- generated by issue reporter --
This is the order that it's contributed in. Do you think that the settings UI should sort them alphabetically like they are in the suggest widget, or leave them in contribution order, in case that is important? Looking through some enum settings, some seem to order the options in an intentional way, like with the default first, or the simpler options first. Some are random or are sorted. I think I am inclined to display them in contributed order to keep this an option (and we can sort the encodings manually), but I'm not sure, what do you think?
It should be this order, same as the picker: ! The encodings are not sorted by name intentionally. But they are grouped by type and I guess that is not very visible in the settings editor.
Oh, got it. I've seen a few of these cases where it would make sense to display the enumDescription in the dropdown instead of the actual value. It doesn't make sense in general but it would be cool to provide an option for settings to opt into that, what do you think?
Yeah I think it would make a lot of sense in this case
I think we should add an option to the schema contribution for this but I have no clue what to call it
If the dropdown list will now display the enumDescriptions, should the description footer on the list show the value to be set? Should the collapsed dropdown control show the selected value or its enumDescription?
Yes, I'd say just swap them I think it should show the enumDescriptioni
I'll start working on this issue. Thanks for your help.
Now this will show with the key in the description area in square brackets. But it would look much nicer to match the editor encoding picker, so I opened for that.