jiebi/CodeConvo huggingface dataset:
Change:
This method: Calls this for loop: ... querying all decorations in the file. Because bracket pair colorization is implemented using decorations, this queries a ton of data for bigger files (for there are decorations). Generally I think should only be called for small ranges.
In this a theoretical problem or something that shows up in the profiler?
The call took ~200ms on my machine when opening I found this when profiling something else.
Is there a way to look up decorations by id? If I could do that I can turn the loop around: look up my decorations by id and check the range with the needs-update-range
There is on

Discussion:
// collect all decoration ids that are affected by the ranges // and only update those decorations const decorationIdsToReplace: string[] = []; <del> for (const range of ranges) { for (const { id } of this._editor.getDecorationsInRange(range) ?? []) { const metadata = this._decorationsMetadata.get(id); if (metadata) { decorationIdsToReplace.push(id); metadata.classNameRef.dispose(); this._decorationsMetadata.delete(id); } </del> <ins> for (const [id, metadata] of this._decorationsMetadata) { const range = this._editor.getModel()?.getDecorationRange(id); if (range && ranges.some(r => r.containsRange(range))) { decorationIdsToReplace.push(id); metadata.classNameRef.dispose(); this._decorationsMetadata.delete(id); </ins> } }
Change:
<!-- 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?: No (need GitHub Copilot and Vim only) <!-- 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.80.1 OS Version: MacOS Steps to Reproduce: both GitHub Copilot and Vim. a suggestion from Copilot. escape to go to Vim's normal mode. around the cursor. get random suggestions all over the place which is quite annoying. This only happens with Copilot + Vim, and it only happens after the refactor was merged (). In general, my feel is that after the refactor, the inline completion feature has been way buggier. Here's a video. You can see how even though I am not in insertion mode, and I am not typing anything, I get random and annoying suggestions all over the place.
Thanks for creating this issue! It looks like you may be using an old version of VS Code, the latest stable release is 1.80.1. Please try upgrading to the latest version and checking whether this issue remains. Happy Coding!
The issue still persists.
I've had similar problems.
inline suggestion should only be triggered when . Will this be handled at the editor level?
~I wonder if vim navigation fires (because this triggers inline completions). But also, I don't think this changed with the rewrite, before onDidType would also trigger inline completions.~ It is that the cursor change reason is not .
can you verify if this is fixed in latest insiders?
<!-- 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 thank you works as expected now
For extension authors, do I also need to upgrade my vscode dependency to the latest version?
You can, but you don't need to.
/verified.

Discussion:
this._register(editor.onDidChangeCursorPosition(e => transaction(tx => { /** @description onDidChangeCursorPosition */ this.updateObservables(tx, VersionIdChangeReason.Other); <del> if (e.reason === CursorChangeReason.Explicit) { </del> <ins> if (e.reason === CursorChangeReason.Explicit || e.source === 'api') { </ins> this.model.get()?.stop(tx); } })));
Change:
enable sticky scroll open a file and scroll such that sticky scroll appears reload the window observe that the sticky scroll lines are not colored until they get rerendered once there is that could be used
Hey thanks for filing the issue. The listener onDidChangeModelTokens already exists inside of the sticky scroll code. I'll investigate the issue.
It appears this is due to the following PR which attempted to fix Since the state was no longer recomputed when the new state was equal to the old state, this means that the rendering was no longer done when the model tokens changed but the state remained the same. A fix will be made to revert this change.

Discussion:
import * as dom from 'vs/base/browser/dom'; import { StandardMouseEvent } from 'vs/base/browser/mouseEvent'; import { createTrustedTypesPolicy } from 'vs/base/browser/trustedTypes'; <del> import { equals } from 'vs/base/common/arrays'; </del> import { Disposable, DisposableStore } from 'vs/base/common/lifecycle'; import 'vs/css!./stickyScroll'; import { ICodeEditor, IOverlayWidget, IOverlayWidgetPosition } from 'vs/editor/browser/editorBrowser';

readonly lineNumbers: number[], readonly lastLineRelativePosition: number ) { } <del> public equals(other: StickyScrollWidgetState | undefined): boolean { return !!other && this.lastLineRelativePosition === other.lastLineRelativePosition && equals(this.lineNumbers, other.lineNumbers); } </del> } const _ttPolicy = createTrustedTypesPolicy('stickyScrollViewLayer', { createHTML: value => value });

private _lastLineRelativePosition: number = 0; private _hoverOnLine: number = -1; private _hoverOnColumn: number = -1; <del> private _state: StickyScrollWidgetState | undefined; </del> constructor( private readonly _editor: ICodeEditor

} setState(state: StickyScrollWidgetState): void { <del> if (state.equals(this._state)) { return; } this._state = state; </del> dom.clearNode(this._rootDomNode); this._disposableStore.clear(); this._lineNumbers.length = 0;
Change:
VS Code Version: 1.80.1 OS Version: Win-10 Python extension: v2023.12.0 Steps to Reproduce: an empty file with cell =you will see the interactive window with tab name , ... Please confirm if this is work as designed. I remember it wasn't the case at the beginning of the year. This type of naming causes tremendous confusing when working on more than 2 interactive windows within a Workplace. Please let me know if I should report it to Thanks!
Probably the same error after last update. VS Code Version: 1.80.1 OS Version: Ubuntu 22.04 "jupyter.interactiveWindow.creationMode": "perFile" name of source python file is lost, only tab names 'interactive-1', 'interactive-2'
not intentional, it should still include the python filename in the interactive tab. investigating

Discussion:
counter++; } while (existingNotebookDocument.has(notebookUri.toString())); <ins> InteractiveEditorInput.setName(notebookUri, title); </ins> logService.debug('Open new interactive window:', notebookUri.toString(), inputUri.toString());

return instantiationService.createInstance(InteractiveEditorInput, resource, inputResource, title, language); } <ins> private static windowNames: Record<string, string> = {}; static setName(notebookUri: URI, title: string | undefined) { if (title) { this.windowNames[notebookUri.path] = title; } } </ins> static readonly ID: string = 'workbench.input.interactive'; public override get editorId(): string {

return InteractiveEditorInput.ID; } <del> private _initTitle?: string; </del> <ins> private name: string; </ins> get language() { return this._inputModelRef?.object.textEditorModel.getLanguageId() ?? this._initLanguage;

super(); this._notebookEditorInput = input; this._register(this._notebookEditorInput); <del> this._initTitle = title; </del> <ins> this.name = title ?? InteractiveEditorInput.windowNames[resource.path] ?? paths.basename(resource.path, paths.extname(resource.path)); </ins> this._initLanguage = languageId; this._resource = resource; this._inputResource = inputResource;

} override getName() { <del> if (this._initTitle) { return this._initTitle; } const p = this.primary.resource!.path; const basename = paths.basename(p); return basename.substr(0, basename.length - paths.extname(p).length); </del> <ins> return this.name; </ins> } override isModified() {
Change:
cc
Alternative idea: Using the symbol analogy, you could consider both links and commands close to symbols, so why not present both in the same quick pick, regardless of screen reader mode?
Great idea. The only concern is that presenting both info in one quick pick might be too messy and cause unnecessary confusion.
Yeah already said it's tough to navigate the quickpick as is. Nice idea, but I fear that would complicate things
do the headers in the quick pick not work well in screen readers? After filtering should we be announcing something like x items in header1, y items in header2?
An issue is that it wraps around when using arrow keys. So, for example, using the link quick pick is odd because you can wrap around to some pretty irrelevant "word link" results quite easily.
We could have this be one command but make the user select which type they're interested in IE or as the first step
Configuring on first use like that can be a bad experience as you don't know what you want initially and may not know how to change it after. Perhaps there should be a filter for workspace search links, like , and/or we hide non-relevant looking ones unless you hit show more links.
Oh, I didn't mean configuring. I meant showing that option every time the command is used.
IMO, these should remain separate commands because the point of a quick pick is you know what you're getting and don't have to go looking for a particular category - it's quick
Can you please provide steps to verify?
Steps were to check open detected link and navigate accessible buffer commands have differing keybindings and both work !

Discussion:
precondition: ContextKeyExpr.or(TerminalContextKeys.processSupported, TerminalContextKeys.terminalHasBeenCreated), keybinding: [ { <del> primary: KeyMod.CtrlCmd | KeyMod.Shift | KeyCode.KeyO, </del> <ins> primary: KeyMod.CtrlCmd | KeyMod.Shift | KeyCode.KeyG, </ins> weight: KeybindingWeight.WorkbenchContrib + 2, when: TerminalContextKeys.accessibleBufferFocus }

import { KeyCode, KeyMod } from 'vs/base/common/keyCodes'; import { DisposableStore } from 'vs/base/common/lifecycle'; import { localize } from 'vs/nls'; <ins> import { ContextKeyExpr } from 'vs/platform/contextkey/common/contextkey'; </ins> import { InstantiationType, registerSingleton } from 'vs/platform/instantiation/common/extensions'; import { IInstantiationService } from 'vs/platform/instantiation/common/instantiation'; import { KeybindingWeight } from 'vs/platform/keybinding/common/keybindingsRegistry';

keybinding: { primary: KeyMod.CtrlCmd | KeyMod.Shift | KeyCode.KeyO, weight: KeybindingWeight.WorkbenchContrib + 1, <del> when: TerminalContextKeys.focus, </del> <ins> when: ContextKeyExpr.or(TerminalContextKeys.focus, TerminalContextKeys.accessibleBufferFocus) </ins> }, run: (activeInstance) => TerminalLinkContribution.get(activeInstance)?.showLinkQuickpick() });
Change:
<!-- 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.80.1 (system setup) OS Version: WindowsNT x64 10.0. Commit: Date: 2023-07-12T17:22:07.651Z Electron: 22.3.14 ElectronBuildId: Chromium: 108.0.5359.215 16.17.1 V8: 10.8.168.25-electron.0 vscode a couple of seconds the new "Connect to..." link button on the welcome page is delayed resulting in a really annoying change of the height for the "Start" section and, during the working, a missclick on the wrong recent project. a. remove the button b. fix the height of the "Start" section c. make the button link disable at first, in case something has to load before d. improve the a/b testing expirience, if i am in one of them!! vsliv368: vsreu685: python383: vspor879: vspor708: vspor363: vswsl492cf: vslsvsres303: vserr242cf: pythontb: vsjup518: pythonptprofiler: vshan820: vstes263: vscod805: binariesv615: bridge0708: bridge0723: vsaa593cf: pythonvs932: py29gd2263cf: vscaat: vsclangdc: c4g48928: dsvsc012cf: pynewext54: azure-devsurveyone: 3biah626: pyind779: : pythonsymbol12: showlangstatbar: vsctsb: pythonms35: : pythonfmttext: pythoncmv: fixshowwlkth: showindicator: pythongtdpath: i26e3531: pythonnosm12tcf: pythonidxpt: pythonnoceb: : dsvsc013:

Discussion:
supportedPlatforms?: PlatformName[]; } <del> export const showRemoteStartEntry = new RawContextKey<boolean>('showRemoteStartEntry', false); </del> export class RemoteStatusIndicator extends Disposable implements IWorkbenchContribution { private static readonly REMOTE_ACTIONS_COMMAND_ID = 'workbench.action.remote.showMenu';

this.remoteMetadataInitialized = true; this._onDidChangeEntries.fire(); <del> showRemoteStartEntry.bindTo(this.contextKeyService).set(true); </del> this.updateRemoteStatusIndicator(); }

id: 'topLevelRemoteOpen', title: localize('gettingStarted.topLevelRemoteOpen.title', "Connect to..."), description: localize('gettingStarted.topLevelRemoteOpen.description', "Connect to remote development workspaces."), <del> when: '!isWeb && showRemoteStartEntry', </del> <ins> when: '!isWeb', </ins> icon: Codicon.remote, content: { type: 'startEntry',
Change:
[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!

Discussion:
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)) {

const tokenizationCss = colorMap ? generateTokensCSSForColorMap(colorMap) : ''; return tokenizationCss; } <ins> function tryDecodeURIComponent(uri: string) { try { return decodeURIComponent(uri); } catch { return uri; } } </ins>
Change:
Type: <bBug</bGUCCI VS Code version: Code 1.80.1 (, 2023-07-12T17:22:07.651Z) OS version: WindowsNT x64 10.0. Modes: <details<summarySystem Info</summary </details<details<summaryExtensions (92)</summaryExtensionVersion ------ random-sample1.3.2 htmlplay0.0.10 exe-runner0.2.1 python-logger-vscode0.2.6 console-wrap-php-js-python0.0.7 logical-properties0.1.11 beyond-debug0.9.15 logger0.1.1 console-colored-logs0.0.23 vscode-markdownlint0.51.0 vscode-eslint2.4.2 vscode-deno3.19.1 githistory0.6.20 gitlens14.1.1 EditorConfig0.16.4 prettier-vscode9.19.0 esp-idf-extension1.6.4 git-project-manager1.8.2 vscode-firefox-debug2.9.8 godot-tools1.3.1 copilot1.96.255 cloudcode1.22.0 gc-excelviewer4.2.57 aiquickfix0.0.4 vscode-test-explorer2.21.1 vscode-htmlhint1.0.5 Ionide-fsharp7.7.1 elixir-ls0.15.3 vsc-fastbin0.1.1 vscode-tsc1.1.0 better-php-error-logger0.1.38 rainbow-csv3.7.0 log-line-number0.0.2 metabob1.0.18 HTMLHint0.10.0 vscode-docker1.26.0 csharp1.26.0 dotnet-interactive-vscode1.0. vscode-dotnet-pack1.0.12 vscode-edge-devtools2.1.2 vscode-ros0.9.2 vscode-kubernetes-tools1.3.13 python2023.12.0 jupyter2023.6. jupyter-keymap1.1.2 jupyter-renderers1.0.17 vscode-jupyter-cell-tags0.1.8 vscode-jupyter-slideshow0.1.5 remote-containers0.299.0 remote-ssh0.102.0 remote-ssh-edit0.86.0 remote-wsl0.80.2 cmake-tools1.14.34 cpptools1.16.3 mono-debug0.16.3 remote-explorer0.4.1 test-adapter-converter0.1.8 cordova-tools2.6.4 html-meta-tags-hero1.0.2 godot-csharp-vscode0.2.1 log-booster0.0.7 gitlab-mr-notice-vscode0.1.3 extended-html5-boilerplate0.0.1 java1.20.0 vscode-yaml1.13.0 LiveServer5.7.9 php-debug1.14.0 sample-ext0.0.2 salesforcedx-vscode-apex58.6.2 salesforcedx-vscode-apex-replay-debugger58.6.2 salesforcedx-vscode-core58.6.2 twilight-vscode-extension1.0.10 json-to-js-object0.0.4 vscode-php-test-explorer-docker1.0.5 scala0.5.7 metals1.23.0 vscode-css-custom-properties0.0.5 pdf1.2.2 cmake0.0.17 c-cpp-flag-debugging0.0.1 intellicode-api-usage-examples0.2.7 vscodeintellicode1.2.30 vscode-java-debug0.52. vscode-java-dependency0.23.0 vscode-java-test0.39.0 vscode-maven0.41.0 vscode-spring-initializr0.11.2 vscode-icons12.4.0 php-debug1.32.1 vsmarketplace-badges1.0.3 markdown-pdf1.4.4 material-theme3.15.18 (10 theme extensions excluded) </details<details<summaryA/B Experiments</summary</details<!-- generated by issue reporter --
what is this issue ticket? spam? how often does spam happen in this repo?

Discussion:
try { compatible = await this.checkAndGetCompatibleVersion(galleryExtension, false, installPreRelease); } catch (error) { <del> if (error instanceof ExtensionManagementError && error.code === ExtensionManagementErrorCode.IncompatibleTargetPlatform && !isDependency) { this.logService.info('Skipping the packed extension as it cannot be installed', galleryExtension.identifier.id); </del> <ins> if (!isDependency) { this.logService.info('Skipping the packed extension as it cannot be installed', galleryExtension.identifier.id, getErrorMessage(error)); </ins> continue; } else { throw error;
Change:
open scroll such that the viewport starts at line 131 hover over the (good) observe that the hover renders above the symbol because it fits hold cmd and slightly move mouse (bug) observe that the hover renders on top of the symbol. It should render below since it doesn't fit above.
An easier reproducible example. Simply hover over :
I have same problem, confirm this bug.
I have reproduced this bug, I will be looking into it.
The bug is caused because the hover placement is not updated when the content changes. A PR with a fix has been made.

Discussion:
this._adjustContentsBottomPadding(); this._adjustHoverHeightForScrollbar(height); } <ins> if (this._visibleData?.showAtPosition) { const widgetHeight = dom.getTotalHeight(this._hover.containerDomNode); this._positionPreference = this._findPositionPreference(widgetHeight, this._visibleData.showAtPosition); } </ins> this._layoutContentWidget(); }
Change:
After the latest update today, I'm seeing this message printed out while running my unit tests with the VSCode test runner: ! Specifically, these errors are appearing when I'm issuing commands to run notebook cells to test my controller.
Reverting back from to seems to have fixed the issue for Jupyter Notebooks.
To reproduce put a breakpoint here debug integration/API tests (open code from code-oss and debug integration tests) notebook tests hit this error This is triggered because invalid data is send to a worker. The bad worker is the notebook editor simple worker, the call happens here: The problem is that the dto isn't pure, it contains references to live object which cannot be cloned/send. <img width="1426" alt="Screenshot 2023-08-11 at 14 16 29" src=""
I have the same problem. VSCode version 1.81.1. Is there a solution already available?
it should be fixed in insiders and will be released to stable next week

Discussion:
} } <del> toJSON(): IOutputDto { </del> <ins> asDto(): IOutputDto { </ins> return { // data: this._data, metadata: this._rawOutput.metadata,

rawEvents: [{ kind: NotebookCellsChangeType.Output, index: this._cells.indexOf(cell), <del> outputs: cell.outputs ?? [], </del> <ins> outputs: cell.outputs.map(output => output.asDto()) ?? [], </ins> append, transient: this.transientOptions.transientOutputs, }],

replaceData(items: IOutputDto): void; appendData(items: IOutputItemDto[]): void; appendedSinceVersion(versionId: number, mime: string): VSBuffer | undefined; <ins> asDto(): IOutputDto; </ins> bumpVersion(): void; }
Change:
<!-- 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.80.1 OS Version: Win 10 Pro Steps to Reproduce: some code with several regions and code blocks cursor inside a region, press Ctrl+Shift+P and select "Fold all regions except selected" just the other regions are folded but all code blocks.
Yes, it should fold everything, not just regions. I fix the command label.

Discussion:
} } <del> class FoldAllRegionsExceptAction extends FoldingAction<void> { </del> <ins> class FoldAllExceptAction extends FoldingAction<void> { </ins> constructor() { super({ id: 'editor.foldAllExcept', <del> label: nls.localize('foldAllExcept.label', "Fold All Regions Except Selected"), alias: 'Fold All Regions Except Selected', </del> <ins> label: nls.localize('foldAllExcept.label', "Fold All Except Selected"), alias: 'Fold All Except Selected', </ins> precondition: CONTEXT_FOLDING_ENABLED, kbOpts: { kbExpr: EditorContextKeys.editorTextFocus,

} <del> class UnfoldAllRegionsExceptAction extends FoldingAction<void> { </del> <ins> class UnfoldAllExceptAction extends FoldingAction<void> { </ins> constructor() { super({ id: 'editor.unfoldAllExcept', <del> label: nls.localize('unfoldAllExcept.label', "Unfold All Regions Except Selected"), alias: 'Unfold All Regions Except Selected', </del> <ins> label: nls.localize('unfoldAllExcept.label', "Unfold All Except Selected"), alias: 'Unfold All Except Selected', </ins> precondition: CONTEXT_FOLDING_ENABLED, kbOpts: { kbExpr: EditorContextKeys.editorTextFocus,

registerEditorAction(FoldAllBlockCommentsAction); registerEditorAction(FoldAllRegionsAction); registerEditorAction(UnfoldAllRegionsAction); <del> registerEditorAction(FoldAllRegionsExceptAction); registerEditorAction(UnfoldAllRegionsExceptAction); </del> <ins> registerEditorAction(FoldAllExceptAction); registerEditorAction(UnfoldAllExceptAction); </ins> registerEditorAction(ToggleFoldAction); registerEditorAction(GotoParentFoldAction); registerEditorAction(GotoPreviousFoldAction);