jiebi/CodeConvo huggingface dataset:
Change:
import { LinkDetector } from 'vs/editor/contrib/links/browser/links'; import { localize } from 'vs/nls'; import { IConfigurationService } from 'vs/platform/configuration/common/configuration'; <ins> import { IContextKey, IContextKeyService, RawContextKey } from 'vs/platform/contextkey/common/contextkey'; </ins> import { IContextViewDelegate, IContextViewService } from 'vs/platform/contextview/browser/contextView'; import { IInstantiationService, createDecorator } from 'vs/platform/instantiation/common/instantiation'; import { IOpenerService } from 'vs/platform/opener/common/opener';

Discussion:
Testing ! Shows Ctrl + e , but that is mapped to "Go to file"
your image didn't work
Updated the image.
Verified with Windows.
Verified that this is now working with Linux and Orca
Change:
throw new Error('Could not start chat session'); } } <ins> this._messages.fire(Message.ACCEPT_INPUT); </ins> const model = this._model.value; this._lastInput = this._chatWidget?.value?.input();

Discussion:
To support voice in terminal, there is an adapter: I think it works great for the most part, but I noticed does not immediately fire, only when the response has been generated. The visible impact is that the animation only stops when the response has landed, as opposed to finishing right away: !
Change:
await this._initialized; } <ins> private getNotebookBaseUri() { if (this.documentUri.scheme === Schemas.untitled || this.documentUri.scheme === Schemas.vscodeInteractive) { const folder = this.workspaceContextService.getWorkspaceFolder(this.documentUri); if (folder) { return folder.uri; } const folders = this.workspaceContextService.getWorkspace().folders; if (folders.length) { return folders[0].uri; } } return dirname(this.documentUri); } </ins> private getBuiltinLocalResourceRoots(): URI[] { // Python notebooks assume that requirejs is a global. // For all other notebooks, they need to provide their own loader.

Discussion:
When converting a jupyter notebooks to a python code file, images no longer load. VS Code version: 1.60.0 Jupyter Extension version (available under the Extensions sidebar): v2021.8. Python Extension version (available under the Extensions sidebar): v2021.9. OS (Windows Linux distro) and version: Linux 5.8.0-59-generic 20.04.1-Ubuntu Python and/or Anaconda version: 3.9.6 Type of virtual environment used (N/A ...): conda Jupyter server running: Local a python file with the following code a random local image the cell The image should load After opening the dev tools, it seems that vscode is trying to load https://vscode- instead of the local file, using an online image from the web does work, unfortunetly local files does not even when using the protocol.
I can replicate this, for some reason images are not loaded when in interactive window.
hi, could you get any updates?
<!-- 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!
Still not working, the local images are not loading. Version: 1.71.0-insider Commit: Date: 2022-08-24T05:18:31.474Z Electron: 19.0.12 Chromium: 102.0.5005.167 16.14.2 V8: 10.2.154.15-electron.0 OS: Linux x64 5.19.3--generic Sandboxed: Yes
Works fine for me: ! Do you have a folder open with both the notebook and image in it?
Thanks for the clarification, yes it only works when the folder is opened. For comparison, if I create a .ipynb file, the images are loaded even though no folder is opened.
Reopening based on the submitter's comment
I believe this is working as intended. The OP confirmed it works when a folder is open.

If you don't have a folder open though, we don't know where the load images from You could argue that in the no folder case we should then use the file's directory, but the interactive window is not linked to a single python file so I'm wary of trying to make this too clever. Better to keep it consistent IMO
Change:
public show(configFileName: string, largeRoots: string, onExecute: () => void) { this._currentHint = { message: largeRoots.length > 0 <del> ? localize('hintExclude', "For better performance exclude folders with many files, like: {0}", largeRoots) : localize('hintExclude.generic', "For better performance exclude folders with many files."), </del> <ins> ? localize('hintExclude', "To enable JavaScript/TypeScript IntelliSense, exclude folders with many files, like: {0}", largeRoots) : localize('hintExclude.generic', "To enable JavaScript/TypeScript IntelliSense, exclude large folders with source files that you do not work on."), </ins> options: [{ title: localize('open', "Configure Excludes"), execute: () => {

Discussion:
VSCode Version: Code - Insiders 1.8.0-insider (, 2016-12-06T16:53:46.634Z) OS Version: Darwin x64 15.6.0 Testing The current message seems to general: "For better performance exclude folders with many files." "better performance" is to weak because the typescript server basically shutdown and won't provide any of the advanced features. "folders with many files" is vague, it should mention JavaScript/TypeScript files that the user does not work on (like packages/libraries). could also mention that this happens in the js-, that would set the right expectation for the 'Configure Excludes' button and also inform the user how this can be done manually. Needs more thought: "Too many JavaScript/TypeScript files: To enable advanced editor features in JavaScript/TypeScript files exclude large folders with source files you do not work on." /cc
Also, the status bar button might benefit from being specific about the language it refers to.
Change:
this.showContextMenu(e.element, true); } }); <ins> container.style.height = `${window.innerHeight}px`; window.addEventListener('resize', () => { container.style.height = `${window.innerHeight}px`; this.tree?.layout(window.innerHeight, window.innerWidth); }); </ins> } private isDebuggable(cmd: string): boolean {

Discussion:
! The process explorer has both the window scrolling and list view scrolling. When window resizes, the list/tree view is not laid out properly and it's then impossible to view some rows.
Should be fixed now.
This was part of
Change:
const config = vscode.workspace.getConfiguration('markdown', resource); return { breaks: config.get<boolean>('preview.breaks', false), <del> linkify: config.get<boolean>('preview.linkify', true) </del> <ins> linkify: config.get<boolean>('preview.linkify', true), typographer: config.get<boolean>('preview.typographer', false) </ins> }; }

Discussion:
Would it be possible to implement support for Typographer mode in the Markdown preview? has support for a typographer option to "enable some language-neutral replacement + quotes beautification". A live comparison is available on . I've listed some of the most common examples below: Name Typographer -- -- Left single quote Left double quote Right single quote Right double quote Ellipsis En-dash Em-dash Copyright Trademark It'd be ideal to add a config setting such that Typographer replacements are done on-the-fly, similarly to the existing implementation of . Thank you for your time.
Change:
dependencies: is-number "^7.0.0" <del> typescript@5.4.5: version "5.4.5" resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.4.5.tgz#42ccef2c571fdbd0f6718b1d1f5e6e5ef006f611" integrity sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ== </del> <ins> typescript@^5.5.0-dev.20240603: version "5.5.0-dev.20240603" resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.5.0-dev.20240603.tgz#a1b7311df5039a8abbaaa2213c21cac6ec547490" integrity sha512-gdm3Sh1A+Pjj9ZlfBEJY3o2rs3tvpcSbu3vYqcCijMe09BePQBtZlsuShuPn+zCnP+qBLxdKjFiw5v1tkna3tA== </ins> vscode-grammar-updater@^1.1.0: version "1.1.0"

Discussion:
Tracks shipping TypeScript 5.5 as the bundled version of ts:
Picked up 5.5.2 To verify: Open a TS file In the language status item, confirm that TS 5.5.2 is used (make sure you are using VSCode's version of typescript, not the workspace version)
Change:
<ins> /*--------------------------------------------------------------------------------------------- *  Copyright (c) Microsoft Corporation. All rights reserved. *  Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ 'use strict'; import * as nls from 'vs/nls'; import {KeyCode, KeyMod} from 'vs/base/common/keyCodes'; import {TPromise} from 'vs/base/common/winjs.base'; import {EditorAction} from 'vs/editor/common/editorAction'; import {ICommand, ICommonCodeEditor, IEditorActionDescriptorData} from 'vs/editor/common/editorCommon'; import {CommonEditorRegistry, ContextKey, EditorActionDescriptor} from 'vs/editor/common/editorCommonExtensions'; import {MoveCarretCommand} from './moveCarretCommand'; class MoveCarretAction extends EditorAction { private left:boolean; constructor(descriptor:IEditorActionDescriptorData, editor:ICommonCodeEditor, left:boolean) { super(descriptor, editor); this.left = left; } public run():TPromise<boolean> { var commands:ICommand[] = []; var selections = this.editor.getSelections(); for (var i = 0; i < selections.length; i++) { commands.push(new MoveCarretCommand(selections[i], this.left)); } this.editor.executeCommands(this.id, commands); return TPromise.as(true); } } class MoveCarretLeftAction extends MoveCarretAction { static ID = 'editor.action.moveCarretLeftAction'; constructor(descriptor:IEditorActionDescriptorData, editor:ICommonCodeEditor) { super(descriptor, editor, true); } } class MoveCarretRightAction extends MoveCarretAction { static ID = 'editor.action.moveCarretRightAction'; constructor(descriptor:IEditorActionDescriptorData, editor:ICommonCodeEditor) { super(descriptor, editor, false); } } CommonEditorRegistry.registerEditorAction(new EditorActionDescriptor(MoveCarretLeftAction, MoveCarretLeftAction.ID, nls.localize('carret.moveLeft', "Move Carret Left"), { context: ContextKey.EditorTextFocus, primary: KeyMod.Alt | KeyCode.LeftArrow, linux: { primary: KeyMod.Alt | KeyCode.LeftArrow } }, 'Move Carret Left')); CommonEditorRegistry.registerEditorAction(new EditorActionDescriptor(MoveCarretRightAction, MoveCarretRightAction.ID, nls.localize('carret.moveRight', "Move Carret Right"), { context: ContextKey.EditorTextFocus, primary: KeyMod.Alt | KeyCode.RightArrow, linux: { primary: KeyMod.Alt | KeyCode.LeftArrow } }, 'Move Carret Right')); </ins>  No newline at end of file

Discussion:
Atom 1.8 will introduce two new commands to move text selections left and right. A description of the feature is available in It would be great to have these commands on VSCode. !
Thanks for bringing this feature to our attention fyi
That looks so cool
Could we use the <kbdAlt</kbd+<kbd←</kbd(respectively <kbdAlt</kbd+<kbd→</kbd) as the keyboard shortcut? That would match perfectly the actions to move lines up or down.
I think <kbdcontrol</kbd+ <kbdcmd</kbd+ <kbd←/→</kbdis better(Atom 1.8). <kbdAlt</kbd+ <kbd←/→</kbdis to move the cursor around the word.
Change:
import { IInstantiationService } from 'vs/platform/instantiation/common/instantiation'; import { WebExtensionManagementService } from 'vs/workbench/services/extensionManagement/common/webExtensionManagementService'; import { IExtension } from 'vs/platform/extensions/common/extensions'; <del> import { ExtensionManagementChannelClient } from 'vs/platform/extensionManagement/common/extensionManagementIpc'; </del> <ins> import { RemoteExtensionManagementService } from 'vs/workbench/services/extensionManagement/common/remoteExtensionManagementService'; </ins> export class ExtensionManagementServerService implements IExtensionManagementServerService {

Discussion:
<!-- 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: stable from sources Regression in current september release Steps to Reproduce: server, open workbench in browser settings sync some extension remote server logs cc
Change:
const uri = Uri.parse(workspace.workspaceFolders![0].uri.toString() + '/far.js'); await commands.executeCommand('vscode.open', uri); <del> assert.strictEqual(window.activeTextEditor?.viewColumn, ViewColumn.One); </del> assert.strictEqual(window.tabGroups.all[0].activeTab?.group.viewColumn, ViewColumn.One); <ins> assert.strictEqual(window.activeTextEditor?.viewColumn, ViewColumn.One); </ins> await commands.executeCommand('vscode.open', uri, ViewColumn.Two); <del> assert.strictEqual(window.activeTextEditor?.viewColumn, ViewColumn.Two); </del> assert.strictEqual(window.tabGroups.all[1].activeTab?.group.viewColumn, ViewColumn.Two); <ins> assert.strictEqual(window.activeTextEditor?.viewColumn, ViewColumn.Two); </ins> await commands.executeCommand('vscode.open', uri, ViewColumn.One); <del> assert.strictEqual(window.activeTextEditor?.viewColumn, ViewColumn.One); </del> assert.strictEqual(window.tabGroups.all[0].activeTab?.group.viewColumn, ViewColumn.One); <ins> assert.strictEqual(window.activeTextEditor?.viewColumn, ViewColumn.One); </ins> let e1: Error | undefined = undefined; try {

Discussion:
from
A possible regression from
No, actually was reported before:
/duplicate
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!
Change:
import { OutlineModel, OutlineElement } from 'vs/editor/contrib/documentSymbols/browser/outlineModel'; import { CancellationToken, CancellationTokenSource, } from 'vs/base/common/cancellation'; import * as dom from 'vs/base/browser/dom'; <del> import { EditorLayoutInfo, EditorOption } from 'vs/editor/common/config/editorOptions'; </del> <ins> import { EditorLayoutInfo, EditorOption, RenderLineNumbersType } from 'vs/editor/common/config/editorOptions'; </ins> import { createStringBuilder } from 'vs/editor/common/core/stringBuilder'; import { RenderLineInput, renderViewLine } from 'vs/editor/common/viewLayout/viewLineRenderer'; import { SymbolKind } from 'vs/editor/common/languages';

Discussion:
Type: <bBug</bTesting down in a TypeScript function ! Note that, In the screenshot, is actually at line 1344, the gutter doesn't have enough space for 4 numbers. Also, the visual separation between sticky lines and normal lines looks too subtle for me. VS Code version: Code - Insiders 1.70.0-insider (, 2022-07-29T10:47:14.408Z) OS version: WindowsNT x64 10.0. Modes: Remote OS version: Linux x64 5.10.102.1-microsoft-standard-WSL2 <details<summarySystem Info</summary </details<details<summaryExtensions (18)</summaryExtensionVersion ------ Bookmarks13.3.1 remotehub0.39. remote-containers0.243.0 remote-ssh0.85. remote-ssh-edit0.80.0 remote-wsl0.66.3 remote-repositories0.16.0 material-icon-theme4.19.0 material-theme3.15.2 vscode-eslint2.2.6 gitlens12.1.2 prettier-vscode9.5.0 copilot-nightly1.36.6347 js-debug-nightly2022.7.2717 abracadabra6.14.4 vscode-jest4.6.0 prisma4.1.0 code-spell-checker2.3.4 </details<!-- generated by issue reporter --
Change:
tunnelProcess.kill(); } }); <del> this._logger.info(`${logLabel} appRoot ${this.environmentService.appRoot}`); this._logger.info(`${logLabel} process.execPath ${process.execPath}`); </del> if (process.env['VSCODE_DEV']) { onOutput('Compiling tunnel CLI from sources and run', false); onOutput(`${logLabel} Spawning: cargo run -- tunnel ${commandArgs.join(' ')}`, false);

Discussion:
Testing Pasting it as text does that.
Same cause as . The parsed hostname also included a
Marking as dup

Testing <img width="445" alt="Screenshot showing notification that the tunnel is ready, but the link to access the tunnel from doesn't render properly due to an extra space in the link." src="https://user-"

Testing using latest Insiders click Turn on Remote Tunnel Access log in using the GitHub flow Unable to turn on remote tunnel
Can you specify a different machine name with the setting ?
:+1: Using worked for me
I'm unable to verify the issue right now because my Ubuntu VM broke. is the issue resolved for you without having to set the setting?
I confirm, the issue is fixed for me
Change:
templateData.disposables.push(disposables); const renderedComment = this.getRenderedComment(originalComment.comment.body, disposables); templateData.disposables.push(renderedComment); <del> templateData.threadMetadata.commentPreview.appendChild(renderedComment.element); </del> <ins> templateData.threadMetadata.commentPreview.appendChild(renderedComment.element.firstElementChild ?? renderedComment.element); </ins> templateData.threadMetadata.commentPreview.title = renderedComment.element.textContent ?? ''; }

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.69.1 In the Comments panel, the position of the is sometimes shifted: ! This happens when a comment has multiple lines. In the DOM, the div contains the full comment, even though only the first line is displayed. If a line within the comment is longer than the first line, the div will be larger, causing the issue visible in the screenshot. I've reproduced the issue on with the GitHub comments. cc
Tried to repro with a multiline comment and didn't see any shifting.
Change:
function doGetMac(): Promise<string> { return new Promise((resolve, reject) => { try { <del> exec(isWindows ? cmdline.windows : cmdline.unix, { timeout: 10000 }, (err, stdout, stdin) => { if (err) { return reject(`Unable to retrieve mac address (${err.toString()})`); } else { const regex = /(?:[a-fd]{2}[:-]){5}[a-fd]{2}/gi; let match; while ((match = regex.exec(stdout)) !== null) { const macAddressCandidate = match[0]; if (validateMacAddress(macAddressCandidate)) { return resolve(macAddressCandidate); } </del> <ins> const ifaces = networkInterfaces(); for (const [, infos] of Object.entries(ifaces)) { for (const info of infos) { if (validateMacAddress(info.mac)) { return resolve(info.mac); </ins> } <del> return reject('Unable to retrieve mac address (unexpected format)'); </del> } <del> }); </del> <ins> } reject('Unable to retrieve mac address (unexpected format)'); </ins> } catch (err) { reject(err); }

Discussion:
Issue Type: <bBug</bsomething like Gentoo Linux VSCode in terminal get something like Possible fix: Don't hardcode the path to these :^) VS Code version: Code 1.49.1 (, 2020-09-16T23:23:33.049Z) OS version: Linux x64 5.8.8-gentoo <details<summarySystem Info</summary </details<details<summaryExtensions (6)</summaryExtensionVersion ------ gitlens10.2.2 cpptools1.0.0 vsliveshare1.0.2740 LiveServer5.6.1 vscodeintellicode1.2.10 vscode-icons11.0.0 (1 theme extensions excluded) </details<!-- generated by issue reporter --
Change:
assert.equal(variable.resolve(resolver), true, `${varName} failed to resolve`); } <del> test('Add time variables for snippets #41631', function () { </del> <ins> test('Add time variables for snippets #41631, #43140', function () { </ins> const resolver = new TimeBasedVariableResolver;

Discussion:
I'm happy to see the new date-based snippet variables in v1.20.0. I would love to see some additional ones since I wanted to use this for generating journal templates. Something like this: CURRENTDAYNAME: Monday, Tuesday, ... CURRENTDAYNAMESHORT: Mon, Tue, ... CURRENTMONTHNAME: January, February, ... CURRENTMONTHNAMESHORT: Jan, Feb, ... Thank you.
A little more tricky because you might want to consider localisation settings...
Change:
readonly id = ID_SYNTAX_PROVIDER; <del> readonly disposables: DisposableStore | undefined; </del> <ins> readonly disposables: DisposableStore; </ins> constructor( private readonly editorModel: ITextModel, private readonly providers: FoldingRangeProvider[], readonly handleFoldingRangesChange: () => void, <del> private readonly foldingRangesLimit: FoldingLimitReporter </del> <ins> private readonly foldingRangesLimit: FoldingLimitReporter, private readonly fallbackRangeProvider: RangeProvider | undefined // used when all providers return null </ins> ) { <ins> this.disposables = new DisposableStore(); if (fallbackRangeProvider) { this.disposables.add(fallbackRangeProvider); } </ins> for (const provider of providers) { if (typeof provider.onDidChange === 'function') { <del> if (!this.disposables) { this.disposables = new DisposableStore(); } </del> this.disposables.add(provider.onDidChange(handleFoldingRangesChange)); } }

Discussion:
a folding range provider that conditionally contributes ranges or undefined and ensure no other is contributing any ranges. a file for which the custom will return undefined so that the default folding regions are shown. another file for which the custom does return ranges. -open the first file :bug: folding regions are not shown !
Change:
this.list = this.instantiationService.createInstance(WorkbenchList, `SCM Main`, listContainer, delegate, [renderer], { identityProvider, horizontalScrolling: false, <del> overrideStyles: { listBackground: SIDE_BAR_BACKGROUND }, </del> <ins> overrideStyles: this.getLocationBasedColors().listOverrideStyles, </ins> accessibilityProvider: { getAriaLabel(r: ISCMRepository) { return r.provider.label;

Discussion:
Sometimes the tree sticky show shadow does not show. Make sure they use the proper overrides and that there is a default color if none is provided
are there any validation steps here?
verified- the scm sticky scroll showed on insiders, but not stable.
Change:
export class ShowNextChangeAction extends EditorAction { <del> constructor() { </del> <ins> constructor(private readonly outerEditor?: ICodeEditor) { </ins> super({ id: 'editor.action.dirtydiff.next', label: nls.localize('show next change', "Show Next Change"),

Discussion:
Found while working on a file tracked by git and make two distinct changes in separate lines the same file on the other side the dirty diff gutter marker on each of the editors to open the dirty diff views the outer editor on the right-hand side the action on the left-hand side dirty diff editor The right-hand side dirty diff editor jumps to the next change !
Change:
id: SelectionToReplAction.ID, label: SelectionToReplAction.LABEL, alias: 'Debug: Evaluate in Console', <del> precondition: ContextKeyExpr.and(EditorContextKeys.hasNonEmptySelection, CONTEXT_IN_DEBUG_MODE, EditorContextKeys.editorTextFocus), </del> <ins> precondition: ContextKeyExpr.and(CONTEXT_IN_DEBUG_MODE, EditorContextKeys.editorTextFocus), </ins> contextMenuOpts: { group: 'debug', order: 0

Discussion:
I don't see why the "Debug: Evaluate in Debug Console" command can't be a parallel of the "Terminal: Run Selected Text In Active Terminal" command, which, when no text is selected, sends the full current line. This is how most evaluate-and-run environments work (Jupyter notebooks, RStudio, Matlab), and it would be great to have that feature during debugging. As long as someone is updating this command, it would be great to add an called something like so that when you use the command to send a line of code, the editor also advances the current line (again, this is a UX element that Jupyter, RStudio, and Matlab are built around). Originally posted by in