jiebi/CodeConvo huggingface dataset:
Change:
return document.hasFocus(); } <ins> async hadLastFocus(): Promise<boolean> { return true; } </ins> async focus(): Promise<void> { window.focus(); }

Discussion:
I would like to see the release notes when there's an update, because there are always useful additions that I want to know about, but currently VS Code: re-opens release notes that I have already read, release notes in EVERY SINGLE WINDOW. ! These have been happening for years. Please fix them before I jump off a bridge! There should never be any reason to automatically open them more than ONE time. Perhaps consider using the OS notification system to send ONE notification. If you can't do that, please open ONE window with the release notes, instead of one tab in every window.
/needsMoreInfo does this reproduce if you run with all extensions disabled?
Since some of the conditions to reproduce it (a new release) are outside of my control, and outside of my knowledge until I see the release notes, that's very hard to answer. Are you trying to tell me that you do not have the release notes appear in every single window when you reopen Visual Studio Code and there's a new release? And that you never have them appear again after you've already read them? Since I've seen this happen SO many times, I guessed it happened quite widely.
This seems to be triggered from update, moving to Joao.
Yes there is a known issue: when opening release notes, every window opens them. It's pretty dramatic in your case since you seem to have ~20 windows open. But release notes should not appear twice, unless there's been a recovery update. There was one yesterday: 1.42.1... so that might explain it?
I could swear this issue had been fixed in the past... and I was right. Original issue is and fix was This got broken by
Muito obrigado João!
De nada! Make sure you let us know when stuff annoys you. Sometimes it seems obvious that an issue would annoy everyone but sometimes it just doesn't. :+1:
is there a good way to verify this? If not, I have already verified by code review.
Code review should be
Change:
if (!languageIdentifier) { throw new Error(`Cannot set configuration for unknown language ${languageId}`); } <del> return LanguageConfigurationRegistry.register(languageIdentifier, configuration); </del> <ins> return LanguageConfigurationRegistry.register(languageIdentifier, configuration, 100); </ins> } /**

Discussion:
<!-- Do Not Delete This! bugreporttemplate --<!-- 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: --We have started to get reports from users that Toggle Line Comments does the wrong thing: I think this stems from the default Clojure extension which sets to be a single . Calva changes this here: This has been working for years, and still does for many people, but some days ago it stopped working for some. I also notice that the default extension has moved to its own repository, where there is now a PR to fix the line comment configuration: However, I think it is wrong that the default extension sometimes overrides an installed extension here. Then that API can't be trusted at all. I worry about what more configuration is now sometimes being overridden. <!-- Use Help Report Issue to prefill these. --- VSCode Version: 1.52.1 OS Version: N/A Steps to Reproduce: Calva a file the command Toggle Line Comment on an uncommented line Expected: It gets commented with Actual: It gets commented with Please let me know how I can assist in fixing this issue. <!-- Launch with to check. --Does this issue occur when all extensions are disabled?: Not applicable
I am surprised that this ever worked reliably, it must have been some amazing timing luck. defines a language configuration at . Language configuration file handling is implemented by waiting for the language to be first used (like embedded in another language like a markdown fence or a file using the language is opened) and then reading async the language configuration file and applying it. This is done . Whenever the language configuration file finishes reading, it will go and configure the in pretty much the exact same way an extension calling configures it . So deep down there is no difference between those two calls and basically those two calls are racing themselves and it is lucky that until now the call reading the descriptive file was always faster than the imperative call from your extension. If you want to be sure to overwrite the builtin language configuration, you can define your own language configuration file using: But I also see how you would expect that the imperative call would "win" over the descriptive way, so maybe we can do something on our side to give a higher priority to the imperative call way of configuring languages.
Thanks !

This is great information. Calva has been relying on this luck for a very long time. And yes, I actually choose to do it the imperative way very consciously, assuming it was the way to be sure I could override the defaults.
Change:
private readonly resultTextFileModel: ITextFileEditorModel, private readonly telemetry: MergeEditorTelemetry, @IDialogService private readonly _dialogService: IDialogService, <ins> @IStorageService private readonly _storageService: IStorageService, </ins> ) { super(); }

Discussion:
a conflict file in 3 way merge the 3 way merge editor Notice dialog ! I do not think we have a need for this dialog any more since we are no longer removing the conflict markers. Thus the user can just close this dialog, there is no data loss? Similarly when the user closes the old editor with conflict markers we do not prompt. fyi
I don't have an opinion about this.
I would leave it for the clarity it creates, however I am open for a "don't ask again" option
"Don't ask again" works for me, especially since I just noticed that when some conflicts get resolved the dialog is "smarter". Would don't ask again write in storage or a setting? I am fine going loco and writing to storage (so users can not revert). Though if all the other "don't ask again" write in settings then I guess I am fine with that.
+1 for "Don't ask again"
Fyi there is a very practical use case for the dialog: if you run with and use VSCode as Git merge editor, you may actually want to resolve the conflicts before closing the editor because Git somewhat expects you to do so. On top of that, given , we currently cannot pass back an exit code to Git, so it helps showing a dialog to avoid returning back to Git with merge conflicts still in the file. Besides, we show a similar dialog when you try to stage a file that has merge conflicts from the SCM view: !
thanks for providing more info, I missed that case. Though I think it does not conflict with our idea to add "Don't Ask Again".
Can we tell the merge editor if it was opened in a modal context (like with --wait)?
Currently not, an editor has no knowledge that it is being utilised for . There is plumbing around the editor where we observe the opened editor for being closed and then delete the wait marker file. Can we get more user feedback on this before jumping onto a conclusion?
Verify that there is an option to not be asked again there is a "Reset Choice for Close with Conflicts" commands in the F1 list <img width="1405" alt="Screenshot 2022-11-25 at 15 24 27" src="https://user-"
Adding verified since this works as expected. Noticed one minor "glitch".

"Don't ask again" Cancel The "Don't ask again" choice will be preserved. It should probably be only preserved if I click on "Close with Conflicts". I am not supper passionate about this, but let me know if you would like me to file an issue
Change:
import 'vs/editor/browser/services/markerDecorations'; <del> import 'vs/css!./media/editor'; import * as nls from 'vs/nls'; </del> import * as dom from 'vs/base/browser/dom'; import { IKeyboardEvent } from 'vs/base/browser/keyboardEvent'; import { IMouseWheelEvent } from 'vs/base/browser/mouseEvent';

Discussion:
Open the chat sidebar Type , pick from suggest widget Pick a file, so it reads eg Delete the full contents of the input with cmd+backspace Get this error I think I understand what's happening here. I have two listeners that each call . The first one runs, and after setting decorations, it calls to continue firing events, so my second listener runs, and also calls . And this is considered recursive because it happens before was decremented but isn't "really" recursive, to me. So is it bad practice to call synchronously inside ? Or is there something else I should be doing differently?
I think the actual problem is that is used here: This should use instead. Feel free to provide a PR.
Change:
function Global:__VSCode-Escape-Value([string]$value) { # NOTE: In PowerShell v6.1+, this can be written `$value -replace '…', { … }` instead of `[regex]::Replace`. # Replace any non-alphanumeric characters. <del> [regex]::Replace($value, '[^a-zA-Z0-9]', { param($match) # Backslashes must be doubled. if ($match.Value -eq '') { '' } else { # Any other characters are encoded as their UTF-8 hex values. -Join ( [System.Text.Encoding]::UTF8.GetBytes($match.Value) | ForEach-Object { 'x{0:x2}' -f $_ } ) } </del> <ins> [regex]::Replace($value, '[n;]', { param($match) # Encode the (ascii) matches as `x<hex>` -Join ( [System.Text.Encoding]::UTF8.GetBytes($match.Value) | ForEach-Object { 'x{0:x2}' -f $_ } ) </ins> }) }

Discussion:
<img width="1754" alt="iShot2022-12-2811 40 36" src="https://user-"
Easy repro: ! ! Likely Windows only.
It's an encoding issue in pwsh's shell integration cwd detection
No, my MacBook has this problem too.
yep the fix was for pwsh on all platforms
Updated 1.74.3 today, but found that this bug still exists, do you want to wait for the next version to fix it?
the fix is in 1.75.0 (insiders only atm)
Thanks.
Change:
const actionbar = new ActionBar(actionsContainer); const action = new Action('scmInputWidget.validationMessage.close', localize('label.close', "Close"), ThemeIcon.asClassName(Codicon.close), true, () => { this.contextViewService.hideContextView(); <ins> this.editorContainer.style.borderBottomLeftRadius = '2px'; this.editorContainer.style.borderBottomRightRadius = '2px'; </ins> }); disposables.add(actionbar); actionbar.push(action, { icon: true, label: false });

Discussion:
Source control warning not aligned on the right hand side with the input field: <img width="473" alt="image" src="https://user-"
Draft PR here but I feel that there is a better way. For whatever reason the editor within SCM input is not as wide as the input it is rendered in—or something like that. Open to ideas!
Here is the updated layout: <img width="567" alt="image" src="https://user-"
Change:
enumDescriptions: [ localize('scm.defaultViewSortKey.name', "Sort the repository changes by file name."), localize('scm.defaultViewSortKey.path', "Sort the repository changes by path."), <del> localize('scm.defaultViewSortKey.status', "Sort the repository changes by SCM status.") </del> <ins> localize('scm.defaultViewSortKey.status', "Sort the repository changes by Source Control status.") </ins> ], description: localize('scm.defaultViewSortKey', "Controls the default Source Control repository sort mode."), default: 'path' }, 'scm.autoReveal': { type: 'boolean', <del> description: localize('autoReveal', "Controls whether the SCM view should automatically reveal and select files when opening them."), </del> <ins> description: localize('autoReveal', "Controls whether the Source Control view should automatically reveal and select files when opening them."), </ins> default: true }, 'scm.inputFontFamily': {

Discussion:
Within the UI in VS Code there are differing names for the SCM view depending on whereabouts you are in the UI. Under the "View Menu" there is an entry from "SCM" but everywhere else it is referred to as Source Control. (Hovering over the icon in the activity bar names it Source Control, the view container title says Source Control and in the command palette, the command is listed as "Source Control: Focus on Source Control View".) Then under settings there is a group "Features SCM" For consistency, it would be better to keep with a single (user facing) name that is used in all places.
I don't like using of abbreviations in the program GUI, especially if they are not as much popular and known. It took me a while to understand what is that SCM thing.
fixing this makes sense to me, though I might be missing some historical context.
Yeah the correct term is Source Control. SCM is just an internal name, should not be surfaced.
I've pushed a small PR that should rename this in all the places I could find.
Merged! thank you very much for the contribution!
Change:
options: { after: { content: 'injected1' }, description: 'test1', <ins> showIfCollapsed: true </ins> }, range: new Range(2, 1, 2, 1), }, { options: { after: { content: 'injected2' }, description: 'test2', <ins> showIfCollapsed: true </ins> }, range: new Range(2, 2, 2, 2), }]);

Discussion:
<!-- Do Not Delete This! featurerequesttemplate --<!-- Please read our Rules of Conduct: --<!-- Please search existing issues to avoid creating duplicates. --<!-- Describe the feature you'd like. --Currently, the inlay hints will clean and shows again as scheduler's strategy. It's might not friendly if you are editing some line who has many hints. I have an idea: Clean all hints where the cursor’s line when we are editing the code and append new hints by the scheduler. I think It's might improve the experience about inlay hints.
(Experimental duplicate detection) Thanks for submitting this issue. Please also check if it is already covered by an existing one, like: <!-- score: 0.494 --<!-- potentialduplicatescomment --
/gifPlease
!
I think inlay hints should disappear immediately if the surrounding text is deleted. Afaik, currently, when text gets deleted, decorations inside of that text get collapsed but are not deleted.
Yes, I agree that hints should disappear immediately when their "anchor" position is removed. Maybe it's not so easy to know what remove actually means in this case. Arguably this is an editor bug as I was expecting this to work?
I wouldn't call this a bug - decorations are never removed automatically. Alex suggests (I asked him before his vacation): I also suggest to extend the inlay hints API so that a hint refers to a range. The hint itself then can either be after or before the range. The range allows to better predict what should happen with the hint if the text changes. With injected text, we now have two cursor stops around inlay hints - both refer to the same model position. Maybe the move behavior of inlay text should depend on the view position where the text change was caused from? I suggest to think about how we can better predict synchronously how a text change affects inlay hints.
This is how we started, mostly to optionally support overlay hints, and everyone was confused about ranges for inlay hints. Using a range with before/after screams "position" and I don't want to leak an implementation detail into the API. We would also still have the case of empty ranges... I'd rather create "fake ranges" from positions so that I can use the notion of collapsed ranges.
I have pushed a change () to use the range of touching words of inlay positions (when possible).

In that case will be and my expectation was that decorations hide/disappear when removing all their text.. is that a bug in decorations land or am I using this wrong? Should I listen to decoration changes and "manually" remove them?
I think so, decorations are not removed automatically.
But what does mean then?
Ah, maybe I forgot to consider that flag for injected text, I'll look into it tomorrow.
Change:
import { IExtensionManifestPropertiesService } from 'vs/workbench/services/extensions/common/extensionManifestPropertiesService'; import { IExtensionService, IExtensionsStatus } from 'vs/workbench/services/extensions/common/extensions'; import { ExtensionEditor } from 'vs/workbench/contrib/extensions/browser/extensionEditor'; <ins> import { isWeb } from 'vs/base/common/platform'; </ins> interface IExtensionStateProvider<T> { (extension: Extension): T;

Discussion:
Ability to update built in extensions
This is a pre-request to enable built-in extension to on-board to
Disabled updating builtin extensions in stable
Change:
WordHighlighter.storedDecorations = WordHighlighter.storedDecorations.set(uri, newDecorationIDs); if (newDecorations.length > 0) { <ins> editorHighlighterContrib.wordHighlighter?.decorations.set(newDecorations); </ins> editorHighlighterContrib.wordHighlighter?._hasWordHighlights.set(true); } }

Discussion:
select a symbol wait for its occurrences to get highlighted press F7 to go to the next highlight :bug: doesn't work, error shows
adding label so that this gets verified

Testing enable open and side by side select click on occurrences :bug: whenever an occurrence is selected for the first time all highlights disappear and reappear This also happens in the single document highlight case and I am sure is a regression
Looks like this is fixed with Seems like two birds, one stone. Cannot repro in OSS with latest . Insiders behavior (broken) latest OSS (fixed)
bug label for verification
Also the milestone should be set.
Change:
import { IWorkbenchContributionsRegistry, Extensions as WorkbenchExtensions, IWorkbenchContribution } from 'vs/workbench/common/contributions'; import { IOutputChannelRegistry, Extensions as OutputExtensions } from 'vs/workbench/services/output/common/output'; import { SyncDescriptor } from 'vs/platform/instantiation/common/descriptors'; <del> import { VIEWLET_ID, IExtensionsWorkbenchService, IExtensionsViewPaneContainer, TOGGLE_IGNORE_EXTENSION_ACTION_ID, INSTALL_EXTENSION_FROM_VSIX_COMMAND_ID, WORKSPACE_RECOMMENDATIONS_VIEW_ID, IWorkspaceRecommendedExtensionsView, AutoUpdateConfigurationKey, HasOutdatedExtensionsContext, SELECT_INSTALL_VSIX_EXTENSION_COMMAND_ID, LIST_WORKSPACE_UNSUPPORTED_EXTENSIONS_COMMAND_ID, ExtensionEditorTab, THEME_ACTIONS_GROUP, INSTALL_ACTIONS_GROUP } from 'vs/workbench/contrib/extensions/common/extensions'; </del> <ins> import { VIEWLET_ID, IExtensionsWorkbenchService, IExtensionsViewPaneContainer, TOGGLE_IGNORE_EXTENSION_ACTION_ID, INSTALL_EXTENSION_FROM_VSIX_COMMAND_ID, WORKSPACE_RECOMMENDATIONS_VIEW_ID, IWorkspaceRecommendedExtensionsView, AutoUpdateConfigurationKey, HasOutdatedExtensionsContext, SELECT_INSTALL_VSIX_EXTENSION_COMMAND_ID, LIST_WORKSPACE_UNSUPPORTED_EXTENSIONS_COMMAND_ID, ExtensionEditorTab, THEME_ACTIONS_GROUP, INSTALL_ACTIONS_GROUP, OUTDATED_EXTENSIONS_VIEW_ID } from 'vs/workbench/contrib/extensions/common/extensions'; </ins> import { ReinstallAction, InstallSpecificVersionOfExtensionAction, ConfigureWorkspaceRecommendedExtensionsAction, ConfigureWorkspaceFolderRecommendedExtensionsAction, PromptExtensionInstallFailureAction, SearchExtensionsAction, SwitchToPreReleaseVersionAction, SwitchToReleasedVersionAction, SetColorThemeAction, SetFileIconThemeAction, SetProductIconThemeAction, ClearLanguageAction } from 'vs/workbench/contrib/extensions/browser/extensionsActions'; import { ExtensionsInput } from 'vs/workbench/contrib/extensions/common/extensionsInput'; import { ExtensionEditor } from 'vs/workbench/contrib/extensions/browser/extensionEditor';

Discussion:
Testing Maybe a button to the right of the view header: !
Lets have action in the view header like below <img width="341" alt="image" src="https://user-"
Change:
registerAction2(class extends Action2 { constructor() { super({ <ins> id: TerminalCommandId.CopyLastCommand, title: { value: localize('workbench.action.terminal.copyLastCommand', 'Copy Last Command'), original: 'Copy Last Command' }, f1: true, category, precondition: ContextKeyExpr.or(TerminalContextKeys.processSupported, TerminalContextKeys.terminalHasBeenCreated) }); } async run(accessor: ServicesAccessor): Promise<void> { await accessor.get(ITerminalService).activeInstance?.copyLastCommandOutput(); } }); registerAction2(class extends Action2 { constructor() { super({ </ins> id: TerminalCommandId.GoToRecentDirectory, title: { value: localize('workbench.action.terminal.goToRecentDirectory', "Go to Recent Directory..."), original: 'Go to Recent Directory...' }, f1: true,

Discussion:
<!-- Do Not Delete This! featurerequesttemplate --<!-- Please read our Rules of Conduct: --<!-- Please search existing issues to avoid creating duplicates. --<!-- Describe the feature you'd like. --The awesome shell integration makes it really easy to rerun commands and copy the output from those commands. However, it seems one can only copy the output if the line the command was executed from is still within the scroll limit of the terminal. For some very long runs this is inconvenient. It would be really nice to be able to: output of last command from a terminal output of any command in the history of that terminal, if it is available to be copied Both without having to scroll to the point the command was executed.
Once there is too much data we no longer have access to it. Sounds like you probably want to increase the size of your scrollback. This is what I use: All the memory for the buffer gets reserved ahead of time for performance reasons so this will increase RAM usage by a fixed amount per terminal you have open. I like the idea of having a command for copying the output of the last command that you could hook up to a keybinding
You can also get the output from a command via and then click the output/document icon <img width="644" alt="Screen Shot 2022-06-14 at 12 31 30 PM" src="https://user-"These are only stored for the session, but might help you. I don't believe we get rid of commands that are outside of the scrollback, do we?
I don't think so but we do lose access to their output
I wonder if the command name should change makes you think the command would be copied but instead this is to copy the output
Change:
: userInfo?.accountName ?? '<unknown>', id: session.account?.id ?? userInfo?.id ?? '<unknown>' }, <del> scopes: sortedScopes, </del> <ins> scopes: session.scopes, </ins> accessToken: session.accessToken }; });

Discussion:
Issue Type: <bBug</bThe Avatar badge always shows <img width="351" alt="image (7)" src="https://user-"Clicking the action to authenticate doesn't dismiss it. VS Code version: Code - Insiders 1.68.0-insider (, 2022-05-20T05:16:17.334Z) OS version: WindowsNT x64 10.0. Restricted Mode: No <details<summarySystem Info</summary </details<details<summaryExtensions (39)</summaryExtensionVersion ------ vscode-eslint2.2.2 kusto0.3.8 gitlens-insiders2022.5.1705 prettier-vscode9.5.0 codespaces1.8.1 copilot1.22.5957 vscode-pull-request-github0.42.0 go0.33.0 vscode-language-pack-zh-hans1.68.0 python2022.7. vscode-pylance2022.5.2 jupyter2022.5. jupyter-keymap1.0.0 jupyter-renderers1.0.6 vscode-ai0.11. vscode-ai-remote0.13. remote-containers0.236.1 remote-ssh0.80.0 remote-ssh-edit0.80.0 remote-wsl0.66.3 azure-account0.10.1 hexeditor1.9.6 js-debug-nightly2022.5.1817 live-server0.2.12 vscode-github-issue-notebooks0.0.119 vscode-markdown-notebook0.0.26 vscode-selfhost-test-provider0.3.9 vsliveshare1.0.5561 vetur0.35.0 colab-keymap0.0.4 github-issue-notebook-enhancement0.0.1 vscode-code-renderer0.0.2 vscode-jupyter-checkpoint0.0.1 notification-tester2.5.1 rest-book6.0.1 tldraw-vscode1.13.3 shell-runner-notebooks0.0.2 luna-paint0.14.0 vscode-todo-highlight1.0.5 (3 theme extensions excluded) </details<!-- generated by issue reporter --
after reloading, does the go away?
Reloading fixes the issue for me