jiebi/CodeConvo huggingface dataset:
Code change:
Refs: I do not understand this condition: How does that make sure a method exists? The only check for this that is valid currently is , the is just a detail of the file system and not a capability.
This looks like an actual typo to me or missing code review, not sure the consequences, as it could lead to errors when wrongly asserting, so maybe moving to August for investigation.
TLDR I misunderstood how the declared capabilities relate to the actual declared methods and the meaning of . For context, this change came in through and the intention of this change was to support the scenario where an has declared but not : since is optional in the interface and the capability requires both and to be implemented: I made this change because when implementing a with but not , this would result in throwing here: I see how it's possible that a which has check does not have a method implemented. Additionally I see that we have other examples of how to handle the requirement of a readonly filesystem which implements both and , e.g.: I am reverting Apologies for the incorrect code change and thank you for pointing this out.

Related discussion:
text: @IEditSessionsStorageService private editSessionsStorageService: IEditSessionsStorageService, ) { } <del> readonly capabilities: FileSystemProviderCapabilities = FileSystemProviderCapabilities.Readonly; </del> <ins> readonly capabilities: FileSystemProviderCapabilities = FileSystemProviderCapabilities.Readonly + FileSystemProviderCapabilities.FileReadWrite; </ins> async readFile(resource: URI): Promise<Uint8Array> { const match = /(?<ref>[^/]+)/(?<folderName>[^/]+)/(?<filePath>.*)/.exec(resource.path.substring(1));
Code change:
Refs: I do not understand this condition: How does that make sure a method exists? The only check for this that is valid currently is , the is just a detail of the file system and not a capability.
This looks like an actual typo to me or missing code review, not sure the consequences, as it could lead to errors when wrongly asserting, so maybe moving to August for investigation.
TLDR I misunderstood how the declared capabilities relate to the actual declared methods and the meaning of . For context, this change came in through and the intention of this change was to support the scenario where an has declared but not : since is optional in the interface and the capability requires both and to be implemented: I made this change because when implementing a with but not , this would result in throwing here: I see how it's possible that a which has check does not have a method implemented. Additionally I see that we have other examples of how to handle the requirement of a readonly filesystem which implements both and , e.g.: I am reverting Apologies for the incorrect code change and thank you for pointing this out.

Related discussion:
text: async rename(from: URI, to: URI, opts: IFileOverwriteOptions): Promise<void> { } async delete(resource: URI, opts: IFileDeleteOptions): Promise<void> { } <ins> async writeFile() { throw new NotSupportedError(); } </ins> //#endregion }
Code change:
Latest insider. <img width="433" alt="image" src="https://user-"We should make sure the delete action is clearly visible.

Related discussion:
text: } .monaco-workbench .part.editor>.content .gettingStartedContainer .gettingStartedSlide .getting-started-category .codicon.hide-category-button { <del> position: absolute; </del> <ins> margin-left: auto; </ins> top: 4px; right: 8px; }
Code change:
<!-- 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: 1.71.0 Steps to Reproduce: a codespace a merge conflict the conflict file missin the button <img width="1461" alt="image" src="https://user-"missin the button <img width="1535" alt="image" src="https://user-"This is context keys, current file scheme is <img width="673" alt="image" src="https://user-"<img width="703" alt="image" src="https://user-"but the scheme is <img width="316" alt="image" src="https://user-"so the button is missing because is <img width="1148" alt="image" src="https://user-"
I can confirm that "Open in Merge Editor" & "Accept Merge" buttons are missing when VS Code is connected to WSL via Remote - WSL extension.
Thanks for the proper investigation!
Let's make this a 1.70.2 candidate
Fixed in main but keeping this open to cherry-pick things onto release/1.71

Related discussion:
text: this.setCountBadge(); // set mergeChanges context <del> commands.executeCommand('setContext', 'git.mergeChanges', merge.map(item => item.resourceUri.toString())); </del> <ins> commands.executeCommand('setContext', 'git.mergeChanges', merge.map(item => item.resourceUri)); </ins> this._onDidChangeStatus.fire();
Code change:
shell integration enabled a zshell terminal just exits instantly a zsh terminal now works. However, some shell integration markers are still present, and my .zshrc didn't load -- no theme and no aliases are available <img width="359" alt="image" src="https://user-"vs in iterm: <img width="246" alt="image" src="https://user-"
I have seen issues where this is happening, but haven't been able to reproduce yet myself
a recent change which could've caused this is
does your set your on the machine that you're seeing this on? what's your in the external terminal?
is unset when I'm using zshell in iterm
Thanks for creating this issue! We figured it's covering the same as another one we already have. Thus, we closed this one as a duplicate. You can search for . See also our . Happy Coding!
This issue closed? This problem still seems to be occurring. Version: 1.72.0-insider (Universal) Commit: zsh 5.9 (x86_64-apple-darwin21.3.0) and I don't set ZDOTDIR variable
This issue still exists https://user-
<!-- 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!

Related discussion:
text: // Move .zshrc into $ZDOTDIR as the way to activate the script const zdotdir = path.join(os.tmpdir(), `${os.userInfo().username}-vscode-zsh`); envMixin['ZDOTDIR'] = zdotdir; <del> const userZdotdir = env?.ZDOTDIR ?? os.homedir(); </del> <ins> const userZdotdir = env?.ZDOTDIR ?? os.homedir() ?? `~`; </ins> envMixin['USER_ZDOTDIR'] = userZdotdir; const filesToCopy: IShellIntegrationConfigInjection['filesToCopy'] = []; filesToCopy.push({
Code change:
This throws in the monaco editor. To see the exception: clone as a sibling to vscode run run run open http://127.0.0.1:8080/monaco-editor/test/manual/?editor=src observe the error: <img width="1323" alt="image" src="https://user-"
I get this so I think I need some verification steps:

Related discussion:
text: return URL.createObjectURL(blob); } <del> const result = new URL(scriptPath); COI.addSearchParam(result.searchParams, true, true); result.hash = label; return result.href; </del> <ins> const start = scriptPath.lastIndexOf('?'); const end = scriptPath.lastIndexOf('#', start); const params = start > 0 ? new URLSearchParams(scriptPath.substring(start + 1, ~end ? end : undefined)) : new URLSearchParams(); COI.addSearchParam(params, true, true); const search = params.toString(); if (!search) { return `${scriptPath}#${label}`; } else { return `${scriptPath}?${params.toString()}#${label}`; } </ins> } // ESM-comment-end
Code change:
Type: <bBug</b! VS Code version: Code - Insiders 1.72.0-insider (, 2022-09-23T05:17:37.024Z) OS version: Windows_NT x64 10.0. Modes: Sandboxed: Yes /assign <!-- generated by issue reporter --
/assign
Completely agree on this. Tree ident guide highlights are pretty awful throughout the hole app, except the editor itself because of the color lines.
Great find!

Related discussion:
text: private hideTwistiesOfChildlessElements: boolean = false; private shouldRenderIndentGuides: boolean = false; <del> private renderedIndentGuides = new SetMap<ITreeNode<T, TFilterData>, HTMLDivElement>(); </del> private activeIndentNodes = new Set<ITreeNode<T, TFilterData>>(); private indentGuidesDisposable: IDisposable = Disposable.None;
Code change:
Type: <bBug</b! VS Code version: Code - Insiders 1.72.0-insider (, 2022-09-23T05:17:37.024Z) OS version: Windows_NT x64 10.0. Modes: Sandboxed: Yes /assign <!-- generated by issue reporter --
/assign
Completely agree on this. Tree ident guide highlights are pretty awful throughout the hole app, except the editor itself because of the color lines.
Great find!

Related discussion:
text: private modelProvider: () => ITreeModel<T, TFilterData, TRef>, onDidChangeCollapseState: Event<ICollapseStateChangeEvent<T, TFilterData>>, private activeNodes: Collection<ITreeNode<T, TFilterData>>, <ins> private renderedIndentGuides: SetMap<ITreeNode<T, TFilterData>, HTMLDivElement>, </ins> options: ITreeRendererOptions = {} ) { this.templateId = renderer.templateId;
Code change:
Type: <bBug</b! VS Code version: Code - Insiders 1.72.0-insider (, 2022-09-23T05:17:37.024Z) OS version: Windows_NT x64 10.0. Modes: Sandboxed: Yes /assign <!-- generated by issue reporter --
/assign
Completely agree on this. Tree ident guide highlights are pretty awful throughout the hole app, except the editor itself because of the color lines.
Great find!

Related discussion:
text: const onDidChangeCollapseStateRelay = new Relay<ICollapseStateChangeEvent<T, TFilterData>>(); const onDidChangeActiveNodes = new Relay<ITreeNode<T, TFilterData>[]>(); const activeNodes = this.disposables.add(new EventCollection(onDidChangeActiveNodes.event)); <del> this.renderers = renderers.map(r => new TreeRenderer<T, TFilterData, TRef, any>(r, () => this.model, onDidChangeCollapseStateRelay.event, activeNodes, _options)); </del> <ins> const renderedIndentGuides = new SetMap<ITreeNode<T, TFilterData>, HTMLDivElement>(); this.renderers = renderers.map(r => new TreeRenderer<T, TFilterData, TRef, any>(r, () => this.model, onDidChangeCollapseStateRelay.event, activeNodes, renderedIndentGuides, _options)); </ins> for (const r of this.renderers) { this.disposables.add(r); }
Code change:
Type: <bBug</bLight+ on Insiders ! Light+ on Stable ! Dark+ on Insiders: ! Dark+ on Stable: ! VS Code version: Code - Insiders 1.72.0-insider (, 2022-09-23T15:06:00.185Z) OS version: Windows_NT x64 10.0. Modes: Sandboxed: Yes <!-- generated by issue reporter --
regression from

Related discussion:
text: readonly label: string = ''; readonly tooltip: string = ''; <del> readonly class: string = ''; </del> <ins> readonly class: string = 'separator'; </ins> readonly enabled: boolean = false; readonly checked: boolean = false; async run() { }
Code change:
Testing on run continue on clone locally I see a browser-native dialog to open desktop I see a custom message that just reads "We tried opening Visual Studio Code - Insiders on your computer." which is confusing Unsure if we have to show the message or not but its wording needs to be improved. I mean tried and succeed in opening desktop so don't confusing me with this message. If we cannot prevent it I'd suggest to rephrase it and assume that it worked and give me a close option. Today, there this only covers the "didn't work cases" despite success https://user-
We cannot tell from the browser whether opening the protocol url succeeded, and the current wording for this dialog is based on a similar dialog from Office which also unconditionally appears in the browser: Maybe renaming 'Continue here' to 'Cancel' or 'Close' would help? Some other ideas for wording--when you launch a Zoom meeting from a browser in the desktop client, it says !
I can accept that but the wording should be positive/happy. Like: "This session now continues in VS Code Desktop. You can close this window, all your changes have been carried along. Try again if VS Code Desktop didn't start yet."

Related discussion:
text: [ localize('openExternalDialogButtonRetry', "Try again"), localize('openExternalDialogButtonInstall', "Install {0}", this.productService.nameLong), <del> localize('openExternalDialogButtonContinue', "Continue here") </del> <ins> localize('openExternalDialogButtonCancel', "Cancel") </ins> ], { cancelId: 2, <del> detail: localize('openExternalDialogDetail', "We tried opening {0} on your computer.", this.productService.nameLong) </del> <ins> detail: localize( 'openExternalDialogDetail.v2', "We launched {0} on your computer.nnIf {1} did not launch, try again or install it below.", this.productService.nameLong, this.productService.nameLong, ) </ins> }, );
Code change:
Testing It would seem to make sense to start at the first unhandled conflict (currently starts at the top of the file).
This would also help a first-time user understand what they are looking at. Without a conflict being highlighted, it is easy to get confused over all the filled and unfilled rectangles: <img width="2060" alt="image" src="https://user-"With the first conflict selected this is less the case because the 3 unfilled rectangles stand out: <img width="2061" alt="image" src="https://user-"
But the first conflict is revealed automatically, right?

Related discussion:
text: return; } this.input1View.editor.revealLineInCenter(firstConflict.input1Range.startLineNumber); <ins> transaction(tx => { /** @description setActiveModifiedBaseRange */ viewModel.setActiveModifiedBaseRange(firstConflict, tx); }); </ins> })); }
Code change:
Testing It would seem to make sense to start at the first unhandled conflict (currently starts at the top of the file).
This would also help a first-time user understand what they are looking at. Without a conflict being highlighted, it is easy to get confused over all the filled and unfilled rectangles: <img width="2060" alt="image" src="https://user-"With the first conflict selected this is less the case because the 3 unfilled rectangles stand out: <img width="2061" alt="image" src="https://user-"
But the first conflict is revealed automatically, right?

Related discussion:
text: } ); <ins> public setActiveModifiedBaseRange(range: ModifiedBaseRange | undefined, tx: ITransaction): void { this.manuallySetActiveModifiedBaseRange.set({ range, counter: this.counter++ }, tx); } </ins> public setState( baseRange: ModifiedBaseRange, state: ModifiedBaseRangeState,
Code change:
Testing According to , we can have git checkout a specific branch as part of the cloning command. That way we can avoid slowness as well as a double progress indicator.
Verification From your browser, enter . This should clone the repo and checkout the branch , and there should only be one progress notification for the clone progress, there shouldn't be a second progress notification for the checkout
I just get messages like Version: 1.73.0-insider (user setup) Commit: Date: 2022-10-26T09:31:30.519Z Edit: It's missing url=. Will try again.
Thanks

Related discussion:
text: const repositoryPath = await window.withProgress( opts, <del> (progress, token) => this.git.clone(url!, { parentPath: parentPath!, progress, recursive: options.recursive }, token) </del> <ins> (progress, token) => this.git.clone(url!, { parentPath: parentPath!, progress, recursive: options.recursive, ref: options.ref }, token) </ins> ); <del> const refToCheckoutAfterClone = options.ref; if (refToCheckoutAfterClone !== undefined) { await window.withProgress( { location: ProgressLocation.Notification, title: localize('checking out ref', "Checking out ref '{0}'...", options.ref) }, async () => { await this.model.openRepository(repositoryPath); const repository = this.model.getRepository(repositoryPath); await repository?.checkout(refToCheckoutAfterClone); }); } </del> const config = workspace.getConfiguration('git'); const openAfterClone = config.get<'always' | 'alwaysNewWindow' | 'whenNoFolderOpen' | 'prompt'>('openAfterClone');
Code change:
Testing According to , we can have git checkout a specific branch as part of the cloning command. That way we can avoid slowness as well as a double progress indicator.
Verification From your browser, enter . This should clone the repo and checkout the branch , and there should only be one progress notification for the clone progress, there shouldn't be a second progress notification for the checkout
I just get messages like Version: 1.73.0-insider (user setup) Commit: Date: 2022-10-26T09:31:30.519Z Edit: It's missing url=. Will try again.
Thanks

Related discussion:
text: readonly parentPath: string; readonly progress: Progress<{ increment: number }>; readonly recursive?: boolean; <ins> readonly ref?: string; </ins> } export class Git {
Code change:
Testing According to , we can have git checkout a specific branch as part of the cloning command. That way we can avoid slowness as well as a double progress indicator.
Verification From your browser, enter . This should clone the repo and checkout the branch , and there should only be one progress notification for the clone progress, there shouldn't be a second progress notification for the checkout
I just get messages like Version: 1.73.0-insider (user setup) Commit: Date: 2022-10-26T09:31:30.519Z Edit: It's missing url=. Will try again.
Thanks

Related discussion:
text: if (options.recursive) { command.push('--recursive'); } <ins> if (options.ref) { command.push('--branch', `'${options.ref}'`); } </ins> await this.exec(options.parentPath, command, { cancellationToken, env: { 'GIT_HTTP_USER_AGENT': this.userAgent },
Code change:
Here with the long path a "..." would help: <img width="673" alt="image" src="https://user-"

Related discussion:
text: color: var(--vscode-descriptionForeground); } <ins> .monaco-workbench .merge-editor .code-view.result > .header > .description { display: inline; flex-shrink: 1; } .monaco-workbench .merge-editor .code-view.result > .header > .detail { flex-shrink: 0; } .monaco-workbench .merge-editor .code-view.result > .header > .toolbar { flex-shrink: 0; } </ins> .monaco-workbench .merge-editor .code-view > .header > span.description .codicon { font-size: 14px; color: var(--vscode-descriptionForeground);
Code change:
Just debugging in Insiders, it looks like the opposite: the free port matcher doesn't match anything unless the output is more than its configured 20 lines <img width="499" alt="image" src="https://user-"If I add then it works. THat should be enough for me to verify the UI side of this... Originally posted by in
remove this completely
<!-- 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!

Related discussion:
text: if (startLine === endLine) { return undefined; } <del> if (outputMatcher?.length && (endLine - startLine) < outputMatcher.length) { return undefined; } </del> let line: string | undefined; if (outputMatcher?.anchor === 'bottom') { for (let i = endLine - (outputMatcher.offset || 0); i >= startLine; i--) {
Code change:
Type: <bBug</ba new profile from empty click on activity bar "Move Primary Side Bar Right" ! VS Code version: Code - Insiders 1.72.0-insider (, 2022-09-29T08:07:23.017Z) OS version: WindowsNT x64 10.0. Modes: Sandboxed: Yes Remote OS version: Linux x64 5.15.62.1-microsoft-standard-WSL2 Remote OS version: Linux x64 5.15.62.1-microsoft-standard-WSL2 <details<summarySystem Info</summary </detailsExtensions: none <!-- generated by issue reporter --

Related discussion:
text: /* Right aligned */ <del> .monaco-workbench .activitybar.right > .content :not(.monaco-menu) > .monaco-action-bar .action-label:not(.codicon) { </del> <ins> .monaco-workbench .activitybar.right > .content :not(.monaco-menu) > .monaco-action-bar .action-label:not(.codicon):not(.profile-activity-item) { </ins> margin-left: 0; padding: 0 48px 0 0; background-position: calc(100% - 9px) center;
Code change:
<!-- 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. --The debug button is really small. Can it be big? The drop down menu as well as the other debug buttons could be on a toolbar under the debug title and this could be much bigger and easier.  Or the play button could be bigger button like the 'commit' button: <img width="422" alt="Screen Shot 2022-10-10 at 8 00 21 PM" src="https://user-"
The clickable area of that button is 16x20. Most menu buttons are 22x22. I haven't had an issue with this but could it be a ux or accessibility issue? Here's what it would look like if it were 22px wide <img width="312" alt="image" src="https://user-"The big button is an interesting idea but I'm not a big fan of that button. I find it really aggressive and loud and I disable it in scm.
Making it 22px makes sense. I think it should be consistent with the other button sizes across the workbench.
thanks a lot :) it has been the fastest fix on history :))
Did slightly less than the full 22px - due to the border and the background color, I think that feels too wide. But this should help.

Related discussion:
text: flex-shrink: 0; } <ins> .monaco-workbench .part > .title > .title-actions .start-debug-action-item .codicon-debug-start { width: 18px; height: 21px; padding-left: 2px; } </ins> .monaco-workbench .monaco-action-bar .start-debug-action-item .configuration .monaco-select-box { border: none; margin-top: 0px;
Code change:
A remote code execution vulnerability exists in VS Code 1.71 and earlier versions for malicious notebooks. These notebooks could use command uris to execute arbitrary commands, including potentially dangerous commands The fix is available starting with VS Code 1.71.1. The mitigates this attack by performing input validation on the URL pointing to the repository to be cloned. Do not open notebooks from untrusted sources. The patch for this can be found at An advisory for this can be found at MSRC details for this can be found at
the docs and advisories say it's fixed in 1.71.1, but it's only fixed in 1.72.1

Related discussion:
text: return; } <del> if (matchesScheme(link, Schemas.command)) { const ret = /command:workbench.action.openLargeOutput?(.*)/.exec(link); if (ret && ret.length === 2) { const outputId = ret[1]; this.openerService.open(CellUri.generateCellOutputUri(this.documentUri, outputId)); return; } console.warn('Command links are deprecated and will be removed, use message passing instead: https://github.com/microsoft/vscode/issues/123601'); } if (matchesScheme(link, Schemas.command)) { if (this.workspaceTrustManagementService.isWorkspaceTrusted()) { this.openerService.open(link, { fromUserGesture: true, allowContributedOpeners: true, allowCommands: true }); } else { console.warn('Command links are disabled in untrusted workspaces'); } } else if (matchesSomeScheme(link, Schemas.vscodeNotebookCell, Schemas.http, Schemas.https, Schemas.mailto)) { this.openerService.open(link, { fromUserGesture: true, allowContributedOpeners: true, allowCommands: true }); </del> <ins> if (matchesSomeScheme(link, Schemas.vscodeNotebookCell, Schemas.http, Schemas.https, Schemas.mailto)) { this.openerService.open(link, { fromUserGesture: true, allowContributedOpeners: true, allowCommands: false }); </ins> } }));