jiebi/CodeConvo huggingface dataset:
Change:
sparkleFilled: register('sparkle-filled', 0xec21), diffSingle: register('diff-single', 0xec22), diffMultiple: register('diff-multiple', 0xec23), <ins> surroundWith: register('surround-with', 0xec24), </ins> // derived icons, that could become separate icons

Discussion:
<!-- 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 "Surround with...." in the labels are redundant and by removing them, clears up clutter in the action widget, and lets users navigate to specific labels by typing in fewer keys (ie, would go to, will go to ) !
Change:
}; export var units : { [unitName:string]:string[] } = { <del> 'length': ['em', 'rem', 'ex', 'px', 'cm', 'mm', 'in', 'pt', 'pc', 'ch', 'vw', 'vh', 'vmin', 'vmax'], </del> <ins> 'length': ['em', 'rem', 'ex', 'px', 'cm', 'mm', 'in', 'pt', 'pc', 'ch', 'vw', 'vh', 'vmin', 'vmax'], </ins> 'angle': ['deg', 'rad', 'grad', 'turn'], 'time': ['ms', 's'], 'frequency': ['Hz', 'kHz'],

Discussion:
The auto-complete lacks MS Edge info. Presumably it needs to be at the line above. I can make the PR request myself if needed, but I'm not sure if it needs plumbed in in other locations too?
Needs to be to browserEntry too
Change:
outline-offset: -2px; } <ins> .monaco-shell .synthetic-focus :focus { outline: 0 !important; /* elements within widgets that draw synthetic-focus should never show focus */ } </ins> .monaco-shell .monaco-inputbox.info input[type="text"]:focus, .monaco-shell .monaco-inputbox.warning input[type="text"]:focus, .monaco-shell .monaco-inputbox.error input[type="text"]:focus {

Discussion:
Right now, this sort of ruins the feeling of an input with options -- it becomes more like an input followed by some toggles ! -- if you have the time
! there you go
I made you a reviewer
Nice solution. Merged.
Change:
this._register(this.onDidChangeBodyVisibility(visible => { if (visible && this.needsRefresh) { <del> this.listRefreshScheduler.schedule(0); </del> <ins> this.listRefreshScheduler?.schedule(0); </ins> } }));

Discussion:
it needs the to work but that only comes in when is called then why is the scheduler not created from and associated code that calls it? the scheduler is never disposed
Change:
if (URI.isUri(value)) { cssRules.push(`${webviewSelector} { content: ""; background-image: url(${value.toString()}); }`); } else { <del> cssRules.push(`${webviewSelector} { content: ""; background-image: url(${value.light.toString()}); }`); </del> <ins> cssRules.push(`.vs ${webviewSelector} { content: ""; background-image: url(${value.light.toString()}); }`); </ins> cssRules.push(`.vs-dark ${webviewSelector} { content: ""; background-image: url(${value.dark.toString()}); }`); } });

Discussion:
<!-- Please search existing issues to avoid creating duplicates. --<!-- Also please test using the latest insiders build to make sure your issue has not already been fixed: --! ! <!-- Use Help Report Issue to prefill these. --- VSCode Version: 1.28.1 OS Version: macOS Sierra 10.12.6 (1st screenshot); and Windows 10 Version 1803 (2nd screenshot) Steps to Reproduce: VS Code, in Icon Theme to Release Notes (from "Show Release Notes" command) the icon is an overlap between generic file icon (!) and VS Code icon (!). --! This issue does not happen when I set Icon Theme to or <!-- Launch with to check. --Does this issue occur when all extensions are disabled?: Yes
Change:
} }, onUnexpectedError); } <del> } </del>  No newline at end of file <ins> } </ins>

Discussion:
Issue Type: <bBug</bctrl-shift-p, "Debug: Start Debugging" leads to this error. I saw that this error was previously mentioned and fixed in a recent update, but the error persists. VS Code version: Code 1.46.1 (, 2020-06-17T21:13:20.174Z) OS version: WindowsNT x64 10.0. Remote OS version: Linux x64 4.19.104-microsoft-standard <details<summarySystem Info</summary </details<details<summaryExtensions (20)</summaryExtensionVersion ------ regex0.2.0 gitlens10.2.2 vscode-pull-request-github0.17.0 vscode-codemetrics1.24.0 cpptools0.28.3 vscode-versionlens1.0.8 java0.63.0 vscodeintellicode1.2.8 application-insights0.4.2 vscode-java-debug0.26.0 vscode-java-dependency0.10.2 vscode-java-pack0.9.1 vscode-java-test0.23.0 vscode-maven0.22.0 code-lens-roundup1.0.0 remote-containers0.122.1 remote-ssh0.51.0 remote-ssh-edit0.51.0 remote-wsl0.44.3 vscode-remote-extensionpack0.20.0 </details<!-- generated by issue reporter --
Same problem vscode v1.47.3. any update on this issue?
The issue was fixed in this insiders release:
what debugger are you using?
Dotnet Core.
thanks. That debugger is a separate extension (C#). Please file an issue against that. We have fixed a similar problem with the debugger (which is built into VS Code). But that fix does not cover the C# debugger.
Change:
width: 100%; table-layout: fixed; } th[scope='col'] { vertical-align: bottom; border-bottom: 1px solid #cccccc;

Discussion:
Noticed how the process explorer is bundling and still. Can we not use Codicons for this? //cc
Oh this seems to be used in the issue reporter, not process explorer. But not sure how to actually see it...
are we actually using these icons? I'm not seeing it: !
it looks like these are only used when VSCode is connected to a remote to show the remote processes as well. I didn't even know we had that, pretty cool: ! Anyhow, my request still seems valid.
PR up at !
Change:
} } <ins> // Re-expand the element if it was previous expanded (#207574) const expandLevels = internal.expandLevels; if (expandLevels !== undefined) { // Wait until a microtask to allow the extension to finish setting up // properties of the element and children before we ask it to expand. queueMicrotask(() => { if (internal.expand === TestItemExpandState.Expandable) { internal.expandLevels = undefined; this.expand(fullId.toString(), expandLevels); } }); } </ins> // Mark ranges in the document as synced (#161320) this.documentSynced(internal.actual.uri); }

Discussion:
My extension's has a that replaces all root items whenever it is called. It calls the same function that creates the items upon extension activation. After the is run, I've verified that the correct root items have been created with set to . However, when the user tries to expand the item, the is not called on that item and no children are created. This simple extension demonstrates the bug: Steps to Reproduce: the extension above. It should immediately activate after the window refresh. the text explorer and observe the root item. Expand it to reveal two children. the Output channel to see that the resolve handler was called. the refresh icon and verify that "Refreshing" was written to the Output channel. to expand the new root. Verify that the resolve handler was never called. VS Code Version: 1.87.2
Thanks for triaging this Do you anticipate this being resolved before the next release? If not, do you have a recommended workaround I should try to implement in my extension?
A fix for this would be highly appreciated. This bug is a major annoyance for my daily work I started creating a new issue for , but googled first and found this one instead I even "fixed" the issue by adding the following line into the refreshHandler Like so: testController.refreshHandler = () ={ replaceRootTestItems(testController); ((item) =testController.resolveHandler(item)); };
Thanks for the tip I'll give that a try as a workaround.
<!-- 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!
/verified
Thanks!
Thanks for fixing this!
Change:
readonly _serviceBrand: undefined; readonly pid: number | undefined; exit(code: number): void; <del> exists(path: string): Promise<boolean>; realpath(path: string): Promise<string>; </del> <ins> fsExists?(path: string): Promise<boolean>; fsRealpath?(path: string): Promise<string>; </ins> } type TelemetryActivationEventFragment = {

Discussion:
Steps to repro: (prereq) make sure Python is installed in or (also repros with stable , does not repo in Desktop) open or wait a bit see that Python gets activated even though this repo has nothing python-y in it (just XML files) ! informed me of which gave me a very curious output: What’s interesting about this is that this repo has no , no , no … so this takes me to the original question. Why is this causing activation? After chatting a bit, pointed out: as suspicious.
I think these host methods are not implemented correctly and they might be the root cause:
Yeah, the function isn't really implemented. Tho, I could change the default to to but the bigger challenge is that the interface assumes local file access - it talks about paths, not uris and therefore this will be hard to implement. And by extension I also think this is buggy for the node EH with workspace not hosted on local disk
NVM - I found the magic and will use that for web EH
Change:
const { tabSize, indentSize, insertSpaces } = model.getOptions(); const indentConverter = this.buildIndentConverter(tabSize, indentSize, insertSpaces); <del> const virtualModel: IVirtualModel = { tokenization: { getLineTokens: (lineNumber: number) => { return model.tokenization.getLineTokens(lineNumber); }, getLanguageId: () => { return model.getLanguageId(); }, getLanguageIdAtPosition: (lineNumber: number, column: number) => { return model.getLanguageIdAtPosition(lineNumber, column); }, }, getLineContent: null as unknown as (lineNumber: number) => string, }; </del> if (s.startLineNumber === s.endLineNumber && model.getLineMaxColumn(s.startLineNumber) === 1) { // Current line is empty

Discussion:
Have the following code Move line request down via Notice how the lines that have been passed change. Their indentation gets modified. The move line down command should not mutate lines it passes.
See and for similar/duplicates.
should be fixed by
Thanks for the fix!

Start with the following code: select the first method move it down
This reproduces for very simple examples:
See also and
Should be fixed with

<!-- 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.90.0 OS Version: Windows 10 Home 22H2 build .4412 (+ WSL2 inside Win10) Steps to Reproduce: (similar to this issue: ) code: cursor at line 5 and perform 3 times. moved line is misplaced: In a vscode window opened in WSL this also happens: 1-WSL. Sample code: 2-WSL. Set cursor at line 2 and perform 3 times. 3-WSL. The last bracked is misplaced:
should be fixed by

<!-- 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. --When writing Lua code in VSCode, using Alt + Up/Down to move a line of code no longer automatically aligns the context of the code. Before the update, it would automatically align.
could you please help triage this issue? Thank you!
Hi yes thanks for the ping, this appears to be related to some recent auto-indentation changes I have made.
should be fixed with
Change:
@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));

Discussion:
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.
Change:
} } <ins> function validateObject(pathObject: object, name: string) { if (pathObject === null || typeof pathObject !== 'object') { throw new ErrorInvalidArgType(name, 'Object', pathObject); } } </ins> function validateString(value: string, name: string) { if (typeof value !== 'string') { throw new ErrorInvalidArgType(name, 'string', value); } } <ins> const platformIsWin32 = (process.platform === 'win32'); </ins> function isPathSeparator(code: number | undefined) { return code === CHAR_FORWARD_SLASH || code === CHAR_BACKWARD_SLASH; }

Discussion:
We will ship Electron with to stable soon so we should also look into bringing our copy of library to the same version. Checking for the diff, it seems to be a few commits after and up until //cc
Hm, the first change is already pretty bad for us: Because it seems to depend on a new thing which is maybe defined globally and probably optimised / cached / snapshotted. Maybe we should rather look out for actual bug fixes and focus on those... Changes: I think only the 2 fix commits stand out from the others
I assume you skipped over right?
Reopening given unit test failures, I had to revert the change for now.
yes I skipped the primordials. I didn't dig into why they do this, but it seemed easy enough to just call the string functions instead. As for the test failures, new PR
Primordials are only meant for Nodejs internal code usage, external users should just replace them with corresponding JavaScript builtins. You can read more about why Nodejs does it
Change:
const quickPick = this._quickInputService.createQuickPick<KernelQuickPickItem>(); const quickPickItems = this._getKernelPickerQuickPickItems(notebook, matchResult, this._notebookKernelService, scopedContextKeyService); <ins> if (quickPickItems.length === 1 && supportAutoRun(quickPickItems[0])) { return await this._handleQuickPick(editor, quickPickItems[0]); } </ins> quickPick.items = quickPickItems; quickPick.canSelectMany = false; quickPick.placeholder = selected

Discussion:
When we only have a couple of notebook controllers created for a notebook type, without any kernel detection task or kernel source commands, the "Select Another Kernel" should not show.
I have no kernels in the MRU, clicking Select Kernel brings me to this quickpick, and clicking the back button here does nothing--I think it shouldn't be shown in this scenario ! I have the Jupyter extension installed but not the Python extension installed, with the MRU picker enabled, the Select Kernel dropdown spins forever like this: !
Change:
clientY: rawEvent.clientY + bounds.top, })); return; <del> } catch (TypeError) { </del> <ins> } catch { </ins> // CustomEvent was treated as MouseEvent so don't do anything - https://github.com/microsoft/vscode/issues/78915 return; } } case 'did-set-content':

Discussion:
VSCode Version: 1.37.1 OS Version: Fedora 30 I'm extracting the CSS Language Server for usage in 3rd party IDE (Eclipse IDE). I noticed that if I start the CSS-LS without passing a element to initialization, the LS will fail because of . One of the important lines in the stack trace is .
Submitted PR for this issue.
Fixed by .
Verified in master by removing the dataPaths
Change:
}, { "command": "git.openChange", <ins> "when": "false" }, { "command": "git.openChangeEditor", </ins> "when": "config.git.enabled && !git.missing && gitOpenRepositoryCount != 0" }, {

Discussion:
Steps to Reproduce: to a git repository in VS Code a change to a file the SCM viewlet and notice that the Open Changes command is disabled <img width="456" alt="image" src="https://user-"
Change:
return { hash: match[1], message: match[2] }; } <del> } </del>  No newline at end of file <ins> } </ins>

Discussion:
VSCode Version: 1.7.2 OS Version: Windows 10 Steps to Reproduce: a repo with a config like: a .gitattributes that looks like: a file with crlf line endings the file using git add on the command line and commit bar to baz in VS Code and save to the git tab, select the file, Ctrl-A to select everything, and use the ... menu at the top-right to select stage lines diff --staged Expected: One line changed - bar -baz, with the line endings lf (due to autocrlf=true) Actual: Whole file changed, as the line endings have changed to crlf
Change:
}, 'Executing task: {0}', `${shellLaunchConfig.executable} ${getArgsToEcho(shellLaunchConfig.args)}`), { excludeLeadingNewLine: true }) + this.taskShellIntegrationOutputSequence; } } else { <del> shellLaunchConfig.initialText = this.taskShellIntegrationStartSequence + this.taskShellIntegrationOutputSequence; </del> <ins> shellLaunchConfig.initialText = { text: this.taskShellIntegrationStartSequence + this.taskShellIntegrationOutputSequence, trailingNewLine: false }; </ins> } }

Discussion:
!
works in OSS !
also works for me in insider's
works for that exact task for me !
It's because of this: Here's the I was using:
This works but it adds an extra line because of initialText so it doesn't look quite right: Before: ! After: !
Change:
background-color: var(--vscode-checkbox-border); } <del> .checkbox-background { </del> <ins> .merge-accept-gutter-marker .checkbox-background { </ins> background: var(--vscode-editor-background); }

Discussion:
I really like how I can see the word-level change per line now in the merge editor, but shouldn't the colors be identical to the diff editor? !
I agree the new color needs to be tweaked. Would you also use the green background?
I think making this look as close as a diff editor if possible would be nice because I am so used at looking at diffs with their color coding. //cc
Change:
import * as nls from 'vscode-nls'; const localize = nls.loadMessageBundle(); <del> import { languages, ExtensionContext, IndentAction, Position, TextDocument, Range, CompletionItem, CompletionItemKind, SnippetString, workspace } from 'vscode'; import { LanguageClient, LanguageClientOptions, ServerOptions, TransportKind, RequestType, TextDocumentPositionParams } from 'vscode-languageclient'; </del> <ins> import { languages, ExtensionContext, IndentAction, Position, TextDocument, Range, CompletionItem, CompletionItemKind, SnippetString, workspace, SelectionRange, SelectionRangeKind } from 'vscode'; import { LanguageClient, LanguageClientOptions, ServerOptions, TransportKind, RequestType, TextDocumentPositionParams, TextDocumentIdentifier } from 'vscode-languageclient'; </ins> import { EMPTY_ELEMENTS } from './htmlEmptyTagsShared'; import { activateTagClosing } from './tagClosing'; import TelemetryReporter from 'vscode-extension-telemetry';

Discussion:
Semantic selections: LSP: works CSS/SCSS/LESS: doesn't work, but it works in Atom. Probably need to update our dependencies. The plan now is to use emmet's "balance" commands. The challenge is that HTML/CSS language service need to include emmet. Alternatively, we can implement these commands ourselves.
Please review the animated gifs in the original thread: Seems to me the emmet functionality as it stands is wholly inadequate.
This will be available in tomorrow's insiders: !
is this suppose to work in Javascript? It's not nearly as functional as Webstorm. Also fails dramatically with HTML in .Vue files. Oh well.
Vue — it'll be available once we update the dependencies. JavaScript — we'll need to wait for TypeScript to add the semantic selection. I don't have any estimate.
Change:
/** * Log the given error or error message to the channel. * <del> * Messages are only printed when the user has enabled error logging. </del> <ins> * Messages are only logged when the {@link LogOutputChannel.logLevel log level} is {@link LogLevel.Error error} or lower. </ins> * * @param error Error or error message to log */

Discussion:
Testing the API lacks an explanation of the interaction between channel log levels and app log levels. the comments of the individual log methods all have the form "Messages are only printed when the user has enabled xxx logging" but nowhere is explained how "xxx logging enablement" is related to the log level. I would rather expect something like "xxx messages are only logged when the log level is xxx or lower."
Change:
// Trigger a 'repaint' when decoration settings change or the sort order changed if (event.affectsConfiguration('explorer.decorations') || event.affectsConfiguration('explorer.openEditors.sortOrder')) { this.sortOrder = this.configurationService.getValue('explorer.openEditors.sortOrder'); <del> this.listRefreshScheduler.schedule(); </del> <ins> this.listRefreshScheduler?.schedule(); </ins> } }

Discussion:
it needs the to work but that only comes in when is called then why is the scheduler not created from and associated code that calls it? the scheduler is never disposed
Change:
*/ mode?: 'prefix' | 'subword' | 'subwordSmart'; <del> showToolbar?: 'always' | 'onHover'; </del> <ins> showToolbar?: 'always' | 'onHover' | 'never'; </ins> suppressSuggestions?: boolean;

Discussion:
<!-- 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. --<img src="" alt="drawing" width="600"/Currently, we can control when to show the inline suggestion toolbar by setting to "always" or "onHover", which are defined as follows: "always": show the inline suggestion toolbar whenever an inline suggestion is shown, and "onHover": show the inline suggestion toolbar when hovering over an inline suggestion. For the new feature, I suggest to add an option "never" as follows "never": do not show the inline suggestion toolbar.
I think this should be very easy to implement. Up for a PR?
I would like to take this.
Any ideas why this setting isn't in the Settings JSON file? .
Thank you so much for accepting the request and for the contribution!
Change:
if (terminalIdentifier.instanceId) { this._primaryOffProcessTerminalService.requestDetachInstance(terminalIdentifier.workspaceId, terminalIdentifier.instanceId).then(attachPersistentProcess => { const instance = this._terminalInstanceService.createInstance({ attachPersistentProcess }, TerminalLocation.Editor, resource); <del> input.setTerminalInstance(instance); // trigger setInput on TerminalEditor setInput // which attaches to the element and updates the input </del> <ins> input = this._instantiationService.createInstance(TerminalEditorInput, resource, instance); </ins> this._editorService.openEditor(input, { pinned: true, forceReload: true

Discussion:
Context: Essentially instead of creating s we will assign URIs to the shell launch configs and only create the terminals when the input is created.
This should also include the fix for splitCwd support in terminal editors: