jiebi/CodeConvo huggingface dataset:
Change:
"group": "inline@2" }, { <del> "command": "git.revealInExplorer", "when": "scmProvider == git && scmResourceGroup == merge", "group": "2_view@1" }, { </del> "command": "git.revealFileInOS.linux", "when": "scmProvider == git && scmResourceGroup == merge && remoteName == '' && isLinux", <del> "group": "2_view@2" </del> <ins> "group": "2_view@1" </ins> }, { "command": "git.revealFileInOS.mac", "when": "scmProvider == git && scmResourceGroup == merge && remoteName == '' && isMac", <del> "group": "2_view@2" </del> <ins> "group": "2_view@1" </ins> }, { "command": "git.revealFileInOS.windows", "when": "scmProvider == git && scmResourceGroup == merge && remoteName == '' && isWindows", <ins> "group": "2_view@1" }, { "command": "git.revealInExplorer", "when": "scmProvider == git && scmResourceGroup == merge", </ins> "group": "2_view@2" }, {

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. --In the Source Control panel, "Reveal in Explorer View" of context menu is above "Reveal in File Explorer". <img src="" width="300"But context menu of the tabs, "Reveal in Explorer View" is below "Reveal in File Explorer". <img src="" width="300"It's not consistent. It will occur mis-clicking.
Could you triage the issue?
would you be up to swap the order you contribute from the git extension?
Change:
Registry.as<IConfigurationRegistry>(ConfigurationExtensions.Configuration).registerConfiguration({ id: 'scm', order: 5, <del> title: localize('scmConfigurationTitle', "SCM"), </del> <ins> title: localize('scmConfigurationTitle', "Source Control"), </ins> type: 'object', scope: ConfigurationScope.RESOURCE, properties: {

Discussion:
Within the UI in VS Code there are differing names for the SCM view depending on whereabouts you are in the UI. Under the "View Menu" there is an entry from "SCM" but everywhere else it is referred to as Source Control. (Hovering over the icon in the activity bar names it Source Control, the view container title says Source Control and in the command palette, the command is listed as "Source Control: Focus on Source Control View".) Then under settings there is a group "Features SCM" For consistency, it would be better to keep with a single (user facing) name that is used in all places.
I don't like using of abbreviations in the program GUI, especially if they are not as much popular and known. It took me a while to understand what is that SCM thing.
fixing this makes sense to me, though I might be missing some historical context.
Yeah the correct term is Source Control. SCM is just an internal name, should not be surfaced.
I've pushed a small PR that should rename this in all the places I could find.
Merged! thank you very much for the contribution!
Change:
const scrollTop = outputScrolling ? findScrolledHeight(outputElement) : undefined; <del> const existingContent = outputElement.querySelector(`[output-item-id="${outputInfo.id}"]`) as HTMLElement | null; </del> const previousOutputParent = getPreviousMatchingContentGroup(outputElement); // If the previous output item for the same cell was also a stream, append this output to the previous if (previousOutputParent) { <ins> const existingContent = previousOutputParent.querySelector(`[output-item-id="${outputInfo.id}"]`) as HTMLElement | null; </ins> if (existingContent) { existingContent.replaceWith(newContent);

Discussion:
Inconsistent repro, not sure what triggers it yet. <img width="301" alt="image" src=""
this is caused by the first one or two lines of output to be in one output item and the rest in another. In the case above: While the second output keeps streaming in, it is supposed to be replaced each time, but we were looking in the wrong element for the previous output to be replaced. I don't know why the outputs are split like this and is the first time I've ever noticed it happening.
Another progress with simple ASCII output (previous sample was HTML) (install using )
Some other samples, that seems to be flaky Code
verification steps: run the example that Don provided in a notebook cell only one progress bar should appear and refresh
Change:
}, 500, false, true)(async (markerEvent) => { markerChanged?.dispose(); markerChanged = undefined; <del> if (!markerEvent.includes(modelEvent.uri) || (this.markerService.read({ resource: modelEvent.uri }).length !== 0)) { </del> <ins> if (!markerEvent || !markerEvent.includes(modelEvent.uri) || (this.markerService.read({ resource: modelEvent.uri }).length !== 0)) { </ins> return; } const oldLines = Array.from(this.lines);

Discussion:
This error appears in the insiders dev tools all the time (FYI Cannot read properties of undefined (reading 'includes'): TypeError: Cannot read properties of undefined (reading 'includes') at at at at at at at at at at at
Change:
export function isOfScheme(scheme: string, link: string): boolean { return link.toLowerCase().startsWith(scheme); } <ins> export const MarkdownFileExtensions: readonly string[] = [ '.md', '.mkd', '.mdwn', '.mdown', '.markdown', '.markdn', '.mdtxt', '.mdtext', '.workbook', ]; </ins>

Discussion:
<!-- Do Not Delete This! bugreporttemplate --<!-- Please read our Rules of Conduct: --<!-- 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. --Version: 1.43.2 (system setup) Commit: Date: 2020-03-24T07:38:38.248Z Electron: 7.1.11 Chrome: 78.0.3904.130 12.8.1 V8: 7.8.279.23-electron.0 OS: Windows_NT x64 10.0. Steps to Reproduce: in extension's function gives ... '=' character was dropped ! in extension's function gives ... '=' character was not dropped ! <!-- Launch with to check. --Does this issue occur when all extensions are disabled?: Hmm ... extension is needed in this case.
As far as I understand, all links in a markdown file are processed with a "normalizer". As part of the normalization, all uri fragments are "slugified": With a default "slugifier", it means, among other things, removing all punctuation: am I correct in thinking that the "slugification" is needed for links to headings in the current document to work ()? If so, a possible fix is to slugify only those uris that do not have authority and path parts.
Yes I don't think the slugifier should be run if the link points to a location that is clearly not a markdown file (such as the path ending in ). It is however helpful to normalize links to other markdown files within your current workspace. As as scoped fix, we could check . If there is a file extension, don't normalize the fragment. Does that sound good? Would you like to submit a PR that does this?
As far as I understand, that may break links to sections of other markdown files that do have an extension (), but I don't see a good fix for that, other than hard-coding all possible markdown file extensions.
Would it be a valid feature request to have an API to guess language id based only on a resource uri?
Change:
{ "name": "scss", "displayName": "%displayName%", <del> "description": "%description%", </del> <ins> "description": "%description%", </ins> "version": "1.0.0", "publisher": "vscode", "engines": { "vscode": "*" }, "scripts": { <del> "update-grammar": "node ../../build/npm/update-grammar.js atom/language-sass grammars/scss.cson ./syntaxes/scss.tmLanguage.json" </del> <ins> "update-grammar": "node ../../build/npm/update-grammar.js atom/language-sass grammars/scss.cson ./syntaxes/scss.tmLanguage.json grammars/sassdoc.cson ./syntaxes/sassdoc.tmLanguage.json" </ins> }, "contributes": { "languages": [{

Discussion:
It looks like Code is using 0.52.0 of to generate its Sass syntax — 0.62.0 was released today. It would be great to have the new fixes & features included. I'm happy to submit a PR with the re-generated syntax.
Thanks for the update! Just a heads-up though, the updated SCSS syntax references a separate file for SassDoc comment blocks. I updated the build script to account for the extra file in my PR:
Change:
return false; } <del> const hasGhostText = this.editor.getLineDecorations(0)?.find((d) => d.options.description === GHOST_TEXT_DESCRIPTION); if (hasGhostText) { </del> <ins> const model = this.editor.getModel(); const languageId = model?.getLanguageId(); if (!model || languageId === OUTPUT_MODE_ID || languageId === LOG_MODE_ID || languageId === SEARCH_RESULT_LANGUAGE_ID) { </ins> return false; } <del> const model = this.editor.getModel(); const languageId = model?.getLanguageId(); if (languageId === OUTPUT_MODE_ID || languageId === LOG_MODE_ID || languageId === SEARCH_RESULT_LANGUAGE_ID) { </del> <ins> const conflictingDecoration = this.editor.getLineDecorations(1)?.find((d) => d.options.beforeContentClassName || d.options.afterContentClassName || d.options.before?.content || d.options.after?.content ); if (conflictingDecoration) { </ins> return false; }

Discussion:
I have linters to ensure files have the right header, when i created the empty ts file, i get the linter error as well as chat prompt However when I add an empty line, you can see the caht prompt does not appear and linter error is in the second line ! !
Change:
if (!this._modelData || !this._modelData.hasRealView) { return; } <del> this._modelData.view.render(true, forceRedraw); </del> <ins> this._modelData.viewModel.batchEvents(() => { this._modelData!.view.render(true, forceRedraw); }); </ins> } public setAriaOptions(options: editorBrowser.IEditorAriaOptions): void {

Discussion:
I set a 'placeholder' editor decoration here: I noticed that when the chat input had multiple lines of text in it, then the placeholder doesn't show up. Here I show it not working, then working with a single line of text. ! Maybe it's related somehow to the issue we had in I can't debug this on my own, but it reproes 100% of the time for me, happy to help investigate.
This fixes it, but it sucks. it looks like cannot be used when certain events are fired. Looks like the view fires a scroll change event, which causes the event queue to flush, which causes a content change event, which calls the callback that sets the decoration...
AFAIK nothing changed here in the editor recently, so not sure if this is bad enough to add the workaround Henning found for this release on your side. IMHO we need to add proper placeholder API to the editor instead of doing this from the outside with injected text. We now have something like 3 or 4 places implementing placeholder text via injected text, which doesn't make sense to me.
Created for the placeholder API. Feel free to close this one in favor of
The event stack is quite complicated. Below is the stack of where the decoration is set. The core problem is that fires an event and allows event handlers to run immediately: ! Error at eval at at at at at at at at at at at at at at at at at at at at at at func at safeInvokeNoArg at at at at at at at at at at at at at at at at at at at at at at at at at at at at at at at at at at at at at at at at at at at at at at at at at at at at at at
Change:
} } const memory = process.platform === 'win32' ? item.mem : (os.totalmem() * (item.mem / 100)); <del> output.push(`${pad(Number(item.load.toFixed(0)), 5, ' ')}t${pad(Number((memory / MB).toFixed(0)), 6, ' ')}t${name}`); </del> <ins> output.push(`${pad(Number(item.load.toFixed(0)), 5, ' ')}t${pad(Number((memory / MB).toFixed(0)), 6, ' ')}t${pad(Number((item.pid).toFixed(0)), 6, ' ')}t${name}`); </ins> // Recurse into children if any if (Array.isArray(item.children)) {

Discussion:
should also print the PID of the processes. This makes it easier to debug or kill processes. It will also make it easier to profile processes, once we have integrated the profiling functionality we in the hackathon.
Change:
version "0.0.6" resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" <del> typescript@2.5.2: version "2.5.2" resolved "https://registry.yarnpkg.com/typescript/-/typescript-2.5.2.tgz#038a95f7d9bbb420b1bf35ba31d4c5c1dd3ffe34" </del> <ins> typescript@2.9.2: version "2.9.2" resolved "https://registry.yarnpkg.com/typescript/-/typescript-2.9.2.tgz#1cbf61d05d6b96269244eb6a3bce4bd914e0f00c" </ins> uid-number@^0.0.6: version "0.0.6"

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: master commit OS Version: macOS 10.13.6 Steps to Reproduce: clone vscode ouput: how to fix: update typescript version from to will fix it.
Change:
/** Don't spam warnings */ private hasWarnedMissingSettings = false; <ins> private tocTreeDisposed = false; </ins> /** Persist the search query upon reloads */ private editorMemento: IEditorMemento<ISettingsEditor2State>;

Discussion:
Found this in devtools, I played a bit with settings: <img width="1904" alt="image" src="https://user-"
Let me know if you can repro and find out the issue is deep in the list/tree.
Got you repro steps! the workbench window rather small. into 2x2 editor layout, so you get even smaller editors <kbdCmd ,</kbdto open the Settings Editor in one of the editor groups for <kbdCmd W</kbdto close the Settings Editor That exception shows up!
I just closed two other duplicates of this. There are repro steps since June. Let's see if we can drive this to a fix. Let me know if you believe it's deep down in the list/tree.
Change:
revision: this.repository.HEAD.upstream.commit } : undefined, base: mergeBase && <del> mergeBase.remote !== this.repository.HEAD.upstream?.remote && mergeBase.name !== this.repository.HEAD.upstream?.name ? { </del> <ins> (mergeBase.remote !== this.repository.HEAD.upstream?.remote || mergeBase.name !== this.repository.HEAD.upstream?.name) ? { </ins> id: `refs/remotes/${mergeBase.remote}/${mergeBase.name}`, name: `${mergeBase.remote}/${mergeBase.name}`, revision: mergeBase.commit

Discussion:
Steps to Reproduce: a folder/workspace that contains a git repository a topic branch, and create multiple commits the "Publish Branch" action button to publish the topic branch Expected: history graph should be updated with the label for the published branch Actual: history graph is empty
Are you referring to the tooltip for the on the top right I doubt it, as this already works in stable as well. My confusion is around the term , not sure which/what label is being referenced here. !
Thanks Don! Yes, by "label" I meant the UX elements on the right side of the "another" commit. It is working as expected in Stable, but it regressed couple of days in Insiders so I have to get it fixed.
Change:
return this._linkManager.registerExternalLinkProvider(this, provider); } <del> async rename(title?: string) { if (!title) { </del> <ins> async rename(title?: string | 'triggerQuickpick') { if (title === 'triggerQuickpick') { </ins> title = await this._quickInputService.input({ value: this.title, prompt: nls.localize('workbench.action.terminal.rename.prompt', "Enter terminal name"), }); } <del> if (title) { this.refreshTabLabels(title, TitleEventSource.Api); } </del> <ins> this.refreshTabLabels(title, TitleEventSource.Api); </ins> } async changeIcon() {

Discussion:
Testing a terminal tab title setting your terminal to "foo" to set the name to blank string to, but I would expect it to just use my default from 1.
We discussed this and want to require a title.
I don't mean that blank titles should be allowed. I more meant how do I get back to the default I set in settings after I renamed the terminal, I feel I would expect it to let me delete my custom name and then it would use the default
You can reset the setting by clicking on the gear - is that what you mean?
No I meant is there a way to reset the terminal title to be the value of my setting instead of my custom named one?
We currently don't support going backward like that. I'll appropriately rename this issue for more discussion in October because I also wondered about this and discussed it with
Thanks sorry if I wasn't clear . My suggested UX would just be to have that be the default if you were attempt to have a blank name
oh - yes Brigit caught that case and I fixed it. so if it's set to '' or 'any number of spaces', it'll now show the process name. might've misunderstood what you were saying
But shouldn't it show whatever my setting states the default is rather than just the process name?
Sorry, the difference between our issues is she is talking about the setting I'm talking about the terminal title itself and not the setting. I want a blank rename of a terminal to reset to the value of my setting
I thought your setting was set to ''
confused - you can't set it to blank. we don't allow that
!
So my request is if my setting is and I name a terminal "foo". How do I reset "foo" back to the value of . My suggestion was that if you attempted to submit a blank name that would automatically reset to the value of your setting.
yep the name of this issue now reflects that. we'll see what says about that.
and I discussed it and it makes sense to do this
Change:
onError: (message: string) => void = _defaultOnError ): IncrementalCompiler { <del> function printDiagnostic(diag: ts.Diagnostic): void { </del> <ins> function printDiagnostic(diag: ts.Diagnostic | Error): void { </ins> <del> if (!diag.file || !diag.start) { </del> <ins> if (diag instanceof Error) { onError(diag.message); } else if (!diag.file || !diag.start) { </ins> onError(ts.flattenDiagnosticMessageText(diag.messageText, 'n')); } else { const lineAndCh = diag.file.getLineAndCharacterOfPosition(diag.start);

Discussion:
In this build output, there's some error in SWC, but it's not emitted I'm guessing_ it's because I use the operation and they don't support that yet, or our version of TS doesn't.
Please don't use for the time being
will also update to latest SWC so that satisfies is supported
This will now print SWC errors as they are <img width="687" alt="Screenshot 2023-02-02 at 11 59 36" src="https://user-"
Change:
if (originalAddress) { return originalAddress; } <del> const otherHost = isAllInterfaces(host) ? 'localhost' : (host === 'localhost' ? '0.0.0.0' : undefined); </del> <ins> const otherHost = isAllInterfaces(host) ? 'localhost' : (isLocalhost(host) ? '0.0.0.0' : undefined); </ins> if (otherHost) { return mapHasAddress(map, otherHost, port); }

Discussion:
Line 99 should NOT be only comparing to . That is a recipe for missing the correct tunnel. It should instead use the proper utility to check for all strings.
To repro the original issue with Containers: vscode with --enable-proposed-api=alexr00.helloworld-sample into a container this vsix it to be UI and reload: install start that a port was auto forwarded the "Hello Port" command that port 3000 was forwarded a second time To verify, follow the above steps and make sure that (7) doesn't happen.
Change:
}; @extHostNamedCustomer(MainContext.MainThreadSpeech) <del> export class MainThreadSpeech extends Disposable implements MainThreadSpeechShape { </del> <ins> export class MainThreadSpeech implements MainThreadSpeechShape { </ins> private readonly proxy: ExtHostSpeechShape;

Discussion:
Testing Kept playing with "hey code", at one point the EH restarted (unsure why but likely due to speech). Anyways, the console showed the error below which likely means some didn't dispose something. Once you are in this state speech is broken
Steps open vscode, start speech F1 restart EH error shows, speech is broken
I always keep forgetting this in , we should probably have some kind of lint rule...
Change:
} const SCMInputContextKeys = { <ins> ActionCount: new RawContextKey<number>('scmInputActionCount', 0), </ins> ActionIsEnabled: new RawContextKey<boolean>('scmInputActionIsEnabled', false), ActionIsRunning: new RawContextKey<boolean>('scmInputActionIsRunning', false), };

Discussion:
<img width="419" alt="image" src=""
While the SCM view is refreshing itself, I still sometimes see the sparkle move outside of the input box, then back in on the next layout
could you verify this again? With the latest Insiders the sparkle should not appear outside the input box.
LGTM now, thank you for the fix!
Change:
} const hoverDisposables = new DisposableStore(); const hover = this._instantiationService.createInstance(HoverWidget, options); <ins> if (options.sticky) { hover.isLocked = true; } </ins> hover.onDispose(() => { // Required to handle cases such as closing the hover with the escape key this._lastFocusedElementBeforeOpen?.focus();

Discussion:
Testing !
That's right. Its because we are using hover infrastructure in the bg.
Change:
) { this.editorService.overrideOpenEditor({ <ins> getEditorOverrides: (resource: URI) => { return extname(resource) === SEARCH_EDITOR_EXT ? [{ id: SearchEditorInput.ID, label: localize('promptOpenWith.searchEditor.displayName', "Search Editor"), detail: DEFAULT_EDITOR_ASSOCIATION.providerDisplayName, active: isEqual(this.editorService.activeEditor?.resource, resource) && this.editorService.activeEditor instanceof SearchEditorInput }] : []; }, </ins> open: (editor, options, group) => { const resource = editor.resource; if (!resource) { return undefined; }

Discussion:
When I select "Open with..." on a code search file, I would have expected to see our search editor in there as well: ! Slightly related, I would probably expect an entry "Settings Editor" when opening a file with...
Change:
handleBlobUrlClick(node.href, node.download); } else if (node.href.startsWith('data:')) { handleDataUrl(node.href, node.download); <del> } else if (node.hash && node.getAttribute('href') === node.hash) { </del> <ins> } else if (node.getAttribute('href')?.trim().startsWith('#')) { </ins> // Scrolling to location within current doc <ins> if (!node.hash) { postNotebookMessage<webviewMessages.IScrollToRevealMessage>('scroll-to-reveal', { scrollTop: 0 }); return; } </ins> const targetId = node.hash.substring(1); // Check outer document first

Discussion:
The very useful ipytree Jupyter Widget does not function inside the vscode notebook editor. When clicking on a node in the tree, a model dialog is popped up, which looks like is responding to an attempt to open a editor window that is associated with the node content or some part of the underlying HTML attached to the node. ! The same code in a Jupyter Lab web instance functions as expected. This issue is mentioned in the ipytree Github VS Code version: 1.68 Jupyter Extension version (available under the Extensions sidebar): v2022.5. Python Extension version (available under the Extensions sidebar): v2022.8.0 OS (Windows Linux distro) and version: Windows Python and/or Anaconda version: various, 3.10 Type of virtual environment used (N/A ...): conda Jupyter server running: Local Click on ipytree node and UI updates with any attach callback firing Model popup error ! Following instructions on run example code eg: And then click on the node
Thanks for the issue. I believe QuantStack would likely have to fix this. I think they're opening a URL that doesn't exist.
It feels a bit odd for this to be on the QuantStack side... it seems like the Jupyter render is seeing a button click on a node as needing to open a URL, when in native Jupyter Lab it instead fires a javascript call.
I think this is a problem with the handling of anchor tags , the core web view code seems to be treating this as a file link (hence the error message). This issue might have to be moved to vscode repo. Repro steps: Run a cell with the following code in Jupyter (or generate an output that contains the same output) might have some idea what needs to be done here.
This can repro without using ipytree. Just use the example that Don provided.
Thanks for creating this issue! It looks like you may be using an old version of VS Code, the latest stable release is 1.68.1. Please try upgrading to the latest version and checking whether this issue remains. Happy Coding!