jiebi/CodeConvo huggingface dataset:
Change:
return; } <ins> if (!(context.cell instanceof SideBySideDiffElementViewModel)) { return; } </ins> const original = context.cell.original; const modified = context.cell.modified; <del> if (!original || !modified) { </del> <ins> const modifiedCellIndex = context.cell.mainDocumentTextModel.cells.indexOf(modified.textModel); if (modifiedCellIndex === -1) { </ins> return; } <del> modified.textModel.spliceNotebookCellOutputs({ start: 0, deleteCount: modified.outputs.length, newOutputs: original.outputs }); </del> <ins> context.cell.mainDocumentTextModel.applyEdits([{ editType: CellEditType.Output, index: modifiedCellIndex, outputs: original.outputs }], true, undefined, () => undefined, undefined, true); </ins> } });

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.66 OS Version: Windows 11 Steps to Reproduce: diff view to revert the output changes :bug: after reverting the diff view still says there are deletions/additions output changes using the diff view :bug: stage the file and reopen the diff view, all the changes I reverted are back
Change:
text-decoration: dashed underline; } <ins> .xterm-overline { text-decoration: overline; } .xterm-overline.xterm-underline-1 { text-decoration: overline underline; } .xterm-overline.xterm-underline-2 { text-decoration: overline double underline; } .xterm-overline.xterm-underline-3 { text-decoration: overline wavy underline; } .xterm-overline.xterm-underline-4 { text-decoration: overline dotted underline; } .xterm-overline.xterm-underline-5 { text-decoration: overline dashed underline; } </ins> .xterm-strikethrough { text-decoration: line-through; }

Discussion:
WT completed feature request: issue:
PR
To verify, for each value of , run the following: Verify the "overlined" text has an overline and " normal" does not.
With gpuAcceleration "off", I don't see an overline <img width="437" alt="image" src=""
Good find, I didn't update
After adding the styles, depending on the font it can still be cut off unfortunately due to the cell size in the dom renderer being strict. Captured that issue in
When verifying again, if you don't see an overline, inspect the DOM and verify shows on the children of
Not working still.
the remaining problem is tracked in
Not working on Latest Insiders.
Change:
import * as assert from 'assert'; import * as sinon from 'sinon'; <ins> import { timeout } from 'vs/base/common/async'; </ins> import { VSBuffer } from 'vs/base/common/buffer'; import { CancellationTokenSource } from 'vs/base/common/cancellation'; import { Event } from 'vs/base/common/event';

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:
}, 300); } } <ins> } class MDDocumentSymbolProvider implements vscode.DocumentSymbolProvider { </ins> <del> private getDocumentContentForPreview(document: vscode.TextDocument): string { const content = document.getText(); const previewFrontMatter = vscode.workspace.getConfiguration('markdown')['previewFrontMatter']; if (previewFrontMatter === 'hide') { return content.replace(/^-{3}[ t]*(rn|n)(.|rn|n)*?(rn|n)-{3}[ t]*(rn|n)/, ''); </del> <ins> constructor(private engine: MarkdownEngine) { } provideDocumentSymbols(document: vscode.TextDocument): vscode.ProviderResult<vscode.SymbolInformation[]> { let offset = 0; let text = document.getText(); const frontMatterMatch = FrontMatterRegex.exec(text); if (frontMatterMatch) { const frontMatter = frontMatterMatch[0]; offset = frontMatter.split(/rn|n|r/g).length - 1; text = text.substr(frontMatter.length); </ins> } <del> return content; </del> <ins> const tokens = this.engine.parse(text); const headings = tokens.filter(token => token.type === 'heading_open'); const symbols = headings.map(heading => { const lineNumber = heading.map[0]; const line = document.lineAt(lineNumber + offset); const location = new vscode.Location(document.uri, line.range); // # Header        => 'Header' // ## Header ##    => 'Header' // ## Header ####  => 'Header' // Header ##       => 'Header ##' // ========= const text = line.text.replace(/^s*(#)+s*(.*?)s*1*$/, '$2'); return new vscode.SymbolInformation(text, vscode.SymbolKind.Module, '', location); }); return symbols; </ins> } }  No newline at end of file

Discussion:
It's very hard to navigate a large markdown file, such as our release notes. Outline information would be very helpful, let's do this!
See
Change:
}; let machineId: Promise<string>; <del> export async function getMachineId(): Promise<string> { </del> <ins> export async function getMachineId(errorLogger: (error: any) => void): Promise<string> { </ins> if (!machineId) { machineId = (async () => { <del> const id = await getMacMachineId(); </del> <ins> const id = await getMacMachineId(errorLogger); </ins> return id || uuid.generateUuid(); // fallback, generate a UUID })();

Discussion:
When fails to get a mac address it still returns a generated mac id, but uses to log the error. That's a bit risky as it rely on VS Code to already have installed a . The default handler throws an exception in a timeout that can crash the process. (see issue ) IMO the better way would be to pass a logger to , e.g. the -move to -add to
if you support the idea I can provide a PR
that all sounds fine to me, thanks for looking into this. I didn't know this could cause a crash since it had been in desktop for so long.
Change:
*--------------------------------------------------------------------------------------------*/ import * as vscode from 'vscode'; <del> import { API as GitAPI, Repository } from './typings/git'; </del> <ins> import { API as GitAPI, RefType, Repository } from './typings/git'; </ins> import { getRepositoryFromUrl } from './util'; export function isFileInRepo(repository: Repository, file: vscode.Uri): boolean {

Discussion:
Testing One can copy links to & github & azure repos even though I just created the file and copying such a link will result in empty or 404 on GH. Seeing links to just created file : <img width="451" alt="image" src="https://user-"
No progress on this one yet, but would you expect the actions to be hidden, or would you want to be prompted to commit the file to the remote when the command is invoked?
I think users could be confused if the actions wouldn't appear (eg they might've forgotten the file isn't pushed), so the latter sounds better. But I wonder whether checking whether the file is available on remote would be slow
Change:
if (instance) { instance.focus(); } <del> instance?.xterm?.clearSearchDecorations(); </del> <ins> // Terminals in a group currently share a find widget, so hide // all decorations for terminals in this group const activeGroup = this._terminalGroupService.activeGroup; if (instance?.target !== TerminalLocation.Editor && activeGroup) { for (const terminal of activeGroup.terminalInstances) { terminal.xterm?.clearSearchDecorations(); } } else { instance?.xterm?.clearSearchDecorations(); } </ins> } protected _onInputChanged() {

Discussion:
Testing <img width="1445" alt="image" src="https://user-"
The widget is open in your screenshot
!
Wrong screenshot again. Here you go <img width="1419" alt="image" src="https://user-"
Thanks, but I cannot repro this - could you pls attach a gif?
Have a split terminal Focus in second terminal and open find widget and search for some text to show highlights Focus in first terminal and press escape
Change:
text-overflow: ellipsis; } <ins> .action-widget .monaco-list-row.action .monaco-keybinding > .monaco-keybinding-key { background-color: var(--vscode-keybindingLabel-background); color: var(--vscode-keybindingLabel-foreground); border-style: solid; border-width: 1px; border-radius: 3px; border-color: var(--vscode-keybindingLabel-border); border-bottom-color: var(--vscode-keybindingLabel-bottomBorder); box-shadow: inset 0 -1px 0 var(--vscode-widget-shadow); } </ins> /* Action bar */ .action-widget .action-widget-action-bar {

Discussion:
! command palette: ! keybinding editor: !
I'm on Mac, so there are no in the examples below: <img width="493" alt="Screenshot 2023-12-07 at 2 29 34 PM" src=""<img width="355" alt="Screenshot 2023-12-07 at 2 29 18 PM" src=""Thoughts on if we need to have a version of keybindings, leave as is, or just not show if disabled? I don't think there is an example of menu options that are disabled that have this kind of keybinding.
I guess if the user explicitly shows the disabled ones then it's still good to show the keybinding for future reference. In your screenshot they're fairly short, ideally we'd keep the same dimensions as in the command palette if possible.
Change:
top: number; } <ins> export interface IUpdateMarkdownPreviewSelectionState { readonly type: 'updateMarkdownPreviewSelectionState', readonly id: string; readonly isSelected: boolean; } </ins> export interface IInitializeMarkdownMessage { type: 'initializeMarkdownPreview'; cells: Array<{ cellId: string, content: string }>;

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. --- VS Code Version: 1.54-Insiders OS Version: macOS open a GitHub issue notebook cmd+shift+o navigate down only code cells are highlighted https://user- <!-- Launch with to check. --Does this issue occur when all extensions are disabled?: Yes/No <!-- If you answered No above, use 'Help: Start Extension Bisect' from Command Palette to try to identify the cause. --<!-- Issues caused by an extension need to be reported direct to the extension publisher. The 'Help Report Issue' dialog can assist with this. --

Verifying in the vscode repo across some of the markdown headers ! If I put them into edit mode, then I see the background change on multiselect
I guess you don't see this issue when commenting out from the workspace setting?
Yeah, that's correct! I see everything get highlighted as expected when that setting is off
The root cause is that the for webview backed markdown cells has a height of zero. This element gets the correct background color during selection, but is not visible due to the height. We have zero height so that you can click through to the webview instead of to the cell I will prototype telling the cell in the webview if it is selected or not. Then we can add styling inside the webview to show selection state
Change:
const uri = URI.parse(data.href); this._handleNotebookCellResource(uri); } else if (!/^[w-]+:/.test(data.href)) { <del> this._handleResourceOpening(data.href); </del> <ins> // Uri without scheme, such as a file path this._handleResourceOpening(tryDecodeURIComponent(data.href)); </ins> } else { // uri with scheme if (osPath.isAbsolute(data.href)) {

Discussion:
[X] Notebooks (.ipynb files) [ ] Interactive Window and/or Cell Scripts (.py files with #%% markers) Markdown urls including filenames with url escaped space could not be opened. In normal notebooks markdown urls including filenames with space could be transformed by url escaping (space is transformed to %20) - this mechanism didn't works in vscode-jupyter, because vscode-jupyter doesn't retransform the escaped url back to the unescaped url when trying to open the url. Version: 1.80.0 Commit: Date: 2023-07-04T13:39:48.236Z Electron: 22.3.14 ElectronBuildId: Chromium: 108.0.5359.215 16.17.1 V8: 10.8.168.25-electron.0 OS: Linux x64 5.15.0-76-generic snap v2023.6. No response No response No response No response Local
Can you give an example to make sure I understand?
If filename is "this filename includes " then a markdown url in jupyter notebook has to be urlencoded: If klicking this link in jupyter notebooks opens the urldecoded file correctly. On the other hand vscode-jupyter trys to open the file "", which - of course - could not be find! So the filename has to be urldecoded in vscode-jupyter before trying to open it!
Change:
this._listElementChecked ); <ins> const resultIndex = result.length; </ins> result.push(element); <del> elementsToIndexes.set(element.item ?? element.separator!, index); </del> <ins> elementsToIndexes.set(element.item ?? element.separator!, resultIndex); </ins> return result; }, [] as IListElement[]); this.elementsToIndexes = elementsToIndexes;

Discussion:
I see the second entry being selected shortly after the recent results appear: ! My settings:
I did extension bisect and the issue is caused by copilot chat extension. Here is the profile you can use to repro this bug -
Change:
kind: e.kind, changes: e.changes.map(diff => [diff[0], diff[1], diff[2].map(cell => cellToDto(cell as NotebookCellTextModel))] as [number, number, IMainCellDto[]]) }); <ins> for (const change of e.changes) { for (const cell of change[2]) { addCellContentChangeHandler(cell as NotebookCellTextModel); } } </ins> break; } case NotebookCellsChangeType.Move: {

Discussion:
Testing 1) I started with 2) I ran the first two cells and then committed 3) I reran cell 1 4) I changed cell 3 to use different file names 5) I opened the notebook diff from the SCM view -(a) cell metadata changes were shown -(b) changes to cell 3 where hidden -(c) toggling the "Toggle Collapse Unchanged Regions" didn't do anything !
I was unable to reproduce (b) reliably.
Verifier: Make the workbench small enough so when opening only the first cells show up Run the first two cells Commit/stage the file Scroll to the last cell, make changes, save (if you don't have auto save) Open the diff view, the change in the last cell should be rendered.
cannot test this due to
Change:
} }); <ins> registerAction2(class extends Action2 { constructor() { super({ id: 'workbench.scm.action.scm.viewChanges', title: localize('viewChanges', "View Changes"), f1: false, menu: [ { id: MenuId.SCMChangesContext, group: '0_view', when: ContextKeyExpr.equals('config.multiDiffEditor.experimental.enabled', true) } ] }); } override async run(accessor: ServicesAccessor, provider: ISCMProvider, ...historyItems: ISCMHistoryItem[]) { const commandService = accessor.get(ICommandService); if (!provider || historyItems.length === 0) { return; } const historyItem = historyItems[0]; const historyItemLast = historyItems[historyItems.length - 1]; const historyProvider = provider.historyProvider.get(); if (historyItems.length > 1) { const ancestor = await historyProvider?.resolveHistoryItemGroupCommonAncestor2([historyItem.id, historyItemLast.id]); if (!ancestor || (ancestor !== historyItem.id && ancestor !== historyItemLast.id)) { return; } } const historyItemParentId = historyItemLast.parentIds.length > 0 ? historyItemLast.parentIds[0] : undefined; const historyItemChanges = await historyProvider?.provideHistoryItemChanges(historyItem.id, historyItemParentId); if (!historyItemChanges?.length) { return; } const title = historyItems.length === 1 ? `${historyItems[0].id.substring(0, 8)} - ${historyItems[0].message}` : localize('historyItemChangesEditorTitle', "All Changes ({0} ↔ {1})", historyItem.id.substring(0, 8), historyItemLast.id.substring(0, 8)); const rootUri = provider.rootUri; const multiDiffSourceUri = rootUri ? rootUri.with({ scheme: 'scm-history-item', path: `${rootUri.path}/${historyItem.id}..${historyItemParentId}` }) : URI.from({ scheme: 'scm-history-item', path: `${provider.label}/${historyItem.id}..${historyItemParentId}` }, true); commandService.executeCommand('_workbench.openMultiDiffEditor', { title, multiDiffSourceUri, resources: historyItemChanges }); } }); </ins> class RepositoryVisibilityAction extends Action2 { private repository: ISCMRepository;

Discussion:
Testing Have remote commits. Click on a remote commit to view the commit Use the commit menu to view the commit Expected: Focus shifts to the already opened editor Actual: New diff editor opened for the commit. !
Change:
import { ILanguageFeaturesService } from 'vs/editor/common/services/languageFeatures'; import { IContextKey, IContextKeyService } from 'vs/platform/contextkey/common/contextkey'; import { MarkersContextKeys, MarkersViewMode } from 'vs/workbench/contrib/markers/common/markers'; <ins> import { unsupportedSchemas } from 'vs/platform/markers/common/markerService'; </ins> interface IResourceMarkersTemplateData { resourceLabel: IResourceLabel;

Discussion:
Testing <img width="1617" alt="image" src="https://user-"
I can't get squiggles to show up for the commit input box at all, even after following the steps from the linked TPI. What are some steps to verify this, or maybe someone else can verify?
Thanks Reopening the bug as the fix for this has introduced a regression.
Checked in a better fix for this issue. Should be included in tomorrow's Insiders release (2022-08-26).
closedWith
Verified, but the actions in the hover don't do anything: !
Thanks I have filed to track the issue with the actions.
Change:
return; } <del> this.outputChannelLogger.setLogLevel(choice.logLevel); </del> <ins> this.outputChannelLogger.currentLogLevel = choice.logLevel; </ins> } @command('git.refresh', { repository: true })

Discussion:
Testing open the settings and change the setting open the git output view. Nothing has changed there, no message that the log level has change, not any debug messages the setting is only the initial level. It would be nice if a setting change also change the actual log level . Alternative describe in the settings description that the setting is only represents the initial log level, and that a reload is necessary. (I'd rather prefer the first approach as we want settings to be 'live')

Testing Version: 1.68.0-insider (user setup) Commit: Date: 2022-05-31T05:17:04.479Z Run the command and select Would be nice to get a message in the log
Looks like the the message is not shown as it is of type and is less than than. Would be good to always show it, regardless of the current and the new level. Same problem with the initial message when the output is started.
Change:
this._register(DOM.addDisposableListener(this.container, DOM.EventType.FOCUS_OUT, (e) => { let event = e as FocusEvent; <del> if (event.relatedTarget) { if (!this.container.contains(event.relatedTarget as HTMLElement)) { this.focusToReturn = undefined; this.setUnfocusedState(); } </del> <ins> if (!event.relatedTarget || !this.container.contains(event.relatedTarget as HTMLElement)) { this.focusToReturn = undefined; this.setUnfocusedState(); </ins> } }));

Discussion:
VSCode Version: 1.31.0 OS Version: windows 10 Steps to Reproduce: the Help menu and select the release notes. any menu again click, right click, or select operation on this content page will not automatically close the open menu. <!-- Launch with to check. --Does this issue occur when all extensions are disabled?: Yes
(Experimental duplicate detection) Thanks for submitting this issue. Please also check if it is already covered by an existing one, like: <!-- score: 0.502 --- <!-- score: 0.45 --<!-- potentialduplicatescomment --
Do not repeat with the above questions
Same root cause as I believe
Actually will keep open to make sure this is resolved by the fix