jiebi/CodeConvo huggingface dataset:
Change:
} private get _jsonTasksSupported(): boolean { <del> return !!ShellExecutionSupportedContext.getValue(this._contextKeyService) && !!ProcessExecutionSupportedContext.getValue(this._contextKeyService); </del> <ins> return ShellExecutionSupportedContext.getValue(this._contextKeyService) === true && ProcessExecutionSupportedContext.getValue(this._contextKeyService) === true; </ins> } private _computeWorkspaceFolderTasks(workspaceFolder: IWorkspaceFolder, runSource: TaskRunSource = TaskRunSource.User): Promise<IWorkspaceFolderTaskResult> {

Discussion:
a folder try to run task Says task command not found !
What commit is that insiders based on? I believe I fixed this yesterday.
It says there is no updates for me but this is
Is that in oss? Hard to tell
No this is just todays insiders. I can test again on monday if you'd like
Thanks can you repro in oss?
Can repro when running the task command but not ctrl+shift+b. so this is a diff't bug
Reopen due to revert:
Change:
private readonly commandMouseListener = this._register(new MutableDisposable()); private readonly commandTouchListener = this._register(new MutableDisposable()); private readonly commandKeyboardListener = this._register(new MutableDisposable()); <del> private readonly focusListener = this._register(new MutableDisposable()); private readonly focusOutListener = this._register(new MutableDisposable()); </del> private hover: IManagedHover | undefined = undefined;

Discussion:
a rust project Hold mousedown on the rust analyzer status bar contribution. The hover appears and disappears when the mouse is released.
it seems like you to prevent flickering from happening in the status bar. Maybe this is not required anymore? It seems like this is causing the flickering to happen currently. cc as he the if condition
I those listeners so that the tooltip is shown and hidden when keyboard focus moves into / out of status bar items. I just tested and those listeners are no longer needed because of work you've done to support showing the tooltip for items around the workbench when they're focused with the keyboard
Change:
__vsc_custom_PS1="" __vsc_custom_PS2="" __vsc_in_command_execution="1" <del> __vsc_last_history_id=$(history 1 | awk '{print $1;}') </del> <ins> __vsc_current_command="" </ins> __vsc_prompt_start() { builtin printf "033]633;A007"

Discussion:
This is a follow up from which worked around the majority case of an issue. See the workaround: The proper fix will involve sending both the exit code and the history ID over to VS Code which will then do what's happening now but also have the correct exit code to set, instead of assuming it's the last command's exit code. We should write a little script as part of this that alternates exit codes by setting/unsetting an environment variable so it's easier to test and verify.
The issue being worked around is actually caused by or being included in .
Good test case from
To verify: some commands , they should all show up in current session ctrl+c in between some commands, including typing out a command and hitting ctrl+c to abandon it , the lines with ctrl+c shouldn't show up several times, failed and success should match whether the exception was thrown.
Change:
title: strings.fetching }; const promise = (async () => { <del> let groupTasks: (Task | ConfiguringTask)[] = []; </del> async function runSingleTask(task: Task | undefined, problemMatcherOptions: IProblemMatcherRunOptions | undefined, that: AbstractTaskService) { that.run(task, problemMatcherOptions, TaskRunSource.User).then(undefined, reason => {

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. --This was raised before in but closed for not providing enough detail. I'll try to do better. Possibly historically related, but I really don't know: . This buggy behaviour was raised to my attention on Stack Overflow in <!-- Test using the latest Insiders build to see if your issue has already been fixed: --I have tested on Insiders with no non-builtin extensions installed, and on top of that with extensions disabled: <!-- 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. I also tested with a default profile. <!-- 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.81.1, 1.82.0-insider OS Version: Ubuntu 22.04.2. The Stack Overflow user seems to be on windows judging by the backslash path separators, and was Windows and WSL. Steps to Reproduce: a new workspace folder. put anything. Ex. "hello world!" put anything. Ex. "hello world!" and run in the command palette, and observe that it shows the task (unexpected). and run in the command palette, and observe that it shows the task (expected). swap the order the task definitions in and run in the command palette, and observe that it shows the task (expected). and run in the command palette, and observe that it shows the task (unexpected).
maybe related to this change
I can reproduce, doesn't work at all. To that I would add that it isn't documented in
Marking as feature so it gets tested/verified and because this never worked before
Thanks! Do you want me to file a reminder to document this useful feature or is it unnecessary?
that's unnecessary, but it would be great if you'd verify the fix when it's released in insider's. When that happens, you'll see the label applied.
Change:
this.logService.warn(`Multiple speech providers registered. Picking first one: ${provider.metadata.displayName}`); } <del> const language = this.configurationService.getValue<string>('accessibility.voice.speechLanguage'); </del> <ins> const language = speechLanguageConfigToLanguage(this.configurationService.getValue<unknown>(SPEECH_LANGUAGE_CONFIG)); </ins> const session = this._activeSpeechToTextSession = provider.createSpeechToTextSession(token, typeof language === 'string' ? { language } : undefined); const sessionStart = Date.now();

Discussion:
Fyi
Verification: install the pre-release version of speech extension: make sure is configured to (it should be by default) switch VS Code display language to another language that is supported by the speech extension such as german or portuguese start voice dictation in a text editor via "Start Dictation in Editor" verify you get prompted to install the related language pack for the display language you picked
Change:
59.	vscode-logfile-highlighter version 1.2.0 (https://github.com/emilast/vscode-logfile-highlighter) 60.	vscode-swift version 0.0.1 (https://github.com/owensd/vscode-swift) 61.	Web Background Synchronization (https://github.com/WICG/BackgroundSync) <ins> 62.	textmate/toml.tmbundle (https://github.com/textmate/toml.tmbundle) </ins> %% atom/language-c NOTICES AND INFORMATION BEGIN HERE =========================================

Discussion:
I have found as a related issue, but that seems to only tackle support in markdown files. I am suggesting that VSCode support the file extension. It should be very similar to the syntax, and is something I would be willing to tackle in a PR.
Yes, we would take a PR for this. Look at the or the extensions for examples. We pull in the grammars used in these extension from existing repos so that we don't have to maintain them in the VS Code repo. Both the or the extensions provide examples of this in their npm script
Perfect. I have found: , and will submit a PR later today. Thanks for the tip
After further discussion with the VS Code team, we have decided to revert this addition with See that commit for an explanation of why we feel this is the correct decision for guiding users to a better toml experience and for maintaining VS Code itself
Change:
collapseAll(elements?: any[], recursive?: boolean): WinJS.Promise; /** <del> * Collapses several elements. * Collapses all elements at the greatest tree depth that has expanded elements. * The returned promise returns a boolean for whether the elements were collapsed or not. */ collapseDeepestExpandedLevel(): WinJS.Promise; /** </del> * Toggles an element's expansion state. */ toggleExpansion(element: any, recursive?: boolean): WinJS.Promise;

Discussion:
introduced a  API to the tree via I'm pretty sure that method's implementation can be achieved outside the tree itself. There are , and methods on it. If so, please remove the API method and implement on the search usage side.
This was to the tree with the idea in mind that it would be useful elsewhere like the file explorer. And in fact I'd really like to have the same behavior on the file explorer. So moving it into search code is not the right thing to do but it could go into some TreeHelper class outside of the tree itself.
No need to overload with classes. A simple util function would do.
I don't think this is actually achievable outside the tree itself with the current tree API. It needs to calculate the tree depth to collapse to, and the navigator from just returns elements of the tree without the context of where they are in the tree. IMO, it makes sense for this method to stay on the tree since it's coupled with the tree's data
Good point. But this is really only used for search. I don't really buy into the generic usefulness of this as an API call, which needs to be maintained for the entire tree's lifecycle. As far as I am aware, search trees can only go 2/3 levels deep, depending on whether there are multiple folders in the workspace or not. That knowledge is kept in the search's tree user; the same entity knows exactly what it should collapse or otherwise. Can't it just call the right calls?
Change:
) { super(); <del> if (environmentService.remoteAuthority && !environmentService.options?.credentialsProvider) { </del> <ins> if ( environmentService.remoteAuthority && !environmentService.options?.credentialsProvider && !environmentService.options?.secretStorageProvider ) { </ins> // If we have a remote authority but the embedder didn't provide a credentialsProvider, // we can use the CredentialsService on the remote side const remoteCredentialsService = ProxyChannel.toService<ICredentialsService>(remoteAgentService.getConnection()!.getChannel('credentials')); this.credentialsProvider = remoteCredentialsService; this._secretStoragePrefix = remoteCredentialsService.getSecretStoragePrefix(); } else { <del> // fall back to InMemoryCredentialsProvider if none was given to us. This should really only be used // when running tests. </del> <ins> // fall back to InMemoryCredentialsProvider if none was given to us. </ins> this.credentialsProvider = environmentService.options?.credentialsProvider ?? new InMemoryCredentialsProvider(); this._secretStoragePrefix = Promise.resolve(this.productService.urlProtocol); }

Discussion:
Host OS: Windows 11 22H2 Steps to Reproduce: latest insiders tunnel CLI the tunnel link and see the following error in the logs <details<summaryLogs</summary</details
Hm, I don't repro this, do you see anythingin the Remote Tunnels output?
Nothing interesting in the logs, I also tried removing , and the keyring, but the issue persists. It also repros on my macOS device. However, I am able to use stable version of tunnels on these devices. <details<summaryCLI logs</summary</details
Comparing the debug output from stable tunnel CLI, looks like insiders is unable to make an ssh connection ? Anyway I can collect additional debug logs related to the ssh connection ? <details<summaryStable successful</summary</details<details<summaryInsiders failed</summary</details
Actually, I can reproduce this. It seems like the resolver extension is not consistently activated on Insiders. For me I only hit it sometimes and a refresh will fix it. This can be consistently hit in the smoke tests for tunnels which uses a new playright-controlled browser, or in an incognito window, but then manually refreshing the page fixes it. I notice in this case that the web worker extension host never gets spun up. I also notice I can reproduce this on a non-incognito window just be deleting indexdb database. (Interestingly, specifically deleting the and storage entires leads to a different error "no remote extension installed to resolve...", but then a refresh works.) were there any changes that could have affected this recently?
Turns out that was a bit of a goose chase... the actual cause is here, it seems like this blocks (deadlocks?) on the first load of vscode-dev when there's a remote, which prevents extensions from starting This then prevents the extension service from running which is the step where the remote authority gets resolved
We realized my repro steps were actually different than Deekpaks, but it was the same core issue and the PR fixes both :)
Thanks! verified the fix in today's insider.
Change:
altKey: nls.localize({ key: 'altKey', comment: ['This is the short form for the Alt key on the keyboard'] }, "Alt"), metaKey: nls.localize({ key: 'windowsKey', comment: ['This is the short form for the Windows key on the keyboard'] }, "Windows"), separator: '+', <ins> }, { ctrlKey: nls.localize({ key: 'ctrlKey', comment: ['This is the short form for the Control key on the keyboard'] }, "Ctrl"), shiftKey: nls.localize({ key: 'shiftKey', comment: ['This is the short form for the Shift key on the keyboard'] }, "Shift"), altKey: nls.localize({ key: 'altKey', comment: ['This is the short form for the Alt key on the keyboard'] }, "Alt"), metaKey: nls.localize({ key: 'superKey', comment: ['This is the short form for the Super key on the keyboard'] }, "Super"), separator: '+', </ins> } );

Discussion:
I am actually surprised this bug exists, aren't you using some keybinding helper to turn the keybinding into a human readable label?
yea I'm using the keybinding service, yes, I'm not doing anything special on my own I don't believe.
Related:
PR out:
Change:
private readonly hover = this._register(new MutableDisposable<IDisposable>()); private readonly showHoverScheduler = new RunOnceScheduler(() => this.showHover(), 0); <ins> private static _hoverLeaveTime = 0; </ins> constructor( action: ActivityAction, options: IActivityActionViewItemOptions,

Discussion:
Native browser tooltips and many custom ones (Figma, Discord, Edge tabs) keep the tooltip element visible when moving between elements. Would be nice to do the same, to make mouse exploration even snappier. Discord icon bar: ! macOS dock: !
cc as this discussion was spawned off cc as owner of the hover widget cc as we talked about this a few times and he brought it up most recently in the team chat
fyi I'm the main hover widget person This seems doable, needs some thinking on how this would be exposed in the API. It's also a feature of native browser tooltips when hovering from one element with to another.
Thanks for confirmation :)
Change:
this._register(this._terminalService.onDidChangeInstanceColor(e => this.updateLabel(e))); this._register(this._terminalService.onDidChangeInstanceTitle(e => { if (e === this._terminalGroupService.activeInstance) { <del> this._action.tooltip = getSingleTabTooltip(e, this._terminalService.configHelper.config.tabs.separator, configurationService); </del> <ins> this._action.tooltip = getSingleTabTooltip(e, this._terminalService.configHelper.config.tabs.separator); </ins> this.updateLabel(); } })); this._register(this._terminalService.onDidChangeInstanceCapability(e => { <del> this._action.tooltip = getSingleTabTooltip(e, this._terminalService.configHelper.config.tabs.separator, configurationService); </del> <ins> this._action.tooltip = getSingleTabTooltip(e, this._terminalService.configHelper.config.tabs.separator); </ins> this.updateLabel(e); }));

Discussion:
Testing It turns out "Run Recent Command" works both with shell integration disabled and enabled, but I wasn't seeing the shell integration prompt on Windows. I'm using pwsh 7. When I disable shell integration, I see the header that tells me I'm using version 7. When I enable shell integration, I see just the prompt. My profile references the following script:
what do you mean that your profile references that script? could you provide the profile you're using?
also what's the value of your ?
PS1: Init script: Screenshot: ! Edit: I just realized the word prompt isn't what I meant. Changed the issue title.
oh you should see it only on hover of the icon in the tab list.
we changed this so no longer show in the buffer
It doesn't seem to be in the tab list icon hover: !
I think this is working as designed since we hid the message? This is also by design, it's just populating that list that only happens when shell integration is enabled.
Oh it should be on the tab hover though.
not seeing it on mac either
This issue has been closed automatically because it needs more information and has not had recent activity. See also our guidelines. Happy Coding!
Change:
command?: { data?: string; template?: string; <del> uri?: string; </del> <ins> uri?: UriComponents; </ins> }; }

Discussion:
Testing It seems weird to pass in string when you could just pass in a Uri. Better yet, consider
I think when I was testing, URI wasn't serializable so it wouldn't be passed thru the command properly - will double check this soon though
you may need to turn it into a and then that on the other end. It's possible. We do it with other processes.
Change:
} export enum ViewColumn { <ins> Active = -1, </ins> One = 1, Two = 2, Three = 3

Discussion:
VSCode Version: Code - Insiders 1.13.0-insider (, 2017-05-26T05:14:23.944Z) OS Version: Windows_NT ia32 10.0. These 2 apis should honor the ViewColumn if specified, but if left they should default to the column of the active editor Having this will eliminate code in many extensions such as: Which fails for anything that isn't a text document (since will be missing)
Unsure what that means?
Sorry, I meant that the could be if the actual active "editor" is a non-text document (image, extension, etc). And can be for a diff editor (maybe other cases?). So an extension can't reliably get the real "active" column
+1 for not setting as default if not specified so that we prefer the currently active editor column when documents open.
PR addresses it, but it conflicts with another change see: Any thoughts on coming to a resolution on that -- I would LOVE to see this fixed.
we have an option for editors to reveal if they are open in another group (see ). I am actually surprised that was fixed and marked as important because the normal workbench behaviour is to open an editor in the currently active editor group. On top of that, the solution also does not seem right because what if I start in column 2 and I open a document in column 3 and then open the document from column 2 again. It opens in column 1?
I was surprised as well as that was my argument too :)
I could rebase that PR again (since its quite old) if you'd like, but it will still fail because of a test checking for
Well, we had this behaviour in place, extensions rely on it , and we don't want to break them. That's why this is tricky The solution is to use column 1 if not specified, no column-math happens:
Change:
const VIEW_CONTAINER: ViewContainer = Registry.as<IViewContainersRegistry>(ViewExtensions.ViewContainersRegistry).registerViewContainer({ id: DEBUG_PANEL_ID, name: nls.localize({ comment: ['Debug is a noun in this context, not a verb.'], key: 'debugPanel' }, 'Debug Console'), <del> icon: 'codicon-debug-console', </del> <ins> icon: Codicon.debugConsole.classNames, </ins> ctorDescriptor: new SyncDescriptor(ViewPaneContainer, [DEBUG_PANEL_ID, { mergeViewWithContainerWhenSingleView: true, donotShowContainerTitleWhenMergedWithContainer: true }]), storageId: DEBUG_PANEL_ID, focusCommand: {

Discussion:
Today I see no debug icon in the activity bar.
Yeah, I also can't see !
Removed in Looks like not longer in font and has different character code but it's actually in font
Sorry about that, I must've copied the wrong unicode character when I was cleaning up the unused debug icons. Looking into PR right now.
Change:
} const seconds = Math.round((new Date().getTime() - date) / 1000); <del> if (seconds < 30) { </del> <ins> if (seconds < -30) { return `in ${fromNow(new Date().getTime() + seconds * 1000, false)}`; } else if (seconds < 30) { </ins> return localize('date.fromNow.now', 'now'); }

Discussion:
Refs ! the topmost three events are in the future, but they're all shown as "now" admittedly lunar calendar is a bit of a silly example, but I think its reasonable for people to try to use this to show, for instance, "code freeze in 7 days", "sprint ends in 3 days", "endgame week starts in 2 weeks", etc.
Change:
} } this._activeCursorHasCommentingRange.set(hasCommentingRange); <ins> this._activeCursorHasComment.set(this.getCommentsAtLine(range).length > 0); </ins> } private isEditorInlineOriginal(testEditor: ICodeEditor): boolean {

Discussion:
Type: <bFeature Request</bCC any file containing comment thread editor, move your cursor to any line having comment your cursor is on the line, press ctrl+K ctrl+I to see if the comment tolltip opens Screen reader users cannot open comment tooltip on the current line via ctrl+K ctrl+I ctrl+K ctrl+I needs to work for the comment tooltip just like other tooltips. VS Code version: Code - Insiders 1.93.0-insider (, 2024-08-20T08:04:15.567Z) OS version: Windows_NT x64 10.0. Modes: <!-- generated by issue reporter --
the comment widget is not a tooltip. We cannot reuse this keybinding to focus the comment widget because it's possible that line will have hover info. pls lmk if you disagree. I do wonder if we should have a focus closest comment widget command/keybinding.
Aw, I see. Please then consider adding a keybinding to focus the closest comment widget. Currently, alt+F9 and shift+alt+F9 go to the next and previous comment widget, but there is no action available to focus the comment on the current line.
It does make sense to have an "Expand and focus comment at current line" command.
The new command is "Focus Comment on Current Line" with no default keybinding.
To verify: Install an extension that provides comments GitHub Pull Requests can be used for this Sign in Open the Pull Requests view Open a file diff for a PR. If there aren't any comments in the file, add a comment on one of the changed lines and collapse the comment Put your cursor on a line in a file with a collapsed comment Open the command palette and run the command "Focus Comment on Current Line" Verify that the comment has focus
This should probably be to the comments and/or the editor accessibility help dialog for discoverability.
Change:
*  Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ <del> import { ExtensionContext } from 'vscode'; </del> <ins> import { ExtensionContext, Uri } from 'vscode'; </ins> import { LanguageClientOptions } from 'vscode-languageclient'; import { startClient, LanguageClientConstructor } from '../cssClient'; import { LanguageClient } from 'vscode-languageclient/browser';

Discussion:
The usage of as seen here only works because there is there is special code to return a url-string (instead of a path, see ). For loading extension relative resources the and should be used. That is the new, web-ready replacement API
fyi
tried to adopt this. When will be available. I can't find it in .
Opened for ESLint
It's in the API since 4 months: