Question: @IContextKeyService contextKeyService: IContextKeyService, @ILanguageService private readonly languageService: ILanguageService, @IModelService private readonly modelService: IModelService, <del> @IConfigurationService private readonly _configurationService: IConfigurationService </del> <ins> @IConfigurationService private readonly _configurationService: IConfigurationService, @IAccessibilityService private readonly _accessibilityService: IAccessibilityService </ins> ) { super(); this.element = $('.interactive-result-editor-wrapper'); this.contextKeyService = this._register(contextKeyService.createScoped(this.element)); const scopedInstantiationService = instantiationService.createChild(new ServiceCollection([IContextKeyService, this.contextKeyService])); this.toolbar = this._register(scopedInstantiationService.createInstance(MenuWorkbenchToolBar, this.element, MenuId.ChatCodeBlock, {

We should not translate the PHP parser error messages, but we should localize the strings that appear in the Code UI. !


Question: private start(): void { this.textModelResolverService.registerTextModelContentProvider('vscode', { <del> provideTextContent: (uri: URI): Promise<ITextModel | null> | null => { </del> <ins> provideTextContent: async (uri: URI): Promise<ITextModel | null> => { </ins> if (uri.scheme !== 'vscode') { return null; } if (uri.authority === 'schemas') { <del> const schemaModel = this.getSchemaModel(uri); if (schemaModel) { return Promise.resolve(schemaModel); } </del> <ins> return this.getSchemaModel(uri); </ins> } <del> return Promise.resolve(this.preferencesService.resolveModel(uri)); </del> <ins> return this.preferencesService.resolveModel(uri); </ins> } }); } <del> private getSchemaModel(uri: URI): ITextModel | null { let schema = schemaRegistry.getSchemaContributions().schemas[uri.toString()]; if (schema) { const modelContent = JSON.stringify(schema); const languageSelection = this.languageService.createById('jsonc'); const model = this.modelService.createModel(modelContent, languageSelection, uri); const disposables = new DisposableStore(); disposables.add(schemaRegistry.onDidChangeSchema(schemaUri => { if (schemaUri === uri.toString()) { schema = schemaRegistry.getSchemaContributions().schemas[uri.toString()]; model.setValue(JSON.stringify(schema)); } })); disposables.add(model.onWillDispose(() => disposables.dispose())); return model; } return null; </del> <ins> private getSchemaModel(uri: URI): ITextModel { let schema = schemaRegistry.getSchemaContributions().schemas[uri.toString()] ?? {} /* Use empty schema if not yet registered */; const modelContent = JSON.stringify(schema); const languageSelection = this.languageService.createById('jsonc'); const model = this.modelService.createModel(modelContent, languageSelection, uri); const disposables = new DisposableStore(); disposables.add(schemaRegistry.onDidChangeSchema(schemaUri => { if (schemaUri === uri.toString()) { schema = schemaRegistry.getSchemaContributions().schemas[uri.toString()]; model.setValue(JSON.stringify(schema)); } })); disposables.add(model.onWillDispose(() => disposables.dispose())); return model; </ins> } dispose(): void {

Type: <bBug</bI got the following error randomly while changing workspace settings. I used the extension bisect feature to see if it was an extension, but nothing was identified on the very first pass. The issue continued to persist, until Visual Studio Code was reloaded. Here's the message that appeared in the problem pane: Problems loading reference 'vscode://schemas/settings/workspace': Unable to load schema from 'vscode://schemas/settings/workspace': cannot open vscode://schemas/settings/workspace. Detail: Unable to resolve text model content for resource vscode://schemas/settings/workspace. I found a similar issue regarding multi-root workspaces on github: My workspace has multiple folders. I only edited the workspace settings and I never touched the folder settings for the workspace. I did made some recent adjustments by installing/uninstalling extensions, switching profiles, and editing workspace settings. VS Code version: Code - Insiders 1.77.0-insider (, 2023-03-14T05:23:49.668Z) OS version: WindowsNT x64 10.0. Modes: Sandboxed: Yes <details<summarySystem Info</summary </details<details<summaryExtensions (11)</summaryExtensionVersion ------ Ionide-fsharp7.5.1 csharp1.25.4 dotnet-interactive-vscode1.0. vscode-dotnet-pack1.0.12 python2023.4.1 vscode-pylance2023.3.20 jupyter2023.3. jupyter-keymap1.1.0 jupyter-renderers1.0.15 vscode-jupyter-cell-tags0.1.6 vscode-jupyter-slideshow0.1.5 </details<details<summaryA/B Experiments</summary</details<!-- generated by issue reporter --
This is probably caused by of the schema (and others) It would be better to register the schema immediately but empty, and to set it later again with content.
Can this be at least workarounded somehow? It's very irritating - I cant edit any workspace settings
I'm sure a hotfix will release the fix to all of us soon, but here's a workaround for now: I found that poking any settings key in restores proper autocomplete/hover in VSCode's until next VSCode restart. But a key must be poked after every restart.


Question: private start(): void { this.textModelResolverService.registerTextModelContentProvider('vscode', { <del> provideTextContent: (uri: URI): Promise<ITextModel | null> | null => { </del> <ins> provideTextContent: async (uri: URI): Promise<ITextModel | null> => { </ins> if (uri.scheme !== 'vscode') { return null; } if (uri.authority === 'schemas') { <del> const schemaModel = this.getSchemaModel(uri); if (schemaModel) { return Promise.resolve(schemaModel); } </del> <ins> return this.getSchemaModel(uri); </ins> } <del> return Promise.resolve(this.preferencesService.resolveModel(uri)); </del> <ins> return this.preferencesService.resolveModel(uri); </ins> } }); } <del> private getSchemaModel(uri: URI): ITextModel | null { let schema = schemaRegistry.getSchemaContributions().schemas[uri.toString()]; if (schema) { const modelContent = JSON.stringify(schema); const languageSelection = this.languageService.createById('jsonc'); const model = this.modelService.createModel(modelContent, languageSelection, uri); const disposables = new DisposableStore(); disposables.add(schemaRegistry.onDidChangeSchema(schemaUri => { if (schemaUri === uri.toString()) { schema = schemaRegistry.getSchemaContributions().schemas[uri.toString()]; model.setValue(JSON.stringify(schema)); } })); disposables.add(model.onWillDispose(() => disposables.dispose())); return model; } return null; </del> <ins> private getSchemaModel(uri: URI): ITextModel { let schema = schemaRegistry.getSchemaContributions().schemas[uri.toString()] ?? {} /* Use empty schema if not yet registered */; const modelContent = JSON.stringify(schema); const languageSelection = this.languageService.createById('jsonc'); const model = this.modelService.createModel(modelContent, languageSelection, uri); const disposables = new DisposableStore(); disposables.add(schemaRegistry.onDidChangeSchema(schemaUri => { if (schemaUri === uri.toString()) { schema = schemaRegistry.getSchemaContributions().schemas[uri.toString()]; model.setValue(JSON.stringify(schema)); } })); disposables.add(model.onWillDispose(() => disposables.dispose())); return model; </ins> } dispose(): void {

For example, put at the top of your and save the file. You will have to toggle and save this key every time you start VSCode. A detailed set of steps for doing this can be inspected at the end of this comment. If you use the VSCode extension , you can set up a hotfix keybind (like in this case), and press the keybind twice every time you restart VSCode. Or, just never restart VSCode until the patch drops! <details<summarydetails</summary<pI can confirm that setting allows hover hints and completion to function again, e.g. in VSCode's own modification. However, this workaround throws out all JSON linting and reporting in the "Problems" pane, so it's sort of the nuclear option. This issue just cropped up for me in the past few days, so it may be a regression associated with the latest release? After further investigation, I find that poking any settings key in restores proper autocomplete/hover in VSCode's until next VSCode restart. But a key must be poked after every restart. Here's a rundown: all tree of settings keys are initially at their defaults, e.g. none of these keys are explicitly specified in any of your (maybe unnecessary, but this is my starting state). VSCode (e.g. with ). Navigate to your user . The following warning presents in the Problems pane: a trivial setting modification in the tree of settings keys, even if that modification is a no-op, like explicitly specifying a default as its default value. For example, put at the top of your and save the file. (You could've also poked to be either or I think, maybe?) whether autocomplete/hover works properly in , completing settings names and such. It should work now. can even remove the edit you made in step (4), save again, and autocomplete/hover still works. VSCode. autocomplete/hover is broken again in , until some modification to the tree of settings keys is made again, like in step 4. For example, commenting out if it's there, and saving, restores autocomplete/hover.


Question: private start(): void { this.textModelResolverService.registerTextModelContentProvider('vscode', { <del> provideTextContent: (uri: URI): Promise<ITextModel | null> | null => { </del> <ins> provideTextContent: async (uri: URI): Promise<ITextModel | null> => { </ins> if (uri.scheme !== 'vscode') { return null; } if (uri.authority === 'schemas') { <del> const schemaModel = this.getSchemaModel(uri); if (schemaModel) { return Promise.resolve(schemaModel); } </del> <ins> return this.getSchemaModel(uri); </ins> } <del> return Promise.resolve(this.preferencesService.resolveModel(uri)); </del> <ins> return this.preferencesService.resolveModel(uri); </ins> } }); } <del> private getSchemaModel(uri: URI): ITextModel | null { let schema = schemaRegistry.getSchemaContributions().schemas[uri.toString()]; if (schema) { const modelContent = JSON.stringify(schema); const languageSelection = this.languageService.createById('jsonc'); const model = this.modelService.createModel(modelContent, languageSelection, uri); const disposables = new DisposableStore(); disposables.add(schemaRegistry.onDidChangeSchema(schemaUri => { if (schemaUri === uri.toString()) { schema = schemaRegistry.getSchemaContributions().schemas[uri.toString()]; model.setValue(JSON.stringify(schema)); } })); disposables.add(model.onWillDispose(() => disposables.dispose())); return model; } return null; </del> <ins> private getSchemaModel(uri: URI): ITextModel { let schema = schemaRegistry.getSchemaContributions().schemas[uri.toString()] ?? {} /* Use empty schema if not yet registered */; const modelContent = JSON.stringify(schema); const languageSelection = this.languageService.createById('jsonc'); const model = this.modelService.createModel(modelContent, languageSelection, uri); const disposables = new DisposableStore(); disposables.add(schemaRegistry.onDidChangeSchema(schemaUri => { if (schemaUri === uri.toString()) { schema = schemaRegistry.getSchemaContributions().schemas[uri.toString()]; model.setValue(JSON.stringify(schema)); } })); disposables.add(model.onWillDispose(() => disposables.dispose())); return model; </ins> } dispose(): void {

So this issue may have to do with unstable startup behavior of JSON schema handling, perhaps isolated to VSCode's own or perhaps all JSON schemas more broadly, and this unstable state can be temporarily fixed by poking a settings key, but the unstable behavior returns on the next program start. At least in my case. </p</details
I have encountered a similar error: So nothing I do in my file has any effect. Not only that, but when I type "" into the Settings search bar, the only thing that comes up is a reference to a file under .
In my case I think I found the culprit: The property above gives a "Value is not accepted" error even though it's a valid value that works when the is enabled (it's currently disabled). As soon as I delete this property, the "Unable to load schema" error goes away. Weird. Update: I spoke too soon -- after reloading VS Code, the "Unable to load schema" error is back
A few days/restarts later, and the error is gone. Looks like a Heisenbug.
For me the problem message appears in a typescript node project when I have open. Close this file and the problem message goes away. (The file contains no known issues). While others report either user or workspace settings reference loading problems, for me it is configurationDefaults:
is there any update on it? it's very frustrating and I don't see a reliable 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!
I still see this <img width="1619" alt="image" src=""Repro: a syntax error in , which will result in some setting's value being "changed" that forces restart of vscode dialog to restart vscode shows up, click on "Restart" restarted vscode will likely have this error
I cannot reproduce this, are you seeing this consistently?


Question: private start(): void { this.textModelResolverService.registerTextModelContentProvider('vscode', { <del> provideTextContent: (uri: URI): Promise<ITextModel | null> | null => { </del> <ins> provideTextContent: async (uri: URI): Promise<ITextModel | null> => { </ins> if (uri.scheme !== 'vscode') { return null; } if (uri.authority === 'schemas') { <del> const schemaModel = this.getSchemaModel(uri); if (schemaModel) { return Promise.resolve(schemaModel); } </del> <ins> return this.getSchemaModel(uri); </ins> } <del> return Promise.resolve(this.preferencesService.resolveModel(uri)); </del> <ins> return this.preferencesService.resolveModel(uri); </ins> } }); } <del> private getSchemaModel(uri: URI): ITextModel | null { let schema = schemaRegistry.getSchemaContributions().schemas[uri.toString()]; if (schema) { const modelContent = JSON.stringify(schema); const languageSelection = this.languageService.createById('jsonc'); const model = this.modelService.createModel(modelContent, languageSelection, uri); const disposables = new DisposableStore(); disposables.add(schemaRegistry.onDidChangeSchema(schemaUri => { if (schemaUri === uri.toString()) { schema = schemaRegistry.getSchemaContributions().schemas[uri.toString()]; model.setValue(JSON.stringify(schema)); } })); disposables.add(model.onWillDispose(() => disposables.dispose())); return model; } return null; </del> <ins> private getSchemaModel(uri: URI): ITextModel { let schema = schemaRegistry.getSchemaContributions().schemas[uri.toString()] ?? {} /* Use empty schema if not yet registered */; const modelContent = JSON.stringify(schema); const languageSelection = this.languageService.createById('jsonc'); const model = this.modelService.createModel(modelContent, languageSelection, uri); const disposables = new DisposableStore(); disposables.add(schemaRegistry.onDidChangeSchema(schemaUri => { if (schemaUri === uri.toString()) { schema = schemaRegistry.getSchemaContributions().schemas[uri.toString()]; model.setValue(JSON.stringify(schema)); } })); disposables.add(model.onWillDispose(() => disposables.dispose())); return model; </ins> } dispose(): void {

I can't repro deterministically, but I feel like it has to do with loading/reloading the window
Can others subscribed to this issue, please try our latest insiders and let us know if you still see the issue?
/verified
I confirm this is fixed in (tested under Ubuntu 22), and without the need for .
I just upgraded to the regular version and it also seems to be fixed there as expected ^^.
Can U confirm it is now fixed in version 1.80.0 and close the issue ?
The message is still there for me in 1.80.0.
Thanks for confirmation. I will close this as fixed and verified. Please reopen a new issue if you are still seeing it (may be new) with steps to repro.
For me the message showed up in 1.80.0
For me too
Currently experiencing this issue. I can overcome it temporarily following a suggestion elsewhere where I add or remove "": true to my file. I keep adjusting the file to see if there is something in there ausing the issue. Even old, known settings are causing the error to kick in regularly. I put a single setting in there and the error comes up unless it's empty Version: 1.80.0 (user setup) Commit: Date: 2023-07-04T15:06:02.407Z (1 wk ago) Electron: 22.3.14 ElectronBuildId: Chromium: 108.0.5359.215 16.17.1 V8: 10.8.168.25-electron.0 OS: Windows_NT x64 10.0.
Currently experiencing the issue on my linux machine. On my Windows machine (with the same configuration file, since it's synchronized) it works fine on stable, but not on insiders. Can confirm that toggling as a workaround works until restart.


Question: private start(): void { this.textModelResolverService.registerTextModelContentProvider('vscode', { <del> provideTextContent: (uri: URI): Promise<ITextModel | null> | null => { </del> <ins> provideTextContent: async (uri: URI): Promise<ITextModel | null> => { </ins> if (uri.scheme !== 'vscode') { return null; } if (uri.authority === 'schemas') { <del> const schemaModel = this.getSchemaModel(uri); if (schemaModel) { return Promise.resolve(schemaModel); } </del> <ins> return this.getSchemaModel(uri); </ins> } <del> return Promise.resolve(this.preferencesService.resolveModel(uri)); </del> <ins> return this.preferencesService.resolveModel(uri); </ins> } }); } <del> private getSchemaModel(uri: URI): ITextModel | null { let schema = schemaRegistry.getSchemaContributions().schemas[uri.toString()]; if (schema) { const modelContent = JSON.stringify(schema); const languageSelection = this.languageService.createById('jsonc'); const model = this.modelService.createModel(modelContent, languageSelection, uri); const disposables = new DisposableStore(); disposables.add(schemaRegistry.onDidChangeSchema(schemaUri => { if (schemaUri === uri.toString()) { schema = schemaRegistry.getSchemaContributions().schemas[uri.toString()]; model.setValue(JSON.stringify(schema)); } })); disposables.add(model.onWillDispose(() => disposables.dispose())); return model; } return null; </del> <ins> private getSchemaModel(uri: URI): ITextModel { let schema = schemaRegistry.getSchemaContributions().schemas[uri.toString()] ?? {} /* Use empty schema if not yet registered */; const modelContent = JSON.stringify(schema); const languageSelection = this.languageService.createById('jsonc'); const model = this.modelService.createModel(modelContent, languageSelection, uri); const disposables = new DisposableStore(); disposables.add(schemaRegistry.onDidChangeSchema(schemaUri => { if (schemaUri === uri.toString()) { schema = schemaRegistry.getSchemaContributions().schemas[uri.toString()]; model.setValue(JSON.stringify(schema)); } })); disposables.add(model.onWillDispose(() => disposables.dispose())); return model; </ins> } dispose(): void {

Linux version: Version: 1.80.0 Commit: Date: 2023-07-04T13:39:48.236Z (1 wk ago) Browser: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Code/1.80.0 Chrome/108.0.5359.215 Electron/22.3.14 Safari/537.36 Windows version (stable): Version: 1.80.0 Commit: Date: 2023-07-04T15:06:02.407Z (1 wk ago) Browser: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Code/1.80.0 Chrome/108.0.5359.215 Electron/22.3.14 Safari/537.36 Windows version (insiders): Version: 1.81.0-insider Commit: Date: 2023-07-13T05:33:32.822Z (2 hrs ago) Browser: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Code-Insiders/1.81.0-insider Chrome/108.0.5359.215 Electron/22.3.14 Safari/537.36
Reopening this because it can be still reproduced.
I am getting this error and I can't figure out how to fix it.
Please try our and see if you are still seeing it
Currently seeing this while in a file on GitHub Codespaces, in the following form:
Can you please try insiders and see if you are still seeing this?
I still saw this issue when opening on: Version: 1.80.1 (user setup) 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 OS: Windows_NT x64 10.0.
As I mentioned, this was in GitHub Codespaces. I can't change the version of VS Code they serve to the browser.


Question: private start(): void { this.textModelResolverService.registerTextModelContentProvider('vscode', { <del> provideTextContent: (uri: URI): Promise<ITextModel | null> | null => { </del> <ins> provideTextContent: async (uri: URI): Promise<ITextModel | null> => { </ins> if (uri.scheme !== 'vscode') { return null; } if (uri.authority === 'schemas') { <del> const schemaModel = this.getSchemaModel(uri); if (schemaModel) { return Promise.resolve(schemaModel); } </del> <ins> return this.getSchemaModel(uri); </ins> } <del> return Promise.resolve(this.preferencesService.resolveModel(uri)); </del> <ins> return this.preferencesService.resolveModel(uri); </ins> } }); } <del> private getSchemaModel(uri: URI): ITextModel | null { let schema = schemaRegistry.getSchemaContributions().schemas[uri.toString()]; if (schema) { const modelContent = JSON.stringify(schema); const languageSelection = this.languageService.createById('jsonc'); const model = this.modelService.createModel(modelContent, languageSelection, uri); const disposables = new DisposableStore(); disposables.add(schemaRegistry.onDidChangeSchema(schemaUri => { if (schemaUri === uri.toString()) { schema = schemaRegistry.getSchemaContributions().schemas[uri.toString()]; model.setValue(JSON.stringify(schema)); } })); disposables.add(model.onWillDispose(() => disposables.dispose())); return model; } return null; </del> <ins> private getSchemaModel(uri: URI): ITextModel { let schema = schemaRegistry.getSchemaContributions().schemas[uri.toString()] ?? {} /* Use empty schema if not yet registered */; const modelContent = JSON.stringify(schema); const languageSelection = this.languageService.createById('jsonc'); const model = this.modelService.createModel(modelContent, languageSelection, uri); const disposables = new DisposableStore(); disposables.add(schemaRegistry.onDidChangeSchema(schemaUri => { if (schemaUri === uri.toString()) { schema = schemaRegistry.getSchemaContributions().schemas[uri.toString()]; model.setValue(JSON.stringify(schema)); } })); disposables.add(model.onWillDispose(() => disposables.dispose())); return model; </ins> } dispose(): void {

There should be an action Switch to Insiders... in the settings gear icon in the bottom left corner, do you have that?
uninstalled installed all extensions, including- C# v2.0.328, autopep8 -for python, ctrl+shift+p - selected -format this document with - seleceted C#- All things worked again.


Question: } if (runSource === TaskRunSource.User) { const workspaceTasks = await this.getWorkspaceTasks(); <del> RunAutomaticTasks.promptForPermission(this, this._storageService, this._notificationService, this._workspaceTrustManagementService, this._openerService, this._configurationService, workspaceTasks); </del> <ins> RunAutomaticTasks.runWithPermission(this, this._storageService, this._notificationService, this._workspaceTrustManagementService, this._openerService, this._configurationService, workspaceTasks); </ins> } return executeTaskResult; } catch (error) {

Type: <bBug</bVSCode, create a folder named, for instance, "XXXX". that folder create another called .vscode .vscode create a file named with this content: VSCode sure the setting "task.allowAutomaticTasks" is not set or is set to its defautl value "auto". "XXXX" with VSCode. VSCode will run "echo Hello" without asking you whether you want to run tasks configured with "runOn": "folderOpen" or not. VS Code version: Code 1.70.2 (, 2022-08-16T05:35:13.448Z) OS version: WindowsNT x64 10.0. Modes: <details<summarySystem Info</summary </details<details<summaryA/B Experiments</summary</details<!-- generated by issue reporter --
This happens because you have presumably opened a trusted workspace - which is now when we allow these to be run if the setting is "auto" for allow automatic task
The described behavior is how it is expected to work. If you disagree, please explain what is expected and what is not in more detail. See also our . Happy Coding!
! If I understood it correctly, the popup that supposedly asks you whether you want to run these tasks is not actually meant to appear ever because if the workspace is trusted it will be executed without asking you and if it is not trusted then it will just not exeute them instead of asking you. Doesn't it look kinda pointless to have in the description of the option of the configuration "Prompt for permission for each folder"? You are never prompted anyways.
I this configuration and I am still not prompted anyways:
No I did not. Please next time ask the user if he did X before assuming it and closing the issue. I tried reproducing the problem with and without a trusted workspace and the problem persists anyways.
i'll investigate this that shouldn't happen
Tasks will only run in trusted workspaces, so I will update the setting description to indicate that. Also need to fix the prompt not happening per folder.


Question: this._hoverSettings = { enabled: hoverOpts.enabled, sticky: hoverOpts.sticky, <del> hidingDelay: hoverOpts.delay </del> <ins> hidingDelay: hoverOpts.hidingDelay </ins> }; if (hoverOpts.enabled) {

Type: <bBug</bSince the upgrade to 1.91.1, the tooltips/popups (that show function documentation on mouseover, for example) have become a hinder, because they seem to get sticky, being in the way when I want to select/click something on the lines that the tooltip/popup is overlaying. I'm not 100% sure how to explain this, or what exactly changed, but I know this wasn't a problem in the version before. Something definitely changed in version 1.91.1. I'm not sure if it's because they're appearing faster, or taking longer to disappear, or... Thank you! VS Code version: Code 1.91.1 (, 2024-07-09T22:06:49.809Z) OS version: WindowsNT x64 10.0. Modes: <details<summarySystem Info</summary </details<details<summaryExtensions (13)</summaryExtensionVersion ------ better-comments3.0.2 vscode-intelephense-client1.10.4 path-intellisense2.9.0 vscode-eslint3.0.10 gitlens15.2.0 prettier-vscode10.4.0 duplicate1.0.2 vscode-github-actions0.26.3 php-cs-fixer0.3.13 vscode-phpunit3.2.2 vscodeintellicode1.3.1 php-sniffer1.3.0 php-debug1.34.0 </details<!-- generated by issue reporter --
Hi the editor hover has not been fundamentally changed last iteration. Last iteration I have refactored the editor hover code so this could be the source of the new issue you are seeing. For me to understand better the situation, next time you see the issue you described, could you post a screen recording here and an example of the code where you are seeing the issue?
Thank you. I cannot show much of the code, but here's a short video which I hope helps. (I tried to "exaggerate/force" a bit, but it should show what I mean) These editor hovers have been annoying me all day, since the update. They just keep being in the way. In previous versions, wasn't the hover disappearing when the mouse leaves the tooltip? Or when the user is selecting text? Thanks.


Question: this._hoverSettings = { enabled: hoverOpts.enabled, sticky: hoverOpts.sticky, <del> hidingDelay: hoverOpts.delay </del> <ins> hidingDelay: hoverOpts.hidingDelay </ins> }; if (hoverOpts.enabled) {

[video removed, for privacy]
What version were you previously on?
Hi the hover should still disappear if you keep your mouse outside of the hover for long enough. Perhaps you could change the value of the setting . This setting controls how quickly the hover disappears. The default is 300 ms, meaning that after 300 ms outside of the hover it disappears. Similarly you could tweak the setting - this setting controls how quickly the hover shows, ie how long the cursor needs to be on a word before the hover is shown.
I believe I was on 1.91.0, but maybe I didn't use it enough between upgrading to that one, and 1.91.1, to find this issue. Before that, I was on last month's iteration, which definitely didn't have this problem. Thank you. I was going to change that option, and then I saw a hint about having to be enabled. So, what I did is I actually disabled that one. Seems to have improved a bit. It seems to be still remaining sticky if I do put the mouse over it, so I'm not sure what exactly that option does (its description says the hover will remain visible when mouse is moved over it), but somehow, disabling this option makes the hover disappear if I move the mouse outside the code that triggered the hover, which is similar to the behavior I had before, I think. And if I click on the hover, it remains sticky, which is good/expected. Great. I changed from 300 to 600, so it doesn't appear so quickly. Thank you for the tips. I think there's still one question left -- what about when I'm selecting text (like shown in the video above) ? Wasn't the hover supposed to disappear, once I'm selecting text, and therefore the user is not interested in having a hover in the way of the selection? :) Many thanks, again!
Hi thank you for the comment. I believe the way the editor hover works is that when you click outside of the hover, the hover disappears. Meaning when you start a selection it disappears. However as you move the cursor to expand the selection and hover on a word the hover can appear again. Perhaps we could make the hover never appear when a selection is under way, I will open an issue about it and let the community put votes on it.


Question: this._hoverSettings = { enabled: hoverOpts.enabled, sticky: hoverOpts.sticky, <del> hidingDelay: hoverOpts.delay </del> <ins> hidingDelay: hoverOpts.hidingDelay </ins> }; if (hoverOpts.enabled) {

I am having an issue with this as well since updating versions. I attached some images. attempting to drag selected text into the object ! once selected tooltip stays in place permanently blocking destination ! I think once you hold down left click on a selection to start moving, the tooltip should always disappear. At least that is the behavior that you would expect in most applications.
+1 to this, also experiencing the same issue after updating versions
Also having this issue. The Hover Hide Delay is using the Hover Delay instead, so if you have a long delay before the tooltip appears, you will have a long delay before it disappears. If you set the Hover Delay to 0 and the Hover Hide Delay to 1000, should see the tooltip appear and disappear instantly
I have noticed and issue when using VS Code, in which the clicking outside of a tooltip will no longer dismiss hover tooltips. This occurs after leaving VS Code open for a while, including after a sleep/hibernate cycle. When this happens I have to restart VS Code, otherwise, clicking anywhere, including to initiate text selection does not dismiss any existing tooltip and the tool tip then interferes with the selection process. Perhaps there is a bug that is causing the described tooltip/click behavior to break after leaving VS Code open for some time. It might be related to this issue of tooltips being more sticky than intended. Version: 1.92.1 (user setup) Commit: Date: 2024-08-07T20:16:39.455Z Electron: 30.1.2 ElectronBuildId: Chromium: 124.0.6367.243 20.14.0 V8: 12.4.254.20-electron.0 OS: Windows_NT x64 10.0.
Looked through the code a bit, and I think this is the issue this.hoverSettings = { enabled: hoverOpts.enabled, sticky: , hidingDelay: }; should be this.hoverSettings = { enabled: hoverOpts.enabled, sticky: , hidingDelay: hoverOpts.hidingDelay }; in and
supports your theory.
Hi thanks a lot for finding this error in the code. If you would like you can make a PR containing this finding, so we can merge your fix and you can participate as a community member in the project. If not I will make the fix that you mention :). Thanks for the catch.


Question: this._hoverSettings = { enabled: hoverOpts.enabled, sticky: hoverOpts.sticky, <del> hidingDelay: hoverOpts.delay </del> <ins> hidingDelay: hoverOpts.hidingDelay </ins> }; if (hoverOpts.enabled) {

If you could make the fix, that'd be great, I'm not very familiar with git
Sounds good thanks again
Hi the PR that fixes this issue is here When this is merged, you should see the correct behavior in tomorrow's insiders release or next month's stable release. Please let me know if this is not the case and you continue seeing this issue.


Question: } function substituteWithWhitespace(result: string, start: number, end: number, oldContent: string, before: string, after: string) { <del> let accumulatedWS = 0; </del> result += before; <del> for (let i = start + before.length; i < end; i++) { </del> <ins> let accumulatedWS = -before.length; // start with a negative value to account for the before string for (let i = start; i < end; i++) { </ins> const ch = oldContent[i]; if (ch === 'n' || ch === 'r') { // only write new lines, skip the whitespace

Type: <bBug</bIn the latest release syntax highlighting in html files with included JavaScript is so far off it's unusable. I have a comment (which should be green) Syntax highlighting has the the correct color. is dark blue. is green again. is a different color blue. The color choices and what parts of words are highlighted seems random. VS Code version: Code 1.71.2 (, 2022-09-14T21:07:15.900Z) OS version: Darwin arm64 21.6.0 Modes: Sandboxed: No <details<summarySystem Info</summary </details<details<summaryExtensions (105)</summaryExtensionVersion ------ html-snippets0.2.1 vscode-languagetool3.8.0 vscode-languagetool-en3.8.0 vscode-icalendar1.0.1 vscode-color0.4.5 code-gnu-global0.2.2 simple-react-snippets1.2.7 vscode-reveal-hugo0.2.5 doxdocgen1.4.0 vscode-postgresql-client25.7.11 vscode-mac-color-picker1.1.0 vscode-eslint2.2.6 vscode-instant-markdown1.4.7 vscode-springboot-snippets1.2.0 xml2.5.1 rust-syntax0.6.1 vscode-html-css1.13.1 EditorConfig0.16.4 vscode-npm-script0.3.28 esp-idf-extension1.5.0 vscode-diff1.4.2 markdown-table-formatter2.2.4 change-case0.0.6 vs-code-http-server-and-html-preview2.2.2 copilot1.47.6882 go0.35.2 CppSnippets0.0.15 rest-client0.25.1 flux1.0.4 mediawiki0.0.4 tablegenerator1.0.4 better-cpp-syntax1.15.19 react-component1.1.0 vscode-hacker-typer0.1.1 diff-tool0.0.1 hugo-shortcode-syntax1.0.0 vscode-github0.30.7 cortex-debug1.6.5 vscode-language-babel0.0.36 vscode-clang0.2.4 vscode-http-client0.34.0 prettify-json0.0.


Question: } function substituteWithWhitespace(result: string, start: number, end: number, oldContent: string, before: string, after: string) { <del> let accumulatedWS = 0; </del> result += before; <del> for (let i = start + before.length; i < end; i++) { </del> <ins> let accumulatedWS = -before.length; // start with a negative value to account for the before string for (let i = start; i < end; i++) { </ins> const ch = oldContent[i]; if (ch === 'n' || ch === 'r') { // only write new lines, skip the whitespace

3 mongodb-vscode0.9.3 mongoose-os-ide0.6.0 vscode-docker1.22.1 csharp1.25.0 data-workspace-vscode0.3.0 mssql1.16.0 sql-bindings-vscode0.3.0 sql-database-projects-vscode0.19.0 python2022.14.0 vscode-pylance2022.9.40 jupyter2022.8. jupyter-keymap1.0.0 jupyter-renderers1.0.9 remote-containers0.251.0 remote-ssh0.84.0 remote-ssh-edit0.82.0 remote-wsl0.66.3 vscode-remote-extensionpack0.21.0 cmake-tools1.12.27 cpptools1.12.4 cpptools-extension-pack1.3.0 live-server0.4.1 vsliveshare-pack0.4.0 vscode-react-native1.9.3 sqltools0.25.1 sqltools-driver-pg0.3.0 vetur0.36.0 particle-vscode-core1.15.4 particle-vscode-pack1.15.4 particle-vscode-snippets1.15.4 vscode-boot-dev-pack0.1.0 vscode-concourse1.39.0 vscode-manifest-yaml1.39.0 vscode-spring-boot1.39.0 platformio-ide2.5.4 r-debugger0.4.7 java1.10.0 r2.5.3 wordcount0.1.33 bash-debug0.3.9 rust-analyzer0.3.1221 sockscode-vscode1.0.1 stackery1.1.4 spellchecker1.4.0 markdowntable0.10.2 html-preview-vscode0.2.5 cmake0.0.17 vscode-arduino0.4.12 vscode-java-debug0.44.0 vscode-java-dependency0.21.0 vscode-java-pack0.25.2 vscode-java-test0.37.1 vscode-maven0.39.0 vscode-spring-boot-dashboard0.7.1 vscode-spring-initializr0.11.0 codetour0.0.58 gistfs0.4.1 vscode-wakatime19.3.0 full-react-snippets1.4.2 vscode-java-saber0.


Question: } function substituteWithWhitespace(result: string, start: number, end: number, oldContent: string, before: string, after: string) { <del> let accumulatedWS = 0; </del> result += before; <del> for (let i = start + before.length; i < end; i++) { </del> <ins> let accumulatedWS = -before.length; // start with a negative value to account for the before string for (let i = start; i < end; i++) { </ins> const ch = oldContent[i]; if (ch === 'n' || ch === 'r') { // only write new lines, skip the whitespace

1.2 markdown-all-in-one3.4.3 vscode-aspell0.1.4 propertylist0.0.2 (2 theme extensions excluded) </details<details<summaryA/B Experiments</summary</details


Question: import { Disposable } from 'vs/base/common/lifecycle'; import { ILogger, ILoggerService, LogLevelToString } from 'vs/platform/log/common/log'; import { dirname, join } from 'vs/base/common/path'; <del> import { ChildProcess, spawn } from 'child_process'; </del> <ins> import { ChildProcess, StdioOptions, spawn } from 'child_process'; </ins> import { IProductService } from 'vs/platform/product/common/productService'; import { isMacintosh, isWindows } from 'vs/base/common/platform'; import { CancelablePromise, createCancelablePromise, Delayer } from 'vs/base/common/async';

Version: 1.78.0-insider (user setup) Commit: Date: 2023-04-04T09:32:52.453Z Electron: 22.4.3 Chromium: 108.0.5359.215 16.17.1 V8: 10.8.168.25-electron.0 OS: Windows_NT x64 10.0. Sandboxed: Yes run from a Windows command prompt The tunnel starts and prints open VS Code, and open the output Note that the output is stuck at Missing are the message and the info that the tunnel is attached The UI thinks the tunnel is still connecting. Sometimes this also works, but when I try it, most of the time it is stuck
Can you please enable trace logging and share the output?
Nothing extra messages shown when the Desktop tunnel attaches:
This issue has been closed automatically because it needs more information and has not had recent activity. See also our guidelines. Happy Coding!
Still a problem in Version: 1.78.0-insider (user setup) Commit: Date: 2023-04-12T05:19:38.288Z Reproduces every time I try it
This issue has been closed automatically because it needs more information and has not had recent activity. See also our guidelines. Happy Coding!


Question: primary: KeyCode.Escape, secondary: [KeyMod.Shift | KeyCode.Escape] } })); <ins> class ToggleScreenReaderMode extends Action2 { constructor() { super({ id: 'editor.action.toggleScreenReaderAccessibilityMode', title: { value: nls.localize('toggleScreenReaderMode', "Toggle Screen Reader Accessibility Mode"), original: 'Toggle Screen Reader Accessibility Mode' }, f1: true, }); } async run(accessor: ServicesAccessor): Promise<void> { const configurationService = accessor.get(IConfigurationService); const value = configurationService.getValue('editor.accessibilitySupport'); configurationService.updateValue('editor.accessibilitySupport', value === 'on' ? 'off' : 'on'); } } registerAction2(ToggleScreenReaderMode); </ins>

I got into screen reader optimized mode on Windows by using NVDA, but after closing NVDA, I don't know how to leave that mode. I tried clicking on the indicator in the taskbar, and also tried searching "accessibility" in the command palette for a command that would toggle it off. !
clicking on the indicator in the taskbar should work we should also have a toggle command in the command palette so that clicking isn't required and can reference that command in this help menu !
fyi for any input
Agree with the above. Also on vscode restart you should no longer be in screen reader mode if that is happening, it is a bug. take into account that the accessibility help dialog shown in the screenshot has not been polished since we introduced it. We could make sure the text is more concise and user friendly. Visually it should not be polished since this is targeted for screen reader users.
Try to set a custom keybinding for this command - I find it very handy
How do I get that status bar entry to show? I tried the following: Turn on NVDA when Manually set `"editor.accessibilitySupport": "on"
This command should work !
That still doesn't cause the status bar entry to show for me. I've checked the status bar show/hide menu and it's not in there either.
any interesting settings? https://user-
I was about to say I have the same issue, but then noticed that I had to go to a text editor to test out the feature. I was running the toggle command in the Settings editor.
Not being in a text editor was the problem! I was either in the settings editor or the endgame notebook.


Question: getId() { return languageId; }, <del> doValidation(document: TextDocument): Diagnostic[] { </del> <ins> doValidation(document: TextDocument, settings = workspace.settings): Diagnostic[] { </ins> updateCurrentTextDocument(document); <ins> host.getCompilationSettings()['experimentalDecorators'] = settings && settings.javascript && settings.javascript.implicitProjectConfig.experimentalDecorators; </ins> const syntaxDiagnostics: ts.Diagnostic[] = jsLanguageService.getSyntacticDiagnostics(workingFile); const semanticDiagnostics = jsLanguageService.getSemanticDiagnostics(workingFile); return syntaxDiagnostics.concat(semanticDiagnostics).map((diag: ts.Diagnostic): Diagnostic => {

<!-- Please read our Rules of Conduct: --<!-- Please search existing issues to avoid creating duplicates. --<!-- Also please test using the latest insiders build to make sure your issue has not already been fixed: --<!-- Use Help Report Issue to prefill these. --- VSCode Version: 1.43.0 OS Version: n/a I have the set to in my settings: Given a Does not produce any warnings as expected. However in : The linter says
This has the same root cause as : script are owned by the html extension instead of by the JavaScript extension. Fixing that is difficult However we could have a small fix that just makes html understand the setting. Marking this as help-wanted
Hello I'd like to try my hands on fixing this issue. Can you give some pointers as to which files are good places to start?
This change will need to be made in the HTML extension Here's where we configure TypeScript for the html extension: You should: Pass the value for in with the initial configuration Make sure that the language service updates its value for when the VS Code setting changes
Is there another way to get the setting value other than vscode.workspace.getConfiguration()? The 'vscode' module cannot be found when I try to import it into javascriptMode. I think 'vscode' would have to be as a dependency in in order to import 'vscode'.
Right now I'm passing in a default 'false' for experimentalDecorators in the initial configuration and passing the settings into getJavascriptMode.doValidation to update compilerOptions and calling ts.createLanguageService(host) every time doValidation is invoked. It has the expected behavior, but is there a better way to update the compiler options without creating the service every time it runs validation?
Is called when the file is changed? If it is, try updating the object that it returns
I am reproducing this error now with the following code: I realize this is known, but I will add the mention with respect to . Here is the relevant docs page, if a person wanted to make a unit test using If anyone finds this in the future, if is set in , it should suppress this error. Additionally, both and files, in the root of the project, take precedence over that setting.


Question: // Create and show quick pick const pick = this._quickInputService.createQuickPick<IQuickPickItem | ITerminalLinkQuickPickItem>({ useSeparators: true }); <ins> const disposables = new DisposableStore(); disposables.add(pick); </ins> pick.items = picks; pick.placeholder = localize('terminal.integrated.openDetectedLink', "Select the link to open, type to filter all links"); pick.sortByLabel = false;

Quick pick and events are disposables: is a listeners are : , , , , , A few instances of pickers or events not being disposed or registered as disposable: [x] [x] [x] [x] [x] [x] [x] [x] [x] [x] [x] [x] //cc
Thanks for catching these just taught me that there's a better way to use the quick pick API - with and that will avoid this
Interesting, curious to see how that change looks like, I have a lot more places:


Question: description: 'content-hover-highlight', className: 'hoverHighlight' }); <ins> public static computeHoverRanges(anchorRange: Range, messages: IHoverPart[]) { // The anchor range is always on a single line const anchorLineNumber = anchorRange.startLineNumber; let renderStartColumn = anchorRange.startColumn; let renderEndColumn = anchorRange.endColumn; let highlightRange: Range = messages[0].range; let forceShowAtRange: Range | null = null; for (const msg of messages) { highlightRange = Range.plusRange(highlightRange, msg.range); if (msg.range.startLineNumber === anchorLineNumber && msg.range.endLineNumber === anchorLineNumber) { // this message has a range that is completely sitting on the line of the anchor renderStartColumn = Math.min(renderStartColumn, msg.range.startColumn); renderEndColumn = Math.max(renderEndColumn, msg.range.endColumn); } if (msg.forceShowAtRange) { forceShowAtRange = msg.range; } } return { showAtPosition: forceShowAtRange ? forceShowAtRange.getStartPosition() : new Position(anchorRange.startLineNumber, renderStartColumn), showAtRange: forceShowAtRange ? forceShowAtRange : new Range(anchorLineNumber, renderStartColumn, anchorLineNumber, renderEndColumn), highlightRange }; } </ins> } class ContentHoverVisibleData {

! I see this sometimes, but it often gets fixed if I try again, or close and reopen the editor, etc. Right now it keeps happening and it's just impossible to click the hover. I don't know how this API works but I assume this is on vscode's side. Happy to set breakpoints and debug
I couldn't reproduce this so I'm not sure what's the root problem. However, I'm saving here a patch which simulates a hover very similar to the one in the gif: <img width="1141" alt="image" src="https://user-"diffn- editor.focusNotebookCell(newCell, newFocusMode, { focusEditorLine: 1 });n+ await editor.focusNotebookCell(newCell, newFocusMode, { focusEditorLine: 1 });n
I tried for quite a while but couldn't repro. I think there might be some settings that cause the issue reproduce. Does this reproduce when you comment out all your user settings?
Yeah, it reproes with all settings commented out
Thanks to via we could find a repro. Reproduces consistently when hovering at the end of the line: It turns out it has to do with the range the hover provider returns. If the hover provider returns a range that spans one line above the hover request, the hover will render one line above. If the hover provider returns a range that spans two lines above the hover request, the hover will render two lines above, etc. Here's a simplified patch: https://user-
To verify, use gitlens and hover over the end of the line at
Works great but raises the question, why does gitlens return a hover with a multiline range? And I get a highlight in this region, but it blinks and disappears on line 919, and on other lines, no highlight. !
PR to improve the highlight range at
I'm still seeing the original issue at


Question: const reloadAction = this.instantiationService.createInstance(ReloadAction); const actions = [ this.instantiationService.createInstance(ExtensionStatusLabelAction), <ins> this.instantiationService.createInstance(MigrateDeprecatedExtension, true), </ins> this.instantiationService.createInstance(UpdateAction), reloadAction, this.instantiationService.createInstance(InstallDropdownAction),

a deprecated extension, for example Bracket Pair Colorizer extensions viewlet -notice how it is not very visible that the extension is deprecated. If the user wants to migrate they have to click on "configure these settings" and uninstall the extension 's solve both of these things by rendering a "Migrate" button for deprecated extensions that have alternatives The migrate button would be similar to the Update button in looks, but it would either: Install the alternative extension, uninstall the deprecated one Uninstall the deprecated extension, open settings view with the desired settings shown
I do not like Migrate button for an extension like Bracket Pair Colorizer that needs settings to configured. It felt little weird to me enabling Migrate button for this extension and opening settings editor but not applying any settings to migrate. Hence I enabled this button only for those extensions with alternate extensions <img width="1120" alt="image (2)" src="https://user-"
that makes great sense, thanks! I plan to try this out as soon as there is a new insiders out. Feel free to close this issue then :)
I just tried the latest insiders which should have your changes. However I do not see the Migrate button in the Extensions details view. Also it would be cool if the button was also in the extensions viewlet. Similar to the button. !
Its because alternate extension is already installed and migrating is just uninstalling the the deprecated extension. I thought it might be too aggressive to show in Extensions Viewlet. What if users do not want to migrate and they always see it in extensions viewlet?
you are right. When I uninstall eslint all is good and the button gets rendered in the extension details - cool! Extensions viewlet - as for users not wanting to migrate and still seeing it - I think that is fine. It is the same if you do not want to update and you always see "reload required". It is an update, it is just an update to a different extension. I do not find this too aggressive, especially since we want to push users off deprecated extensions.
Makes sense. Showing Migrate action in extensions view (without extension name) <img width="293" alt="image" src="https://user-"
Awesome, thanks! Let's see what the users says about the full flow and how it goes during endgame :)


Question: import { EditorPaneDescriptor, IEditorPaneRegistry } from 'vs/workbench/browser/editor'; import { Extensions as WorkbenchExtensions, IWorkbenchContributionsRegistry } from 'vs/workbench/common/contributions'; import { EditorExtensions, IEditorFactoryRegistry } from 'vs/workbench/common/editor'; <del> import { CompareInput1WithBaseCommand, CompareInput2WithBaseCommand, GoToNextConflict, GoToPreviousConflict, OpenBaseFile, OpenMergeEditor, SetColumnLayout, SetMixedLayout, ToggleActiveConflictInput1, ToggleActiveConflictInput2 } from 'vs/workbench/contrib/mergeEditor/browser/commands/commands'; </del> <ins> import { CompareInput1WithBaseCommand, CompareInput2WithBaseCommand, GoToNextConflict, GoToPreviousConflict, OpenBaseFile, OpenMergeEditor, OpenResultResource, SetColumnLayout, SetMixedLayout, ToggleActiveConflictInput1, ToggleActiveConflictInput2 } from 'vs/workbench/contrib/mergeEditor/browser/commands/commands'; </ins> import { MergeEditorCopyContentsToJSON, MergeEditorOpenContents } from 'vs/workbench/contrib/mergeEditor/browser/commands/devCommands'; import { MergeEditorInput } from 'vs/workbench/contrib/mergeEditor/browser/mergeEditorInput'; import { MergeEditor, MergeEditorOpenHandlerContribution } from 'vs/workbench/contrib/mergeEditor/browser/view/mergeEditor';

Same as when opening a diff editor, a merge editor should offer a way to open the regular file (not in 3 way merge mode). Same as diff editor it could use an action in the editor title area !
Let's move this to July
To verify: open a merge editor verify its title bar has a command to open the result file
I wonder if "Open Changes" button should go back to the merge editor then? !


Question: this._element.classList.add('monaco-text-button-with-short-label'); } <ins> if (typeof options.ariaLabel === 'string') { this._element.setAttribute('aria-label', options.ariaLabel); } </ins> container.appendChild(this._element); this._register(Gesture.addTarget(this._element));

Type: <bBug</bCC In inline Copilot chat, "Regenerate" button is not readable by some screen readers, such as JAWS. This is because the button is labeled with title attribute. Please add aria-label so that JAWS can recognize the label. For better communication, I have recorded a gif: ! VS Code version: Code - Insiders 1.86.0-insider (, 2023-12-20T05:36:57.756Z) OS version: WindowsNT x64 10.0. Modes: <details<summarySystem Info</summary </details<details<summaryExtensions (116)</summaryExtensionVersion ------ vscode-openapi4.19.2 android-dev-ext1.3.2 aiprm-lang0.0.2 Bookmarks13.4.2 openscad1.2.2 spellright3.0.118 zoterolatex0.4.1 mermaid-markdown-syntax-highlighting1.6.0 doxdocgen1.4.0 vscode-markdownlint0.53.0 vscode-eslint2.4.2 vscode-quick-select0.2.9 vscode-deno3.30.0 gitlens14.6.1 EditorConfig0.16.4 prettier-vscode10.1.0 vscode-firefox-debug2.9.10 shell-format7.2.5 vscode-google-translate1.4.13 codespaces1.16.5 copilot1.143.601 copilot-chat0.12. remotehub0.62.0 vscode-github-actions0.26.2 vscode-pull-request-github0.79.


Question: this._element.classList.add('monaco-text-button-with-short-label'); } <ins> if (typeof options.ariaLabel === 'string') { this._element.setAttribute('aria-label', options.ariaLabel); } </ins> container.appendChild(this._element); this._register(Gesture.addTarget(this._element));

cloudcode2.2.1 overleaf-workshop0.6.1 cslpreview0.2.2 easy-snippet0.7.5 path-autocomplete1.25.0 latex-workshop9.16.1 lilypond-syntax0.1.1 scheme0.2.0 better-cpp-syntax1.17.2 language-julia1.65.2 google-search0.0.1 vscode-lua-format1.3.8 lilypond-formatter0.2.3 lilypond-pdf-preview0.2.8 lilypond-snippets0.1.1 vslilypond1.7.3 zotero0.1.11 git-graph1.30.0 azure-dev0.8.0 vscode-azureappservice0.25.1 vscode-azurecontainerapps0.6.1 vscode-azurefunctions1.13.1 vscode-azureresourcegroups0.8.3 vscode-azurestaticwebapps0.12.2 vscode-azurestorage0.15.3 vscode-azurevirtualmachines0.6.5 vscode-cosmosdb0.20.0 vscode-docker1.28.0 vscode-edge-devtools2.1.3 black-formatter2023.7. flake82023.10.0 isort2023.11. python2023.23. vscode-pylance2023.12.101 jupyter2024.1. jupyter-keymap1.1.2 jupyter-renderers1.0.17 vscode-jupyter-cell-tags0.1.8 vscode-jupyter-slideshow0.1.5 remote-containers0.329.0 remote-ssh0.108. remote-ssh-edit0.86.0 remote-wsl0.81.8 vscode-remote-extensionpack0.25.0 azure-account0.11.6 azure-repos0.38.0 cmake-tools1.16.32 cpptools1.19.1 cpptools-extension-pack1.3.0 js-debug-nightly2023.12.1817 powershell2023.11.1 remote-explorer0.5. remote-repositories0.40.0 remote-server1.6.


Question: this._element.classList.add('monaco-text-button-with-short-label'); } <ins> if (typeof options.ariaLabel === 'string') { this._element.setAttribute('aria-label', options.ariaLabel); } </ins> container.appendChild(this._element); this._register(Gesture.addTarget(this._element));

vscode-github-issue-notebooks0.0.130 vscode-node-azure-pack1.2.0 vscode-selfhost-test-provider0.3.22 vscode-serial-monitor0.11.0 vscode-speech0.3. vsliveshare1.0.5900 windows-ai-studio0.2.1 autodocstring0.6.1 pandocciter0.10.3 shiny-python0.1.5 shinyuieditor0.5.0 quarto1.109.0 r-debugger0.5.4 java1.25.1 vscode-xml0.26.1 vscode-yaml1.14.0 r2.8.2 multi-command1.6.0 AudioQ0.0.2 vscode-deepl1.0.10 abc-music0.4.0 lua3.7.3 latex-utilities0.4.10 cmake0.0.17 vscode-terminal-here0.2.4 windows-terminal0.7.0 errorlens3.16.0 intellicode-api-usage-examples0.2.8 vscodeintellicode1.2.30 vscode-arduino0.6. vscode-java-debug0.55.0 vscode-java-dependency0.23.3 vscode-java-pack0.25.15 vscode-java-test0.40.1 vscode-maven0.43.0 markdown-all-in-one3.5.1 grammarly0.25.0 (1 theme extensions excluded) </details<details<summaryA/B Experiments</summary</details<!-- generated by issue reporter --
Thank you for the issue JooYoung. I cannot access the gif because it seems to be a private link.


Question: private onConfigurationChange(config: IConfiguration, notify: boolean): void { let changed = false; <ins> function processChanged(didChange: boolean) { changed = changed || didChange; } </ins> if (isNative) { // Titlebar style <del> if (typeof config.window?.titleBarStyle === 'string' && config.window?.titleBarStyle !== this.titleBarStyle && (config.window.titleBarStyle === 'native' || config.window.titleBarStyle === 'custom')) { this.titleBarStyle = config.window.titleBarStyle; changed = true; } </del> <ins> processChanged((config.window.titleBarStyle === 'native' || config.window.titleBarStyle === 'custom') && this.titleBarStyle.handleChange(config.window?.titleBarStyle)); </ins> // Windows: Window Controls Overlay <del> if (isWindows && typeof config.window?.experimental?.windowControlsOverlay?.enabled === 'boolean' && config.window.experimental.windowControlsOverlay.enabled !== this.windowControlsOverlayEnabled) { this.windowControlsOverlayEnabled = config.window.experimental.windowControlsOverlay.enabled; changed = true; } </del> <ins> processChanged(isWindows && this.windowControlsOverlayEnabled.handleChange(config.window?.experimental?.windowControlsOverlay?.enabled)); </ins> // Windows: Sandbox <del> if (typeof config.window?.experimental?.useSandbox === 'boolean' && config.window.experimental.useSandbox !== this.windowSandboxEnabled) { this.windowSandboxEnabled = config.window.experimental.useSandbox; changed = true; } </del> <ins> processChanged(this.windowSandboxEnabled.handleChange(config.window?.experimental?.useSandbox)); </ins> // macOS: Native tabs <del> if (isMacintosh && typeof config.window?.nativeTabs === 'boolean' && config.window.nativeTabs !== this.nativeTabs) { this.nativeTabs = config.window.nativeTabs; changed = true; } </del> <ins> processChanged(isMacintosh && this.nativeTabs.handleChange(config.window?.nativeTabs)); </ins> // macOS: Native fullscreen <del> if (isMacintosh && typeof config.window?.nativeFullScreen === 'boolean' && config.window.nativeFullScreen !== this.nativeFullScreen) { this.nativeFullScreen = config.window.nativeFullScreen; changed = true; } </del> <ins> processChanged(isMacintosh && this.nativeFullScreen.handleChange(config.window?.nativeFullScreen)); </ins> // macOS: Click through (accept first mouse) <del> if (isMacintosh && typeof config.window?.clickThroughInactive === 'boolean' && config.window.clickThroughInactive !== this.clickThroughInactive) { this.clickThroughInactive = config.window.clickThroughInactive; changed = true; } </del> <ins> processChanged(isMacintosh && this.clickThroughInactive.handleChange(config.window?.clickThroughInactive)); </ins> // Update channel <del> if (typeof config.update?.mode === 'string' && config.update.mode !== this.updateMode) { this.updateMode = config.update.mode; changed = true; } </del> <ins> processChanged(this.updateMode.handleChange(config.update?.mode)); </ins> // On linux turning on accessibility support will also pass this flag to the chrome renderer, thus a restart is required if (isLinux && typeof config.editor?.accessibilitySupport === 'string' && config.editor.accessibilitySupport !== this.accessibilitySupport) {

I think a class like this could be helpful: Usage: Originally posted by in
please let me know if you like this!
This class is primarily owned by Hence assigning to him.
Yes, feel free, I can review a PR, thanks.


Question: "cssnano": "^4.1.11", "debounce": "^1.0.0", "deemon": "^1.8.0", <del> "electron": "25.8.4", </del> <ins> "electron": "25.9.1", </ins> "eslint": "8.36.0", "eslint-plugin-header": "3.1.1", "eslint-plugin-jsdoc": "^46.5.0",

Type: <bBug</bThis issue is related to the Julia extension. I filed an issue , but I also filing it here (as suggested by As per the initial post of the above link, all extension work perfectly fine when the Julia extension is disabled. here are dmp files as per VS Code version: Code 1.79.2 (, 2023-06-14T08:57:04.379Z) OS version: WindowsNT x64 10.0. Modes: <details<summarySystem Info</summary </details<details<summaryExtensions (50)</summaryExtensionVersion ------ rainbow-brackets0.0.6 vscode-django1.10.0 python-environment-manager1.0.4 python-extension-pack1.7.0 code-runner0.12.0 copilot1.94.220 vscode-github-actions0.25.8 vscode-pull-request-github0.66.2 nbpreviewer1.2.2 language-julia1.47.2 vsc-python-indent1.18.0 vscode-github0.30.7 vscode-opn1.1.2 MagicPython1.1.0 vscode-azureappservice0.24.9 vscode-azureresourcegroups0.7.5 vscode-docker1.25.2 csharp1.26.0 isort2022.8.0 python2023.10.1 vscode-pylance2023.6.40 jupyter2023.5.


Question: "cssnano": "^4.1.11", "debounce": "^1.0.0", "deemon": "^1.8.0", <del> "electron": "25.8.4", </del> <ins> "electron": "25.9.1", </ins> "eslint": "8.36.0", "eslint-plugin-header": "3.1.1", "eslint-plugin-jsdoc": "^46.5.0",

jupyter-keymap1.1.2 jupyter-renderers1.0.15 vscode-jupyter-cell-tags0.1.8 vscode-jupyter-slideshow0.1.5 remote-containers0.295.0 remote-ssh0.102.0 remote-ssh-edit0.86.0 remote-wsl0.79.5 vscode-remote-extensionpack0.24.0 azure-account0.11.5 cmake-tools1.14.34 cpptools1.16.3 cpptools-extension-pack1.3.0 powershell2023.6.0 remote-explorer0.4.0 remote-server1.2.1 autodocstring0.6.1 r-debugger0.5.4 r2.8.1 vscode-open0.1.0 spellchecker1.4.0 python0.2.3 rmarkdown0.0.14 cmake0.0.17 vscode-counter3.2.1 intellicode-api-usage-examples0.2.7 vscodeintellicode1.2.30 jinja0.0.8 (2 theme extensions excluded) </details<details<summaryA/B Experiments</summary</details<!-- generated by issue reporter --
As mentioned in the linked issue, it happens for me as well. I can reproduce it with Insiders version too and the same happens with a few older julia-vscode extensions I tested. <details<summaryVS Code version</summary</details
There seems to be an issue with spawning a process. The symbolicated logs seem to have the same form.
I'd expect that this happens when we try to spawn the Julia process that powers the LS. Any chance we can debug this further? I assume we can't handle libuv failing to spawn a process anywhere in the extension code, right?
As asked in the I want to add that I can reproduce this as well. From the linked thread:
Sorry for the delayed response, can you please provide the output of the following steps to understand the error 1) In a terminal set the following env variable 2) Launch VSCode from the same terminal session with arguments that redirect stdout and stderr to a file as seen below, replace the file paths where appropriate Additionally, once the extension host crashes open command palette in VSCode and run and attach the output from the tab of the developer tools that got opened.


Question: "cssnano": "^4.1.11", "debounce": "^1.0.0", "deemon": "^1.8.0", <del> "electron": "25.8.4", </del> <ins> "electron": "25.9.1", </ins> "eslint": "8.36.0", "eslint-plugin-header": "3.1.1", "eslint-plugin-jsdoc": "^46.5.0",

unfortunately this is a fatal error that cannot be handled in the application layer. But we should be able to see the output of from the above logs.
I have done this, see attached.
Same here
Thanks for the logs, in both cases the launching of child process triggers a fatal error from at due to . I would like to understand if this can repro with outside VSCode since we haven't done any modification to the spawn API. I have simplified the Julia language server process spawn call from your logs into the following script, can you run it with node v18.15.0 which can be downloaded from , the steps would be 1) Save the following script to 2) Install v18.15.0 3) From terminal, run and attach the generated output
Apparrently Julia expects 8 arguments. Not sure why though.... if length(Base.ARGS) != 8 error("Invalid number of arguments passed to julia language server.") end
can you help with above error, I would like to create a minimal repro outside VSCode since this is an issue with
It seems we need additional arguments in in the .js file see or here
I two empty arguments in the file However, I have no idea if these arguments are relevant. Then things seem to work Are we expecting the server to shut down at the end? EDIT: the process only shuts down if I hit enter. If I don't press any key it keeps running and the last message is 'Received new data from Julia Symbol Server..." output is:
Thanks for fixing the test case No, I was expecting the error to show up
Can you run our bisect tool in the terminal . In each step install the Julia extension (if not present) and if the extension host terminates with the above error, mark it as bad commit. This would help us narrow down if a change from our side introduced the regression.
Looking at the above, the argument right after is In the test case, I set this argument to empty though
I think it is fine to skip the pipe name, looking at the code it is only responsible for monitory crashes from the language server.


Question: "cssnano": "^4.1.11", "debounce": "^1.0.0", "deemon": "^1.8.0", <del> "electron": "25.8.4", </del> <ins> "electron": "25.9.1", </ins> "eslint": "8.36.0", "eslint-plugin-header": "3.1.1", "eslint-plugin-jsdoc": "^46.5.0",

Only on the first run I had to open my project () install the julia extension trust the authors of the folder open a .jl file in my project
I will add that, when I run the above code the extension server fails every time except for the first time. The first time I get the ERROR below, but the Language Server seems to restart. Also it actually takes ages (maybe 2 or 3 minutes) for the LanguageServer to start. <img width="1194" alt="image" src=""
Thanks for the bisect results, can you confirm if the extension host terminates with julia extension in . Download links available at
yes. it terminates
Sorry I should have provided link to , can you try it again with this version. I am trying to confirm if Electron 22 update was the trigger.
I don't have time for this right now. Interestingly I get another error now (I am using the most recent VS Code version now 1.81.1) Not sure if this is connected though....
can you also confirm , thanks!
I can reproduce the extension host termination with VSCode 1.77.3 and julia-vscode v1.47.2.
Thanks for confirming, that eliminates the allocator changes we adopted for Electron 22 update. Refs
This issue has been closed automatically because it needs more information and has not had recent activity. See also our guidelines. Happy Coding!
Thanks for looking into this, Do you need any more info about the extension?
Might be fixed by
Once the libuve PR us merged, do I need to wait for the next minor julia release?
Thanks for sharing the fix , I will backport the fix into Electron as next step.
Steps for verification: 1) Open extension in latest stable, add the following changes 2) Debug extension, run command 3) Stop the debug session 4) Start debug extension again, run command 5) It should crash the extension host Perform steps 1-4 again in latest insiders with the fix and it should not crash.
Seems to be specific to windows, I cannot repro the crash on a Mac.
Yeah, the seems to be in the Windows kernel.
Yes बुध, 25 अक्तू॰ 2023, 11:15 pm को Sebastian Pfitzner < लिखा:


Question: this.resolve().catch(onUnexpectedError); } }); <ins> this._register(extensionService.onWillStop(e => { if (!this.isDirty()) { return; } e.veto((async () => { const editors = editorService.findEditors(this); if (editors.length > 0) { const result = await editorService.save(editors[0]); if (result.success) { return false; // Don't Veto } } return true; // Veto })(), localize('vetoExtHostRestart', "Notebook '{0}' could not be saved.", this.resource.path)); })); </ins> } override dispose() {

Testing a new notebook and make an edit profiles to restart the EH the file when prompted and provide a file name: The untitled-n.ipynb tab remains open, rather than opening , :bug: The file is no longer marked dirty, even with futher edits and can be closed without prompting to save
can you maybe check from the notebook side?
Luna paint behaves similarly with one extra step: a new image and make an edit profiles to restart the EH the file when prompted and provide a file name: The untitled-n.ipynb tab remains open, rather than opening , (different) and the switch profile operation is blocked switch profiles again The file is no longer marked dirty, even with futher edits and can be closed without prompting to save
Somehow today I cannot reproduce an issue with insiders: ! Please give me more detailed steps and see if you still find this.
still seeing it. Did you try making edits after switching? that's when the dirty indicator doesn't show up anymore. ! I saved as a different filename in the gif, but keeping the untitled filename still doesn't show a dirty indicator, nor does it auto-save.
This seems to me like something notebooks need to handle better: if you enter an extension host that does not have the notebook extension and you make edits, the editor should probably not allow that. I.e. the editor should maybe turn readonly once the extension is disabled or not present.
- the notebook extension is built-in so it's still available in an empty profile. The repro steps can even start with an empty profile -and make an edit to the first cell profile to default and save as 1.ipynb when prompted an edit in the notebook :bug: file is not dirty
oh nice, sounds like an issue related to EH restart then, will update the title With your working copy knowledge you might be even able to figure this out ;)
It looks like the issue in the notebook scenario is that it's calling save directly on the workingCopy in the : In the untitled case, that will delegate to saveAs, which will dispose the untitled workingcopy without opening a new editor with the resulting . The editor is left open with its underlying WorkingCopy disposed. For non-built-in custom editors though, it seems like we should just close them if we don't know if they will be supported in the new profile.


Question: this.resolve().catch(onUnexpectedError); } }); <ins> this._register(extensionService.onWillStop(e => { if (!this.isDirty()) { return; } e.veto((async () => { const editors = editorService.findEditors(this); if (editors.length > 0) { const result = await editorService.save(editors[0]); if (result.success) { return false; // Don't Veto } } return true; // Veto })(), localize('vetoExtHostRestart', "Notebook '{0}' could not be saved.", this.resource.path)); })); </ins> } override dispose() {

I don't see how we can expect a custom editor to support a scenario where its source extension isn't installed - is that even possible? I went over the issue with and concluded that we can defer to next release since the previous stable version also didn't handle this scenario well.
fyi I just created which is a similar issue for custom editors. Here for notebooks I suggest the following: if the EH restarts and still has the notebook extension for the opened notebooks, reconnect to the EH and allow to further make edits on the editor (I actually thought this was already implemented based on the work did) if the EH restarts and there is no more extension for the notebook editor, turn the notebook readonly and inform the user somehow Does that make sense?
The previous change just doesn't account for untitled notebooks, but I think I can fix that. That makes sense, although I'm surprised that we would require all custom editors to handle this (asked about it in the other issue)


Question: default: true, markdownDescription: nls.localize('editor.suggest.showConstructors', "When enabled IntelliSense shows `constructor`-suggestions.") }, <ins> 'editor.suggest.showDeprecated': { type: 'boolean', default: true, markdownDescription: nls.localize('editor.suggest.showDeprecated', "When enabled IntelliSense shows `deprecated`-suggestions.") }, </ins> 'editor.suggest.showFields': { type: 'boolean', default: true,

I'd like a setting to optionally prevent deprecated things from showing up in intellisense suggestions. For example, I'd like a way to prevent from being suggested here, so that I don't use it despite a non-deprecated version being available. ! My linter can catch it, but it'd be even nicer never to see the deprecated option. There are several documentation systems that use the tag: JSDoc: TSDoc: JavaDoc: Yard (for Ruby): Other systems use different, similar tags. I'm not sure if this is an issue for the VSCode core, or for something language-specific.
Sorry if this is a duplicate or is already possible. There are enough issues here and questions/answers on Stack Overflow that it's hard to be confident. This issue is related:
Not showing deprecated suggestions can be implemented by individual language extensions today (not striking out but tracks that). Adding just to see this is something we want better VS Code api support for in some way Otherwise, we can track this as a feature request for js/s
I'd say this is a dupe of and it would be us adding some API flag and then allows users to configure how the suggest UX is handling that flag
/duplicate of
Thanks for creating this issue! We figured it's covering the same as another one we already have. Thus, we closed this one as a duplicate. You can search for existing issues . See also our guidelines. Happy Coding!
Okay, that makes sense. What does "js/s" mean?
is it possible to add a setting like , so I can disable it to prevent deprecated from showing up in suggestions list?
Hey any update on that?
Verify that the setting exists and that it filters deprecated elements from IntelliSense


Question: *--------------------------------------------------------------------------------------------*/ import 'vs/css!./editorDictation'; <del> import { localize2 } from 'vs/nls'; import { IDimension, h, reset } from 'vs/base/browser/dom'; </del> <ins> import { localize, localize2 } from 'vs/nls'; import { IDimension } from 'vs/base/browser/dom'; </ins> import { CancellationTokenSource } from 'vs/base/common/cancellation'; import { Disposable, DisposableStore, MutableDisposable, toDisposable } from 'vs/base/common/lifecycle'; import { ContentWidgetPositionPreference, ICodeEditor, IContentWidget, IContentWidgetPosition } from 'vs/editor/browser/editorBrowser'; import { IEditorContribution } from 'vs/editor/common/editorCommon'; import { ContextKeyExpr, IContextKeyService, RawContextKey } from 'vs/platform/contextkey/common/contextkey'; import { HasSpeechProvider, ISpeechService, SpeechToTextStatus } from 'vs/workbench/contrib/speech/common/speechService'; <del> import { renderIcon } from 'vs/base/browser/ui/iconLabel/iconLabels'; </del> import { Codicon } from 'vs/base/common/codicons'; import { EditorOption } from 'vs/editor/common/config/editorOptions'; import { EditorAction2, EditorContributionInstantiation, registerEditorContribution } from 'vs/editor/browser/editorExtensions';

Testing My first reaction for how to stop dictation in the editor was to click the flashing microphone. It would be cool if something happened when the flashing microphone is clicked.
I will turn this into a real with action and hover.


Question: private _bufferTracker: BufferContentTracker | undefined; private _bufferProvider: TerminalAccessibleBufferProvider | undefined; private _xterm: Pick<IXtermTerminal, 'shellIntegration' | 'getFont'> & { raw: Terminal } | undefined; <ins> private _onCommandExecutedShowListener: MutableDisposable<IDisposable> = new MutableDisposable(); </ins> constructor( private readonly _instance: ITerminalInstance, processManager: ITerminalProcessManager,

Type: <bFeature Request</bCC Please consider auto-activiating accessible view in terminal when user hit enter key. In most cases, screen reader users want to open accessible view after executing command in terminal. Thus, pressing Enter key can do: the current command to terminal. Accessible View immediately. Rather than having this as the default mode, we could consider adding this as a custom user setting. VS Code version: Code - Insiders 1.85.0-insider (, 2023-11-02T09:02:24.464Z) OS version: Windows_NT x64 10.0. Modes: <!-- generated by issue reporter --
This makes sense. let us know if you have any thoughts.
I imagine this mode can boost user productivity because VSCode now sends user typing in Accessible View directly to the active terminal. If this mode is , users will experience more seamless round trip between terminal input and accessible view without having to press Alt+F2 and ESC.
To verify, enable . Run a command in the terminal. The accessible view should open.


Question: showCommonFindToggles?: boolean; checkImeCompletionState?: boolean; showResultCount?: boolean; <del> appendCaseSensitiveLabel?: string; appendRegexLabel?: string; appendWholeWordsLabel?: string; </del> <ins> appendCaseSensitiveActionId?: string; appendRegexActionId?: string; appendWholeWordsActionId?: string; previousMatchActionId?: string; nextMatchActionId?: string; closeWidgetActionId?: string; </ins> matchesLimit?: number; type?: 'Terminal' | 'Webview'; }

Terminal: <img width="328" alt="image" src=""Editor: <img width="436" alt="image" src=""


Question: } : undefined, getRole: options.ariaProvider && options.ariaProvider.getRole ? (node) => { return options.ariaProvider!.getRole!(node.element); <del> } : undefined </del> <ins> } : () => 'treeitem' </ins> } }; }

Currently the list sets the role of each item to be This should only be done for the Tree, not for the list. List should use . More details Tree that actually uses the list should probably pass the role as the getRole to the list it extends from. if you are busy let me know and I can look into this.
We should also verify this nicely works with NVDA, since it is part of aria 1.1 spec.
Sure, PR would be great.
Sure. Assigning to this milestone and if I do not find time might get pushed out.
To verify , turn on NVDA suggest box -make sure that the suggestions do not have "Level 1" read ath the end explorer -make sure the items have appropriate Level read at the end


Question: builtin unset VSCODE_INJECTION fi <del> # Disable shell integration if PROMPT_COMMAND is 2+ function calls since that is not handled. if [[ "$PROMPT_COMMAND" =~ .*(' '.*;)|(;.*' ').* ]]; then builtin unset VSCODE_SHELL_INTEGRATION builtin return fi </del> if [ -z "$VSCODE_SHELL_INTEGRATION" ]; then builtin return fi

Issue Type: <bBug</bSet the variable to something like this: You should see something similar to the following: I'm assuming it's associated with . If I'm reading correctly, it checks for semicolons but not things like , , , etc. I understand this is probably an edge case. I was able to workaround by: creating a new function to wrap the others set to the new function VS Code version: Code 1.69.0 (, 2022-07-07T05:28:46.408Z) OS version: Darwin arm64 21.5.0 Restricted Mode: No <!-- generated by issue reporter --
Thanks for creating this issue! It looks like you may be using an old version of VS Code, the latest stable release is 1.69.1. Please try upgrading to the latest version and checking whether this issue remains. Happy Coding!
I can confirm this bug still exists in 1.69.1, and is probably less of an edge case than you might think , as I found this issue when the terminal wouldn't start because I had powerline installed.
O
My bash (GNU bash, version 5.1.16(1)-release (x86_64-apple-darwin21.1.0)) didn't want to work with empty functions, this reproduces the problem though:


Question: builtin unset VSCODE_INJECTION fi <del> # Disable shell integration if PROMPT_COMMAND is 2+ function calls since that is not handled. if [[ "$PROMPT_COMMAND" =~ .*(' '.*;)|(;.*' ').* ]]; then builtin unset VSCODE_SHELL_INTEGRATION builtin return fi </del> if [ -z "$VSCODE_SHELL_INTEGRATION" ]; then builtin return fi

Issue Type: <bBug</bwhen i enable shell integration, i get an error: my contains: VS Code version: Code - Insiders 1.66.0-insider (, 2022-03-28T07:49:37.594Z) OS version: WindowsNT x64 10.0. Restricted Mode: No Remote OS version: Linux x64 5.10.60.1-microsoft-standard-WSL2 <details<summarySystem Info</summary </details<details<summaryExtensions (11)</summaryExtensionVersion ------ better-cpp-syntax1.15.13 remote-containers0.230.0 remote-ssh0.77. remote-ssh-edit0.77. remote-wsl0.66.0 doxdocgen1.4.0 better-cpp-syntax1.15.13 cmake-tools1.10.5 cpptools1.9.7 cpptools-extension-pack1.1.0 cmake0.0.17 (2 theme extensions excluded) </details<details<summaryA/B Experiments</summary</details<!-- generated by issue reporter --
looks like you set somewhere which re-writes your . Right now if we detect possible problems with unsupported formats we bail out and disable shell integration by design. To workaround this you could point your at a function and run inside the function instead, for example
Assigning to April to see if we can improve our handling here.
no. i'm not setting . ugh. testing this is a nightmare. vscode seems to keep some persistent state on the server affecting shell startup. anyway, i'd recommend testing with my exact client/server OS combo. is set by the OS to the value above, but weirdly that's not actually what's used to echo my prompt. my prompt, as set in my file is .
It might be set in your or ? VS Code sources a shell environment on startup and that gets used as the base environment for terminals. For WSL you'd need the vscode server to shutdown fully.
no, this also happens when connecting (via ssh) to a fresh CentOS7 install.


Question: builtin unset VSCODE_INJECTION fi <del> # Disable shell integration if PROMPT_COMMAND is 2+ function calls since that is not handled. if [[ "$PROMPT_COMMAND" =~ .*(' '.*;)|(;.*' ').* ]]; then builtin unset VSCODE_SHELL_INTEGRATION builtin return fi </del> if [ -z "$VSCODE_SHELL_INTEGRATION" ]; then builtin return fi

<img width="965" alt="image" src="https://user-"
<img width="888" alt="Screen Shot 2022-03-31 at 17 04 04" src="https://user-"
It seems that works right on Manjaro X86_64 <img width="822" alt="image" src="https://user-"
Same here, with Arch and default As workaround I blanked the $PROMPT_COMMAND on my
Thanks for finding the , should make it easy to test against
the shell integration feature also breaks long line-wrapping in bash (happens on Ubuntu, too). the terminal wraps the line before reaching the right edge of the terminal window, and it wraps to the same line overwriting the existing ontents of that line. scrolling through line commands in the bash command history is completely broken.
Tentatively assigning to July as this gets hit with Arch's default


Question: } break; case 'on': <del> text += 'nn - ' + nls.localize('configuredOn', "The editor is configured to be permanently optimized for usage with a Screen Reader - you can change this by editing the setting `editor.accessibilitySupport`."); </del> <ins> text += 'nn - ' + nls.localize('configuredOn', "The editor is configured to be permanently optimized for usage with a Screen Reader - you can change this via the command `Toggle Screen Reader Accessibility Mode` or by editing the setting `editor.accessibilitySupport`"); </ins> break; case 'off': text += 'nn - ' + nls.localize('configuredOff', "The editor is configured to never be optimized for usage with a Screen Reader.");

I got into screen reader optimized mode on Windows by using NVDA, but after closing NVDA, I don't know how to leave that mode. I tried clicking on the indicator in the taskbar, and also tried searching "accessibility" in the command palette for a command that would toggle it off. !
clicking on the indicator in the taskbar should work we should also have a toggle command in the command palette so that clicking isn't required and can reference that command in this help menu !
fyi for any input
Agree with the above. Also on vscode restart you should no longer be in screen reader mode if that is happening, it is a bug. take into account that the accessibility help dialog shown in the screenshot has not been polished since we introduced it. We could make sure the text is more concise and user friendly. Visually it should not be polished since this is targeted for screen reader users.
Try to set a custom keybinding for this command - I find it very handy
How do I get that status bar entry to show? I tried the following: Turn on NVDA when Manually set `"editor.accessibilitySupport": "on"
This command should work !
That still doesn't cause the status bar entry to show for me. I've checked the status bar show/hide menu and it's not in there either.
any interesting settings? https://user-
I was about to say I have the same issue, but then noticed that I had to go to a text editor to test out the feature. I was running the toggle command in the Settings editor.
Not being in a text editor was the problem! I was either in the settings editor or the endgame notebook.


Question: this.historyMainService.updateWindowsJumpList(); this.historyMainService.onRecentlyOpenedChange(() => this.historyMainService.updateWindowsJumpList()); <del> // Start shared process here this.sharedProcess.spawn(); </del> <ins> // Start shared process after a while TPromise.timeout(3000).then(() => this.sharedProcess.spawn()); </ins> } private dispose(): void {

See I have had to revert our commit via
Issue could reoccur if shared process start up is delayed.
What was the problem with ? As far as I can see from the code, every client to the shared process should wait for it to be running. . If this assumption holds, change was correct. Do you have any suggestion as to until when to delay the spawn?
Yeah it would be great if the workbench could signal back some event when editors are restoring, but we currently do not have that. Who is waiting for the shared process to be ready, is it just telemetry and extensions management? We have to be careful to not introduce another deadlock area...
Hmm it ain't the services themselves who wait but the container of them. AFAIK, both the and the wait for the shared process to start.
the workbench does not really wait right, it just runs that code in parallel to the rest of the workbench loading.
The workbench will show. But every call to a shared process service will wait until the shared process has started serving the socket. For example, extensions won't show up in the viewlet until the shared process appears.
It was a guess from analysis and also from testing/verification that removing the delay fixed the dialog issue. I do not think we have a concrete reason why is it depending on the delay.
OK. So it seems we can easily delay it. Can you find a signal in the main process at which point we should spawn it?
somewhere in  possibly with some delay? Alternatively the call to opening a window () returns the opened windows and there is a  promise you could join on. That one is literally resolved when all editors have restored in VS Code.
But the shared process already starts only . Should we just put a timeout then? That would make this change exactly what did last month. I'm not saying it's wrong, just stating the fact. Edit: Actually... his change looks very weird to me now. It seems to delay the connection to the process, not the actual spawning.
yes I think what should get delayed is the creation and opening of the shared process window.
Just note that I have removed the uninstall dialog last milestone. So this might not be an issue any more.


Question: } .settings-editor > .settings-header > .settings-header-controls .settings-tabs-widget .action-label.checked { <del> font-weight: 500; </del> opacity: 1; }

Issue Type: <bBug</bWith at least one folder loaded in Code: to Code Preferences Settings on either "User Settings" or "Workspace Settings" Notice tab spacing is jumpy when changing active selection. It should NOT be as jumpy. I believe it's caused by the text being bolded on active selection. <iDesired</i! <iActual</i! VS Code version: Code 1.28.2 (, 2018-10-17T00:18:43.347Z) OS version: Darwin x64 18.0.0 <details<summarySystem Info</summary </details<!-- generated by issue reporter --
Here's the
I'm not sure about this change, I think the bold is necessary to make the selected tab noticeable. Some themes hide the underline on the selected item, and in some themes, the color difference is not really noticeable. So I would worry that this would make it impossible to tell which tab is selected. I also don't really have an issue with the slight shifting, I've never noticed it before now.
We should try to remove this shift as it's not really smooth. In our other tabs (panels, settings json) we don't use alternate font-weights for active/inactive, so I think we should keep them consistent and the same. Alternatively, if we really want to make the states look different we could adjust the opacity (just like the other tabs) as long as they pass the color contrast ratio: !
I agree that it's not smooth. It's also not consistent with the other tabs in the product. There is a hack that can remove the shifting (discussed with this ), however I think that might be overdoing it to achieve this effect. I would add the opacity change as well to help reinforce the two states.
Should I just borrow the inactive color from the panel tabs, at least for the builtin themes? Or if I should use opacity, can you tell me what color/opacity to use? Looking through some popular ones, I don't think this change would be a problem for that many other themes really... Also for folder settings, the folder name and string "Folder Settings" are currently distinguished by size and color, so we might still need 3 colors.
Actually the current panel tab colors in Monokai don't meet the contrast requirement: ! !


Question: } .settings-editor > .settings-header > .settings-header-controls .settings-tabs-widget .action-label.checked { <del> font-weight: 500; </del> opacity: 1; }

We only need to meet the color contrast on the themes we own, which is light/dark/hc. Here's the contrast on the inactive text: Here's the colors and opacity for the active/inactive panels: For the folder settings, you can change the opacity to (which passes) and will end up looking like this: !
Not using the panel foreground color because the background is not always the same, but I think it looks good as is after the PR.


Question: #	fi #fi <ins> # Update mimetype database to pickup workspace mimetype update-mime-database /usr/share/mime &> /dev/null || : </ins> %postun if [ $1 = 0 ]; then rm -f /usr/bin/@@NAME@@ fi <ins> # Update mimetype database for removed workspace mimetype update-mime-database /usr/share/mime &> /dev/null || : </ins> %files %defattr(-,root,root) /usr/share/@@NAME@@/ /usr/share/applications/@@NAME@@.desktop /usr/share/applications/@@NAME@@-url-handler.desktop <ins> /usr/share/mime/packages/@@NAME-workspace.xml </ins> /usr/share/pixmaps/@@ICON@@.png /usr/share/bash-completion/completions/@@NAME@@ /usr/share/zsh/site-functions/_@@NAME@@

A Visual Studio Code workspace file is currently recognised in Linux as a normal plain text file. This is because there isn't a MIME type for this file. Applications can provide additional MIME types as described here: Not having a MIME type has a couple of issues, for example the files are shown as plain text files in the GUI, which makes it hard to distinguish source code files from the workspace file. This slows down navigating to a workspace and opening it. Find the workspace in the following screenshot ! It's currently impossible to theme such a file because it's not seen as a different MIME type:
(Experimental duplicate detection) Thanks for submitting this issue. Please also check if it is already covered by an existing one, like: <!-- score: 0.461 --<!-- potentialduplicatescomment --
This also means that you can't make double clicking the workspace from a file browser open it in vscode, unless you're OK with all text files opening in vscode, which is probably not what most folks want.
This bug has been fixed in to the latest release of ! you can help us out by confirming things are working as expected in the latest Insiders release. If things look good, please leave a comment with the text to let us know. If not, please ensure you're on version of Insiders (today's or later - you can use in the command pallete to check), and leave a comment letting us know what isn't working as expected. Happy Coding!
Hi can you verify this issue? Check out the previous comment.
I tried to verify this but am not sure how to do this myself. I've not used desktop linux extensively; I tried reinstalling Insiders from the on Lubuntu to see if it associated files with VS Code, but that didn't happen.
Verified by installing insiders from on Ubuntu and was able to see mimetype and set a custom icon ! upon uninstalling it was removed.


Question: return; } <ins> // Hide sticky scroll if the prompt has been trimmed from the buffer if (command.promptStartMarker?.line === -1) { this._setVisible(false); return; } </ins> // Determine sticky scroll line count const buffer = xterm.buffer.active; const promptRowCount = command.getPromptRowCount();

Repro: terminal with sticky scroll enabled command that "overflows screen" (ie, it scroll terminal beyond what's visible) it once again to again overflow screen (not sure if it needs to be run again, but that's how I repro'ed) screen (ctrl+l) once again & see sticky scroll shown even though not required (also reported with vid and logs in DM to ) Version: 1.85.0-insider Commit: Date: 2023-11-29T02:45:05.413Z Electron: 25.9.6 ElectronBuildId: Chromium: 114.0.5735.289 18.15.0 V8: 11.4.183.29-electron.0 OS: Darwin arm64 23.1.0


Question: .quick-input-list .monaco-list { overflow: hidden; max-height: calc(20 * 22px); <ins> padding-bottom: 5px; </ins> } .quick-input-list .monaco-scrollable-element {

! !
I think this was the result of moving the progress bar below the input. Since the progress bar use to provide the padding.
let's just call it an exploration of compact mode :) /s
This is partially as designed, but it still needs improvement. The latest changes make it so we have a nice cutoff when the quick pick list is scrolling: <img width="653" alt="CleanShot 2022-12-16 at 09 23 10 src="https://user-"However it should probably still use padding at the bottom of the list, rather than the container, to ensure this doesn't happen when the entire list is visible/not scrollable.
I dont want to be the annoying guy at the party here, but an empty quick pick now looks like this: <img width="647" alt="image" src="https://user-"vs before <img width="633" alt="image" src="https://user-"
Haha, whoops. I'll have another go at this then.
verified the original issue here, but we'll continue the next issue in:


Question: { "name": "code-oss-dev", "version": "1.84.0", <del> "distro": "ace645d011b7e53ba51e8d5ff153c47e3773b3d8", </del> <ins> "distro": "0f218422a902175f8b82cbf0f13fa4feb278f22a", </ins> "author": { "name": "Microsoft Corporation" },

Type: <bBug</bThis issue is related to the Julia extension. I filed an issue , but I also filing it here (as suggested by As per the initial post of the above link, all extension work perfectly fine when the Julia extension is disabled. here are dmp files as per VS Code version: Code 1.79.2 (, 2023-06-14T08:57:04.379Z) OS version: WindowsNT x64 10.0. Modes: <details<summarySystem Info</summary </details<details<summaryExtensions (50)</summaryExtensionVersion ------ rainbow-brackets0.0.6 vscode-django1.10.0 python-environment-manager1.0.4 python-extension-pack1.7.0 code-runner0.12.0 copilot1.94.220 vscode-github-actions0.25.8 vscode-pull-request-github0.66.2 nbpreviewer1.2.2 language-julia1.47.2 vsc-python-indent1.18.0 vscode-github0.30.7 vscode-opn1.1.2 MagicPython1.1.0 vscode-azureappservice0.24.9 vscode-azureresourcegroups0.7.5 vscode-docker1.25.2 csharp1.26.0 isort2022.8.0 python2023.10.1 vscode-pylance2023.6.40 jupyter2023.5.


Question: { "name": "code-oss-dev", "version": "1.84.0", <del> "distro": "ace645d011b7e53ba51e8d5ff153c47e3773b3d8", </del> <ins> "distro": "0f218422a902175f8b82cbf0f13fa4feb278f22a", </ins> "author": { "name": "Microsoft Corporation" },

jupyter-keymap1.1.2 jupyter-renderers1.0.15 vscode-jupyter-cell-tags0.1.8 vscode-jupyter-slideshow0.1.5 remote-containers0.295.0 remote-ssh0.102.0 remote-ssh-edit0.86.0 remote-wsl0.79.5 vscode-remote-extensionpack0.24.0 azure-account0.11.5 cmake-tools1.14.34 cpptools1.16.3 cpptools-extension-pack1.3.0 powershell2023.6.0 remote-explorer0.4.0 remote-server1.2.1 autodocstring0.6.1 r-debugger0.5.4 r2.8.1 vscode-open0.1.0 spellchecker1.4.0 python0.2.3 rmarkdown0.0.14 cmake0.0.17 vscode-counter3.2.1 intellicode-api-usage-examples0.2.7 vscodeintellicode1.2.30 jinja0.0.8 (2 theme extensions excluded) </details<details<summaryA/B Experiments</summary</details<!-- generated by issue reporter --
As mentioned in the linked issue, it happens for me as well. I can reproduce it with Insiders version too and the same happens with a few older julia-vscode extensions I tested. <details<summaryVS Code version</summary</details
There seems to be an issue with spawning a process. The symbolicated logs seem to have the same form.
I'd expect that this happens when we try to spawn the Julia process that powers the LS. Any chance we can debug this further? I assume we can't handle libuv failing to spawn a process anywhere in the extension code, right?
As asked in the I want to add that I can reproduce this as well. From the linked thread:
Sorry for the delayed response, can you please provide the output of the following steps to understand the error 1) In a terminal set the following env variable 2) Launch VSCode from the same terminal session with arguments that redirect stdout and stderr to a file as seen below, replace the file paths where appropriate Additionally, once the extension host crashes open command palette in VSCode and run and attach the output from the tab of the developer tools that got opened.