jiebi/CodeConvo huggingface dataset:
Change:
import { editorCommand, ServicesAccessor, EditorCommand } from 'vs/editor/common/editorCommonExtensions'; import { KeyCode, KeyMod } from 'vs/base/common/keyCodes'; import { Disposable } from 'vs/base/common/lifecycle'; <del> import { ICommonCodeEditor, IEditorContribution } from 'vs/editor/common/editorCommon'; </del> <ins> import { ICommonCodeEditor, IEditorContribution, ScrollType } from 'vs/editor/common/editorCommon'; </ins> import { EditorContextKeys } from 'vs/editor/common/editorContextKeys'; import { ICodeEditor } from 'vs/editor/browser/editorBrowser'; import { editorContribution } from 'vs/editor/browser/editorBrowserExtensions';

Discussion:
VSCode Version: Code 1.15.0 (, 2017-08-09T20:16:06.988Z) OS Version: Windows_NT ia32 10.0. Extensions: ExtensionVersion ------ html-snippets0.1.0 vscode-javascript-snippet-pack0.1.5 path-intellisense1.4.2 vscode-weapp-api0.1.8 vscode-wxml0.1.9 githistory0.2.3 vscode-html-css0.1.7 vue-snippets0.1.2 beautify1.1.1 output-colorizer0.1.2 path-autocomplete1.6.1 vue0.1.5 vetur0.9.3 vue-beautify2.0.4 java0.8.0 code-settings-sync2.8.2 stylelint0.28.0 JavaScriptSnippets1.4.1
Does this issue occur when launching VS Code with extensions disabled () ?
My extensions are enable. I had recorded the steps with screenshots. , the cursor in line 480 ! , the curson in line 177 ! , I click and the cursor in the previous line 480, but the scroll bar had not scroll. !
And the don't support cross editor tab
cursorUndo is designed to not cross-tab. Go Back/Go Forward will cross tabs, but it will omit small selection changes.
Change:
} .monaco-hover hr { <ins> box-sizing: border-box; border-left: 0px; border-right: 0px; </ins> margin-top: 4px; margin-bottom: -4px; <del> margin-left: -10px; margin-right: -10px; </del> <ins> margin-left: -8px; margin-right: -8px; </ins> height: 1px; }

Discussion:
This just started very recently. !
I cannot reproduce. I tried with GitLens using the insiders: !
Yeah it went away for me in yesterday's insiders. Maybe it went away when we switched back to Electron 9?
Electron 11 went in at the beginning of last week, is that when you started noticing this ?
Not exactly sure but I only saw it very recently. And it was gone again a day or two ago.
OK, given we cannot reproduce right now, let's close for now and we can reopen if we see it again when we bring back Electron 11.
It's back in the current insiders.
Change:
overflow: hidden; color: var(--vscode-descriptionForeground); font-size: 11px; <del> align-self: baseline; </del> <ins> padding-top: 4px; </ins> padding-left: 10px; display: inline-flex; }

Discussion:
See how the padding is ~double that on top than on the side ! It looks particularly bad imo when a response is in progress: ! It's also ~half on bottom: ! Could we make the padding consistent on all sides?
Padding also looks pretty bad in terminal: !
When showing a result the chat widget height is off by 3px, e.g its reported content height is small then the height takes... <img width="1411" alt="Screenshot 2024-03-22 at 16 22 35" src=""
Should be looking better now <img width="1277" alt="Screenshot 2024-03-26 at 20 58 39" src=""
Much better Does it look wrong with this part gone too? !
Yeah, I had played with that and wasn't happy. The different radii (from the input and zone) get close enough to make it look weird. Also, the focus border makes it appear as too narrow
Change:
this.settingsResource = settingsResource; this.tasksResource = tasksResource; this.configurationParseOptions = configurationParseOptions; <ins> return this.doReset(); } private async doReset(settingsConfiguration?: ConfigurationModel): Promise<ConfigurationModel> { </ins> const folder = this.uriIdentityService.extUri.dirname(this.settingsResource); const standAloneConfigurationResources: [string, URI][] = this.tasksResource ? [[TASKS_CONFIGURATION_KEY, this.tasksResource]] : []; const fileServiceBasedConfiguration = new FileServiceBasedConfiguration(folder.toString(), this.settingsResource, standAloneConfigurationResources, this.configurationParseOptions, this.fileService, this.uriIdentityService, this.logService); <del> const configurationModel = await fileServiceBasedConfiguration.loadConfiguration(); </del> <ins> const configurationModel = await fileServiceBasedConfiguration.loadConfiguration(settingsConfiguration); </ins> this.userConfiguration.value = fileServiceBasedConfiguration; // Check for value because userConfiguration might have been disposed.

Discussion:
apply the patch that logs fs calls which is included below run open a folder and open a single css file don't modify it (i.e. avoid hot exit) and reload the window <details<summaryPatch</summary</detailsObserve the following fs calls that occur before the first editor rendering: IMHO the following fs calls should be postponed: [ ] [ ] [ ] [x] I also noticed that we read the following files twice: [ ]
I have no clue what we use install source for, but lots of digging reveals this commit:
Updating the list - is only read once.
is read twice because First time during initialising configuration without user tasks User tasks is read later when there is an idle time - by reloading user configuration - during which settings and tasks files are read.
Install source is a common telemetry property. It can be set after installing VS Code. It came as an ask from Anaconda, to know how many installations came from them. We decided to go with creating a new file rather than updating existing files, to avoid scenarios where we'd break important files (eg or ). I don't have great ideas to work around this other than refactoring the code until the first telemetry event gets submitted, which is still pretty early. Will ask around to learn whether this common telemetry property is still in use.
is gone!
Tasks and Launches are part of Config and they are accessed sync from config service. In order to prevent reading these files during start up we should loading them until they are needed. (probably workbench restored phase) an assertion to make sure no component is reading them until then
This needs considerable refactoring and I do not think it is worth a change for the gain given that these files are resolved in parallel. Hence marking this as no fix.
Change:
"category": "Git" }, { <ins> "command": "git.commitStagedAmend", "title": "%command.commitStagedAmend%", "category": "Git" }, { </ins> "command": "git.commitAll", "title": "%command.commitAll%", "category": "Git"

Discussion:
Like: git commit --amend
Are you referring to the out of the box git behavior or any particular git extension?
I would guess the out of the box behaviour, because it seems to be missing? I can see there is an "undo last commit", but this unstages everything from the last commit, which is not the same thing as amending the current commit. git-gui and atom have a simple checkbox which then amends the current commit instead of creating a new one - would it be possible to have the same in vscode? It's the one thing that stops me using vscode's built in git interface. In other words, you should be able to check and then uncheck the checkbox and be left in the original state. With the "undo last commit", this isn't possible.
Yes, out of the box
command was some time ago by
Should there be something in the menu? Please can you tell me where the option is?
Hmmm.... looks like it has disappeared for some reason, probably was omitted when git integration was ported to new API... will probably know if it was by-design, or just someone missed one command while porting git integration.
I believe we simply missed it... sorry for that.
I'll add it again.
Change:
"tas-client-umd": "0.1.6", "vscode-oniguruma": "1.6.1", "vscode-textmate": "7.0.1", <del> "xterm": "4.19.0", "xterm-addon-search": "0.9.0", </del> <ins> "xterm": "4.20.0-beta.5", "xterm-addon-search": "0.10.0-beta.1", </ins> "xterm-addon-unicode11": "0.4.0-beta.3", <del> "xterm-addon-webgl": "0.12.0" </del> <ins> "xterm-addon-webgl": "0.13.0-beta.2" </ins> } }

Discussion:
Issue Type: <bPerformance Issue</bTerminals doesn't seem to free all GPU memory when closing them, making alt-tabbing from another application to vscode slower over time, there are other tickets around vscode freezing when alt-tabbing back to it and this seems to be one of the reasons as Windows needs to load/unload 1GB+ of GPU memory when alt-tabbing occurs. One way of reproducing this: 20 integrated terminals the terminals again (now only welcome screen open) Windows task manager -Performance tab something covers vscode completely (i.e. task manager is maximized) the GPU memory usage is 500MB+ lower than if vscode is visible (i.e. task manager is not maximized so it doesn't cover vscode completely, forcing Windows to keep vscode GPU memory active). scales linearly if you open more terminals, i.e. 40 terminals keeps 1GB+ of GPU memory even when they are closed I can reproduce it on the insiders build as well, so Electron 18 doesn't seem to solve this issue. vscode visible (2 GB GPU memory usage at the bottom of the screenshot): ! vscode still open but behind other windows (1 GB GPU memory usage at the bottom of the screenshot): ! VS Code version: Code 1.68.1 (, 2022-06-14T12:48:58.283Z) OS version: WindowsNT x64 10.0. Restricted Mode: No Remote OS version: Linux x64 5.10.102.1-microsoft-standard-WSL2 <details<summarySystem Info</summary </details<!-- generated by issue reporter --
I tried to repro with stable, but I wasn't able to. What are the steps for verification?
<!-- AUTHORVERIFICATIONREQUEST --This bug has been fixed in the latest release of ! you can help us out by commenting if things are now working as expected. If things still don't seem right, please ensure you're on version of Insiders (today's or later - you can use in the command palette to check), and leave a comment letting us know what isn't working as expected. Happy Coding!
Hello, I'm waiting for these to cleanup the terminals properly: But as I am the author of those PRs I don't think additional verification is needed from me once they get merged.
fyi I think I noticed a few bugs about alt-tabbing being slow
Change:
]; // merge environment variables into a copy of the process.env <del> const env = extendObject(extendObject({}, process.env), envVars); </del> <ins> const env = assign({}, process.env, envVars); </ins> const options: any = { cwd: dir,

Discussion:
The and should be removed
Sorry for question, but why you don't use native ?
stuff in common is still used in very old browser
Fixed in
Change:
break; } case 'focus-output': <del> focusFirstFocusableOrContainerInOutput(event.data.cellId); </del> <ins> focusFirstFocusableOrContainerInOutput(event.data.cellOrOutputId); </ins> break; case 'decorations': { let outputContainer = document.getElementById(event.data.cellId);

Discussion:
follow up after a notebook cell that displays multiple images down and select 'copy output to clipboard' on the last image :bug: the first image is selected and the notebook scrolls to reveal it
Change:
'ext': [''] }; <ins> let queryContains = (substr: string) => query.indexOf(substr) > -1; let hasSort = subcommands.sort.some(subcommand => queryContains(`@sort:${subcommand}`)); let hasCategory = subcommands.category.some(subcommand => queryContains(`@category:${subcommand}`)); </ins> return flatten( <del> commands.map(command => subcommands[command] ? subcommands[command].map(subcommand => `@${command}:${subcommand}${subcommand === '' ? '' : ' '}`) : [`@${command} `])); </del> <ins> commands.map(command => { if (hasSort && command === 'sort' || hasCategory && command === 'category') { return []; } if (subcommands[command]) { return subcommands[command].map(subcommand => `@${command}:${subcommand}${subcommand === '' ? '' : ' '}`); } else { return [`@${command} `]; } })); </ins> } static parse(value: string): Query {

Discussion:
Testing When using the '...' menu to add sort filter options, the option becomes disabled in the menu, preventing it from being twice from that UI. I think it would be nice if the suggestions behaved similarly, not suggesting filters that are already present in the input. ! VS Code version: Code - Insiders 1.26.0-insider (, 2018-07-31T05:18:06.861Z) OS version: Windows_NT x64 10.0. <!-- generated by issue reporter --
Change:
getActions: () => [ this.createCopyAction(keybindingItemEntry), this.createCopyCommandAction(keybindingItemEntry), <ins> this.createCopyCommandLabelAction(keybindingItemEntry), </ins> new Separator(), ...(keybindingItemEntry.keybindingItem.keybinding ? [this.createDefineKeybindingAction(keybindingItemEntry), this.createAddKeybindingAction(keybindingItemEntry)]

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. --Currently, for copying a command like on the "Keyboard Shortcuts" page, there're two options: Copies Command ID Copies But really, quite often, we just want to copy , and there's no option for that. Therefore, I'm making a feature request for it.
(Experimental duplicate detection) Thanks for submitting this issue. Please also check if it is already covered by an existing one, like: <!-- score: 0.526 --- <!-- score: 0.46 --- <!-- score: 0.447 --<!-- potentialduplicatescomment --
Hey I see this is assigned to you, I opened a PR to address this. It is my 1st PR so any constructive feedback would be appreciated ;-)
I hope this works for you? :smile_cat:
Sorry for the late response, but I don't know how to test this though.
Planning to look at this PR in July milestone.
Thanks for the PR - I did some small fine tunings after. !
To verify: Open Keyboard Shortcuts editor Right click on an entry and make sure you have an action to copy the command title Make sure this action works as expected
Change:
.monaco-workbench .notifications-list-container .notification-list-item > .notification-list-item-details-row { display: none; align-items: center; <del> padding: 0 5px; </del> <ins> padding-left: 5px; </ins> overflow: hidden; /* details row should never overflow */ }

Discussion:
Environment Details: VSCode Version : 1.24.0 OS Version : Win10 Additional Details: MAS Violated : MAS 2.4.7 Repro Steps: to Status Bar at the bottom and move to notifications. to any notification that appears at the screen. to any button inside the notification. Actual: The focus is not marked using dotted-lines/rectangle to indicate the focus on the buttons. Only color changes to mark the focus on the buttons. Expected: The focus should be visible using dotted-lines/rectangle to indicate the focus on the buttons. Recommendations: Refer below link which is repository of bug fixes code snippets: User Impact: Low vision/visually impaired users should be able to distinguish the focused element. MAS Reference: MAS2.4.7 - {-4fab-4d3e-81af-} Attachment For Reference: Does this issue occur when all extensions are disabled?: Yes
(Experimental duplicate detection) Thanks for submitting this issue. Please also check if it is already covered by an existing one, like: <!-- score: 0.664 --- <!-- score: 0.545 --- <!-- score: 0.481 --<!-- potentialduplicates_comment --
we have a high contrast theme for people that want a much stronger focus indication, isn't that sufficient? !
Agreed focus visibility is working for High contrast theme. But all low vision users may not be comfortable in using only one theme(here High Contrast). Other users using "Light Visual Studio" will again face issues in focus visibility. Switching themes may not be always a good option. Dotted-lines/rectangle to indicate focus can serve purpose for all of the themes listed.
There is a border around the button when it gets focus but the border (blue) color collides with the blue background of the button. It may work better in other themes.
do we plan to do something here? If no we should close as invalid and explain why fyi since it is a contrast issue
I am happy for suggestions.

we did start showing the outline with an offset in the extension viewlet: <img width="420" alt="image" src="https://user-"We could try the same thing with our primary buttons: <img width="477" alt="image" src="https://user-"
I actually like that if we can make it so that it really only shows up on focus but e.g. not when clicking (this might be a bit tricky to get right).
Gives me a bit of a blurry effect. Definetly would not like to get it on click. THough might be one of those things that I need to really try out to get a complete impression
Change:
} } <del> if (event.body.variablesReference) { const container = new ExpressionContainer(this, undefined, event.body.variablesReference, generateUuid()); await container.getChildren().then(children => { children.forEach(child => { // Since we can not display multiple trees in a row, we are displaying these variables one after the other (ignoring their names) (<any>child).name = null; this.appendToRepl(child, outputSeverity, source); }); }); } else if (typeof event.body.output === 'string') { </del> <ins> if (typeof event.body.output === 'string') { </ins> this.appendToRepl(event.body.output, outputSeverity, source); } });

Discussion:
Issue Type: <bBug</bCan any one explain why vs code debug console work like this: when I use for logging name form array using map, at first log it work. On second log its not showing VS Code version: Code 1.57.1 (, 2021-06-17T13:28:07.755Z) OS version: WindowsNT x64 10.0. Restricted Mode: No <details<summarySystem Info</summary </details<details<summaryExtensions (9)</summaryExtensionVersion ------ insert-unicode0.10.0 bracket-pair-colorizer1.0.61 vscode-markdownlint0.40.4 code-runner0.11.4 js-debug-nightly2021.5.617 material-icon-theme4.7.0 LiveServer5.6.1 vscodeintellicode1.2.14 JavaScriptSnippets1.8.0 </details<details<summaryA/B Experiments</summary</details<!-- generated by issue reporter --
! It work fine with JavaScript debug terminal !
This works for me, can you reproduce with vscode insiders If yes, can you please share a sample short code that I can just copy and try to reproduce? Thanks
If I use or it work (logs) fine as expected but if I debug using Vscode it's only log first
Thanks for the repro steps. I can reproduce this. The issue seems to be how we are handling events here We should fix this, but I will not have time this milestone, thus adding help wanted, and if no nobody from the community helps I can look into it next milestone.
Hi ~ I create a PR to fixes this issue, maybe u can have a look
This duplicates and has the potential to be fixed by The PR makes a race slightly less likely but doesn't fix the issue, which can still be hit with slow enough processing or large enough output. The PR does have the potential to improve performance in general so I think it's worth taking in some form, but it won't fix this issue globally.
Change:
*/ export const Default: FuzzyScore = ([-100, 0]); <del> export function isDefault(score?: FuzzyScore): score is [-100, 0, 0] { return !score || (score[0] === -100 && score[1] === 0 && score[2] === 0); </del> <ins> export function isDefault(score?: FuzzyScore): score is [-100, 0] { return !score || (score.length === 2 && score[0] === -100 && score[1] === 0); </ins> } }

Discussion:
Issue Type: <bBug Before the latest update, after typing in File Explorer, the tree will scroll to the first match, and up/down key will jump between matches. With the latest version, none of the above would happen. VS Code version: Code 1.53.0 (, 2021-02-03T20:36:38.611Z) OS version: WindowsNT x64 10.0. <details<summarySystem Info</summary </detailsExtensions: none <!-- generated by issue reporter --
Are you sure that focus is on an item in the tree when you start typing?
The brown filter text box appears and displays what I'm typing the same way as before, so yes I am pretty sure the focus is correct. The only thing missing is the scrolling and the subsequent ability to navigate with arrow keys on the keyboard in the latest version.
To clarify, the "Filter on Type" is off, i.e. files items won't disappear while I type, merely highlighting the matching items and allowing me to jump between them using up/down keys. And that is what works previously but not so in the latest version.
/confirm Thanks for the additional information. One of the dev team now needs to investigate when the regression occurred.
This is a regression from where the wasn't updated. Created a PR fixing it
thanks a lot for fixing! Assigning this one to since his commit caused the regression it seems
your call whether this is severe enough to be a recovery candidate or not
I think it is fine not to do this as part of recovery, since I think most users are not aware of this feature (it is a bit hidden). Having a fix in insiders is great, so if somebody is reliying on this behavior he or she can switch to insiders. Thus assigning to February milestone.
just came in from another user affected by this regression. I think the fix should go into the upcoming recovery release.
thanks for letting us know. I try to be very strict when it comes to choosing what goes in the recovery release - I usually only pick regressions in highly used features, data loss or big ux glitches. Since this is none of those I still prefer to not ship it as part of the recovery.
I'd appreciate if it would be fixed asap since it's very annoying that it doesn't work :-) If you don't prioritize it very high, I understand that though ;-)
Change:
resources: string[]; } <del> type IMessage = IDimentionMessage | IScrollAckMessage; </del> <ins> type IMessage = IDimentionMessage | IScrollAckMessage | IWheelMessage; </ins> let version = 0; export class BackLayerWebView extends Disposable {

Discussion:
Issue Type: <bFeature Request</bCurrently it's unclear and difficult to handle scrolling events inside an output which is rendered in the webview due to the disadvantage of our current architecture: we listen to event in the webview and scroll the list view in the main thread accordingly. It means if users attempt to scroll in a native scrollable element, the element will be scrolled in the webview, and also trigger the whole editor to scroll. Events triggered when users scroll on a scrollable element events come right after events, usually in a few milliseconds. If users trigger scroll (by mouse wheel or touchpad) on a non-scrollable element, there are only events. For our scenario, we want to emit events to the main thread, only when there is no event followed right after. This can be archived by delaying the wheel event message to the main thread The catch of this solution is how long should we delay. Usually a scroll event comes after a wheel event in just a few ms but it's not guaranteed. Renderers handle the scrolling themselves. For example, a renderer can stop sending event on a scrollable element. The challenge for renderers is they need to be keep track of any element with it renders and stop events only when necessary. VS Code version: Code - Insiders 1.44.0-insider (, 2020-03-27T05:28:16.333Z) OS version: Darwin x64 19.2.0 <!-- generated by issue reporter --
cc as you mentioned that it would be painful to write a list view in the output.
I would suggest listening to the wheel event, and triggering a scroll in the notebook if there's no parent element that will scroll. You should be able to tell that with something like
thanks very much, the suggestion is pretty solid. ! The only update to 's snippet above is the scroll should stop at the container of each output container instead of going all the way up to body (potentially). The event listener should also then be registered only in notebook webview other than all webviews.