jiebi/CodeConvo huggingface dataset:
Code change:
import { IWorkspaceTrustRequestService } from 'vs/platform/workspace/common/workspaceTrust'; import { EditorInput } from 'vs/workbench/common/editor/editorInput'; import { EditorModel } from 'vs/workbench/common/editor/editorModel'; <del> import { CellFindMatchWithIndex, IActiveNotebookEditorDelegate, IBaseCellEditorOptions, ICellViewModel, INotebookEditorDelegate } from 'vs/workbench/contrib/notebook/browser/notebookBrowser'; </del> <ins> import { CellFindMatchWithIndex, CellFocusMode, IActiveNotebookEditorDelegate, IBaseCellEditorOptions, ICellViewModel, INotebookEditorDelegate } from 'vs/workbench/contrib/notebook/browser/notebookBrowser'; </ins> import { NotebookCellStateChangedEvent, NotebookLayoutInfo } from 'vs/workbench/contrib/notebook/browser/notebookViewEvents'; import { NotebookCellStatusBarService } from 'vs/workbench/contrib/notebook/browser/services/notebookCellStatusBarServiceImpl'; import { ListViewInfoAccessor, NotebookCellList } from 'vs/workbench/contrib/notebook/browser/view/notebookCellList';

Related discussion:
text: Ideas to experiment with: Don't shrink a cell while it is executing -less jumpy as output is replaced change the anchor heuristic from "if the resizing cell is partially visible" to "if the cell's output will shrink out of view" Anchor to a focused cell if the focus is in the cell's editor cc
For the new heuristics we are adding (growing upwards or downwards), they should probably be interrupted the moment users start to scroll, for example, if I scroll manually to a specific position, I would expect the scroll top not to change.
I disagree - That could mean if you have a cell focused and anchored, and you scroll to get it higher in the view, it would then start getting pushed down as the previous cell grows.
If I scroll to get it lower in the view, as I want to read the cells above, and since it's still in the view and focused/anchored, the cells I was reading will then pushed upwards, right? This feels unnatural compared to how browser handles scrolling or Terminal. Terminal scenario might be closer to this, as it usually sticks to the bottom when the shell is streaming outputs, but the very moment we scroll upwards, it stops sticking to the bottom.
Code change:
import { IProductService } from 'vs/platform/product/common/productService'; import { registerNavigableContainer } from 'vs/workbench/browser/actions/widgetNavigationCommands'; import { IEditorProgressService } from 'vs/platform/progress/common/progress'; <ins> import { IExtensionManifest } from 'vs/platform/extensions/common/extensions'; </ins> export const enum SettingsFocusContext {

Related discussion:
text: Type: <bBug</bVS Code (with or without extensions disabled, makes no difference) File -Preferences -Settings blank UI with no actual settings in it. ! If you leave the settings tab open and restart vs code (such that it reopens the settings tab automatically on restart) the settings GUI will be there, but all the extension settings will be missing (observe that it is missing from the menu here): ! If I then close and reopen settings they will again be empty. VS Code version: Code 1.84.2 (, 2023-11-09T10:50:47.800Z) OS version: Linux x64 6.2.0-36-generic (Ubuntu 22.04 LTS) Modes: <details<summarySystem Info</summary </detailsExtensions disabled <!-- generated by issue reporter --
I also tried with to run this on the nVidia GPU instead of the built in Intel GPU. Makes no difference.
After running the command "Developer: Toggle Developer Tools", do any errors show up under the Console tab?
Yes I got 3 errors, they all seem related to that I'm behind a corporate proxy though. Note that I ran this with , but I still get errors related to extensions. I find this very strange ! ! !
When I'm not behind the proxy, settings work as expected. I find it very odd that VSCode would need to call out to the internet just to open settings. Opening the marketplace for extensions I understand, but not settings. Especially since I can also open settings just fine if I'm completely disconnected. It is just if I'm connected via the corporate network that it falls flat on it's face. For some further debug information: We use Zscaler at my workplace, which acts as a transparent HTTPS MITM proxy (no need/not possible to set any environment variables, but you do need to install the CA certificate). The proper certificate is installed in the system certificate store () and that works as expected with other programs. Also, other internet features in VSCode work fine, such as github copilot. EDIT: I also tried some of the settings in the proxy section of the settings to see if it made any difference. They were all set to the default values before.
Code change:
import { IProductService } from 'vs/platform/product/common/productService'; import { registerNavigableContainer } from 'vs/workbench/browser/actions/widgetNavigationCommands'; import { IEditorProgressService } from 'vs/platform/progress/common/progress'; <ins> import { IExtensionManifest } from 'vs/platform/extensions/common/extensions'; </ins> export const enum SettingsFocusContext {

Related discussion:
text: made no difference made no difference is set, but I doubt I want to uncheck it if I understand it correctly. is set to override (default), and it sounds like it only affects extensions, so I didn't touch it. I don't see any option to manually add a certificate anywhere in the settings.
Based on I found that does work. That is a bit of a sledgehammer though, and not really an ideal (or even slightly secure) solution.
The Settings editor currently recommends the Copilot extension when it's not installed, which lines up with the error messages you're seeing. I'll put up a PR that skips over showing that feature in case of networking errors.
Tomorrow's should contain the fix.
what about the bit where it seems to ignore the root system certificates though? It seems there were actually (at least) two bugs here: one you fixed, where settings can't open when there are network errors fact that a corporate proxy with correctly installed CA certificates in the system store doesn't work. Presumably it isn't picking up the system CA certificates correctly.
thank you very much my problem is solved after follow this step (Open VS Code disable all extensions disabled, and enable once again all extension then i am successfully able to see my settings))
Please see on how to add a root certificate for Chromium, that also applies for Electron-based applications like VS Code. The root certificate example is:
Thanks this works. I thought I had already it, since I it in Chromium. But of course on Ubuntu Chromium runs in a snap by default, so it didn't use the same store as VSCode...
Code change:
"tab.unfocusedHoverBackground": "#6e76811a", "terminal.foreground": "#ffffffc5", "terminal.inactiveSelectionBackground": "#E5EBF1", <del> "textBlockQuote.background": "#010409", </del> <ins> "textBlockQuote.background": "#f8f8f8", </ins> "textBlockQuote.border": "#0000001a", "textCodeBlock.background": "#6e768166", "textLink.activeForeground": "#005FB8",

Related discussion:
text: Example block quote in the extensions page. <img width="375" alt="image" src="https://user-"
Code change:
this._register(addDisposableListener(window, EventType.RESIZE, e => this.onWindowResize(e, true))); // React to editor input changes <del> const appRootUri = URI.file(this.environmentService.appRoot); this._register(this.editorService.onDidActiveEditorChange(() => { // Touchbar this.updateTouchbarMenu(); // Potential data loss when editing files // from within the installation app root if (this.environmentService.isBuilt) { this.notifyOnAppRootEditors(appRootUri); } })); </del> <ins> this._register(this.editorService.onDidActiveEditorChange(() => this.updateTouchbarMenu())); </ins> // prevent opening a real URL inside the window for (const event of [EventType.DRAG_OVER, EventType.DROP]) {

Related discussion:
text: a JS file: to definition on Bug I see this scary notification: <img width="671" alt="Screen Shot 2022-07-26 at 2 31 10 PM" src="https://user-"In this case, the user was likely just trying to view the file Would it be possible to either: show this notification when saving? open these file as ?
This came in via from and I think is not good. This also reminds me that when debugging you may end up in a file from the installation dir. I think we should probably revert the change for now and think about a better solution unless there are objections.
I agree. Maybe pursue your earlier suggestion of opening all installation directory files in readonly mode. Perhaps combine with a scary warning if you save a new file in there.
Code change:
} getCopyFromName(): string | undefined { <del> if (isUserDataProfile(this.copyFrom)) { if (this.copyFrom.isDefault) { return localize('copy from default', "{0} (Copy)", this.copyFrom.name); } return this.copyFrom.name; } if (this.template) { return this.template.name; } return undefined; </del> <ins> const name = isUserDataProfile(this.copyFrom) ? this.copyFrom.name : this.template ? this.template.name : undefined; return name === this.userDataProfilesService.defaultProfile.name ? localize('copy from default', "{0} (Copy)", name) : name; </ins> } protected override async getChildrenForResourceType(resourceType: ProfileResourceType): Promise<IProfileChildElement[]> {

Related discussion:
text: <!-- Do Not Delete This! featurerequesttemplate --<!-- Please read our Rules of Conduct: --<!-- Please search existing issues to avoid creating duplicates. --when you import a profile file, vscode will create a new profile but not overwrite current one or merge it to current one Actually I don't need so many profiles, the default profile is enough for me. sometimes I just want to import a keybinding settings from some one, and keep my other settings after I import it, WHAT HAPPEND!!!, all my other settings and extension are gone!!! This is unreasonable! what vscode should do is merging(or overwriting) new keybinding to my old one!! <!-- Describe the feature you'd like. --
Can I have a try on this? I'm new to contributing to this repo but want to try out stuff and get along with starting out at the same time..
Edit: Ignore this, I misread this with other issue
Just wondering is not this same as Can you please distinguish your ask from the other?
partially like But I request more flexibility: Suppose current profile is profile X (X can be default or user profile) when I import A profile, that will be: A.keybinding, A.UI, A.extensions ..... and I choose A.keybindings only to import what I expect: there are 2 options for user when importing: option 1 - merge to current profile, (so X profile's keybindings overwritten but other part of settings kept) option 2 - or create a new profile partially basing on what imported (this is what VSCode currently does )
<!-- -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!
<!-- -c9e0-7adb-d31b- --:slightlysmilingface: This feature request received a sufficient number of community upvotes and we moved it to our backlog. To learn more about how we handle feature requests, please see our . Happy Coding!
?
Code change:
} getCopyFromName(): string | undefined { <del> if (isUserDataProfile(this.copyFrom)) { if (this.copyFrom.isDefault) { return localize('copy from default', "{0} (Copy)", this.copyFrom.name); } return this.copyFrom.name; } if (this.template) { return this.template.name; } return undefined; </del> <ins> const name = isUserDataProfile(this.copyFrom) ? this.copyFrom.name : this.template ? this.template.name : undefined; return name === this.userDataProfilesService.defaultProfile.name ? localize('copy from default', "{0} (Copy)", name) : name; </ins> } protected override async getChildrenForResourceType(resourceType: ProfileResourceType): Promise<IProfileChildElement[]> {

Related discussion:
text: I would think this is not a good one to start at and recommend to look for issues labelled with or
I really want to try out.. just to experience and I think I would be able to do it. Even if it's not a good first issue I have contributed to other open source repos. Can I?
Sure, here is the starting point
Thanks a lot for this I was checking your PR with the user-profile feature implementation.. For now I'm just figuring out stuff that is already present. Just a single doubt that I had was about the merging of profiles.. would the editor be like a merge editor that opens whenever we get a merge conflict on git..? Or something else with checkboxes on which settings to get imported from each of the sides(current and imported one)? I'll try my best
For the sake of simplicity, during conflicts, I would simply override with the new one.
Also
Note to self: see for manual workaround.
You can now import and replace any existing profile (including Default profile) from new Profiles Editor UI
To verify: Create a profile A and configure with some settings and extensions Export the profile A to the disk Change some settings and extensions in the profile Import the profile A You should be able to import the profile with name A replacing the existing profile
When I export the profile, install some new extensions, then import the profile with the same name, I would expect the installed extensions to disappear from my extensions list, but that doesn't seem to be the case
It is working for me, ie., I only see the extension from the imported profile. After importing, extensions are getting replaced. Can you please share the exact steps to repro?
Using vscode 1.92.2, I can't figure out how to get to that UI. Where do I find it?
search settings for "profiles experimental"
Thank you!
Code change:
} return false; }); <del> if (refer && slashCommandLike) { </del> <ins> if (refer && slashCommandLike && !this._session.lastExchange) { </ins> this._log('[IE] seeing refer command, continuing outside editor', this._session.provider.extensionId); // cancel this request

Related discussion:
text: Just asked hi: ! Expected: ! Version: 1.88.0-insider (user setup) Commit: Date: 2024-03-25T05:49:32.344Z Electron: 28.2.6 ElectronBuildId: Chromium: 120.0.6099.291 18.18.2 V8: 12.0.267.19-electron.0 OS: Windows_NT x64 10.0. GitHub Copilot Chat v0.14. (pre-release)
because of
To verify configure have a very wide view port ask AI to change some code make sure the input widget is full width of the zone widget
Code change:
} return false; }); <del> if (refer && slashCommandLike) { </del> <ins> if (refer && slashCommandLike && !this._session.lastExchange) { </ins> this._log('[IE] seeing refer command, continuing outside editor', this._session.provider.extensionId); // cancel this request

Related discussion:
text: cmd+i now cmd+backspace invokes instead of deleting the line in the text editor The ChatWidget is writing its context keys to the editor's ContextKeyService, so we need a scoped CKS at some point, either inside the ChatWidget or outside in the inline widgets
pushing a fix to use a scoped CKS but this does look like debt. Isn't a better fix to reset context keys when hiding/dispose the chat widget?
I don't think those context keys should be applied on the editor at all, they are intended to just be active inside the widget's dom tree.
Code change:
import { Disposable } from 'vs/base/common/lifecycle'; import { IContextKeyService, IContextKey, setConstant as setConstantContextKey } from 'vs/platform/contextkey/common/contextkey'; import { InputFocusedContext, IsMacContext, IsLinuxContext, IsWindowsContext, IsWebContext, IsMacNativeContext, IsDevelopmentContext, IsIOSContext, ProductQualityContext, IsMobileContext } from 'vs/platform/contextkey/common/contextkeys'; <del> import { SplitEditorsVertically, InEditorZenModeContext, AuxiliaryBarVisibleContext, SideBarVisibleContext, PanelAlignmentContext, PanelMaximizedContext, PanelVisibleContext, EmbedderIdentifierContext, EditorTabsVisibleContext, IsMainEditorCenteredLayoutContext, MainEditorAreaVisibleContext, DirtyWorkingCopiesContext, EmptyWorkspaceSupportContext, EnterMultiRootWorkspaceSupportContext, HasWebFileSystemAccess, IsMainWindowFullscreenContext, OpenFolderWorkspaceSupportContext, RemoteNameContext, VirtualWorkspaceContext, WorkbenchStateContext, WorkspaceFolderCountContext, PanelPositionContext, TemporaryWorkspaceContext, TitleBarVisibleContext, TitleBarStyleContext, IsAuxiliaryWindowFocusedContext } from 'vs/workbench/common/contextkeys'; </del> <ins> import { SplitEditorsVertically, InEditorZenModeContext, AuxiliaryBarVisibleContext, SideBarVisibleContext, PanelAlignmentContext, PanelMaximizedContext, PanelVisibleContext, EmbedderIdentifierContext, EditorTabsVisibleContext, IsMainEditorCenteredLayoutContext, MainEditorAreaVisibleContext, DirtyWorkingCopiesContext, EmptyWorkspaceSupportContext, EnterMultiRootWorkspaceSupportContext, HasWebFileSystemAccess, IsMainWindowFullscreenContext, OpenFolderWorkspaceSupportContext, RemoteNameContext, VirtualWorkspaceContext, WorkbenchStateContext, WorkspaceFolderCountContext, PanelPositionContext, TemporaryWorkspaceContext, TitleBarVisibleContext, TitleBarStyleContext, IsAuxiliaryWindowFocusedContext, ActiveEditorGroupEmptyContext, ActiveEditorGroupIndexContext, ActiveEditorGroupLastContext, ActiveEditorGroupLockedContext, MultipleEditorGroupsContext, EditorsVisibleContext } from 'vs/workbench/common/contextkeys'; </ins> import { trackFocus, addDisposableListener, EventType, onDidRegisterWindow, getActiveWindow } from 'vs/base/browser/dom'; import { preferredSideBySideGroupDirection, GroupDirection, IEditorGroupsService } from 'vs/workbench/services/editor/common/editorGroupsService'; import { IConfigurationService } from 'vs/platform/configuration/common/configuration';

Related discussion:
text: Reproduced on OSS, Mac Steps to Reproduce: Code OSS a file cmd+w Closes the window Bisect points to this commit -
I can reproduce and this is likely context keys not being set properly because conditionally closes the window if no active editor. !
There are context keys that are now loose, for example
Follow up work
Code change:
} /** <ins> * Impacts the behavior and appearance of the validation message. */ export enum InputBoxValidationSeverity { Info = 1, Warning = 2, Error = 3 } /** * Object to configure the behavior of the validation message. */ export interface InputBoxValidationMessage { /** * The validation message to display. */ readonly message: string; /** * The severity of the validation message. * NOTE: When using `InputBoxValidationSeverity.Error`, the user will not be allowed to accept (hit ENTER) the input. * `Info` and `Warning` will still allow the InputBox to accept the input. */ readonly severity: InputBoxValidationSeverity; } /** </ins> * Options to configure the behavior of the input box UI. */ export interface InputBoxOptions {

Related discussion:
text: <!-- 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. --We already have this feature in Core: where you can return where . Truth be told, this already works in API today though it's not officially a part of the API today (so it could change at any moment). For example, I can do: <img width="738" alt="image" src="https://user-"with it goes from: to it goes from: to
ref
Created a TPI so moving this to April for Finalization.
Code change:
condition, hitCondition, logMessage <del> }]); </del> <ins> }], `breakpointWidget`); </ins> } }

Related discussion:
text: When going over our telemetry for debug actions we have the ability to track usage counts of debug actions triggered from keyboard shortcuts and commands, as they execute commands which we emit telemetry for, but we don't seem to have telemetry in place for breakpoints set in the gutter (click or context menu). This is unfortunate as my hypothesis is that the majority of breakpoints are set this way. Ask Add ability to track breakpoint toggles (add/remove/change) from Gutter click Add ability to track breakpoint toggles from gutter context menu
would you like to contribute a PR for this? It shuold be fairly simple and you already have the nice code pointers.
I'd be happy too, but we should land on an agreement on how to implement it. What's the best approach? 1) Add telemetry directly to the gutter actions 2) Re-wire the gutter actions to execute a command instead?
for the best approach let's first see what you want to get exactly? total amount of all breakpoints set (including the gutter) grained events for breakpoint setting based on the way the user initated that aciton In case of 1 we should just add a telemetry ping in the  since everyone should go through there In case of 2 depends on how fine grained you want it, if for every place then we should add an argument or something like that in the addBreakpoints method and then also report that to telemetry.
I'd like us to be able to contribute a source/initiator to given breakpoint, so we can get an UI usage distributions, etc.
I suggest the following Add a third argument In the implementation of that method use the telemetry service to report the appropriate event with the context. And you should nicely get all the errors of all the callers of , simply pass different string context for each caller and you shuold be good to go. Let me know if you have any questions
Cool, I'l see what I can get cooking!
Removing my assignment for this. feel free to assign me back if you do not have time to tackle this and if we need this for August
hey, would you still like this? If yes I can also look into it in October
I'd still like to do this to get my hands dirty.
cool, unasigning myself and let's leave it for October
Verified by code review, adding verified label
Code change:
let subscription: IDisposable | undefined; if (typeof provider.onDidChange === 'function') { <del> subscription = provider.onDidChange(uri => { </del> <ins> let lastEvent: Promise<void> | undefined; subscription = provider.onDidChange(async uri => { </ins> if (uri.scheme !== scheme) { this._logService.warn(`Provider for scheme '${scheme}' is firing event for schema '${uri.scheme}' which will be IGNORED`); return; } <del> if (this._documentsAndEditors.getDocument(uri)) { this.$provideTextDocumentContent(handle, uri).then(value => { </del> <ins> if (!this._documentsAndEditors.getDocument(uri)) { // ignore event if document isn't open return; } if (lastEvent) { await lastEvent; } const thisEvent = this.$provideTextDocumentContent(handle, uri) .then(async value => { </ins> if (!value && typeof value !== 'string') { return; }

Related discussion:
text: Does this issue occur when all extensions are disabled?: Yes VS Code Version: 1.77.2 OS Version: Windows 10 It seems that when refreshing () the in a short period, the second refresh is not actually performed. I have provided an example repo and a video demonstrating the issue. Basically we have a that shadows the active editor so whenever a user changes the active editor we update the read only document. However, if the user changes the editors quickly enough then the second change is dropped... Steps to Reproduce: the extension the command "Open Read Only Document" tabs quickly and see how it falls behind even though the content is up to date https://user- The content is actually set but it seems the second is dropped. Because if you refresh the document manually it shows the correct content (see the video above). The issue seems to happen more frequently if the content of the file(s) is large.
I found out why it happens and attempted a fix (with explanation) in
Pinging so it does not get lost