jiebi/CodeConvo huggingface dataset:
Code change:
rows: number; data: string; } <ins> const enum Constants { /** * Writing large amounts of data can be corrupted for some reason, after looking into this is * appears to be a race condition around writing to the FD which may be based on how powerful * the hardware is. The workaround for this is to space out when large amounts of data is being * written to the terminal. See https://github.com/microsoft/vscode/issues/38137 */ WriteMaxChunkSize = 50, } /** * Splits incoming pty data into chunks to try prevent data corruption that could occur when pasting * large amounts of data. */ export function chunkInput(data: string): string[] { const chunks: string[] = []; let nextChunkStartIndex = 0; for (let i = 0; i < data.length - 1; i++) { if ( // If the max chunk size is reached i - nextChunkStartIndex + 1 >= Constants.WriteMaxChunkSize || // If the next character is ESC, send the pending data to avoid splitting the escape // sequence. data[i + 1] === 'x1b' ) { chunks.push(data.substring(nextChunkStartIndex, i + 1)); nextChunkStartIndex = i + 1; // Skip the next character as the chunk would be a single character i++; } } // Push final chunk if (nextChunkStartIndex !== data.length) { chunks.push(data.substring(nextChunkStartIndex)); } return chunks; } </ins>

Related discussion:
text: Add/remove one character from the string and try again, works.
We closed this issue because we in the foreseeable future. If you disagree and feel that this issue is crucial: we are happy to listen and to reconsider. If you wonder what we are up to, please see our and . Thanks for your understanding, and happy coding!
i opened a bug on gnu nano's bugtracker:
I think I found a workaround, but haven't tested it: vscode , nano doesn't deal well with across writes and it is apparently difficult to fix in nano. vscode could split writes differently, using this algorithm that keeps escape sequences at the beginning and end unsplit (like bracketed pastes):
great info, we should definitely do this . I'll probably tweak your proposal a little to try catch escape sequences in the middle too.
I don't expect input sizes to be 50 bytes except when pasting, when pasting there should only ever be an escape sequence at the beginning and end, never in the middle (terminal apps are unlikely to deal well with pasting a string containing escape sequences anyway).
unless I missed something in the issue you linked, it's not that they need to be on the boundaries of the text but need to be included entirely in that string and not clipped?
yes, escape sequences need to be contained entirely in one write syscall. basically I am saying you shouldn't have escape sequences in the middle of a long input, so you don't need to look for them to avoid splitting them, they should only occur towards the ends of a long input or in a shorter input.
Nano's workaround was released in Nano 8.0:
Code change:
'description': nls.localize('zoomLevel', "Adjust the zoom level of the window. The original size is 0 and each increment above or below represents zooming 20% larger or smaller.") } } <ins> }); // Configuration: Update configurationRegistry.registerConfiguration({ 'id': 'update', 'order': 10, 'title': nls.localize('updateConfigurationTitle', "Update configuration"), 'type': 'object', 'properties': { 'update.channel': { 'type': 'string', 'enum': ['none', 'default'], 'default': 'default', 'description': nls.localize('updateChannel', "Configure the update channel to receive updates from. Requires a restart after change.") } } </ins> });  No newline at end of file

Related discussion:
text: Users that don't want automatic updates should still be given the opportunity to stay in the same version. ping
Code change:
*/ static parse(value: string, _strict: boolean = false): URI { const match = _regexp.exec(value); <del> if (!match) { return new _URI(_empty, _empty, _empty, _empty, _empty); </del> <ins> if (match) { return new _URI( match[2] || _empty, decodeURIComponent(match[4] || _empty), decodeURIComponent(match[5] || _empty), decodeURIComponent(match[7] || _empty), decodeURIComponent(match[9] || _empty), _strict ); </ins> } <del> return new _URI( match[2] || _empty, decodeURIComponent(match[4] || _empty), decodeURIComponent(match[5] || _empty), decodeURIComponent(match[7] || _empty), decodeURIComponent(match[9] || _empty), _strict ); </del> <ins> return new _URI(_empty, _empty, _empty, _empty, _empty); </ins> } /**

Related discussion:
text: Issue Type: <bBug</bdeveloper tools themes Everything appears to work as normal, but the console gets flooded with errors. VS Code version: Code - Insiders 1.36.0-insider (, 2019-06-14T10:36:51.530Z) OS version: Darwin x64 18.6.0 <details<summarySystem Info</summary </details<details<summaryExtensions (13)</summaryExtensionVersion ------ vscode-eslint1.9.0 gitlens9.8.2 vsc-material-theme2.9.0 remote-containers0.61.0 remote-ssh-edit-nightly2019.6. remote-ssh-explorer-nightly2019.6. remote-ssh-nightly2019.6. vscode-typescript-tslint-plugin1.1.0 debugger-for-chrome4.11.3 vscode-docker0.6.2 material-icon-theme3.8.0 polacode0.3.2 vscode-sort-json1.13.0 </details<!-- generated by issue reporter --
I can't repo this. Which developer tools and theme are you talking about specifically?
I tried repoing this again and it appears that this error is related to installing a new theme. Here are some better repo steps: developer tools themes (no errors) a theme themes (errors even if it is one of the themes shipped with VS code) The errors go away after a reload, but installing a theme does not tell me a reload is required.
Ok, with the extensions view open, I sometimes see Does not cause seem to cause any actual problems
I get that as well sometimes, but do you not get the webview must be attached to the DOM error as well?
I can reproduce it. Steps: on any extension to load it's Readme in an editor that editor theme (this triggers the webview error) step 1 (this triggers the guestInstanceId error)
Code change:
id: TerminalCommandId.ConfigureTerminalSettings, title: localize('workbench.action.terminal.openSettings', "Configure Terminal Settings") }, <del> group: TerminalTabContextMenuGroup.Configure </del> <ins> group: '3_configure' </ins> } <ins> }, { id: MenuId.TerminalNewDropdownContext, item: { command: { id: 'workbench.action.tasks.runTask', title: localize('workbench.action.tasks.runTask', "Run Task...") }, when: TaskExecutionSupportedContext, group: '4_tasks', order: 1 }, }, { id: MenuId.TerminalNewDropdownContext, item: { command: { id: 'workbench.action.tasks.configureTaskRunner', title: localize('workbench.action.tasks.configureTaskRunner', "Configure Tasks...") }, when: TaskExecutionSupportedContext, group: '4_tasks', order: 2 }, </ins> } ] );

Related discussion:
text: Could look like this, but have and/or tasks entries as well as a one. Hiding it by default is a good way to avoid cluttering the action bar - so people only see it if they want to <img width="285" alt="Screen Shot 2022-09-30 at 12 56 57 PM" src="https://user-"
cc
Talked w Kai and we're thinking to instead add a action to the terminal dropdown which aligns with the menu and will aid in discoverability !
Code change:
this.contextKeyService = service; } <del> private getActions(menuId: MenuId, element: ITreeItem, listen: boolean = false): { menu?: IMenu; primary: IAction[]; secondary: IAction[] } { </del> <ins> private getActions(menuId: MenuId, element: ITreeItem, listen?: DisposableStore): { menu?: IMenu; primary: IAction[]; secondary: IAction[] } { </ins> if (!this.contextKeyService) { return { primary: [], secondary: [] }; }

Related discussion:
text: <!-- 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: V1.81.1 OS Version: Linux kkuser-virtual-machine 5.15.0-83-generic ~20.04.1-Ubuntu SMP Mon Aug 21 14:00:49 UTC 2023 x8664 x8664 x8664 GNU/Linux Steps to Reproduce: are constant changes in attribute states in the treeview calls to () functions result in memory leakage
Thanks for creating this issue! It looks like you may be using an old version of VS Code, the latest stable release is 1.82.2. Please try upgrading to the latest version and checking whether this issue remains. Happy Coding!
<!-- 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!
Code change:
} const instance = tab.split(this._terminalFocusContextKey, this.configHelper, shellLaunchConfig); <del> this._initInstanceListeners(instance); this._onInstancesChanged.fire(); </del> <ins> if (instance) { this._initInstanceListeners(instance); this._onInstancesChanged.fire(); </ins> <del> this._terminalTabs.forEach((t, i) => t.setVisible(i === this._activeTabIndex)); </del> <ins> this._terminalTabs.forEach((t, i) => t.setVisible(i === this._activeTabIndex)); } else { this._showNotEnoughSpaceToast(); } </ins> } protected _initInstanceListeners(instance: ITerminalInstance): void {

Related discussion:
text: With latest release (1.21) you can split terminal infinitely. This breaks badly the terminal area. Probably the IDE should limit this to a defined maximum or something?
I considered adding a max value but you would always be able to break it then by sizing down. As a mitigation we could disallow creating terminals if the desired room isn't there but the real fix is proper overflow behavior.
Thanks , I would agree that proper overflow behaviour is the way to go. Thanks!
I think the easiest way to improve this is to only allow terminals to be created if there's a reasonable amount of room. This can exist with our current lack of overflow behavior as it's an improvement on the current and will prevent 100 terminals from being created..
Some terminal can be resized to a small size if they are not important. In some case, showing multiple terminals is just to notify the user whether they are running. Currently the minimum size of terminal is too large.
I suggest the minimum size of a terminal should be an option in Settings.
Code change:
import { IWorkbenchContributionsRegistry, Extensions as WorkbenchExtensions, IWorkbenchContribution } from 'vs/workbench/common/contributions'; import { Registry } from 'vs/platform/registry/common/platform'; import { LifecyclePhase } from 'vs/workbench/services/lifecycle/common/lifecycle'; <del> import { Action2, IAction2Options, registerAction2 } from 'vs/platform/actions/common/actions'; </del> <ins> import { Action2, IAction2Options, MenuRegistry, registerAction2 } from 'vs/platform/actions/common/actions'; </ins> import { ServicesAccessor } from 'vs/editor/browser/editorExtensions'; import { localize } from 'vs/nls'; import { IEditSessionsWorkbenchService, Change, ChangeType, Folder, EditSession, FileType, EDIT_SESSION_SYNC_CATEGORY, EDIT_SESSIONS_CONTAINER_ID, EditSessionSchemaVersion, IEditSessionsLogService, EDIT_SESSIONS_VIEW_ICON, EDIT_SESSIONS_TITLE, EDIT_SESSIONS_SHOW_VIEW, EDIT_SESSIONS_SIGNED_IN, EDIT_SESSIONS_DATA_VIEW_ID, decodeEditSessionFileContent } from 'vs/workbench/contrib/editSessions/common/editSessions'; import { ISCMRepository, ISCMService } from 'vs/workbench/contrib/scm/common/scm'; import { IFileService } from 'vs/platform/files/common/files'; <del> import { IWorkspaceContextService } from 'vs/platform/workspace/common/workspace'; </del> <ins> import { IWorkspaceContextService, WorkbenchState } from 'vs/platform/workspace/common/workspace'; </ins> import { URI } from 'vs/base/common/uri'; import { joinPath, relativePath } from 'vs/base/common/resources'; import { encodeBase64 } from 'vs/base/common/buffer';

Related discussion:
text: ! should align more with <img width="672" alt="image" src="https://user-"
Code change:
css += `.monaco-workbench .panel.integrated-terminal .terminal-outer-container { background-color: ${bgColor}; }`; } const fgColor = theme.getColor(TERMINAL_FOREGROUND_COLOR); <del> if (bgColor) { </del> <ins> if (fgColor) { </ins> css += `.monaco-workbench .panel.integrated-terminal .xterm { color: ${fgColor}; }`; }

Related discussion:
text: Don't know if this is the intention or a bug. See
I believed this is a bug, and I've sent a PR for this. cc
It was indeed, thanks again
Code change:
} public set scrollTop(scrollTop: number) { <ins> const horizontalScrollHeight = this.horizontalScrolling ? 10 : 0; </ins> this.scrollableElement.setScrollDimensions({ <del> scrollHeight: this.getContentHeight() </del> <ins> scrollHeight: this.getContentHeight() + horizontalScrollHeight </ins> }); this.scrollableElement.setScrollPosition({ scrollTop: scrollTop

Related discussion:
text: an explorer with a lot of elements tree horizontal scrolling covers the last element and there is no way to read nicely the content of that element I would expect the scroll is rendered below the last element, not on top of it
Can you share a screenshot?
If it could help, here is it: !
Also here's one from the explorer !
Seems to be a special case of combination between our scrollbar and the tree: the row is less than double the height of the scrollbar. We should add some extra pixels at the end of the view.
Hello. I want to take this issue. Could you give me a hint where should I start?
can i take this up? some insights will be helpful..
Code change:
function fish_mode_prompt __vsc_fish_prompt_start __vsc_fish_mode_prompt <ins> __vsc_fish_cmd_start </ins> end function fish_prompt __vsc_fish_prompt <del> __vsc_fish_cmd_start </del> end else # No fish_mode_prompt, so put everything in fish_prompt.

Related discussion:
text: Type: <bBug</bI suddenly started getting the following message when my terminal starts up: I did not install anything but I did update the application. VS Code version: Code - Insiders 1.80.0-insider (Universal) (, 2023-06-21T08:23:42.803Z) OS version: Darwin arm64 22.5.0 Modes: <details<summarySystem Info</summary </details<details<summaryExtensions (17)</summaryExtensionVersion ------ vscode-tailwindcss0.9.11 language-hugo-vscode1.3.1 vscode-eslint2.4.0 gitlens14.0.1 prettier-vscode9.15.0 vscode-github-actions0.25.8 vscode-graphql0.8.13 vscode-graphql-execution0.1.8 vscode-graphql-syntax1.2.0 endwise1.5.1 vscode-duplicate1.2.1 remote-containers0.296.0 code-spell-checker2.20.5 vscode-mdx1.3.0 simple-ruby-erb0.2.1 gistfs0.4.1 pretty-ts-errors0.4.1 (1 theme extensions excluded) </details<details<summaryA/B Experiments</summary</details<!-- generated by issue reporter --
I also encounter this issue!
Reproduces only when fish is installed via
IE contains binary so hard to know what's going on here !
any thoughts here?
FWIW is a (if you weren't using directly, vim, maybe you were looking at it with ?) and those are binary but probably isn't. It probably isn't interesting either. As for the problem, this happens at the initial invocation of so I'd guess it runs into the branch where exists and it's trying to initialize the integration but that function isn't defined yet, and I'd guess moving that invocation from line 125 to after is defined should fix this issue.
I think the idea that this bug is only present when using brew to install fish is not quite true, I'm seeing the issue on a Windows machine using WSL2.
Thanks that fixes the error. Shell integration still doesn't work because isn't getting run, so will investigate that
For this case, when installed via brew, there is a . Moving from to fixes this.
Code change:
function fish_mode_prompt __vsc_fish_prompt_start __vsc_fish_mode_prompt <ins> __vsc_fish_cmd_start </ins> end function fish_prompt __vsc_fish_prompt <del> __vsc_fish_cmd_start </del> end else # No fish_mode_prompt, so put everything in fish_prompt.

Related discussion:
text: So the repro is to have a
<!-- 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!
should I be able to repro this just by installing fish with brew and using shell integration there or is there other custom fish config required?
Yep that is how I reproduced it
I have fish installed via are and have shell integration enabled and I am not seeing any errors neither in stable nor in insiders. Is there a step I am missing here to verify?
Reproduced in 1.80.0-insiders Verified fixed in
Code change:
import { SnippetController2 } from 'vs/editor/contrib/snippet/snippetController2'; import { IMenuService, IMenu } from 'vs/platform/actions/common/actions'; import { createTextModel } from 'vs/editor/test/common/editorTestUtils'; <ins> import { Range } from 'vs/editor/common/core/range'; import { timeout } from 'vs/base/common/async'; </ins> suite('SuggestController', function () {

Related discussion:
text: Issue Type: <bBug</bLike what the heading says, inserting a code snippet anywhere in the code file causes an autoscroll. This is a slight inconvenience, as while inserting snippets, viewing code above it is desirable, causing us to rescroll into view. So adding an option to revert to the functionality in the stable release would be preferred VS Code version: Code - Insiders 1.46.0-insider (, 2020-05-07T16:36:39.681Z) OS version: Linux x64 5.4.38-1-MANJARO <details<summarySystem Info</summary </details<details<summaryExtensions (4)</summaryExtensionVersion ------ cpptools0.27.1 Go0.14.1 material-icon-theme4.1.0 material-theme3.5.0 (1 theme extensions excluded) </details<!-- generated by issue reporter --
Yeah - that's a regression from a recent change to keep the position stable when additional edits are inserted...
is the item that caused this regression.
fixed via
Yep, it works fine now. Thanks a lot!
This bug has been fixed in to 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 pallette to check), and leave a comment letting us know what isn't working as expected. Happy Coding!
/verified
Code change:
import { SnippetController2 } from 'vs/editor/contrib/snippet/snippetController2'; import { IMenuService, IMenu } from 'vs/platform/actions/common/actions'; import { createTextModel } from 'vs/editor/test/common/editorTestUtils'; <ins> import { Range } from 'vs/editor/common/core/range'; import { timeout } from 'vs/base/common/async'; </ins> suite('SuggestController', function () {

Related discussion:
text: This is somewhat the opposite of and the acknowledgement that computing additional text edits for all items upfront is too demanding. This issue is only about and the goal is a pragmatic solution, similar to the one that we have for . Idea accept an unresolved completion proceed with insertion as usual set up a content change listener resolve the items once resolved check if additional edits overlap with "concurrent" changes. when they overlap, do nothing otherwise proceed
The first version for this is now merged to master, it's a pragmatic approach that's better then not resolving but worst than (costly) upfront resolving. Items to followup on [ ] telemetry and follow up issues [ ] - TS issue for having incomplete items [ ] [ ] java for returning very few (resolved) completions, e.g doing the right thing
/cc - My understanding is that Java resolves all items upfront, e.g compute additional text edits during "provide", and that it is quite expensive and therefore Java only returns a small amount of items. Is that correct? Could Java return results faster when additional text edits are computed during resolve (and therefore only for selected items)?
Yes. I think so! is the dev who was working on Java completion. I believe he can provide more insights toward this topic. // cc
this is exactly the behavior that used to have, ie compute all the completion items first (fast), then the text edits were computed during resolveCompletion. We were asked to not do that as and changed to return a small subset of completion items (with incomplete=true), with full text edits computed upfront. The user experience is definitely not as good as with our initial implementation.
To be clear, computing any Java textedit upfront is costly when returning 100+ items (and we can return several thousands items). We'd prefer if the async insertion of textedits covered all textedits, not just the additional ones.
The requirements discussed in are still true and there are no plans to change that. There is (which might be derived from ) and . The former () is inserted at the cursor and must be inserted synchronous to accepting a completion (we cannot block typing while waiting for that). The latter () is meant for things like import-statements and we now want to relax that, e.g it can come late and we try to apply those edits despite the user having typed more.