jiebi/CodeConvo huggingface dataset:
Change:
* used to show editors side by side. */ export enum ViewColumn { <ins> Active = -1, </ins> One = 1, Two = 2, Three = 3

Discussion:
VSCode Version: Code - Insiders 1.13.0-insider (, 2017-05-26T05:14:23.944Z) OS Version: Windows_NT ia32 10.0. These 2 apis should honor the ViewColumn if specified, but if left they should default to the column of the active editor Having this will eliminate code in many extensions such as: Which fails for anything that isn't a text document (since will be missing)
Unsure what that means?
Sorry, I meant that the could be if the actual active "editor" is a non-text document (image, extension, etc). And can be for a diff editor (maybe other cases?). So an extension can't reliably get the real "active" column
+1 for not setting as default if not specified so that we prefer the currently active editor column when documents open.
PR addresses it, but it conflicts with another change see: Any thoughts on coming to a resolution on that -- I would LOVE to see this fixed.
we have an option for editors to reveal if they are open in another group (see ). I am actually surprised that was fixed and marked as important because the normal workbench behaviour is to open an editor in the currently active editor group. On top of that, the solution also does not seem right because what if I start in column 2 and I open a document in column 3 and then open the document from column 2 again. It opens in column 1?
I was surprised as well as that was my argument too :)
I could rebase that PR again (since its quite old) if you'd like, but it will still fail because of a test checking for
Well, we had this behaviour in place, extensions rely on it , and we don't want to break them. That's why this is tricky The solution is to use column 1 if not specified, no column-math happens:
Change:
this._leadingLineContent = this._promptInputModel.value.substring(0, this._promptInputModel.cursorIndex); // If there's no space it means this is a command, add cached commands list to completions const firstChar = this._leadingLineContent.length === 0 ? '' : this._leadingLineContent[0]; if (this._leadingLineContent.trim().includes(' ') || firstChar === '[') {

Discussion:
Steps to Reproduce: and press :bug: intellisense completion was for the argument instead of running the command I have a pretty strong muscle memory to run that command, so now I need to remember to press escape before pressing enter !
this is bad enough that I've turned the feature off, I can't even use
I also hit these issues particularly with : ! !
one change that would make this much less painful: ctrl+z should undo the auto-complete change as a single action (as is the case with the text editor). I press enter really quickly, after typing what I want, and if auto-complete provides something I didn't want, ctrl+z will undo one character at a time.
Well powershell does support ctrl+z itself. We may be able to undo everything, or nearly everything by using bracketed paste mode, since you can paste something and undo it fine.
Just tried with Posh-Git and while the commands () and aliases ( in mine) work, it still doesn't suggest after checkout: <img width="859" alt="Screenshot 2024-06-14 at 9 56 45 AM" src=""
doesn't show files/folders so we couldn't use that. Maybe using the current completion call, but also providing , , etc. when there are only and entries?
Looks promising <img width="861" alt="Screenshot 2024-06-14 at 10 11 11 AM" src=""
Change:
// Try first to select the walkthrough on an active welcome page with no selected walkthrough for (const group of editorGroupsService.groups) { if (group.activeEditor instanceof GettingStartedInput) { <ins> const activeEditor = group.activeEditor as GettingStartedInput; activeEditor.showWelcome = false; </ins> (group.activeEditorPane as GettingStartedPage).makeCategoryVisibleWhenAvailable(selectedCategory, selectedStep); return; }

Discussion:
For: Passing in an empty markdown file fixes this issue currently. [x] Add the ability to go back to the last focused view instead of the welcome page.
Removing the button on walkthroughs if opened from the cmd. This should prevent the walkthrough from going to the welcome page. The button is now only shown when a walkthrough is invoked from the page or another walkthrough.
Change:
this._positionTop = visibleRange.top; this._positionLeft = visibleRange.left; this._isInViewport = true; <ins> if (this._cursorStyle !== TextEditorCursorStyle.Line) { let visibleRangeForCharacter = ctx.linesVisibleRangesForRange({ startLineNumber: this._position.lineNumber, startColumn: this._position.column, endLineNumber: this._position.lineNumber, endColumn: this._position.column + 1 }, false); if (visibleRangeForCharacter.length > 0 && visibleRangeForCharacter[0].ranges.length > 0) { this._characterWidth = visibleRangeForCharacter[0].ranges[0].width; } } </ins> } else { this._isInViewport = false; }

Discussion:
VSCode Version: 1.5.0 OS Version: OSX Originally posted in but later we found it's a Code issue. Repro steps cursor to any CJK characters !
Change:
} function isStoredProfileExtension(candidate: any): candidate is IStoredProfileExtension { <del> return typeof candidate === 'object' </del> <ins> return isObject(candidate) </ins> && isIExtensionIdentifier(candidate.identifier) <del> && isUriComponents(candidate.location) && candidate.version && typeof candidate.version === 'string'; </del> <ins> && (isUriComponents(candidate.location) || isString(candidate.location)) && candidate.version && isString(candidate.version); </ins> } function isUriComponents(thing: unknown): thing is UriComponents { if (!thing) { return false; } <del> return typeof (<any>thing).path === 'string' && typeof (<any>thing).scheme === 'string'; </del> <ins> return isString((<any>thing).path) && isString((<any>thing).scheme); </ins> }

Discussion:
Type: <bBug</bThe experimental "user profiles" feature uses absolute paths which break when using a (which is done by creating a "data/" folder in VSC's root directory). These paths seem to be stored in "data/user-", at least in part. This makes VSC forget any extensions installed on the default profile as well as any other profiles. It also prevents VSC from finding the settings for any non-default profiles: When trying to edit the settings for a non-default profile, a new "" file is created where VSC expects the file to be. It displays an error message instead if the expected path is invalid (ex. portable installation's drive letter changed). Steps to Reproduce: a portable (.zip) version of VSCode and extract to a folder. an empty "data/" folder inside that folder. VSC and install any extension with the default profile. a second profile. Change some of its settings and install any extension. VSC and move the VSC folder to another location. VSC again. VS Code version: Code - Insiders 1.74.0-insider (, 2022-11-03T18:43:35.409Z) OS version: WindowsNT x64 10.0. Modes: Sandboxed: Yes <details<summarySystem Info</summary </detailsExtensions: none<details<summaryA/B Experiments</summary</details<!-- generated by issue reporter --
Change:
import * as typeConverters from '../utils/typeConverters'; import FileConfigurationManager from './fileConfigurationManager'; <ins> const localize = nls.loadMessageBundle(); </ins> class TypeScriptHoverProvider implements vscode.HoverProvider {

Discussion:
devtools. the vscode repo and open a TS file. . over an expression while the TS extension loads. hover appears. :bug: In the devtools console, the "didn't get externalized correctly" warning shows up.
Any ideas what would cause this?
This would happen if the call wasn't rewritten by the webpack loader defined here: can you look at the built version of typescript-language-features and tell me what the call looks like?
Ah looks like we're incorrectly importing from another file. Here's the compiled call (which doesn't appear to be rewritten): Will push a PR with a fix
That'll do it. loadMessageBundle is actually responsible for giving you your strings for that specific file so you need to have one of those everywhere you have a localize call
Change:
this._slider.toggleClassName('active', true); const handlePointerMove = (posy: number, posx: number) => { <del> const pointerOrthogonalDelta = Math.abs(posx - initialPosX); </del> <ins> const minimapPosition = dom.getDomNodePagePosition(this._domNode.domNode); const pointerOrthogonalDelta = Math.min( Math.abs(posx - initialPosX), Math.abs(posx - minimapPosition.left), Math.abs(posx - minimapPosition.left - minimapPosition.width) ); </ins> if (platform.isWindows && pointerOrthogonalDelta > POINTER_DRAG_RESET_DISTANCE) { // The pointer has wondered away from the scrollbar => reset dragging

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 <!-- 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: 1.74.0 OS Version: Windows 11 Steps to Reproduce: dragging the minimap slider from the left edge. the mouse to the right of the minimap while scrolling. how the slider on the minimap stops scrolling the editor. https://user-
Do you see any errors in developer tools? (Help Toggle Developer Tools)
No, I don't see any errors in the developer tools. I think it's caused by a really annoying feature of windows that is standard across all scrollbars. This explains the feature: It seams strange that in VSCode the minimap slider snaps back even when the mouse is still on the minimap slider. I think you should either increase the buffer zone referred to in the link, to make sure that the minimap slider never snaps back when the mouse is still on the slider while dragging, or completely remove the snap back feature which is how it is on macOS:
Change:
if (!this.restoreListener) { // It's possible that at restore time the value hasn't synced. <del> const key = await this.getStorageKey(); </del> <ins> const key = await this.getTunnelRestoreStorageKey(); </ins> this.restoreListener = this._register(new DisposableStore()); this.restoreListener.add(this.storageService.onDidChangeValue(StorageScope.PROFILE, undefined, this.restoreListener)(async (e) => { if (e.key === key) {

Discussion:
I had to clear settings sync for an unrelated issue and start fresh, but enabling the "UI State" option causes the error below to be continually thrown. If I disable the "UI State" option in settings sync, it starts working again. Type: <bBug</bsettings sync, check all boxes except "UI State" settings sync log, see that it succeeds settings sync config to include UI State VS Code version: Code 1.85.1 (Universal) (, 2023-12-13T09:48:06.308Z) OS version: Darwin arm64 23.2.0 Modes: <details<summarySystem Info</summary </details<details<summaryExtensions (12)</summaryExtensionVersion ------ erb0.0.1 vscode-eslint2.4.2 prettier-vscode10.1.0 codespaces1.16.6 copilot1.148.0 copilot-chat0.11.1 vscode-graphql-syntax1.2.3 endwise1.5.1 remote-containers0.327.0 proto0.0.4 rewrap1.16.3 gitblame10.6.0 (1 theme extensions excluded) </details<details<summaryA/B Experiments</summary</details<!-- generated by issue reporter --
Can you please share the UI state using following steps F1 Export Profile... Select only UI state Export the profile and share it
The exported file is 2.3 MB, and it has some things inside that might be considered sensitive, I'm not sure. Is there a way I can share it privately?
You can share it to me by email - 2.3 MB is way under the limits right?
Just emailed the file, thank you!
I just checked the size limits on the server and it is indeed 2MB caps
Thanks for sharing. I figured out that port forwarding state is taking majority of the size. Hence assigning to
Discussed with and there are 3 easy things I can do to quickly reduce the size: Don't save empty values Add an expiry time to values so they don't live forever Save fewer fields per port in . For example, only tunnels should be stored + restored, so should be removed. So should , , , and .
the limit per resource version is 2mb atm
Are there steps to verify this?

To verify: to a Codespace and forward a port the remote connection the steps in to collect a profile the file created in step 3. Check that the port that you just forwarded in step 1 is listed there under a key and that it doesn't have a value.
For the step, does this mean to stop the codespace?
This is verified. The new port forwarded doesn't have , but I did notice some old ports of mine from old codespaces still having . Not sure if that was expected to be covered.
The behavior you see is expected. I didn't add any cleanup of the old state.
Change:
const engine = tree && findNodeAtLocation(tree, ['engines', 'vscode']); const repo = tree && findNodeAtLocation(tree, ['repository', 'url']); const uri = repo && parseUri(repo.value); <ins> const activationEvents = tree && parseImplicitActivationEvents(tree); </ins> const info: PackageJsonInfo = { isExtension: !!(engine && engine.type === 'string'), hasHttpsRepository: !!(repo && repo.type === 'string' && repo.value && uri && uri.scheme.toLowerCase() === 'https'), <del> repository: uri! </del> <ins> repository: uri!, implicitActivationEvents: activationEvents </ins> }; const str = folder.toString(); const oldInfo = this.folderToPackageJsonInfo[str];

Discussion:
Following the addition of implicit activation events in the November release, we'd like to provide lint warnings via the extension-editing extension when an extension declares activation events which are already implied by its declared contributions.
cc as a heads up--we previously discussed this in and at the time agreed that a simple warning for the reserved/internal event was sufficient. We've since updated the docs and extension samples to mention that you don't need to explicitly list many events anymore. In discussion with Kai, the next step to round out this work and make extension authors aware of the new behavior is to provide lint warnings for all redundant events in the extension-editing extension. Let me know if you have any questions or concerns.
Change:
launcher_paths: LauncherPaths, mut handle: impl 'static + ServiceContainer, ) -> Result<(), AnyError> { <del> handle.run_service(self.log, launcher_paths).await </del> <ins> if std::env::var(DID_LAUNCH_AS_HIDDEN_PROCESS).is_ok() { return handle.run_service(self.log, launcher_paths).await; } // Start as a hidden subprocess to avoid showing cmd.exe on startup. // Fixes https://github.com/microsoft/vscode/issues/184058 // I also tried the winapi ShowWindow, but that didn't yield fruit. Command::new(std::env::current_exe().unwrap()) .args(std::env::args().skip(1)) .env(DID_LAUNCH_AS_HIDDEN_PROCESS, "1") .stderr(Stdio::null()) .stdout(Stdio::null()) .stdin(Stdio::null()) .creation_flags(CREATE_NEW_PROCESS_GROUP | DETACHED_PROCESS) .spawn() .map_err(|e| wrap(e, "error starting nested process"))?; Ok(()) </ins> } async fn unregister(&self) -> Result<(), AnyError> {

Discussion:
opens in a window instead of running in background. I have seen , which introduced this behavior. For me, means . Console window breaks it completely. If the window is closed - service is gone, what shouldn't happen. I understand that there were reasons about changing service behavior to ordinary application. However, I would really like service-like functionality back for my remote development. It's perfectly fine if this would be an additional installation flag. That would keep current easy behavior and allow for unattended installs. <!-- 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 <!-- 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: 1.78.2 (System) OS Version: Windows 11 22H2 Steps to Reproduce:
Sorry, misread. Will look at that
I believe this issue is only partially fixed, even in . The window does not appear when only or (the cli) is running, however, as soon as a tunnel is connected to, a window appears (as code- is run). If the user closes the window, the tunnel connection is dropped. I believe the fix is to pass to creationflags in as seen here: However, without the proprietary "mixin" , it seems my builds of code cli are not able to properly run code-server, failing with To reproduce the issue, on a windows machine: an arbitrary tunnel to authorize the machine: the tunnel with the code at the tunnel service with connect to the tunnel again a on the desktop, close it and observe the tunnel disconnect on
Change:
) { this._execPath = environmentService.execPath; Object.keys(envVariables).forEach(key => { <del> this[`env:${key}`] = envVariables[key]; </del> <ins> const name = isWindows ? key.toLowerCase() : key; this[`env:${name}`] = envVariables[key]; </ins> }); }

Discussion:
VSCode Version:0.10.13 alpha OS Version:Windows 10 Steps to Reproduce: an variable to your ex. ${env.PATH} "command": "echo", "isShellCommand": true, "args": ["${env.PATH}"], the task. This will expand correctly on Linux and OS X but not Windows since the expansion is case sensitive and PATH on Windows is "Path". Env Var expansion shouldn't be case sensitive so that the same task can run on all platform. This bug was requested by in vscode-docs issue
this is done by the resolver service. IMO env variables on all OSes are case insensitive. Should we address this.
Let's keep it open and if some user is passionate he can tackle it
On linux and macOS environment variables are case sensitive, so "Path" and "PATH" are different variables on linux and macOS (but not on Windows). So your statement from above "IMO env variables on all OSes are case insensitive." is not correct, right? so you are asking for making env var lookup case insensitive on Windows only, correct?
I thought they are always case insensitive. So it should be case insensitive then on Windows only
I'm actually about done with a change for this if you want to take a look.
thanks, I will review the PR.
did you want me to squash it or anything (fixed a broken test because I forgot the existing code returned an empty string for missing environment variables)? Different projects have different requirements and I didn't see anything about squashing in your contrib docs.
no need to squash, I will add the comments to the PR directly if something is needed. Thanks
Change:
disturl "https://atom.io/download/electron" <del> target "4.2.9" </del> <ins> target "4.2.10" </ins> runtime "electron"

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:
suite('CodeEditorWidget', () => { <ins> let x = 0; if (x % 0 === 0) { return; } </ins> ensureNoDisposablesAreLeakedInTestSuite(); function withTestFixture(cb: (args: { editor: ICodeEditor; viewModel: ViewModel; log: Log; derived: IObservable<string> }) => void) {

Discussion:
Refs Regressed via . Currently branch PR pipeline is broken, increasing priority on this issue. PTAL, thanks!
Fixed.
Change:
if (!currClipboard || !isImage(currClipboard)) { return; } <del> const context = getImageAttachContext(currClipboard); </del> <ins> const context = await getImageAttachContext(currClipboard); </ins> if (!context) { return; }

Discussion:
Testing a large image () it into chat window freezes for a few seconds Seems we spent in the !
cc. is there a compromise on what we hash for the ID? ie, maybe half of the bytes instead of the full thing, or something of the sort, since ATM we are just hashing the entire received
It looks like the function is trying to hash the Uint8Array naively as an object (hashing each key and value for each element in the array) which is going to be extraordinarily slow. should complete in millisecond(s) :)
should our detect if it's web and if crypto is available and use that if so? I can see this happening again.
Yea, I think having it check for typed arrays and arraybuffers would make sense. Unfortunately is sync and webcrypto is async, however, so it would not be a drop-in replacement.
perhaps we could have a signature like to catch at compile time and redirect that use to the async version in ?
Change:
.monaco-workbench.linux .explorer-viewlet .explorer-item .monaco-inputbox, .monaco-workbench.mac .explorer-viewlet .explorer-item .monaco-inputbox { height: 22px; <ins> margin-left: -1px; </ins> } .explorer-viewlet .explorer-item .monaco-inputbox > .wrapper > .input {

Discussion:
When renaming a file or a folder in the explorer sidebar, you can see that its name has an offset of 1px because of the border of the input box. Although that's trivial, it is something interrupting for me. May we make the input box move left 1px so that the names will be aligned?
Nope (Windows): !
Not important for this milestone Fyi
I now see this (using the GH Sharp theme) <img width="115" alt="screenshot 2018-10-30 at 10 53 08" src="https://user-"
Fixed the border by reverting the PR. The original issue still stands, moving it to the backlog
This issue is being closed to keep the number of issues in our inbox on a manageable level, we are closing issues that are not going to be addressed in the foreseeable future: We look at the number of votes the issue has received and the number of duplicate issues filed. More details . 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 guidelines. Thanks for your understanding and happy coding!