jiebi/CodeConvo huggingface dataset:
Change:
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, }],

Discussion:
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
Change:
this._register(_notebookService.onWillRemoveNotebookDocument(notebook => { const kernelId = this._notebookBindings.get(NotebookTextModelLikeId.str(notebook)); if (kernelId) { <del> this._onDidChangeNotebookKernelBinding.fire({ notebook: notebook.uri, oldKernel: kernelId, newKernel: undefined }); </del> <ins> this.selectKernelForNotebook(undefined, notebook); </ins> } })); this._sourceMenu = this._register(this._menuService.createMenu(MenuId.NotebookKernelSource, contextKeyService));

Discussion:
Testing microsoft/vscode-jupyter untitled ipynb cells export commands are available in command palette the untitled notebook as ipynb and give it a title command palette :bug: all the export commands are now hidden
I think this is because technically the cells were run in the context of the previous notebook, so I now need to run them again after saving the notebook, which is a rather nasty limitation...
I think this is because after saving we don't have a kernel connected to the newly saved notebook. There is no kernel session transfer (from untitled to saved notebook) currently.
Save As is handled by core. Need to transfer current controller to new ipynb.
Seems related to
Not sure - we are handling this the same way we persist selection and other view state. But the editor still gets reopened with a new model. Dunno how this concept works in custom editors.
Custom editors have one the untitled editor closed and a new one with another URI open, I want a signal that a custom editor can handle to upgrade it so no close/open needs to happen
Steps: Open an untitled jupyter notebook Select a kernel Save the notebook The same kernel should be selected The "Set kernel as default" gear icon in the kernel picker was also removed.
Verified with this "kernel"
Change:
// Changing any regex may effect this value, hence changes this as well if required. const winLineAndColumnMatchIndex = 12; <del> const unixLineAndColumnMatchIndex = 23; </del> <ins> const unixLineAndColumnMatchIndex = 11; </ins> // Each line and column clause have 6 groups (ie no. of expressions in round brackets) const lineAndColumnClauseGroupCount = 6;

Discussion:
Disabled in
In order to fix a VS Code crash caused by a regex catastrophic backtracking case, I changed the unix link link regex (). I had to disable some of the terminal link line/column Unix cases ( in ) as I don't totally understand what's happening. For some reason doesn't seem to work for all the anymore, specifically these ones: See this change which gets 2/4 cases working: Any insights would be great :smiley:
just saw this issue and fix. will have a detailed look in this on weekend, will update you on any findings.
did you get a chance to look at this?
got new machine, i have just started setup. Will update soon.
I tried running test from terminal using , but it seems to be stuck, shows nothing on terminal. Is there any way to run specific test or something i am missing. Thanks
Hmm... I'm sure there is a way as it uses mocha, I'm not sure what it is though as the tests always run so fast for me.
I have updated the tests and ts file, now tests are working fine. Please review. Thanks
Change:
import { ToggleCaseSensitiveKeybinding, ToggleRegexKeybinding, ToggleWholeWordKeybinding } from 'vs/editor/contrib/find/findModel'; import * as nls from 'vs/nls'; import { ICommandAction, MenuId, MenuRegistry, SyncActionDescriptor } from 'vs/platform/actions/common/actions'; <del> import { CommandsRegistry } from 'vs/platform/commands/common/commands'; </del> <ins> import { CommandsRegistry, ICommandHandler } from 'vs/platform/commands/common/commands'; </ins> import { IConfigurationService } from 'vs/platform/configuration/common/configuration'; import { ConfigurationScope, Extensions as ConfigurationExtensions, IConfigurationRegistry } from 'vs/platform/configuration/common/configurationRegistry'; import { ContextKeyExpr } from 'vs/platform/contextkey/common/contextkey';

Discussion:
When I press Cmd/Ctrl+Shift+F and a focus is currently on some folder in the Explorer sidebar, it would be nice to automatically scope the search to that folder. It's currently achievable by putting this to : but I think it would be a nice little improvement to do that automatically.
I think cmd+shift+f should just focus the viewlet in that case. Imagine if you press cmd+shift+e, then cmd+shift+f - you would be stuck searching in a folder, unless you grab the mouse to move the focus off a folder. But, I would take a PR that adds this keybinding for cmd+alt+f (or something else reasonable) and something reasonable for windows.
, can i work on this ? If yes then some starter points would be helpful :)
There is already a PR in progress, see just above your comment.
Change:
display: none; } <ins> .test-explorer .monaco-list-row .error { outline: 1px solid var(--vscode-inputValidation-errorBorder); background: var(--vscode-inputValidation-errorBackground); padding: 2px 4px; border-radius: 2px; margin: 3px 12px 3px 3px; line-height: 17px; font-size: 12px; } </ins> .test-explorer .monaco-list-row .error p { margin: 0; }

Discussion:
Testing It shows the error's message, but doesn't make explicit that there was an error thrown. ! This is from:
Change:
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';

Discussion:
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
Change:
container.classList.add('notebook-action-view-item'); this._actionLabel = document.createElement('a'); container.appendChild(this._actionLabel); <ins> const hoverDelegate = this.options.hoverDelegate ?? getDefaultHoverDelegate('element'); this._hover = this._register(setupCustomHover(hoverDelegate, this._actionLabel, '')); </ins> this.updateLabel(); }

Discussion:
open a notebook hover over its and actions there is the custom hover but on further move there is also the native hover (maybe because these actions combine text and icon?)
Change:
use crate::update_service::{ unzip_downloaded_release, Platform, Release, TargetKind, UpdateService, }; <del> use crate::util::command::{capture_command, kill_tree}; </del> <ins> use crate::util::command::{capture_command, capture_command_and_check_status, kill_tree}; </ins> use crate::util::errors::{wrap, AnyError, CodeError, ExtensionInstallFailed, WrappedError}; use crate::util::http::{self, BoxedHttp}; use crate::util::io::SilentCopyProgress;

Discussion:
Type: <bBug</bNote: I was unable to create a bug report after I choose the "An extension" option in the dropdown in the "Help: Report Issue..." window as it does not show any of my extensions (I do have extensions for whatever reason the bug report does not show them) After installing 1.82.0 (insiders), I started to get the following error message: Failed to connect to the remote extension host server (Error: WrappedError(WrappedError { message: "server exited without writing socket", original: "channel closed" })) And Could not fetch remote environment When I use an older version (via regular VsCode) this issue does not happen. VS Code version: Code - Insiders 1.82.0-insider (, 2023-08-28T05:35:52.131Z) OS version: WindowsNT x64 10.0. Modes: Connection to 'SSH: ' could not be established WrappedError(WrappedError { message: "server exited without writing socket", original: "channel closed" }) <details<summarySystem Info</summary Connection to 'SSH: ' could not be established WrappedError(WrappedError { message: "server exited without writing socket", original: "channel closed" }) </detailsExtensions: none<details<summaryA/B Experiments</summary</details<!-- generated by issue reporter --
Please share the full output of in the Output panel when you get into this state
I captured all the logs below with all of its attempts
Thanks! What happens if you SSH in manually and run the server using this command?
My bash output
It looks like the server perhaps did not get extracted fully. We can add some checks around that. I suspect deleting the directory would fix it
That worked thank you
We should do an integrity check before finalizing the server directory however
Verified that the SSH log contains the message which got by the fix
Change:
quickPick.hide(); }); <del> quickPick.onDispose(() => disposables.dispose()); </del> <ins> quickPick.onDidHide(() => { quickPick.dispose(); }); quickPick.onDispose(() => { this._currentQuickPick = undefined; disposables.dispose(); }); </ins> quickPick.show(); }

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.67 OS Version: macOS 12.3.1 (21E258) using the button the button again to close it but cannot close it3. <img width="1076" alt="a" src="https://user-" Its always running show method, so I think it should have an open/close state to manage it.
Try clicking here: !
Thank you for the comment. Yes, I know I can close it by clicking the button, but it would be nice to close it by clicking the original button.
please improve the issue title, which currently states that you "cannot close" it.
My bad. I'll fix it now
for UX guidance here. when actions open quick picks we don't tend to have an inverse action if its still open. this is not usually the case because it is closed when focus is lost, but not something we can rely on here.
Thank you Even if the focus is lost, the action view won't be closed on Mac. Also, other buttons allow us to open and close by clicking, so it should be consistent. I often click the button by accident and need to move cursor to close the view. That would be nice to have a toggle feature on the button too.
Maybe use the setting which removes the button completely?
We don't currently hide any of the quick picks with other actions or clicking the same action (changing focus would actually close it). I think given that we have the key and the close button in the top right of the quick pick, I don't think we'd be able to do anything else.
Change:
} public getHeight(tree: ITree, element: any): number { <del> if (element instanceof Variable) { </del> <ins> if (element instanceof Variable && (element.hasChildren || (element.name !== null))) { </ins> return ReplExpressionsRenderer.LINE_HEIGHT_PX; } if (element instanceof Expression && element.hasChildren) {

Discussion:
This must have broken recently: !
The content is actually there in the DOM: !
Jan candidate?
Change:
const workingCopyService = accessor.get(IWorkingCopyService); const workingCopyBackupService = accessor.get(IWorkingCopyBackupService); const logService = accessor.get(ILogService); <ins> const outputService = accessor.get(IOutputService); </ins> const backups = await workingCopyBackupService.getBackups();

Discussion:
Run the command . Nothing happens Can we show the dev tools or open an output view that gets focus? From describing a user how to help us debugging an issue with storage:
The action also runs in browsers where we cannot open devtools automatically. We cannot use the output view because we actually show a real table: <img width="1394" alt="image" src=""But we can inform the user via dialog.
For the other action "Log working copies" I will reveal the window log where it is logged to.
Change:
import { ActionViewItem } from 'vs/base/browser/ui/actionbar/actionViewItems'; import { IAction } from 'vs/base/common/actions'; import { ITelemetryService } from 'vs/platform/telemetry/common/telemetry'; <ins> import { IClipboardService } from 'vs/platform/clipboard/common/clipboardService'; </ins> <del> const codeSettingRegex = /^<code (codesetting)="([^s":]+)(?::([^s"]+))?">/; const codeFeatureRegex = /^<span (codefeature)="([^s":]+)(?::([^s"]+))?">/; </del> <ins> const codeSettingRegex = /^<code (codesetting)="([^s":]+)(?::([^"]+))?">/; const codeFeatureRegex = /^<span (codefeature)="([^s":]+)(?::([^"]+))?">/; </ins> export class SimpleSettingRenderer { private _defaultSettings: DefaultSettings;

Discussion:
Testing Click on a setting link in the release notes Get a tooltip "View '<title' in Settings" context menu It seems strange to open a context menu on left-click and to open one with only a single menu item. Can we skip doing this if "View" is the only action?
My preference would be to keep it consistent so that a context menu always opens when the button is clicked. There was some discussion of adding a "copy setting id" item in there too, which would fix the only-one-item issue.
Will be fixed by , which adds a "copy" action to the menu.
Another option is to open the context menu when the "gear" icon is hit, but go directly to the setting if the text is clicked (or vise versa)
Change:
newFrame.style.visibility = 'visible'; contentWindow.addEventListener('scroll', handleInnerScroll); <del> pendingMessages.forEach(function(data) { </del> <ins> pendingMessages.forEach(function (data) { </ins> contentWindow.postMessage(data, document.location.origin); }); pendingMessages = [];

Discussion:
! It looks surprisingly good in this screenshot, but in reality it's way worse. Contrast ratio: background: , color:
It doesn't make much sense to me. Background color changes ... color stays the same. If background is close to blue () =links become low contrast ! If background is close to orange () =code samples become low contrast !
Change:
export class TestExtensionService extends NullExtensionService { } export const TestProductService = { _serviceBrand: undefined, ...product }; <ins> export class TestActivityService implements IActivityService { _serviceBrand: undefined; showViewContainerActivity(viewContainerId: string, badge: IActivity): IDisposable { return this; } showViewActivity(viewId: string, badge: IActivity): IDisposable { return this; } showAccountsActivity(activity: IActivity): IDisposable { return this; } showGlobalActivity(activity: IActivity): IDisposable { return this; } dispose() { } } </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/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 directly to the extension publisher. The 'Help Report Issue' dialog can assist with this. --- VS Code Version: OS Version: Steps to Reproduce: an extension that does this: 'll notice that is though it should exist because we created it on line 1. This is because we cache the session id based on the provider id & extension name but really we should be caching them based on provider id, extension name, AND SCOPES. This will allow the 3rd time to find the session created in the first line.
Verification steps: The code session3 should not be undefined.
is your solution to this issue the reason that the Insiders builds have started bugging me at least once a day to sign into GitHub? With four windows open, each with two extensions that want a GitHub token (GitLens and GitHub Issues and Pull Requests), I have to generate 8 tokens to make VS Code stop bugging me... at which point it almost always discovers a VS Code update, and often we do the dance again after it restarts.
(And never mind, I see it was, and I see you fixed it!)
Reopening this because I reverted the change that fixed it.
just checking to see if there were any updates on this issue?
haven't had a chance to revisit this. You can take a look at my commit if you'd like. The problem I needed to address is migrating from the old storage keys to the new storage keys and my commit didn't handle that. Unfortunately, I have some other work I'm working on at the moment so I won't be able to look at this this month.
This appears to be fixed. Closing now
verification: original steps to repro. Instead, session3 should be defined.
Change:
this._commonProtocolDisposables.push( xterm.parser.registerOscHandler(ShellIntegrationOscPs.FinalTerm, data => this._handleFinalTermSequence(data)) ); <ins> this._register(xterm.parser.registerOscHandler(ShellIntegrationOscPs.SetCwd, data => this._doHandleSetCwd(data))); this._register(xterm.parser.registerOscHandler(ShellIntegrationOscPs.SetWindowsFriendlyCwd, data => this._doHandleSetWindowsFriendlyCwd(data))); </ins> this._ensureCapabilitiesOrAddFailureTelemetry(); }

Discussion:
Part of We want to support other common shell integration sequences as fallbacks to the VS Code specific one ()
can you add verification steps for this?
On Windows Disable shell integration Open pwsh 7+ Run the following: It should change the terminal tab's description to .

Part of We want to support other common shell integration sequences as fallbacks to the VS Code specific one ()
can you add verification steps for this?
Disable shell integration Open pwsh 7+ Run the following: It should change the terminal tab's description to .

Part of We want to support other common shell integration sequences as fallbacks to the VS Code specific one () Code pointer:
I'm taking this.
sounds good
I've just submitted the PR. You can check it anytime you want.
can you add verification steps for this?
Disable shell integration Open pwsh 7+ Run the following: It should change the terminal tab's description to .
Change:
_debugDisplayName: 'chatDynamicCompletions', triggerCharacters: [chatVariableLeader], provideCompletionItems: async (model: ITextModel, position: Position, _context: CompletionContext, _token: CancellationToken) => { <del> const fileVariablesEnabled = this.configurationService.getValue('chat.experimental.fileVariables') ?? this.productService.quality !== 'stable'; if (!fileVariablesEnabled) { return; } </del> const widget = this.chatWidgetService.getWidgetByInputUri(model.uri); if (!widget || !widget.supportsFileReferences) { return null;

Discussion:
We still have the check in place to disable these in the stable build...
Can be verified by code review, or once we have a stable build.
Verifying on 0.11.1 Edit: I see the suggestion is enabled, but the behaviour is off to me. Discussing offline. Edit 2: Discussed. Marking as verified.
Change:
export interface IDebuggerMetadata { label: string; type: string; <del> uiMessages?: { [key in DebuggerUiMessage]: string }; </del> <ins> strings?: { [key in DebuggerString]: string }; </ins> interestedInLanguage(languageId: string): boolean; }

Discussion:
Continuing This is just a flag in Example: In this case, vscode is in control of when and where to show this message.
Is a good name? Drop the ?
If I see some "messages" related to a debugger, I first think of something like DAP messages. I would only use this property to drive some feature in the UI and it feels good to tie it to that. But if feels awkward I don't have a strong opinion.
Change:
"tas-client-umd": "0.1.5", "vscode-oniguruma": "1.6.1", "vscode-textmate": "7.0.1", <del> "xterm": "4.19.0-beta.52", "xterm-addon-search": "0.9.0-beta.37", </del> <ins> "xterm": "4.19.0-beta.53", "xterm-addon-search": "0.9.0-beta.39", </ins> "xterm-addon-unicode11": "0.4.0-beta.3", "xterm-addon-webgl": "0.12.0-beta.36" }

Discussion:
Testing a new terminal a script which logs the same text 2000 times a query, find widget says there are 2000 matches the terminal (e.g. collapse and expand the side bar) :bug: the number of matches is now less even though the same amount of scrollback is visible, moreover deleting and reentering the query doesn't reset the match count !
Maybe this isn't released yet, but I'm still getting the same problem in today's insiders.
Still repros for me :(
Can one of you pls provide a gif? it's working for me with the above example as expected and with others
https://user-
You are both on Windows - I wonder if that has to do with this. Could someone on mac pls verify this?
!
from !
Something weird going on here: ! This is after pasting in " Hi Hi" many times, once the command wraps to the end the terminal freaks out (conpty reprinting), but at some point it breaks and find only finds one result. Finding the next works, but it still says 1 of 1.
More weird behavior !
All results aren't getting included when search results get highlighted !
Problem here seems to be the search addon gets confused because translateToString considers the second character whitespace: But in the search algorirthm it's treated as a null character, of length 0, as opposed to .
Still reproing this. Initially: ! After making the terminal panel taller: !
this is on Windows? That's actually acting as expected because of the way conpty works, it ends up losing lines just above the bottom of the buffer.
Pretty sure you were seeing so closing this again for verification
Change:
const justAgents: CompletionItem[] = agents .filter(a => !a.isDefault) .map(agent => { <del> const { label: agentLabel, isDupe } = getAgentCompletionDetails(agent, agents, this.chatAgentNameService); </del> <ins> const { label: agentLabel, isDupe } = this.getAgentCompletionDetails(agent); </ins> const detail = agent.description; return {

Discussion:
I removed this to move over to using the agent, which required setting . Chatted with and I should add another agent to support the agent in both places, only making it the default for the terminal location. fyi
Verified that is available in panel chat.