jiebi/CodeConvo huggingface dataset:
Change:
await awaitEditorOpening(accessor.editorService); assert.ok(accessor.editorService.isOpened(untitledTextEditor)); <del> }); </del> <ins> } </ins> function awaitEditorOpening(editorService: IEditorService): Promise<void> { return Event.toPromise(Event.once(editorService.onDidActiveEditorChange));

Discussion:
A bug in our tracker for dirty models, somehow never reported but obvious in an issue I noticed with Copilot. The end result is that you see a dirty indicator e.g. in the explorer but no editor that is opening and associated with it. Steps:
Tried to look at the steps to repro but seems the link to the copilot issue is broken or at least I am not able to access it.
I'm still getting this with copilot nightly in insiders <img width="652" alt="image" src="https://user-"
Please note that my change does not fix the Copilot issue. The steps to verify are unclear: it is expected when you see an untitled editor opening. You must test with auto save on.
Setting back verified label based on the screenshot.
Change:
import { IMenuService, MenuId, IMenu } from 'vs/platform/actions/common/actions'; import { DirtyEditorContext, OpenEditorsGroupContext } from 'vs/workbench/parts/files/electron-browser/fileCommands'; import { ResourceContextKey } from 'vs/workbench/common/resources'; <del> import { fillResourceDataTransfers, ResourcesDropHandler, LocalSelectionTransfer } from 'vs/workbench/browser/dnd'; </del> <ins> import { fillResourceDataTransfers, ResourcesDropHandler, LocalSelectionTransfer, CodeDataTransfers } from 'vs/workbench/browser/dnd'; </ins> import { ViewletPanel, IViewletPanelOptions } from 'vs/workbench/browser/parts/views/panelViewlet'; import { IViewletViewOptions } from 'vs/workbench/browser/parts/views/viewsViewlet';

Discussion:
<!-- 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.25.0-insider OS Version: Windows 10 Home - 1803 Steps to Reproduce: the Explorer sidebar tab the Outline or File Hierarchy views as if to rearrange them the cursor over an item in the Open Editors view individual editors will change color along with the entire view, making it seem as if you can drop a sidebar view into an open editor and something will happen. What should actually happen is that the view should highlight (since its location will be replaced; it does do this), but the individual items should not be affected. Screenshot: ! I am holding the File Hierarchy view over the file in that screenshot. <!-- Launch with to check. --Does this issue occur when all extensions are disabled?: Yes
I acknowledge the issue, the problem is that the OpenEditor view is not differentiating between drag events PR to fix this is welcome
I was able to add a check to prevent the hover styling unless the item being dragged is another open editor in the list (see ), however this also means that when tabs are dragged over the Open Editors panel (ie, when there's multiple groups; you can drag a tab into a group and it will duplicate into that group), it doesn't have any styling anymore. I couldn't figure out a way to check if the dragged object is a tab. Is that feasible? Where would I look?
yeah it is not so simple You would need to check the dragged data. If there is an elegent solution to fix this please provide a PR. If too complex or computation intensive I would prefer to leave the issue open for now. Thanks
So just to make sure, the only things that should trigger the class on open editors are the open tabs and the other open editors in the list, correct?
no. Dragging resources from the explorer, adn dragging things outside of vscode should also trigger it
Change:
this._connectionState = TerminalConnectionState.Connected; } <ins> // Open the primary backend registered barrier to allow ITerminalService consumers to // start using the backend this._primaryBackendRegistered.open(); </ins> backend.onDidRequestDetach(async (e) => { const instanceToDetach = this.getInstanceFromResource(getTerminalUri(e.workspaceId, e.instanceId)); if (instanceToDetach) {

Discussion:
Started in first 1.72 insider build !
It's related to not being and going this route: Probably more fallout from the change in and
View visibility changes before the backend is registered:
Change:
*  Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ <del> import { CursorConfiguration, CursorState, ICursorSimpleModel, SelectionStartKind, SingleCursorState } from 'vs/editor/common/cursorCommon'; </del> <ins> import { CursorState, ICursorSimpleModel, SelectionStartKind, SingleCursorState } from 'vs/editor/common/cursorCommon'; </ins> import { CursorContext } from 'vs/editor/common/cursor/cursorContext'; import { Position } from 'vs/editor/common/core/position'; import { Range } from 'vs/editor/common/core/range';

Discussion:
Using copilot completions in the latest VS Code insiders, I see the cursor being pushed to after the suggested text. This makes it very difficult to work with the text while passive completions are suggested. <img width="1126" alt="image" src=""
FYI I didn't think of this.
is it possible to differentiate between an inline completion and inlay hint in the editor? maybe we could have different behavior in different cases?
Change:
}; const filterMatches = preferencesModel.filterSettings(this._filter, this.getGroupFilter(this._filter), settingMatcher); <del> if (filterMatches[0] && filterMatches[0].score === LocalSearchProvider.EXACT_MATCH_SCORE) { </del> <ins> const exactMatch = filterMatches.find(m => m.score === LocalSearchProvider.EXACT_MATCH_SCORE); if (exactMatch) { </ins> return Promise.resolve({ <del> filterMatches: filterMatches.slice(0, 1), </del> <ins> filterMatches: [exactMatch], </ins> exactMatch: true }); } else {

Discussion:
Testing Instead of opening the settings editor to you could use to show just that one setting. at one point when there was an exact ID match in the settings editor, we would only show that one setting. It seems like that is happening for some settings (like doesn't show ) but here I see a bunch of results <img width="650" alt="image" src=""did we get rid of that logic or is it just semantic matches kicking in?
The logic is still there, but it's buggy because it didn't sort some entries properly
Change:
describe('Shell integration', function () { // TODO: Fix on Linux, some distros use sh as the default shell in which case shell integration will fail <del> // TODO: Fix on macOS, not sure reason for failing https://github.com/microsoft/vscode/issues/149757 describe.skip('Decorations', function () { </del> <ins> (process.platform === 'win32' || process.platform === 'linux' ? describe.skip : describe)('Decorations', function () { </ins> describe('Should show default icons', function () { it('Placeholder', async () => { await terminal.createTerminal();

Discussion:
Notice how the command is getting created in the console but not in the UI: !
registerDecoration is getting called with the initial command's marker every time
that's bc IE isn't happening !
today, the decoration isn't even showing up for the first command/placeholder
Hoping this will be fixed when and related fixed land
Seems related to , the decoration addon is disposed of immediately on creation now: ! Working on a fix
Change:
private readonly _proxy: MainThreadFileSystemShape; <ins> private readonly _schemes = new Map<string, { readonly isReadonly?: boolean }>(); </ins> constructor(@IExtHostRpcService extHostRpc: IExtHostRpcService) { this._proxy = extHostRpc.getProxy(MainContext.MainThreadFileSystem); }

Discussion:
Refs: A text document can be readonly if it's underlying file system provider is readonly. I am not sure how a custom editor implementor can figure this out and provide the correct experience.
Could we add a property to ? Does VS Code internally already know if a given textDocument is read only?
We basically ask the file system provider for the resource of the document for being readonly or not. That should be doable.
Change:
"scope": "resource", "default": 10, "description": "%config.detectSubmodulesLimit%" <ins> }, "git.syncRebase": { "type": "boolean", "scope": "resource", "default": false, "description": "%config.syncRebase%" </ins> } } },

Discussion:
Currently the sync icon will sync with pull and merge, which results in undesirable (in my case) merge commits. ! It would be helpful if there was a "Sync with rebase" option for clicking this icon. I see a PR was performed to add Sync (Rebase) command (, though I still don't even see this command in the git menu for 1.23.1 today?), but this does not apply to clicking the actual icon. A setting to change its default value would be great.
(Experimental duplicate detection) Thanks for submitting this issue. Please also check if it is already covered by an existing one, like: <!-- score: 0.479 --<!-- potentialduplicatescomment --
shouldn't the setting text say something like instead of saying . If a branch is already configured to use rebase by default this setting has no effect (i.e. unchecking the box does not use merge)
Change:
return options.get(EditorOption.ariaLabel); } <ins> private _setAccessibilityOptions(options: IComputedEditorOptions): void { this._accessibilitySupport = options.get(EditorOption.accessibilitySupport); const accessibilityPageSize = options.get(EditorOption.accessibilityPageSize); if (this._accessibilitySupport === AccessibilitySupport.Enabled && accessibilityPageSize === EditorOptions.accessibilityPageSize.defaultValue) { // If a screen reader is attached and the default value is not set we shuold automatically increase the page size to 1000 for a better experience this._accessibilityPageSize = 1000; } else { this._accessibilityPageSize = accessibilityPageSize; } } </ins> // --- begin event handlers public onConfigurationChanged(e: viewEvents.ViewConfigurationChangedEvent): boolean { const options = this._context.configuration.options; const layoutInfo = options.get(EditorOption.layoutInfo); <del> this._accessibilitySupport = options.get(EditorOption.accessibilitySupport); this._accessibilityPageSize = options.get(EditorOption.accessibilityPageSize); </del> <ins> this._setAccessibilityOptions(options); </ins> this._contentLeft = layoutInfo.contentLeft; this._contentWidth = layoutInfo.contentWidth; this._contentHeight = layoutInfo.height;

Discussion:
default shoudl be 100. As pointed out we should measure if this has a perf impact on Edge, Chromium and FF We can also increase the default value only if we see that a screen reader is detected
Change:
auxiliaryWindow.focus = async function () { originalWindowFocus(); <del> if (getActiveWindow() === auxiliaryWindow) { </del> <ins> if (getActiveWindow() !== auxiliaryWindow) { </ins> that.nativeHostService.focusWindow({ targetWindowId: await windowId.p }); } };

Discussion:
Small typo in the method of aux windows. Steps: open an aux window with an editor go back to main window and show "Open Editors" double click into the editor of the aux window the aux window does not get window focus
Change:
eval "${cmd:-}" done else <ins> __vsc_restore_exit_code "${__vsc_status}" </ins> eval "${__vsc_original_prompt_command:-}" fi __vsc_precmd

Discussion:
<!-- Do Not Delete This! bugreporttemplate --<!-- Please read our Rules of Conduct: --<!-- Read our guide about submitting issues: --<!-- Search existing issues to avoid creating duplicates. --<!-- Test using the latest Insiders build to see if your issue has already been fixed: --<!-- Instead of creating your report here, use 'Report Issue' from the 'Help' menu in VS Code to pre-fill useful information. --<!-- Launch with to check. --Does this issue occur when all extensions are disabled?: Yes <!-- If you answered No above, use 'Help: Start Extension Bisect' from Command Palette to try to identify the cause. --<!-- Issues caused by an extension need to be reported directly to the extension publisher. The 'Help Report Issue' dialog can assist with this. --- VS Code Version: V1.70.0 OS Version: Ubuntu 20.04 Steps to Reproduce: to latest V1.70.0 version of VSCode starship prompt for the bash shell. I have my starship prompt configured to update if the previous command execution failed for unknown reasons. After the latest update, every command execution seems to fail only in VSCode's terminal. Below is the expected behaviour, in a bash terminal: The screenshot of the same with colors: ! Now in the VSCode's terminal (running bash): (It shows the error condition even in a brand new instance of the terminal) A screenshot of the same with colors: ! This behaviour of always erroring out even for a successful command execution started today after VSCode auto updated to V1.70.0 Below is the information I got from menu: Version: 1.70.0 Commit: Date: 2022-08-04T04:38:48.541Z Electron: 18.3.5 Chromium: 100.0.4896.160 16.13.2 V8: 10.0.139.17-electron.0 OS: Linux x64 5.15.0-43-generic snap
Did you notice
, thanks for the prompt response! Yes, by disabling shell-integration, starship prompt started behaving as expected. Shall I close this issue or consider this a bug with shell-integration ?

I don't see why there was a need to enable Shell Integration by default, spent the last 2 hours trying to figure out what was wrong
This probably has nothing to do with starship (I have the same issue without starship). This is just a specific case of and should probably be closed as a duplicate
Change:
for (let i = 0; i < symbols.length; i++) { const command = symbols[i].command; if (command) { <del> const title = escape(command.title); </del> <ins> const title = renderOcticons(command.title); </ins> let part: string; if (command.id) { part = `<a id=${i}>${title}</a>`;

Discussion:
VSCode Version: Insiders Add ability to display Octicons in Code Lenses. My plan is to display the results (as done in VS) of unittests against each method. Part of the functionality has been provided through (refreshing code lenses). Now i'd like to display a red "X" or a green "Tick" (what ever the standard Octicons may be).
As a workaround, you may be able to use emoji or regular unicode symbols to achieve a similar effect: <img width="474" alt="screen shot 2017-01-30 at 11 12 59 am" src=""One downside to this is that these will vary somewhat between operating systems
Thanks for the tip
I would like to try fixing it. Would that be ok? Maybe you can think of some pitfalls?
Use the utils from and wire things up here: One thing to consider is that maybe not all users want octicons, e.g one might be using $(zap) and not want but we can consider that later
Change:
] }, { <del> "match": "(?xi)n((?:(?:public|private|protected|static)(?:s+|(?=?)))+)                     # At least one modifiern(n  (?:?s*)? [a-z0-9_x{7f}-x{7fffffff}]+ |                                        # nullable typen  [a-z0-9_x{7f}-x{7fffffff}]+ (?: s*|s* [a-z0-9_x{7f}-x{7fffffff}]+)+ # union typen)?ns+ (($)[a-z_x{7f}-x{7fffffff}][a-z0-9_x{7f}-x{7fffffff}]*)          # Variable name", </del> <ins> "match": "(?xi)n((?:(?:public|private|protected|static)(?:s+|(?=?)))++)                     # At least one modifiern(n  (?:?s*)? [a-z0-9_x{7f}-x{7fffffff}]+ |                                        # nullable typen  [a-z0-9_x{7f}-x{7fffffff}]+ (?: s*|s* [a-z0-9_x{7f}-x{7fffffff}]+)+ # union typen)?ns+ (($)[a-z_x{7f}-x{7fffffff}][a-z0-9_x{7f}-x{7fffffff}]*)          # Variable name", </ins> "captures": { "1": { "patterns": [

Discussion:
VS Code Version: 1.52.1 Steps to Reproduce: !
at line number 20-23 syntax is wrong
That code runs correctly in PHP 8 ().
The syntax highlight is broken when you use an attribute and write code in the same line (method1) but also is incorrect when you write code in a param (method2) or you use line break (method3).
Noticed that this is better in the latest version of vscode, but they are missing tokens to be fully colored. Filed
Change:
} } } <ins> function parseImplicitActivationEvents(tree: JsonNode): Set<string> { const activationEvents = new Set<string>(); // commands const commands = findNodeAtLocation(tree, ['contributes', 'commands']); commands?.children?.forEach(child => { const command = findNodeAtLocation(child, ['command']); if (command && command.type === 'string') { activationEvents.add(`onCommand:${command.value}`); } }); // authenticationProviders const authenticationProviders = findNodeAtLocation(tree, ['contributes', 'authentication']); authenticationProviders?.children?.forEach(child => { const id = findNodeAtLocation(child, ['id']); if (id && id.type === 'string') { activationEvents.add(`onAuthenticationRequest:${id.value}`); } }); // languages const languageContributions = findNodeAtLocation(tree, ['contributes', 'languages']); languageContributions?.children?.forEach(child => { const id = findNodeAtLocation(child, ['id']); if (id && id.type === 'string') { activationEvents.add(`onLanguage:${id.value}`); } }); // customEditors const customEditors = findNodeAtLocation(tree, ['contributes', 'customEditors']); customEditors?.children?.forEach(child => { const viewType = findNodeAtLocation(child, ['viewType']); if (viewType && viewType.type === 'string') { activationEvents.add(`onCustomEditor:${viewType.value}`); } }); // views const viewContributions = findNodeAtLocation(tree, ['contributes', 'views']); viewContributions?.children?.forEach(viewContribution => { const views = viewContribution.children?.find((node) => node.type === 'array'); views?.children?.forEach(view => { const id = findNodeAtLocation(view, ['id']); if (id && id.type === 'string') { activationEvents.add(`onView:${id.value}`); } }); }); return activationEvents; } </ins>

Discussion:
Following the addition of implicit activation events in the November release, we'd like to provide lint warnings via the extension-editing extension when an extension declares activation events which are already implied by its declared contributions.
cc as a heads up--we previously discussed this in and at the time agreed that a simple warning for the reserved/internal event was sufficient. We've since updated the docs and extension samples to mention that you don't need to explicitly list many events anymore. In discussion with Kai, the next step to round out this work and make extension authors aware of the new behavior is to provide lint warnings for all redundant events in the extension-editing extension. Let me know if you have any questions or concerns.
Change:
import { ITaskService, ITaskSummary } from 'vs/workbench/contrib/tasks/common/taskService'; import { IConfigurationService } from 'vs/platform/configuration/common/configuration'; import { IWorkspaceFolder, IWorkspace } from 'vs/platform/workspace/common/workspace'; <del> import { ITaskEvent, TaskEventKind, ITaskIdentifier } from 'vs/workbench/contrib/tasks/common/tasks'; </del> <ins> import { ITaskEvent, TaskEventKind, ITaskIdentifier, Task } from 'vs/workbench/contrib/tasks/common/tasks'; </ins> import { IDialogService } from 'vs/platform/dialogs/common/dialogs'; import { IMarkerService, MarkerSeverity } from 'vs/platform/markers/common/markers'; import { IDebugConfiguration } from 'vs/workbench/contrib/debug/common/debug';

Discussion:
a debug config like and a task like F5. You're all good the window. Hit F5 again, and observe the terminal with the task gets restored. get this dialog. I don't really want either of these options, it's already a background task that should be in the 'end' state  or restart the task and try to F5 again. This doesn't work either and you have to reload the window to get debugging work again
Did this work until recently?
Also doesn't a pre launch task get run every time one debugs?
I think so... I honestly don't use preLaunchTask's as much as I should due to a history of papercuts, but I definitely haven't seen this notification before. Yea, but if it's a background task that's already running it shouldn't get run again. I'm not sure how much of this issue is in debug vs tasks
The task stops running on reload of the window because the terminal is killed. That's why it has to run again on window reload. Perhaps the solution is to not reconnect (IE restart) prelaunch tasks.
Currently, we persist any background task that has problem matchers.
Should have been fixed with , pls reopen if not
I can still repro in today's Insiders
are you reproducing using the task above?
I'm using a simpler task following the other issue:
works when I use . So has to do with debugging specifically
Change:
this.focusNext(); } else if (event.equals(KeyCode.Escape)) { this.cancel(); <del> } else if (event.equals(KeyCode.Enter) || event.equals(KeyCode.Space)) { // Nothing, just staying out of the else branch </del> <ins> } else if (this.isTriggerKeyEvent(event)) { // Staying out of the else branch even if not triggered if (this.options.triggerKeys && this.options.triggerKeys.keyDown) { this.doTrigger(event); } </ins> } else { eventHandled = false; }

Discussion:
Repro: Add keybinding: Find a quick fix, and hit alt+enter quickly. The first action is triggered. I was seeing this here (notice Promise not TPromise): !
Change:
commonProperties: (async () => { let machineId: string | undefined = undefined; try { <del> machineId = await resolveMachineId(stateService); </del> <ins> machineId = await resolveMachineId(stateService, logService); </ins> } catch (error) { if (error.code !== 'ENOENT') { logService.error(error);

Discussion:
When fails to get a mac address it still returns a generated mac id, but uses to log the error. That's a bit risky as it rely on VS Code to already have installed a . The default handler throws an exception in a timeout that can crash the process. (see issue ) IMO the better way would be to pass a logger to , e.g. the -move to -add to
if you support the idea I can provide a PR
that all sounds fine to me, thanks for looking into this. I didn't know this could cause a crash since it had been in desktop for so long.
Change:
return; } <del> historyService.addToHistory(notebookDocument.uri, value); </del> <ins> historyService.replaceLast(notebookDocument.uri, value); historyService.addToHistory(notebookDocument.uri, ''); </ins> textModel.setValue(''); notebookDocument.cells[index].resetTextBuffer(textModel.getTextBuffer());

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. --four cells from the interactive window input box, e.g. , , , reexecute multiple commands from earlier in your history, e.g. and use via the up arrow executing an entry from earlier in the history e.g. , scroll position resets to the bottom of the history, and you have to start over and scroll up from the most recent command (4 -3 - 2 -1). This can be frustrating for users who are trying to reexecute multiple commands. Note also that the original interactive window used to preserve your scroll history in the interactive window so that you didn't have to scroll back up through the entire history, and users have complained about this behavior change:
The expectation is that the interactive window input behaves just like a REPL. would address this. Per discussion with we should have shared logic for handing history traversal.
Any news on that? I agree with the PR that the current behavior is quite frustrating and deserves further attention.
Yes this is one of my main frustrations with the IW still. At minimum I just want the up arrow to go to the last executed code, not have cycle through like 20 cells every time I need to re-run something. And it did used to work this way ~1.5 yrs ago.