jiebi/CodeConvo huggingface dataset:
Change:
} export function providePathSuggestions(value: string, range: Range, activeDocFsPath: string, root?: string): CompletionItem[] { <del> if (value.indexOf('/') === -1) { return []; } </del> if (startsWith(value, '/') && !root) { return []; } <ins> let replaceRange: Range; </ins> const lastIndexOfSlash = value.lastIndexOf('/'); <del> const valueBeforeLastSlash = value.slice(0, lastIndexOfSlash + 1); const valueAfterLastSlash = value.slice(lastIndexOfSlash + 1); const parentDir = startsWith(value, '/') ? path.resolve(root, '.' + valueBeforeLastSlash) : path.resolve(activeDocFsPath, '..', valueBeforeLastSlash); if (!fs.existsSync(parentDir)) { return []; </del> <ins> if (lastIndexOfSlash === -1) { replaceRange = getFullReplaceRange(range); } else { const valueAfterLastSlash = value.slice(lastIndexOfSlash + 1); replaceRange = getReplaceRange(range, valueAfterLastSlash); </ins> } <del> const replaceRange = getReplaceRange(range, valueAfterLastSlash); </del> <ins> let parentDir: string; if (lastIndexOfSlash === -1) { parentDir = path.resolve(root); } else { const valueBeforeLastSlash = value.slice(0, lastIndexOfSlash + 1); parentDir = startsWith(value, '/') ? path.resolve(root, '.' + valueBeforeLastSlash) : path.resolve(activeDocFsPath, '..', valueBeforeLastSlash); } </ins> try { return fs.readdirSync(parentDir).map(f => { <del> return { label: f, kind: isDir(path.resolve(parentDir, f)) ? CompletionItemKind.Folder : CompletionItemKind.File, textEdit: TextEdit.replace(replaceRange, f) }; </del> <ins> if (isDir(path.resolve(parentDir, f))) { return { label: f + '/', kind: CompletionItemKind.Folder, textEdit: TextEdit.replace(replaceRange, f + '/'), command: { title: 'Suggest', command: 'editor.action.triggerSuggest' } }; } else { return { label: f, kind: CompletionItemKind.File, textEdit: TextEdit.replace(replaceRange, f) }; } </ins> }); } catch (e) { return [];

Discussion:
Testing Version 1.21.0-insider Commit Date 2018-03-01T06:47:39.037Z create , in a folder in `' have and do code completion after . -should show as a proposal
Change:
// "activityBar.foreground": "", // "activityBarBadge.background": "", // "activityBarBadge.foreground": "", <ins> "activityBarItem.settingsProfilesBackground": "#082877", </ins> // Workbench: Panel // "panel.background": "",

Discussion:
The original designs had something closer to this for the default background color. IMO it isn't trying to be an icon like the other items and the border makes it feel like an icon vs. a unique element. I also think the background and foreground should be the only customizable elements to start. I think I saw a foreground token, but not sure it was possible to do background yet. <img width="247" alt="CleanShot 2022-09-26 at 16 29 09 src="https://user-"
I also like this more over the border For example here this looks not too different from the actions above even though it is about profiles: <img width="297" alt="image" src="https://user-"
!
I like it but maybe with smaller font size? Here is with for example: !
Current font size goes well with all (emoji, codicons) and also symmetric with activity bar icons.
Change:
this.iconClasses.push('remote-help-tree-node-item-icon'); } <ins> protected async getActions(): Promise<{ label: string; description: string; extensionDescription: Readonly<IRelaxedExtensionDescription>; }[]> { return (await Promise.all(this.values.map(async (value) => { return { label: value.extensionDescription.displayName || value.extensionDescription.identifier.value, description: await value.url, extensionDescription: value.extensionDescription }; }))).filter(item => item.description); } </ins> async handleClick() { const remoteAuthority = this.environmentService.remoteAuthority; if (remoteAuthority) {

Discussion:
I ran across this while trying to create report issue markdown links for notebooks. Clicking the report issue item in the help section of the remote explorer does nothing and I believe its because of improper arguments format for the report issue command here: The correct argument is an object with an extensionId property.
this works fine for me on desktop. Were you on web? It looks like that command is implemented differently for web. This seems unexpected. do you own and
Looks like might own this. These are the parts that I would expect to be the same:
It was me all along I will change Web to be more like Desktop.
I just debugged this and my issue reporter command is never fired. I think is an issue somewhere in this: The repro steps: don't have a remote workspace open or any workspace open for that matter open the remote explorer -help and feedback -Report Issue nothing happens.
To verify: Install at least 2 remote extension Reload, and make sure you don't have a remote or virtual workspace open Click "Report Issue" from the Remote "Help & Feedback" Verify that you get a quick pick.
Sorry for the false alarm there !
where is this?
! In the Remote Explorer at the bottom.
Change:
.monaco-workbench .hover-language-status > .element .right .monaco-link { margin: auto 0; white-space: nowrap; <ins> text-decoration: var(--text-link-decoration); </ins> } .monaco-workbench .hover-language-status > .element .right .monaco-action-bar:not(:first-child) {

Discussion:
Testing Hover over in the Status Bar when you have a JS file open, expect the links to be underlined by default. When you do hover over them, links appear, but per the TPI I would expect them to appear all the time. !

Testing Hover in Chat View doesn't respect underline setting (expect to be underlined): !

Testing Expect and to support underline: ! To repro, just hit a breakpoint somewhere and hover over variables in the debug view.
Change:
export const DEFAULT_LINE_HEIGHT = 1; export const SHELL_PATH_INVALID_EXIT_CODE = -1; export const SHELL_PATH_DIRECTORY_EXIT_CODE = -2; <ins> export const SHELL_CWD_INVALID_EXIT_CODE = -3; </ins> export type FontWeight = 'normal' | 'bold' | '100' | '200' | '300' | '400' | '500' | '600' | '700' | '800' | '900';

Discussion:
Invalid paths will cause the terminal to start at ' dir.
Is a variable a valid option to ? If so what variables? eg the directory of the current active document. This would replace the need for addin.
created
Would you suggest me to work on this thing and
Sorry for the delay, anything with the help wanted label is up for grabs
I'm sorry if it's not the correct issue to post this. I came here from following a bunch of now closed issues. So in case it could help you figure out what's wrong with this: I am having the very same error as described by . It started just after I upgraded budgie 17.10 (based on ubuntu) to 18.04 It happens only if all 3 of these conditions are met: have no terminal opened in the current instance of vscode. have several folders opened in the workspace have no specified (more on this below). If I use the command instead of the command , it prompts me to chose one of the opened folders in the workspace, and the terminal always starts successfully in this case. When trying to toggle the terminal (without any currently opened): The terminal fails to start with: set to either or . But the terminal starts successfully with a static value such as .
I have the same issue as , is there any solution to do this ? Split Terminal used to work, but now just trows 'chdir(2) failed' and 'The terminal process command '/bin/bash -l' failed to launch (exit code: 1)'
I noticed this problem for the first time today. I get the same error when I try to split the terminal. The issue occurs whenever I use the "Split Terminal" command. Using the "New Terminal" command does not throw this error.
After investigating a little further, the problem in my case is being caused by a unicode character in my file path. One of the folders in my file path is , and the apostrophe (right single quote) is the root of the problem. Removing that character from the folder name fixes it. I'm not sure why this only shows up with the "Split Terminal" command, though.
the cwd in split terminal is driven by this: ! It sounds like inherited (likely) breaks when it contains a ? Can you create a new issue for this?
Change:
if (!controller) { return Promise.resolve(); } <del> controller.previousCommentThread(); </del> <ins> controller.previousCommentThread(true); </ins> }, weight: KeybindingWeight.EditorContrib, primary: KeyMod.Shift | KeyMod.Alt | KeyCode.F9 }); KeybindingsRegistry.registerCommandAndKeybindingRule({ <ins> id: CommentCommandId.NextCommentedRange, handler: async (accessor, args?: { range: IRange; fileComment: boolean }) => { const activeEditor = getActiveEditor(accessor); if (!activeEditor) { return Promise.resolve(); } const controller = CommentController.get(activeEditor); if (!controller) { return Promise.resolve(); } controller.nextCommentThread(false); }, weight: KeybindingWeight.EditorContrib, primary: KeyMod.Alt | KeyCode.F10 }); KeybindingsRegistry.registerCommandAndKeybindingRule({ id: CommentCommandId.PreviousCommentedRange, handler: async (accessor, args?: { range: IRange; fileComment: boolean }) => { const activeEditor = getActiveEditor(accessor); if (!activeEditor) { return Promise.resolve(); } const controller = CommentController.get(activeEditor); if (!controller) { return Promise.resolve(); } controller.previousCommentThread(false); }, weight: KeybindingWeight.EditorContrib, primary: KeyMod.Shift | KeyMod.Alt | KeyCode.F10 }); KeybindingsRegistry.registerCommandAndKeybindingRule({ </ins> id: CommentCommandId.NextRange, handler: async (accessor, args?: { range: IRange; fileComment: boolean }) => { const activeEditor = getActiveEditor(accessor);

Discussion:
Screen reader users like want to navigate between editor ranges that have comments. I think this makes sense. the recording I will share describes this in more detail.
I just realized that these already exist, and .
I respectfully think that we have miscommunication here. I am requesting a feature going to the next commented area. The commands that you are referring to are moving between commentable range, instead of commented area. The closest commands are alt+F9 () and alt+shift+F9 (). However, these commands directly and automatically opens the comment widget. I just want to jump to the next commented lines and manually open the applied comments manually if I need to review.
Ah, yes makes sense thanks for reminding me!
Change:
import { isCodeEditor } from 'vs/editor/browser/editorBrowser'; import { IStorageService, StorageScope } from 'vs/platform/storage/common/storage'; import { ITelemetryService } from 'vs/platform/telemetry/common/telemetry'; <ins> import { DisposableStore } from 'vs/base/common/lifecycle'; </ins> const debugStartLanguageKey = 'debugStartLanguage'; const CONTEXT_DEBUG_START_LANGUAGE = new RawContextKey<string>(debugStartLanguageKey, undefined);

Discussion:
the debug view and a .js file the window that the debug view doesn't seem to recognize a file is open to another file and back again fixes it
I can not reproduce this with latest VS Code out of source. I can reproduce in vscode insiders. Thus it seems like I fixed the issue. Let me know if you can repro out of source and I will reopen. Potentially a candidate. Let me know if you think it is and I can search for the exact fix and port it to the release branch if we do a recovery release.
I don't think this is candidate worthy. Thanks for looking into it!
I can actually still reproduce this, though it seems racey. Create a brand new folder Create some in it, and open it. Open the debug view Reload the window Run and Debug button is greyed out
Pushed a potential fix. Can not really verify if it fixes since can not repro out of source.
This still repro's. I'll move this to next month and debug on my machine since it doesn't repro for you.
thanks for moving it. No need to debug on your machine since now I can reproduce it. But I can only reproduce it in the built version which makes debugging it a bit harder.
I got a fix for this though I couldn't actually verify it since I cannot repro out of source but it does happen in stable and insiders. I'll create a PR so you can try it out.
As mentioned in the PR I fully built VS Code from your changes and the issue is fixed. Great fix and thanks for help
Change:
firstZoom(); } <del> let delta = e.deltaY < 0 ? 1 : -1; </del> <ins> let delta = e.deltaY > 0 ? 1 : -1; </ins> <del> // Pinching should increase the scale if (e.ctrlKey && !isScrollWheelKeyPressed) { delta *= -1; } </del> updateScale(scale as number * (1 - delta * InlineImageView.SCALE_PINCH_FACTOR)); }));

Discussion:
Issue Type: <bBug</bSimilar issue as but I managed to find a way to reproduce it (occurs at least on previews, been unable to test on comparisons, but if it occurs on simple previews I'd imagine it's likely for all image displays). Searching issues leads to a lot of references to , possibly related? Steps to reproduce: Code an image +mouse wheel should correctly zoom in with scroll up, and out with down. to pan the image by left-click and dragging (not something Code seems to support). zoom should now be inverted. Restarting Code usually fixes it until reproduced again, but not always. Re-launching without an image open and opening/scrolling in some other text-based files seems to help. Does this issue occur when all extensions are disabled?: Yes VS Code version: Code 1.25.1 (, 2018-07-11T15:43:53.668Z) OS version: WindowsNT x64 6.1.7601 <details<summarySystem Info</summary </details<details<summaryExtensions (9)</summaryExtensionVersion ------ bracket-pair-colorizer1.0.59 tslint1.0.34 vscode-npm-script0.3.5 vscode-todo-plus2.2.1 vscode-firefox-debug1.4.3 svn-scm1.31.0 debugger-for-chrome4.8.2 material-icon-theme3.5.2 vscode-todo-highlight1.0.4 (1 theme extensions excluded) </details<!-- generated by issue reporter --
Does this still reproduce in the ?
Latest insiders seems to be always inverted.
It's always inverted for me (not insiders).
I would like to give it a try.
Change:
const undoes: CreateEdit[] = []; for (const edit of this._edits) { <del> if (!await this._fileService.exists(edit.oldUri)) { </del> <ins> let fileStat: IFileStatWithMetadata | undefined; try { fileStat = await this._fileService.resolve(edit.oldUri, { resolveMetadata: true }); } catch (err) { </ins> if (!edit.options.ignoreIfNotExists) { throw new Error(`${edit.oldUri} does not exist and can not be deleted`); }

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.65.2 () OS Version: Ubuntu 20.04.3 LTS This issue is acutally discovered in , but I found that the root cause is from the upstream vscode, so I am submitting the issue here. Steps to Reproduce: a vscode window in the browser. to delete a large file (100MB) deletion takes a long time, or the tab is killed by OOM. The cause I found is that when deleting a file, vscode keeps the file content into memory to support undo operation, only if the file is not too large. But in the code, vscode read the file content unconditionally at first and then discards it if exceeds the size limit. Related issues from code-server
Change:
model1.dispose(); }); <ins> test('createFolder', async function () { let eventCounter = 0; let correlationId: number | undefined = undefined; const resource = toResource.call(this, '/path/folder'); const participant = accessor.workingCopyFileService.addFileOperationParticipant({ participate: async (files, operation) => { assert.equal(files.length, 1); const file = files[0]; assert.equal(file.target.toString(), resource.toString()); assert.equal(operation, FileOperation.CREATE); eventCounter++; } }); const listener1 = accessor.workingCopyFileService.onWillRunWorkingCopyFileOperation(e => { assert.equal(e.files.length, 1); const file = e.files[0]; assert.equal(file.target.toString(), resource.toString()); assert.equal(e.operation, FileOperation.CREATE); correlationId = e.correlationId; eventCounter++; }); const listener2 = accessor.workingCopyFileService.onDidRunWorkingCopyFileOperation(e => { assert.equal(e.files.length, 1); const file = e.files[0]; assert.equal(file.target.toString(), resource.toString()); assert.equal(e.operation, FileOperation.CREATE); assert.equal(e.correlationId, correlationId); eventCounter++; }); await accessor.workingCopyFileService.createFolder(resource); assert.equal(eventCounter, 3); participant.dispose(); listener1.dispose(); listener2.dispose(); }); </ins> async function testEventsMoveOrCopy(files: { source: URI, target: URI }[], move?: boolean): Promise<number> { let eventCounter = 0;

Discussion:
It does fire for folder on move and delete. According to the reason lies here: The code goes directly to the file service. Since we correctly report move and delete for folders I think we should report create as well.
Some background: I want to adopt this in LSP but specing that this only works for move and delete of folders sounds a little silly. So I want to make sure that there is either a very compelling reason or there is some ack. that we will fix it in the future.
We currently have no related method such as for folders that the explorer could use here: If we support this, I guess one question in terms of API breakage is wether it is fine to let and emit events for folders too while they currently only emit for files. If we think this is fine, then I think this would be a relatively simple change to make.
I don't consider that breakage, it's a bug fix esp. given that move and delete already fire events for both
Verification: write an extension that registers to and and verify you see both events when you right click into the explorer and create a new folder.
Thanks for fixing!
Change:
})); this.disposables.push(this.tree.onContextMenu(e => this.onContextMenu(e))); <ins> this.disposables.push(this.tree.onKeyDown(e => { const event = new StandardKeyboardEvent(e); const toggleCollapsed = isMacintosh ? (event.keyCode === KeyCode.DownArrow && event.metaKey) : event.keyCode === KeyCode.Enter; if (toggleCollapsed) { const focus = this.tree.getFocus(); if (focus.length === 1 && focus[0].isDirectory) { this.tree.toggleCollapsed(focus[0]); } } })); </ins> // save view state on shutdown this.storageService.onWillSaveState(() => {

Discussion:
Issue Type: <bBug</bVS Code version: Code - Insiders 1.32.0-insider (, 2019-02-27T21:19:19.351Z) OS version: Windows_NT x64 10.0.
(Experimental duplicate detection) Thanks for submitting this issue. Please also check if it is already covered by an existing one, like: <!-- score: 0.572 --- <!-- score: 0.463 --- <!-- score: 0.453 --<!-- potentialduplicatescomment --
To verify make sure that windows and linux enter collapses / expands folders mac cmd + down collapses / expands folders
Change:
public static readonly v350 = API.fromSimpleString('3.5.0'); public static readonly v380 = API.fromSimpleString('3.8.0'); public static readonly v381 = API.fromSimpleString('3.8.1'); <ins> public static readonly v390 = API.fromSimpleString('3.9.0'); </ins> public static fromVersionString(versionString: string): API { let version = semver.valid(versionString);

Discussion:
Following up on microsoft/TypeScript, is now a valid completion directive. It should be recommended over in the editor walkthrough that mentions comment directives.
(Experimental duplicate detection) Thanks for submitting this issue. Please also check if it is already covered by an existing one, like: <!-- score: 0.668 --<!-- potentialduplicatescomment --
Change:
const model = ref.object.textEditorModel; <del> // todo: eventually support cancellation. potential leak if cell deleted mid execution const formatEdits = await getDocumentFormattingEditsUntilResult( </del> <ins> const formatEdits = await getDocumentFormattingEditsWithSelectedProvider( </ins> this.editorWorkerService, this.languageFeaturesService, model, <del> model.getOptions(), </del> <ins> FormattingMode.Silent, </ins> CancellationToken.None );

Discussion:
Related: Looking into reports of X formatter being used instead of Y in various flows. Looking at both on save and on execution formatting participants, one common point is that when is specifically being used, the intended formatter is applied as expected. Some early digging is pointing to a use of instead of , so will be working out a fix there. Will update this thread as is relevant.
do you have some minimal verif steps?
Verification Steps: Install Black Formatter + Ruff Create with only the following:create notebook with a single code cell, and contents In Stable () Save Notebook Black formatter runs =nothing changes Ruff formatter runs =Single quotations turned to double quotations () In Insiders () Save Notebook ONLY Black formatter runs =nothing changes

<!-- 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.83.1 OS Version: 12.6.9 Steps to Reproduce: or the Python and Black Vscode extensions a new notebook and execute any cell or save it You'll a "Formatting with autopep8" message in the status bar even though that formatter extension isn't installed! However manually triggering "Format Cell" does use black.
Change:
const picks = formatter.map((formatter, index) => { return <IIndexedPick>{ index, <del> label: formatter.displayName || formatter.extensionId || '?' </del> <ins> label: formatter.displayName || formatter.extensionId || '?', description: formatter.extensionId && formatter.extensionId.value </ins> }; }); const langName = this._modeService.getLanguageName(document.getModeId()) || document.getModeId();

Discussion:
When picking a Formatter to run for a file type, it'd be nice to see what extension is providing each formatter. This can make it easier to choose which formatter I want to use, or to open an issue to request that the extension use a more obvious name for their formatter :) (in this case, the Ruby extension accidentally provides the legacy formatter as well as the "current" formatter at the same time). When in a situation like this, I'm not sure which to choose: <img width="621" alt="Screen Shot 2019-04-07 at 6 20 49 PM" src="https://user-"Maybe have the extension name de-emphasized like the "Configured Tab Size" text in the indentation dropdown?: <img width="615" alt="Screen Shot 2019-04-07 at 8 29 28 PM" src="https://user-"
We use the 'displayName' or 'name' (when not having the former) but it seems that there are multiple extensions with the same name... We should be more precise in that case.