jiebi/CodeConvo huggingface dataset:
Change:
} if (isLanguageCondition) { <del> if ((<IFileLanguageCondition>condition).languages.includes(model.getLanguageId())) { </del> <ins> if ((<IFileLanguageCondition>condition).languages.includes(languageId)) { </ins> languageMatched = true; } }

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. --Current behavior: If a user opens a Python file (.py) or saves a file with a .py extension and does not have the Python extension installed, VS Code suggests installing the Python extension for Python support using the prompt below: <img width="236" alt="image" src=""Proposed behavior: It would be nice if we could have an installation trigger/prompt to install the Python extension before a user saves the file with the appropriate file extension. In this case, if the user creates a new untitled file --selects Python from the language dropdown --the user is prompted to install the Python extension (flow depicted in the gif below) ! In user studies, we have observed users struggle to find where to install the Python extension (or do not realize they need an extension for Python support) and do not think to save the file in this case causing them to get stuck at this point.
I remember this used to be supported and would have broken sometime back.
Another scenario I don't believe has been supported but could be useful is when users do not select Python as the language but instead just start typing Python code and the language model is able to detect it. Thoughts on enabling a prompt for this scenario as well?
Is not the other scenario same as this - At the end of both scenarios, the language mode of the file has changed to python. Language mode change will trigger the recommendation.
In the second scenario, the user has to click the lightbulb in order to get the language mode to change (or have the setting to automatically switch the language mode to the detected language enabled). The idea there was to prompt the user if the model detects their code to be Python, without the user having to click on the small lightbulb in the bottom corner. We haven't observed users engaging with or noticing the status bar much which was the motivator for this scenario.
I see. I will reopen the other issue for that scenario. Can you please update the issue and mention the use case clearly. Thanks.
Change:
semver "^5.4.1" sumchecker "^2.0.2" <del> electron@4.2.9: version "4.2.9" resolved "https://registry.yarnpkg.com/electron/-/electron-4.2.9.tgz#81226aa1ba58e1b05388474faf5a815010a11ea2" integrity sha512-zC7K3GOiZKmxqllVG/qq/Gx+qQvyolKj5xKKwXMqIGekfokEW2hvoIO5Yh7KCoAh5dqBtpzOJjS4fj1se+YBcg== </del> <ins> electron@4.2.10: version "4.2.10" resolved "https://registry.yarnpkg.com/electron/-/electron-4.2.10.tgz#7096450bb14875ec2e6797316c0c1034e7fe2b76" integrity sha512-dFhsJOW7OZX8JxjoBdugUZh6VWbs5PjlQIH6/w1KsZO7otgBy44j9vPI31KnIid3bdMtNbmTEF+6PA32z88kRw== </ins> dependencies: "@types/node" "^10.12.18" electron-download "^4.1.0"

Discussion:
Issue Type: <bBug</bThe first Mac native tab has its top row cut off: ! The second one has the statusbar below the visible window: ! Resizing the window is a workaround. VS Code version: Code - Insiders 1.38.0-insider (, 2019-08-15T05:23:00.986Z) OS version: Darwin x64 18.6.0 <details<summarySystem Info</summary </details<details<summaryExtensions (27)</summaryExtensionVersion ------ unique-lines1.0.0 ssh0.0.4 ghlink1.1.0 remotehub0.5.0 EditorConfig0.13.0 tslint1.0.44 git-project-manager1.7.1 rest-client0.22.0 solidity0.0.58 theme-karyfoundation-themes18.2.1 graphql-for-vscode1.15.1 vscode-docker0.7.0 remote-containers0.67.4 remote-ssh-edit-nightly2019.8. remote-ssh-explorer-nightly2019.8. remote-ssh-nightly2019.8. azure-account0.8.4 azurecli0.4.6 github-issues-prs0.9.1 debugger-for-chrome4.11.7 vetur0.22.1 vscode-versionlens0.24.0 vscode-yaml0.4.1 vscode-workspacecontains-canary0.0.2 vscode-open-in-github1.12.0 ayu0.18.0 vscodeintellicode1.1.9 </details<!-- generated by issue reporter --
does this reproduce when you disable grid layout?
Yes, it's the same with grid layout disabled.
I cannot reproduce using Electron 4.2.7
!
Fix is up at , should be available with next electron release.
we will take the new build and will push it via a PR.
Change:
} if (!visible) { <del> return { range: firstLineRange(range), options: { isWholeLine: true, description: 'run-test-decoration' } }; </del> <ins> return { range: collapseRange(range), options: { isWholeLine: true, description: 'run-test-decoration' } }; </ins> } let computedState = TestResultState.Unset;

Discussion:
Using the test-provider-sample, adding newlines on a line marked as a test duplicates the test icon: ! It sorts itself out on the next update (at least in the sample, I'm still investigating to figure out if there's another issue, or that's in my extension). But it still looks bad - especially if a language is debouncing edits and/or discovery may be slow.. You can make the issue more pronounced (as I did for the GIF) by updating the test-provider-sample to have a delay in its updates:
I was able to repro the full issue I'm seeing in Dart (where the icons never disappear) using the sample too: ! My changes to the sample are here: I changed it so that tests can span multiple lines (since the original code split on lines then searched each line) and use the full range as the for the test. Now when pressing in the test, the original issue (VS Code duplicate the icons) still occurs, but also after the updates, since the range computed by the provider doesn't change from the range VS Code currently has (at least that's my guess), there's no update to the gutter icons so they no longer get cleaned up.
That's correct, we let the editor do its default decoration tracking until an update is received from the extension. for testing decorations, I already set , but is there a similar option to avoid extending the range over lines when edited? Or, alternatively, a way to only apply the glyphMarginClassName to the first line of the range. Reference:
You can create two decorations per test. One which has a range, a hover message, etc. And another one which renders the glyph margin with a collapsed range (perhaps the start position of the range). If you use for the second one, given it begins as a collapsed range, it will never grow, it will always remain a collapsed range.
Change:
accept: () => commandService.executeCommand(selectAndStartID) }); <del> return debugConsolePicks; </del> <ins> return { picks: debugConsolePicks, activeItems }; </ins> }

Discussion:
Testing Placeholder could be more concise, for example "Search for debug session by name" -"Search debug session by name" !
Would it be better to have "Search debug sessions by name"? I noticed that the loaded script view says "Search loaded scripts by name". <img width="754" alt="image" src="https://user-"
The plural makes sense to me :) Thanks
Change:
} export function extractRangeFromFilter(filter: string, unless?: string[]): IFilterAndRange | undefined { <del> if (!filter || unless?.some(value => filter.indexOf(value) === 0)) { </del> <ins> // Ignore when the unless character not the first character or is before the line colon pattern if (!filter || unless?.some(value => { const unlessCharPos = filter.indexOf(value); return unlessCharPos === 0 || unlessCharPos > 0 && !LINE_COLON_PATTERN.test(filter.substring(unlessCharPos + 1)); })) { </ins> return undefined; }

Discussion:
open a file open an empty group to the side and focus it open quick open for files type a typescript file name add @ to enable symbol search :bug: the editor in group 1 changes, not the active group
Caused by , TIL about adding @ after a filename
I had seen your PR and actually thought you would fix an issue associated with that feature
I was fixing specifically in a folder/file name before a line/col match
To clarify the feature: typing in a file search allows to ad-hoc flip into a "go to symbol" without having to first open the file. I think I limit this to having at the end of the thing you search for. I.e. if you paste a path with a somewhere it would not trigger. I wonder why I am not doing this when you type for goto line
before it was only checking for the existence of @ and disabling line/col filter extraction if so
I am more arguing that when you search for a file and then type for a line/col pattern, we should automatically open the file in the background and initiate "Go to line", same as we do now for when you type for symbols.
that would be awesome . This was just a drive by fix from me, not sure if is tracking this
Change:
<ins> test/** OSSREADME.json </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:
import scorer = require('vs/base/common/scorer'); import strings = require('vs/base/common/strings'); <del> const FileNameMatch = /^([^.]*)(.(.*))?$/; </del> <ins> const FileNameComparer = new Intl.Collator(undefined, { numeric: true, sensitivity: 'base' }); </ins> export function compareFileNames(one: string, other: string): number { <del> let oneMatch = FileNameMatch.exec(one.toLowerCase()); let otherMatch = FileNameMatch.exec(other.toLowerCase()); let oneName = oneMatch[1] || ''; let oneExtension = oneMatch[3] || ''; let otherName = otherMatch[1] || ''; let otherExtension = otherMatch[3] || ''; if (oneName !== otherName) { return oneName < otherName ? -1 : 1; } if (oneExtension === otherExtension) { return 0; } return oneExtension < otherExtension ? -1 : 1; </del> <ins> return FileNameComparer.compare(one || '', other || ''); </ins> } export function compareAnything(one: string, other: string, lookFor: string): number {

Discussion:
VSCode Version: Code 1.8.0 (, 2016-12-13T17:45:32.595Z) OS Version: Windows_NT ia32 10.0. Extensions: Steps to Reproduce: 3 folders called "Folder 1" , "Folder 2" and "Folder 10" 10 appears in between Folder 1 and Folder 2. !
The macOS Finder, for example, handles this case correctly.
do you recall any reason why we are not using the for folders in ?
This actually happens for files and folders. A good area for a PR
As related, can also be included in February Milestone?
Unlikely.
Change:
"[yaml]": { "editor.insertSpaces": true, "editor.tabSize": 2, <del> "editor.autoIndent": "advanced" </del> <ins> "editor.autoIndent": "advanced", "diffEditor.ignoreTrimWhitespace": false </ins> }, "[dockercompose]": { "editor.insertSpaces": true,

Discussion:
<!-- Do Not Delete This! featurerequesttemplate --<!-- Please read our Rules of Conduct: --<!-- Please search existing issues to avoid creating duplicates. --I love that vscode had pylance for python toolchain, this is frustrating when you have a language support but an editor default that does not show syntax error. Please reconsider these samples of scenarios, Python uses indentation to delimit code blocks, which is 2 or 4 leading whitespaces. YAML uses indentation to delimit nesting level, which is also 2 or 4 leading whitespaces. Python is afaik the majority in ML community, see e.g. has 98.0% of python code, both pytorch and tensorflow has a python frontend. YAML has grown popularity comparable to json as configuration tool, e.g. a majority of linter that supports also supports . Ignoring whitespace diff actually leads to syntax error and thus broken code, it is not just a visual difference. <!-- Describe the feature you'd like. --Make this default:
<!-- -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!
Change:
mac: { primary: KeyMod.Shift | KeyMod.CtrlCmd | KeyCode.LeftArrow } }); <ins> // Map ctrl+alt+r -> ctrl+r when in accessibility mode due to default run recent command keybinding registerSendSequenceKeybinding('x12', { when: ContextKeyExpr.and(TerminalContextKeys.focus, CONTEXT_ACCESSIBILITY_MODE_ENABLED), primary: KeyMod.CtrlCmd | KeyMod.Alt | KeyCode.KeyR, mac: { primary: KeyMod.WinCtrl | KeyMod.Alt | KeyCode.KeyR } }); // Map ctrl+alt+g -> ctrl+g due to default go to recent directory keybinding registerSendSequenceKeybinding('x07', { when: TerminalContextKeys.focus, primary: KeyMod.CtrlCmd | KeyMod.Alt | KeyCode.KeyG, mac: { primary: KeyMod.WinCtrl | KeyMod.Alt | KeyCode.KeyG } }); </ins> // send ctrl+c to the iPad when the terminal is focused and ctrl+c is pressed to kill the process (work around for #114009) if (isIOS) { registerSendSequenceKeybinding(String.fromCharCode('C'.charCodeAt(0) - Constants.CtrlLetterOffset), { // ctrl+c

Discussion:
Forking off from Basic idea is have something similar to alt+f1 in the editor, but in the terminal and explain it in the textarea's aria-label
This will be testable on Monday. On Windows/Linux: On macOS:
/closedWith
Change:
private _height = 0; get height(): number { return this._height; } <ins> private _top = 0; get top(): number { return this._top; } private _left = 0; get left(): number { return this._left; } </ins> get size(): [number, number] { return [this.width, this.height]; } <del> private readonly _onDidLayout = new Emitter<{ width: number; height: number }>(); readonly onDidLayout: Event<{ width: number; height: number }> = this._onDidLayout.event; </del> <ins> private readonly _onDidLayout = new Emitter<{ width: number; height: number; top: number; left: number }>(); readonly onDidLayout: Event<{ width: number; height: number; top: number; left: number }> = this._onDidLayout.event; </ins> private readonly _onDidFocus = new Emitter<void>(); readonly onDidFocus: Event<void> = this._onDidFocus.event;

Discussion:
Was finally able to repo this but not reliably. It seems to rely on a new being created, but this doesn't always happen. The most reliable repo for me: with a notebook and text editor in a single editor group the notebook editor down to create a new group below the text editor grab the notebook editor and drag it right to move the bottom editor to the right I think the root cause is that the notebook widget is passed the wrong position. I'm going to work around this by making the notebook editor ignore the position it is given, however this will also undo the performance fixes we made this iteration for notebook layout I don't fully understand the grid layout code but it seems that is being set incorrectly in cases where a new BranchNode/SplitView is created. Here's what I see happening after step 3 of the repo above: setter is called calls which creates a new the constructor, a new Split View is created is called on it. At this point, of the split view is: the time layout is called on the notebook editor widget, is computed as zero. This results in the wrong layout. Looking at the code, we can see that is passed in as the absolute offset in step 4: <img width="1104" alt="Screenshot 2022-11-30 at 12 48 54 PM" src="https://user-"If I then slightly resize the window, here's what happens: call on the split View for the new group now is: we layout the notebook editor, is now correctly computed as Originally posted by in
Change:
const { lastExchange } = this._activeSession; this._activeSession.addInput(lastExchange.prompt.retry()); if (lastExchange.response instanceof EditResponse) { <del> await this._strategy.undoChanges(lastExchange.response); </del> <ins> try { this._ignoreModelContentChanged = true; await this._strategy.undoChanges(lastExchange.response); } finally { this._ignoreModelContentChanged = false; } </ins> } return State.MAKE_REQUEST; }

Discussion:
open inline chat on a mid sized method/function the whole function gets included (by the chat extension) the background color isn't contiguous <img width="963" alt="Screenshot 2023-09-26 at 16 15 59" src=""

trigger inline chat and send a command press the reload button in the chat press escape notice that it keeps the last result (and does not restore the initial document) When I don't click the reload button, pressing escape restores the initial document. ! Context:
Change:
@IEditorGroupsService private readonly editorGroupService: IEditorGroupsService, @IContextKeyService private readonly contextKeyService: IContextKeyService, @ILifecycleService private readonly lifecycleService: ILifecycleService, <del> @IHostService private readonly hostService: IHostService, @IKeybindingService private readonly _keybindingService: IKeybindingService, @IConfigurationService private readonly _configurationService: IConfigurationService </del> <ins> @IHostService private readonly hostService: IHostService </ins> ) { super(themeService);

Discussion:
Testing Repro: some notifications and focus one. You should hear a hint about opening the notification in the accessible view. !
Oh, this is because it's not focused. I found this a little confusing as the info message doesn't say it's a notification or anything so how would a new user know how to answer the question?
I'm still hitting this sometimes when the notification is focused as well No verbosity settings are set here: !
When this happens alt+f2 doesn't work It might be something off with context keys?
Proof: !
I was also going to report this - I triggered this notification and selected it to focus it, but I didn't get a hint: !
I have occasionally found that this does not work when I have the screen reader text view open. Can you try with that closed and speech on / volume up?
Is that the speech viewer / text box shows in his screenshots? I didn't have that open in my flow afaik.
I need to add to the aria label - currently, it's just to the free floating notification element
It's better now, but the hint still doesn't show up if the notification appears and the user tabs to it. The hint shows up if the user tabs to the button, but then Alt+F2 doesn't work while the user is on the button. Good: the screen reader optimized button. the notification. the show notification command. is properly displayed. Bad notifications from the notifications center. the screen reader optimized button. tab until the focus is on the notification. Enable tab moves focus mode if needed. :bug: The hint doesn't show up, and pressing Alt+F2 doesn't work. tab until the focus is on the Yes button. :bug: The hint shows up, but pressing Alt+F2 doesn't work. Let me know if you're able to reproduce the issue and whether it's worth reopening.
Thanks I'll probably wait to see if this is an issue screen reader users encounter.
Change:
"config.showCommitInput": "Controls whether to show the commit input in the Git source control panel.", "config.terminalAuthentication": "Controls whether to enable VS Code to be the authentication handler for git processes spawned in the integrated terminal. Note: terminals need to be restarted to pick up a change in this setting.", "config.timeline.showAuthor": "Controls whether to show the commit author in the Timeline view.", <ins> "config.timeline.showUncommitted": "Controls whether to show uncommitted changes in the Timeline view.", </ins> "config.timeline.date": "Controls which date to use for items in the Timeline view.", "config.timeline.date.committed": "Use the committed date", "config.timeline.date.authored": "Use the authored date",

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. --A feature called Local History has been to show entries such as "File Saved" and "Undo/Redo" in the timeline of a file. Simultaneously, an item called "Uncommitted changes" has been removed apparently in I found the "Uncommitted changes" item very useful to quickly see the changes of a file since the last version. Current implementation with the local history feels unconvenient and does not reveal the same information as the previous Uncommited changes item did. It also compares the file with the current version on the disk and not the changes between the two versions (version in previous commit vs. saved version). So I would like to have a possibility to configure the timeline so that the previous behaviour showing the Uncommitted changes is restored.
cc I think it is reasonable to bring back the uncommitted changes when local history is disabled.
I second this!
Opened PR to have a setting for this. I do not think making this conditional on which timeline provider is showing is clever.
A new setting allows to enable this starting in tomorrows insider build.
Wow! That's great, thanks
/verified