jiebi/CodeConvo huggingface dataset:
Change:
CONTEXT_RESPONSE_FILTERED.negate()	// but not when response is filtered ), group: 'navigation' <ins> }, { id: MENU_INLINE_CHAT_WIDGET_SECONDARY, when: ContextKeyExpr.and( ScopedChatSynthesisInProgress,		// only when in progress CONTEXT_RESPONSE,					// only for responses CONTEXT_RESPONSE_FILTERED.negate()	// but not when response is filtered ), group: 'navigation' </ins> } ] });

Discussion:
I see the speaker icon has moved to the bottom right which is . But when I read out aloud, I now see a progress icon appearing: ! Here is how it looked like in stable: ! Essentially there used to be a stop icon that was not spinning. That stop icon was the mic icon with a little "x".
Change:
import { Emitter, Event } from 'vs/base/common/event'; import { DisposableStore } from 'vs/base/common/lifecycle'; import { IPosition, Position } from 'vs/editor/common/core/position'; <del> import { clamp } from 'vs/base/common/numbers'; </del> import { renderLabelWithIcons } from 'vs/base/browser/ui/iconLabel/iconLabels'; import { IInstantiationService } from 'vs/platform/instantiation/common/instantiation'; import { inlineChatBackground } from 'vs/workbench/contrib/inlineChat/common/inlineChat';

Discussion:
Repro: vscode on (wide) external monitor inline chat - Additional info: Resizing vscode to half of screen fixes the problem Version: 1.88.0-insider Commit: Date: 2024-03-27T05:51:26.826Z Electron: 28.2.6 ElectronBuildId: Chromium: 120.0.6099.291 18.18.2 V8: 12.0.267.19-electron.0 OS: Darwin arm64 23.4.0

Sometimes the default width for inline chat seems very wide: <img width="854" alt="image" src=""Maybe it could grow while typing and or allow to be resized.
decided against dynamic and going with a more reasonable default width of 360px
Change:
background: url('loading.svg') center center no-repeat; } <ins> .monaco-workbench.vs-dark .extensions-viewlet > .extensions .extension-list-item.loading { background-image: url('loading-dark.svg'); } .monaco-workbench.hc-black .extensions-viewlet > .extensions .extension-list-item.loading { background-image: url('loading-hc.svg'); } </ins> .extensions-viewlet > .extensions .extension-list-item.loading > .icon-container { display: none; }

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: OS Version: CPUs | Apple M1 (8 x 24) -- | -- GPU Status | 2dcanvas: enabled canvasooprasterization: disabledoff directrenderingdisplaycompositor: disabledoffok gpucompositing: enabled metal: disabledoff multiplerasterthreads: enabledon opengl: enabledon rasterization: enabled rawdraw: disabledoffok skiarenderer: enabledon videodecode: enabled videoencode: enabled webgl: enabled webgl2: enabled Load (avg) | 2, 2, 2 Memory (System) | 16.00GB (0.08GB free) Screen Reader | no VM | 0% Steps to Reproduce: in extensions the scroll gutter https://user-
Using the list widget underneath, hence assigning to
This happens because the list is paged and is loading each element from the network. Want to provide a better loading animation here?
Can we do something simple and use the loading icon animation? https://user-
What do you think
This is much better! Thank you for looking into this
Change:
const args = [ '--disable-telemetry', '--disable-workspace-trust', <del> `--port${port++}`, </del> <ins> `--port=${port++}`, </ins> '--enable-smoke-test-driver', `--extensions-dir=${extensionsPath}`, `--server-data-dir=${agentFolder}`,

Discussion:
Noticed a flaky web remote smoke test run: Then diagnostics printed after shows this: Build: I think saw something similar. Did anything change with the server and how it shuts down? The server logs print MBs of this data: Full logs:
Looking at the left-over process: The server in the test also appears to want to start on port 8000: I think this might be caused by a missing over here: Edit I've created a PR at Regarding the server process leaking, could this be a consequence of the before hook failing? Is there any cleanup code running in the smoke test infrastructure to kill the server process in case the before hook throws?
Yeah we do: This is also relatively new, we have been running with this code for months now and only now I start to see this issue, but your fix will help nevertheless.
Change:
- (experimental) Updating links when a file is moved / renamed. Uses a custom `markdown/getEditForFileRenames` message. <del> - (experimental) [Pull diagnostics (validation)](https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/#textDocument_pullDiagnostics) for links. </del> <ins> - [Pull diagnostics (validation)](https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/#textDocument_pullDiagnostics) for links. </ins> ## Client requirements

Discussion:
Add some form of error reporting for links in markdown files where we are confident that link is incorrect. Example: We should also have a setting to disable this error reporting since we will not be able to understand every flavor of markdown link
Bad references (seems like this should almost always be a reasonable error to report) Missing files (false positive if users rely on different logic to resolve markdown paths) - Missing headers (false positive if users rely on custom slugifier or are linking to something besides headers, such as html elements) -Checking links to external resources () Checking html in markdown
Re-opening as we will likely keep this as experimental this iteration
Change:
<ins> { "displayName": "TOML Language Basics", "description": "Provides syntax highlighting and bracket matching in TOML files." } </ins>  No newline at end of file

Discussion:
I have found as a related issue, but that seems to only tackle support in markdown files. I am suggesting that VSCode support the file extension. It should be very similar to the syntax, and is something I would be willing to tackle in a PR.
Yes, we would take a PR for this. Look at the or the extensions for examples. We pull in the grammars used in these extension from existing repos so that we don't have to maintain them in the VS Code repo. Both the or the extensions provide examples of this in their npm script
Perfect. I have found: , and will submit a PR later today. Thanks for the tip
After further discussion with the VS Code team, we have decided to revert this addition with See that commit for an explanation of why we feel this is the correct decision for guiding users to a better toml experience and for maintaining VS Code itself
Change:
constructor() { super({ <del> id: NotebookIndentUsingSpaces.ID, </del> <ins> id: NotebookIndentationToSpacesAction.ID, </ins> title: nls.localize('convertIndentationToSpaces', "Convert Indentation to Spaces"), precondition: undefined, });

Discussion:
to repro: click notebook indentations statusbar entry run "indent using spaces/tabs" and select a new number entry will not update, however indentations work correctly given the selection that the user made and the current settings.

No a "choose intentation type" entry in status bar when editing in a notebook. I have a notebook with tab indentation but it seems theres some global spaces setting that overrides it... even pasting a literal tab charachter inserts spaces :/ !
False alarm. The status bar entry just moved so much that I didn't see it right away, and it has a different name in the status bar entries context menu.
Actually, looks like the status bar is really slow to update. I saw it update eventually, but I'm not sure what caused it to finally show the correct thing. !
Change:
} } <ins> private _currentPosition(): number { const currentElement = this._navigator.current(); if (!currentElement) { return -1; } return this._elements.indexOf(currentElement); } </ins> private _initialize(history: readonly T[]): void { this._history = new Set(); for (const entry of history) {

Discussion:
In the debug console, evaluate something, then 3 times. Press up, get Press up again, get again Press up again, get the previous history entry Seems like it always reduces down to 2 entries, or there might be something else weird going on
Oh wait, this is in vscode right?
We are de-duplicating history entries which makes sense for me. This is designed behavior What is the use case of seeing 3 times in history?
The bug is that I see it twice, when I should see it once
I can not repro. What are you doing differnetly than me in this gif Please note that I pressed up only two times at the end. Thus is only once in history !
Hmm, extra steps Execute things as above Press up to go through history, it works Press down to go back Press down a couple extra times - I did this because I was expecting to get back to an empty input if I press down Then, I press up on and nothing happens, it's still on !
Ok, the issue is when you reach the end of history up / down take an extra hit to get the previous or the next one. Duplication is not related. Renaming this issue. I am open for PRs that fix this Code pointer Probably the has an issue at the end of history
Hello. I would like to contribute on this if you are open. I will submit a PR as soon as I fix it :)
To verify: debugging, open debug console , then evaluate sure pressing up gets you all the way back to the end of history in the debug console input sure pressing down gets you immieadly to the previous history element. Thus no duplicatino happens
Change:
return false; } <ins> function isLocationInsideTopLevelProperty(location: Location, values: string[]) { return values.includes(location.path[0] as string); } </ins> interface IExtensionsContent { recommendations: string[]; }

Discussion:
Type: <bBug</bThere are missing completions inside files which do appear inside the folder. For example, here are the completions in a file: ! Versus the one in a file: ! VS Code version: Code - Insiders 1.73.0-insider (, 2022-10-24T05:31:12.081Z) OS version: WindowsNT x64 10.0. Sandboxed: Yes <details<summarySystem Info</summary </details<details<summaryExtensions (9)</summaryExtensionVersion ------ vscode-eslint2.2.6 todo-tree0.0.219 reg1.1.0 csharp1.25.0 material-icon-theme4.21.0 msbuild-project-tools0.4.9 intellicode-api-usage-examples0.2.6 vscodeintellicode1.2.29 volar1.0.9 (1 theme extensions excluded) </details<details<summaryA/B Experiments</summary</details<!-- generated by issue reporter --
do you know where these variable completions come from? I think they are sort of generic for every string in and I think they should show up in the workspace config too.
they come from here: Makes sense to me to add them in .code-workspace.
This issue has been closed automatically because it needs more information and has not had recent activity. See also our guidelines. Happy Coding!
Was there any information you wanted me to provide? It seems like a solution was proposed by
Change:
const extHostUriOpeners = rpcProtocol.set(ExtHostContext.ExtHostUriOpeners, new ExtHostUriOpeners(rpcProtocol)); const extHostProfileContentHandlers = rpcProtocol.set(ExtHostContext.ExtHostProfileContentHandlers, new ExtHostProfileContentHandlers(rpcProtocol)); rpcProtocol.set(ExtHostContext.ExtHostInteractive, new ExtHostInteractive(rpcProtocol, extHostNotebook, extHostDocumentsAndEditors, extHostCommands, extHostLogService)); <del> const extHostChatAgents2 = rpcProtocol.set(ExtHostContext.ExtHostChatAgents2, new ExtHostChatAgents2(rpcProtocol, extHostLogService, extHostCommands, extHostDocuments, extHostNotebook)); </del> <ins> const extHostChatAgents2 = rpcProtocol.set(ExtHostContext.ExtHostChatAgents2, new ExtHostChatAgents2(rpcProtocol, extHostLogService, extHostCommands, extHostDocuments)); </ins> const extHostChatVariables = rpcProtocol.set(ExtHostContext.ExtHostChatVariables, new ExtHostChatVariables(rpcProtocol)); const extHostLanguageModelTools = rpcProtocol.set(ExtHostContext.ExtHostLanguageModelTools, new ExtHostLanguageModelTools(rpcProtocol)); const extHostAiRelatedInformation = rpcProtocol.set(ExtHostContext.ExtHostAiRelatedInformation, new ExtHostRelatedInformation(rpcProtocol));

Discussion:
Today inline chat for editors and notebooks rely on implicit variables, e.g . This isn't proper and we should have real API, e.g some extra property on that encapsulates data about the chat location.
Done, no more implicit variables
Change:
return this.accountsMenuBadgeDisposable.clear(); } <del> const badge = new NumberBadge(1, () => localize('check for pending cloud changes', 'Check for pending cloud changes')); this.accountsMenuBadgeDisposable.value = this.activityService.showAccountsActivity({ badge, priority: 1 }); </del> <ins> const badge = new NumberBadge(1, () => localize('check for pending cloud changes', 'Check for pending cloud changes (1)')); this.accountsMenuBadgeDisposable.value = this.activityService.showAccountsActivity({ badge }); </ins> } private async autoStoreEditSession() {

Discussion:
Recently I noticed that my account icon shows a notification, despite there being no notification :bug: <img width="498" alt="Screenshot 2023-05-31 at 15 03 30" src=""
I think it wants you to turn on settings sync.
in that case perhaps we could show a little (1) in front of to signify that an action is prompted?
I agree it's not obvious at the moment, but that's what it turned out to be for me.
Looks like there used to be an extra clue:
This is pretty unusual. The number on the account icon is supposed to be the sum of the s in the menu... and in fact, I have the 1 for settings sync: ! Do you still see this issue? I wonder if maybe your screenshot is a case of you clicking on the Account menu right as it was about to add the to the Menu native menus can't be updated once they're shown (electron issue) so the addition of wasn't applied until the menu is reshown.
hi I tried again and also signed into the settings sync to see if the problem would disappear, but strangely it persists. That is I have settings sync enabled and I still see the blue badge icon. In the video below I also show my current settings.
How odd! if you turn on those other things, does the badge go away? I'm trying to rule out some things.
Hi thanks for the reply. I clicked on the button and the blue badge icon disappeared.
Interesting... any thoughts?
If you get into desktop via a Continue On flow from the browser and have pending changes, we first prompt you to enable Cloud Changes in order to retrieve those pending changes. If you ignore the prompt, that's when this badge would appear in the accounts menu, and on hover there would have been a message. Also, this badge goes away after you fully close and reopen VS Code. assuming you used Continue On at some point, which is the only way that the Cloud Changes badge would appear, this behavior is all as expected. We'll likely rework this soon, but in the meantime I think the change that I should make here to reduce confusion is to also add the to the hover message.
Change:
this._onDidInputData.fire(this); this._onDidSendText.fire(text); this.xterm?.scrollToBottom(); <del> this._onDidRunText.fire(); </del> <ins> if (shouldExecute) { this._onDidExecuteText.fire(); } </ins> } async sendPath(originalPath: string | URI, shouldExecute: boolean): Promise<void> {

Discussion:
This configuration is probably pretty obscure (and I just had it due to testing) but: : , : the string into the terminal and shift+enter to get a newline buffer opens :bug:. The desc for says it's only after , so I don't think this is expected behavior (although I did just paste the selected text in the terminal manually).
did you happen to have enabled? that could explain what you describe, if so.
I don't have enabled.
Change:
import { Disposable, DisposableStore } from 'vs/base/common/lifecycle'; import { Event, Emitter } from 'vs/base/common/event'; <del> import { EventType, addDisposableListener, getClientArea, Dimension, position, size, IDimension, isAncestorUsingFlowTo } from 'vs/base/browser/dom'; </del> <ins> import { EventType, addDisposableListener, getClientArea, Dimension, position, size, IDimension, isAncestorUsingFlowTo, computeScreenAwareSize } from 'vs/base/browser/dom'; </ins> import { onDidChangeFullscreen, isFullscreen } from 'vs/base/browser/browser'; import { IWorkingCopyBackupService } from 'vs/workbench/services/workingCopy/common/workingCopyBackup'; import { isWindows, isLinux, isMacintosh, isWeb, isNative, isIOS } from 'vs/base/common/platform';

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 resize steps when using the / commands / shortcuts are pretty heavy. Being a keyboard driven navigator through the editor I would love to have an option to determine the step size for those commands, because I think this way no users would need to compromise. If it's needed, I would put my bit of work into that if you would like to have such an option. Even if there shall not be an option, it would be marvelous of you to reduce the current default step size by just 1 percent. This keeps it still fairly big if someone prefers those step sizes but already allows more precise resizing with the keyboard so the view / splits can fit one's needs. Basically: to Imho even smaller step sizes would be better
seems like a fair request
After thinking about this, I decided to move away from using view percentage increments. Instead, we now use css px units so that the resize increments are consistent. The newly chosen increment size is ~equivalent to 5.5% of a 1080px width monitor.
Great to read. Thank you!
I run vscode on a 27" 1440p monitor in vertical orientation, and after a recent vs code upgrade now my command is increasing the terminal height by only 1 line, instead of ~10 lines like before. Is that expected from this change? The size increase now feels very small, and I'm retraining my fingers to expand the terminal directly to full-screen (Ctrl+Shift+Q) instead of expanding the terminal 4 or 5 times (Ctrl+Cmd+Up). Now, to use (Ctrl+Cmd+Up) I'd have to press ~40 to ~50 times (or hold) to get it to a mostly-expanded size.
I'm not a vscode maintainer but what I can tell: To meet your needs with the current implementation, you could map the keybinding you used to use to a multi-command or macro. Using the corresponding vscode extension / .That way you could control the exact resize step amount. that make it sounds like a tough thing to do ‍. As far as I could tell until now a human brain should be able to do it in a few minutes or a handful of repetitions .
Change:
import { KeybindingWeight } from 'vs/platform/keybinding/common/keybindingsRegistry'; import { ILogService } from 'vs/platform/log/common/log'; import { Registry } from 'vs/platform/registry/common/platform'; <del> import { contrastBorder, listInactiveSelectionBackground, registerColor, transparent } from 'vs/platform/theme/common/colorRegistry'; import { registerThemingParticipant } from 'vs/platform/theme/common/themeService'; </del> <ins> import { contrastBorder, ifDefinedThenElse, listInactiveSelectionBackground, registerColor } from 'vs/platform/theme/common/colorRegistry'; </ins> import { EditorPaneDescriptor, IEditorPaneRegistry } from 'vs/workbench/browser/editor'; import { Extensions as WorkbenchExtensions, IWorkbenchContribution, IWorkbenchContributionsRegistry } from 'vs/workbench/common/contributions'; import { EditorExtensions, EditorsOrder, IEditorFactoryRegistry, IEditorSerializer, IUntypedEditorInput } from 'vs/workbench/common/editor';

Discussion:
Don't call registerColor from registerThemingParticipant, as this only works by accident. applies the theme to the registered color variables. At this point, no new colors should be registered. Consider assigning these colors a 100% transparent color as default value. Then you can use a conditional check to only use this color if it is non-transparent, otherwise use the default color.
Where would that take place? Inside of registerThemingParticipant? We're using the Color as a object within the , so we can't just adjust the css.
do you know what they should do best here?
You want to register a color where the default colors are computed based on other colors? You can do this with color transformers. We have some predefined ones like , , but also more complex ones as and . is likely what you want:
Change:
*--------------------------------------------------------------------------------------------*/ import * as dom from 'vs/base/browser/dom'; <del> import { timeout } from 'vs/base/common/async'; </del> <ins> import { Barrier, timeout } from 'vs/base/common/async'; </ins> import { debounce } from 'vs/base/common/decorators'; import { Emitter, Event } from 'vs/base/common/event'; import { dispose, IDisposable, toDisposable } from 'vs/base/common/lifecycle';

Discussion:
Started in first 1.72 insider build !
It's related to not being and going this route: Probably more fallout from the change in and
View visibility changes before the backend is registered:
Change:
if (this._terminalService.isProcessSupportRegistered) { if (this._terminalsInitialized) { if (!hadTerminals) { <del> this._terminalService.createTerminal(); </del> <ins> this._terminalService.createTerminal({ target: TerminalLocation.TerminalView }); </ins> } } else { this._terminalsInitialized = true;

Discussion:
The terminal commands and are used for both the panel buttons and the commands in the CP (that we do want to use the defaultLocation for). Not sure how to differentiate between them - don't think we want to duplicate the actions. let me know what you think
Let's wait until after is done since that will likely add target support to the create commands
Other reproes: Ctrl / Cmd J to open the panel - terminal editor is created focus the terminal editor, click the trash can on the panel , close the editor tab - a bunch of errors in the console