jiebi/CodeConvo huggingface dataset:
Change:
Issue Id: <-ec5b-f02f-7f98-</b<br /<br /Versions <br /- 1.19.1<br /- <br /- <br /Stack <br /TypeError: Cannot read property 'uri' of null<br /)<br /)<br /)<br /)<br /)<br /)<br /)<br /)<br /)<br /)<br /
also present on 1.19.2, prevented me from installing or even viewing cjsx extension Caused by assuming here: that: is always an object and never or And it is because this has no fallback for case when is not defined. And is optional for because it's of type
Fix is in the same style as special case for default icon if icon asset is missing.
I'm forwarding this and the respective PR to you, I'm sure you'll know immediately how to review it.

Discussion:
return { uri, fallbackUri: uri }; } <ins> if (type === AssetType.Repository) { return { uri: null, fallbackUri: null }; } </ins> return null; }
Change:
VSCode Version: 1.19.1 OS Version: Windows 10.0. Steps to Reproduce: a markdown with two URLs in two lines, for example: two (collapsed) selections in the middle of each URL, say: Where denotes caret position. "Open Link" command (). Does this issue occur when all extensions are disabled?: Yes ~I'm willing to contribute a PR if that's something you'd like to see in the editor.~ I made a PR with fix in .

Discussion:
return; } <del> let link = linkDetector.getLinkOccurrence(editor.getPosition()); if (link) { linkDetector.openLinkOccurrence(link, false); </del> <ins> let selections = editor.getSelections(); for (let sel of selections) { let link = linkDetector.getLinkOccurrence(sel.getEndPosition()); if (link) { linkDetector.openLinkOccurrence(link, false); } </ins> } } }
Change:
non-dirty file (New Untitled will do) to "close editor" border is set, which is nice, but it's invisible Shown only on hover: !
I cannot reproduce, can you reproduce with our default dark theme?
it's related to config. Reproduces with:
It's related to this piece:
thanks I can reproduce, but the fix is not good. I commented.
I think it would be easy to do in chromium 60 where is working.

Discussion:
padding: 0; } <ins> .monaco-workbench > .part.editor > .content .editor-group-container > .title .tabs-container >  .tab.sizing-shrink:focus > .tab-label::after { opacity: 0; /* when tab has the focus this shade breaks the tab border (fixes https://github.com/Microsoft/vscode/issues/57819) */ } </ins> .monaco-workbench > .part.editor > .content .editor-group-container > .title .tabs-container > .tab.sizing-fit .monaco-icon-label, .monaco-workbench > .part.editor > .content .editor-group-container > .title .tabs-container > .tab.sizing-fit .monaco-icon-label > .monaco-icon-label-description-container { overflow: visible; /* fixes https://github.com/Microsoft/vscode/issues/20182 */

overflow: hidden; /* let the close button be pushed out of view when sizing is set to shrink to make more room... */ } <ins> .monaco-workbench > .part.editor > .content .editor-group-container > .title .tabs-container > .tab.close-button-right.sizing-shrink > .tab-close:focus-within { overflow: visible;/* fix invisible tab close button on focus: (fixes https://github.com/Microsoft/vscode/issues/41459) */ } </ins> .monaco-workbench > .part.editor > .content .editor-group-container > .title .tabs-container > .tab.dirty.close-button-right.sizing-shrink > .tab-close, .monaco-workbench > .part.editor > .content .editor-group-container > .title .tabs-container > .tab.close-button-right.sizing-shrink:hover > .tab-close { overflow: visible; /* ...but still show the close button on hover and when dirty */
Change:
VSCode Version: Code 1.19.2 (, 2018-01-10T15:55:03.538Z) OS Version: Windows_NT x64 10.0. Extensions: ExtensionVersion ------ code-gnu-global0.2.2 vscode-clang0.2.2 cpptools0.14.5 Description: The terminal panel automatically maximized when I resize the window. I think this was caused by the method of maximizing this panel. Maybe it was like this: And when I resize the window to be less high, the condition is reached because I only changed the window's height, didn't change the panel's. Although this is not a serious problem, I still feel annoyed as I should use my mouse to click the button each time I do so. Hope you can fix this Steps to Reproduce: an empty window, no folder open needed the powershell terminal, and make it longer(x-axis) the window on a top corner, either left-top or right-top(You can drag it there using mouse or using keyboard Win+Right,Win+Up) By now, you can see the maximize button has changed <!-- Launch with to check. --Reproduces without extensions: Yes
I acknowledge this bug and we accpet PRs that fix this code pointer Easy repro steps panel size of whole vscode window such that the panel thinks it is maximized size of hwole vscode window, panel remains maximized and occupies most of space
I'd like to take this. Will drop a PR.
Just to clarify and document the issue, I'm uploading a gif. !
yes that is exactly the issue, thanks for providing a gif
I just opened a PR. Please check.

Discussion:
this.statusbarHeight = isStatusbarHidden ? 0 : this.partLayoutInfo.statusbar.height; this.titlebarHeight = isTitlebarHidden ? 0 : this.partLayoutInfo.titlebar.height / getZoomFactor(); // adjust for zoom prevention <del> const previousMaxPanelHeight = this.sidebarHeight - this.partLayoutInfo.editor.minHeight; </del> this.sidebarHeight = this.workbenchSize.height - this.statusbarHeight - this.titlebarHeight; let sidebarSize = new Dimension(this.sidebarWidth, this.sidebarHeight);

panelHeight = 0; panelWidth = 0; } else if (panelPosition === Position.BOTTOM) { <del> if (this.panelHeight === previousMaxPanelHeight) { panelHeight = maxPanelHeight; } else if (this.panelHeight > 0) { </del> <ins> if (this.panelHeight > 0) { </ins> panelHeight = Math.min(maxPanelHeight, Math.max(this.partLayoutInfo.panel.minHeight, this.panelHeight)); } else { panelHeight = sidebarSize.height * DEFAULT_PANEL_SIZE_COEFFICIENT;
Change:
Steps to Reproduce: reproduces out of sources and open just one window to date settings and go back in time 1 month =this takes 10-20s on my system. When I comment out in the as well as I can no longer reproduce. !
Investigating. Just by changing the month back, the CPU goes crazy: !
We're hitting this all the time, since is negative in this case! So CPU just spins.
wow
Moving to March due to high risk change, and given that no users seem to hit this often. Sorry for taking so long to look at this.
Snowplowed once again...
This mechanism seems to have changed in spdlog 0.17.0. Will create a new build based on that and test.
Yep, that version of spdlog fixes it! :fireworks: Lets just hope it doesn't break other things. :seenoevil:
This can't be reproduced on managed computers as we aren't allowed to change the date. can you change your date?
Never mind, there's a different UI for date changing which isn't blocked.

Discussion:
"native-watchdog": "0.3.0", "node-pty": "0.7.6", "semver": "^5.5.0", <del> "spdlog": "0.6.0", </del> <ins> "spdlog": "0.7.1", </ins> "sudo-prompt": "8.2.0", "v8-inspect-profiler": "^0.0.8", "vscode-chokidar": "1.6.2",

version "1.0.0" resolved "https://registry.yarnpkg.com/sparkles/-/sparkles-1.0.0.tgz#1acbbfb592436d10bbe8f785b7cc6f82815012c3" <del> spdlog@0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/spdlog/-/spdlog-0.6.0.tgz#20632ed4f1558ffa46e8a5827a5e97c61e0fa9ed" </del> <ins> spdlog@0.7.1: version "0.7.1" resolved "https://registry.yarnpkg.com/spdlog/-/spdlog-0.7.1.tgz#960b8cdced12e8c482d1df9fa65220789f276979" </ins> dependencies: bindings "^1.3.0" mkdirp "^0.5.1"
Change:
Feature Request Type: Move cursor to . Click on the light bulb and apply the codefix. The cursor is gone. It would be nice if it were still at the position it was before the codefix. Ideally, there would be a key I could press to enter the lightbulb-menu so I wouldn't have to use the mouse at all. VS Code version: Code - Insiders 1.20.0-insider (, 2018-02-02T06:17:03.200Z) OS version: Linux x64 4.4.0-83-generic
I'm unable to reproduce this in the VS Code 1.20 main release or in the current insiders. Are you still hitting this?
Yeah, the cursor is gone the moment I click on the light bulb, and then typing does nothing. I'm on the 2018-02-08 release of vscode insiders.
Ok, thanks. Yes I still see this when clicking on the light-bulb. When trigging quick fixes with + the cursor stays in place. Seems like a generic quick fix ui problem

Discussion:
} })); this._disposables.push(dom.addStandardDisposableListener(this._domNode, 'click', e => { <ins> // Make sure that focus / cursor location is not lost when clicking widget icon this._editor.focus(); </ins> // a bit of extra work to make sure the menu // doesn't cover the line-text const { top, height } = dom.getDomNodePagePosition(this._domNode);
Change:
Version 1.19.3 Commit Date 2018-01-25T10:36:34.867Z Shell 1.7.9 Renderer 58.0.3029.110 Node 7.9.0 Architecture x64 Steps to Reproduce: VSCode using 4K monitors (150x magnify) the session remotely via RDP using 1080p monitors From now on, even if taking back the session locally, the caret position is corrupt. The picture shows the result of highlighting the "location" word. The caret has an offset of 4 characters to the right. ! Does this issue occur when all extensions are disabled?: Yes

Discussion:
this.setFullScreen(false); this.setFullScreen(true); } <ins> this.sendWhenReady('vscode:displayChanged'); </ins> }, 100)); const displayChangedListener = () => simpleFullScreenScheduler.schedule();

import { AutoSaveMode, IFilesConfigurationService } from 'vs/workbench/services/filesConfiguration/common/filesConfigurationService'; import { Event } from 'vs/base/common/event'; import { INativeWorkbenchEnvironmentService } from 'vs/workbench/services/environment/electron-browser/environmentService'; <ins> import { clearAllFontInfos } from 'vs/editor/browser/config/configuration'; </ins> export class NativeWindow extends Disposable {

this.notificationService.info(message); }); <ins> ipc.on('vscode:displayChanged', (event: IpcEvent) => { clearAllFontInfos(); }); </ins> // Fullscreen Events ipc.on('vscode:enterFullScreen', async () => { await this.lifecycleService.when(LifecyclePhase.Ready);
Change:
Bug Click on any extension in the extensions view to open the extensions editor Triple click on the extension id (next to the extension name) -the whole id gets selected Ctrl+C to copy and them paste elsewhere Expected: The extension id gets copy pasted Actual: The extension id along with everything that follows it gets copy pasted For eg: In the case of , the below gets copied to the clipboard ms- Preview Microsoft40,119RepositoryLicense An Azure Functions extension for Visual Studio Code. Install Details Contributions Changelog Dependencies VS Code version: Code - Insiders 1.20.0-insider (, 2018-02-06T15:20:43.871Z) OS version: Windows_NT x64 10.0. <details<summarySystem Info</summary </details<details<summaryExtensions (6)</summaryExtensionVersion ------ Go0.6.73 vsliveshare0.2.66 debugger-for-chrome4.1.0 vscode-versionlens0.19.1 sass-indented1.4.6 language-stylus1.8.0 </detailsReproduces only with extensions
I would suggest to add and label to this one
This is a weird one . From my investigation if you give - to the element next to the tag ( which is the tag in this case ), it fixes selection for the . But this in-turn breaks again if you select tag. Any to suggestions on this? Attaching screenshot for the css - <img width="655" alt="screen shot 2018-02-10 at 3 03 48 pm" src="https://user-"
No idea :) You will have to play around with values for and understand how it behaves in different scenarios

Discussion:
flex: 1; padding-left: 20px; overflow: hidden; <ins> user-select: text; </ins> } .extension-editor > .header > .details > .title {

margin-left: 10px; padding: 0px 4px; border-radius: 4px; <ins> user-select: none; </ins> } .extension-editor > .header > .details > .subtitle {
Change:
At , there are instructions to have running when making development changes to the tests. In my experience, I did not have gulp installed because it wasn't part of the "How to Contribute" instructions, but the normal was able to build a new test suite. Should this be changed?

Discussion:
## Run <del> The best way to run the Code tests is from the terminal. To make development changes to unit tests you need to be running `gulp`. See [Development Workflow](https://github.com/Microsoft/vscode/wiki/How-to-Contribute#incremental-build) for more details. From the `vscode` folder run: </del> <ins> The best way to run the Code tests is from the terminal. To make development changes to unit tests you need to be running `yarn run watch`. See [Development Workflow](https://github.com/Microsoft/vscode/wiki/How-to-Contribute#incremental-build) for more details. From the `vscode` folder run: </ins> **OS X and Linux**
Change:
In the snippet docs there's syntax for adding choices for placeholders: Currently the class has methods for , , etc. but there isn't an option for choices. We can build these manually, but it'd be better if we could stick to a nice API.
Also seems like the escape method is private, making it more difficult to do this manually without duplicating the implementation.
Actually, is escaped so it seems like we can't do this at all without building the whole string ourselves..
Well, you can do
That seems to have worked, thanks! I did have to copy your escape function and add to it though!
Hello,is this issue solved ? I am new on this repo and looking for good first issues to solve, this issue looks good for my purpose. Can anyone please guide me about solving this please?
This issue would be closed if it's solved. So, "yes" it up for a grab. This is the code pointer entry point:

Discussion:
appendPlaceholder(value: string | ((snippet: SnippetString) => any), number?: number): SnippetString; /** <ins> * Builder-function that appends a choice (`${1|a,b,c}`) to * the [`value`](#SnippetString.value) of this snippet string. * * @param values The values for choices - the array of strings * @param number The number of this tabstop, defaults to an auto-increment * value starting at 1. * @return This snippet string. */ appendChoice(values: string[], number?: number): SnippetString; /** </ins> * Builder-function that appends a variable (`${VAR}`) to * the [`value`](#SnippetString.value) of this snippet string. *

return this; } <ins> appendChoice(values: string[], number: number = this._tabstop++): SnippetString { const value = SnippetString._escape(values.toString()); this.value += '${'; this.value += number; this.value += '|'; this.value += value; this.value += '|}'; return this; } </ins> appendVariable(name: string, defaultValue?: string | ((snippet: SnippetString) => any)): SnippetString { if (typeof defaultValue === 'function') {

string.appendVariable('BAR', b => { }); assert.equal(string.value, '${BAR}'); <ins> string = new types.SnippetString(); string.appendChoice(['b', 'a', 'r']); assert.equal(string.value, '${1|b,a,r|}'); string = new types.SnippetString(); string.appendChoice(['b', 'a', 'r'], 0); assert.equal(string.value, '${0|b,a,r|}'); string = new types.SnippetString(); string.appendText('foo').appendChoice(['far', 'boo']).appendText('bar'); assert.equal(string.value, 'foo${1|far,boo|}bar'); string = new types.SnippetString(); string.appendText('foo').appendChoice(['far', '$boo']).appendText('bar'); assert.equal(string.value, 'foo${1|far,$boo|}bar'); string = new types.SnippetString(); string.appendText('foo').appendPlaceholder('farboo').appendChoice(['far', 'boo']).appendText('bar'); assert.equal(string.value, 'foo${1:farboo}${2|far,boo|}bar'); </ins> }); test('instanceof doesn't work for FileSystemError #49386', function () {
Change:
VSCode Version: 1.21.0-insider OS Version: MacOS Sierra 10.12.6 Steps to Reproduce: a file in explorer enter to rename the file renamed the file, press enter again and observe the glitch Does this issue occur when all extensions are disabled?: Yes ! I think, this issue may be related with Have a nice day and happy valentine's day

Discussion:
const done = once((commit: boolean, blur: boolean) => { tree.clearHighlight(); <ins> label.element.style.display = 'none'; </ins> if (commit && inputBox.value) { editableData.action.run({ value: inputBox.value });
Change:
Only one nitbit, now when we display the path in a multi folder setup we do not start with a and when we display the path in a single folder setup we show the relative folder with a at the start. I think that is wrong and the path should never show a since it is not absolute

Discussion:
import * as nls from 'vs/nls'; import * as objects from 'vs/base/common/objects'; import * as DOM from 'vs/base/browser/dom'; <ins> import * as path from 'path'; </ins> import URI from 'vs/base/common/uri'; import { once } from 'vs/base/common/functional'; import * as paths from 'vs/base/common/paths';

import { IWindowService } from 'vs/platform/windows/common/windows'; import { IWorkspaceEditingService } from 'vs/workbench/services/workspace/common/workspaceEditing'; import { extractResources, SimpleFileResourceDragAndDrop, CodeDataTransfers, fillResourceDataTransfers } from 'vs/workbench/browser/dnd'; <del> import { relative } from 'path'; </del> import { WorkbenchTree, WorkbenchTreeController } from 'vs/platform/list/browser/listService'; import { IClipboardService } from 'vs/platform/clipboard/common/clipboardService'; import { DataTransfers } from 'vs/base/browser/dnd';

} }), DOM.addStandardDisposableListener(inputBox.inputElement, DOM.EventType.KEY_UP, (e: IKeyboardEvent) => { <del> const initialRelPath: string = relative(stat.root.resource.fsPath, stat.parent.resource.fsPath); </del> <ins> const initialRelPath: string = path.relative(stat.root.resource.fsPath, stat.parent.resource.fsPath); </ins> let projectFolderName: string = ''; if (this.contextService.getWorkbenchState() === WorkbenchState.WORKSPACE) { projectFolderName = paths.basename(stat.root.resource.fsPath);	// show root folder name in multi-folder project

if (inputBox.validate()) { const value = inputBox.value; if (value && value.search(/[/]/) !== -1) {	// only show if there's a slash <del> let newPath = paths.normalize(paths.join(initialRelPath, value), true); newPath = rtrim(newPath, paths.nativeSep); </del> <ins> let displayPath = path.normalize(path.join(projectFolderName, initialRelPath, value)); displayPath = rtrim(displayPath, paths.nativeSep); </ins> const fileType: string = FileKind[fileKind].toLowerCase(); inputBox.showMessage({ type: MessageType.INFO, <del> content: nls.localize('constructedPath', "Create {0} in **{1}**", fileType, newPath), </del> <ins> content: nls.localize('constructedPath', "Create {0} in **{1}**", fileType, displayPath), </ins> formatContent: true }); }

// Hide those that match Hidden Patterns const expression = this.hiddenExpressionPerRoot.get(stat.root.resource.toString()) || Object.create(null); <del> if (glob.match(expression, paths.normalize(relative(stat.root.resource.fsPath, stat.resource.fsPath), true), siblingsFn)) { </del> <ins> if (glob.match(expression, paths.normalize(path.relative(stat.root.resource.fsPath, stat.resource.fsPath), true), siblingsFn)) { </ins> return false; // hidden through pattern }
Change:
Issue Type: Bug folder ! VS Code version: Code - Insiders 1.21.0-insider (, 2018-02-21T09:22:14.399Z) OS version: Windows_NT x64 10.0. Reproduces without extensions <!-- generated by issue reporter --
Code pointer
does it mean that this is the expected behavior?
I m on it.
it is always debatable if something is a feature-request or a bug. I guess this is more of a bug, but I took the artistic freedom and assigned feature-request.
it does not seem to restore the full expansion state, only the first level is that true?
yes, only the first level. could improve the PR and try to restore more.
Yes, i can do that.
great, tree should have api to get the exapnsion state. And once the pr is ready just ping me on it.
Should i make a new method to return all the expanded children as array on treeModel?
Is this ready for verification?
ben already verified and can add a verified label. There are some limitation which will tackle in a pr for next milestone

Discussion:
restoreFocus = true; } <ins> let isExpanded = false; </ins> // Handle Rename if (oldParentResource && newParentResource && oldParentResource.toString() === newParentResource.toString()) { const modelElements = this.model.findAll(oldResource); modelElements.forEach(modelElement => { <ins> //Check if element is expanded isExpanded = this.explorerViewer.isExpanded(modelElement); </ins> // Rename File (Model) modelElement.rename(newElement);

if (restoreFocus) { this.explorerViewer.setFocus(modelElement); } <ins> //Expand the element again if (isExpanded) { this.explorerViewer.expand(modelElement); } </ins> }, errors.onUnexpectedError); }); }
Change:
Performance Issue When using VS Code to debug a java program with many threads (~500) the UI becomes generally unresponsive and sometimes freezes for about 10-20 seconds when hitting/continuing from a breakpoint. The problem seems to be that VS Code tries to refresh the "Call Stack" very often (and each refresh takes 100-200ms with that many threads) VS Code version: Code 1.20.1 (, 2018-02-13T15:23:28.607Z) OS version: Darwin x64 17.4.0 <details<summarySystem Info</summary </details<details<summaryWorkspace Info</summary</details<details<summaryExtensions (10)</summaryExtensionVersion ------ vscode-eslint1.4.6 tslint1.0.28 prettier-vscode1.1.3 python2018.1.0 debugger-for-chrome4.1.0 java0.19.0 lwc-vscode0.11.2 perforce3.1.0 rewrap1.7.1 vscode-java-debug0.6.0 (1 theme extensions excluded) </detailsReproduces only with extensions VS Code example stack trace when freezing: <img width="349" alt="stack-trace" src="https://user-"
fixes this
once the insiders build is out on Friday you can try this out with your PR and let us know if all is good now - thanks
Will do, thx!
tried with the 2018-03-09T05:17:20.534Z insiders build and it worked great
great, adding verified label.

Discussion:
import { INotificationService } from 'vs/platform/notification/common/notification'; import { IAction, Action } from 'vs/base/common/actions'; import { normalizeDriveLetter } from 'vs/base/common/labels'; <ins> import { RunOnceScheduler } from 'vs/base/common/async'; </ins> const DEBUG_BREAKPOINTS_KEY = 'debug.breakpoint'; const DEBUG_BREAKPOINTS_ACTIVATED_KEY = 'debug.breakpointactivated';

private launchJsonChanged: boolean; private firstSessionStart: boolean; private previousState: debug.State; <ins> private fetchThreadsSchedulers: Map<string, RunOnceScheduler>; </ins> constructor( @IStorageService private storageService: IStorageService,

this._onDidCustomEvent = new Emitter<debug.DebugEvent>(); this.sessionStates = new Map<string, debug.State>(); this.allProcesses = new Map<string, debug.IProcess>(); <ins> this.fetchThreadsSchedulers = new Map<string, RunOnceScheduler>(); </ins> this.configurationManager = this.instantiationService.createInstance(ConfigurationManager); this.toDispose.push(this.configurationManager);

this.toDisposeOnSessionEnd.get(session.getId()).push(session.onDidThread(event => { if (event.body.reason === 'started') { <del> this.fetchThreads(session).done(undefined, errors.onUnexpectedError); </del> <ins> // debounce to reduce threadsRequest frequency and improve performance let scheduler = this.fetchThreadsSchedulers.get(session.getId()); if (!scheduler) { scheduler = new RunOnceScheduler(() => { this.fetchThreads(session).done(undefined, errors.onUnexpectedError); }, 100); this.fetchThreadsSchedulers.set(session.getId(), scheduler); this.toDisposeOnSessionEnd.get(session.getId()).push(scheduler); } if (!scheduler.isScheduled()) { scheduler.schedule(); } </ins> } else if (event.body.reason === 'exited') { this.model.clearThreads(session.getId(), true, event.body.threadId); }