jiebi/CodeConvo huggingface dataset:
Change:
import { CONTEXT_DEBUG_STATE, CONTEXT_FOCUSED_SESSION_IS_ATTACH, CONTEXT_FOCUSED_SESSION_IS_NO_DEBUG, CONTEXT_IN_DEBUG_MODE, CONTEXT_MULTI_SESSION_DEBUG, CONTEXT_STEP_BACK_SUPPORTED, CONTEXT_SUSPEND_DEBUGGEE_SUPPORTED, CONTEXT_TERMINATE_DEBUGGEE_SUPPORTED, IDebugConfiguration, IDebugService, State, VIEWLET_ID } from 'vs/workbench/contrib/debug/common/debug'; import { EditorTabsMode, IWorkbenchLayoutService, LayoutSettings, Parts } from 'vs/workbench/services/layout/browser/layoutService'; import { Codicon } from 'vs/base/common/codicons'; <del> import { mainWindow } from 'vs/base/browser/window'; </del> <ins> import { CodeWindow, mainWindow } from 'vs/base/browser/window'; import { clamp } from 'vs/base/common/numbers'; </ins> const DEBUG_TOOLBAR_POSITION_KEY = 'debug.actionswidgetposition'; const DEBUG_TOOLBAR_Y_KEY = 'debug.actionswidgety';

Discussion:
So that you know that you are debugging. //cc
I'm not sure on this, personally I would find it kind of annoying to have the toolbar on all windows. Maybe it's a setting, or can be dragged between windows? (Is there reusable cross-window drag logic yet?)
To clarify: not visible on all windows at the same time, but visible on the window that has focus maybe? Otherwise, it will be quite hard to step through a file using mouse in floating windows?
I think having it appear in the active window (when in floating mode) is good.
We solved this issue for quick open where we also want to appear it at the window that has focus. For that, there is which will always be the right container to put global UI elements and is derived from the currently active window. There is a event that can be used to reparent the UI element live.
Thanks!!!
Verification: Start debugging, and drag an editor out to an aux window Make sure the debug toolbar appears on whichever window has focus The debug toolbar should reappear in the same place per-window as you focus it
Change:
// just to click into the one override there is. this.scopeOverridesIndicator.element.style.display = 'inline'; this.scopeOverridesIndicator.element.classList.remove('setting-indicator'); <del> this.scopeOverridesIndicator.element.removeAttribute('tabIndex'); </del> this.scopeOverridesIndicator.disposables.clear(); const prefaceText = element.isConfigured ?

Discussion:
Change the key event handling so that the user can tab once into the indicators container, and then use left/right arrows to focus on different indicators.
the Settings editor, search on the setting. tab should focus on the first indicator. again should go to the checkbox. -tabbing twice from there should focus the entire setting again. again to the indicator. The left and right arrow keys, along with the home and end keys should allow the user to focus onto the other indicators. indicators container should keep track of the focused indicator. If the second indicator is focused, and the user tabs to the checkbox and back, the second indicator should be the one focused rather than the first one.
Change:
this._register(this.tunnelService.onTunnelOpened(async (tunnel) => { const key = makeAddress(tunnel.tunnelRemoteHost, tunnel.tunnelRemotePort); if (!mapHasAddressLocalhostOrAllInterfaces(this.forwarded, tunnel.tunnelRemoteHost, tunnel.tunnelRemotePort) <ins> && !mapHasAddressLocalhostOrAllInterfaces(this.detected, tunnel.tunnelRemoteHost, tunnel.tunnelRemotePort) </ins> && !mapHasAddressLocalhostOrAllInterfaces(this.inProgress, tunnel.tunnelRemoteHost, tunnel.tunnelRemotePort) && tunnel.localAddress) { const matchingCandidate = mapHasAddressLocalhostOrAllInterfaces(this._candidates ?? new Map(), tunnel.tunnelRemoteHost, tunnel.tunnelRemotePort);

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. --I'm using the 'Remote - SSH' extension. Suppose I set up static forwarding in my local : So port 3000 is statically forwarded to port 3000. Now if I output a link to the terminal (from within the remote), when this link is 'Command + Clicked', vscode opens in the browser - the wrong port, because it's auto-forwarded to the next available port. It feels like if static forwarding for this port is already set up, it could always infer that no auto port forwarding is needed and hence open in the browser at port 3000. The setting does not help in this case. Thanks :)
does the SSH extension use () to ensure that statically forwarded ports like this show in the ports view?
Yes
Thanks for confirming!
This looks like it will be a larger change. Moving to September.
Hi. Just encountered this problem today. I am using VSCode Docker remotes with Docker Desktop. One of my containers is running minio. There is a static port forward configured in that looks like this: My application sometimes prints out a full URL to the integrated terminal that looks like Clicking that link to open it in my web browser causes VSCode to dynamically forward a brand new port and rewrite the URL replacing the 9000 with something like . I would actually be ok with that, but that URL with the new port number doesn't even work. The original one does work. My situation sounds basically the same as OP, only using Docker remote instead of SSH remote. Just wanted to share my use case to verify it is actually the same issue and that whatever solution comes will solve it for both of us. I also want to say this feature was very unexpected. Personally, I think it should be off by default. URLs should be opened exactly as they are written. Please provide at least a setting so I can always open URLs from integrated terminal exactly as they appear. The back of my mind also wonders if there could be any potential security implication of rewriting URLs this way. Thanks.
Change:
*/ export class Protocol implements IMessagePassingProtocol { <del> readonly onMessage = Event.fromDOMEventEmitter<VSBuffer>(this.port, 'message', (e: MessageEvent) => VSBuffer.wrap(e.data)); </del> <ins> readonly onMessage = Event.fromDOMEventEmitter<VSBuffer>(this.port, 'message', (e: MessageEvent) => { if (e.data) { return VSBuffer.wrap(e.data); } return VSBuffer.alloc(0); }); </ins> constructor(private port: MessagePort) {

Discussion:
Here we have a stack trace which hints that a from the extension host utility process to the renderer process ended up firing a message event on the renderer process with a property which is null ( is null).
values are possible if de-serialization .
Change:
ul>li.item$*5 ||| <del> >**Tip:** The [Emmet cheat sheet](http://docs.emmet.io/cheat-sheet/) is a great source of Emmet syntax suggestions. To expand Emmet abbreviations and snippets using the |tab| key use the |emmet.triggerExpansionOnTab| [setting](command:workbench.action.openGlobalSettings). Check out the docs on [Emmet in VS Code](https://code.visualstudio.com/docs/editor/emmet) to learn more. </del> <ins> >**Tip:** The [Emmet cheat sheet](https://docs.emmet.io/cheat-sheet/) is a great source of Emmet syntax suggestions. To expand Emmet abbreviations and snippets using the |tab| key use the |emmet.triggerExpansionOnTab| [setting](command:workbench.action.openGlobalSettings). Check out the docs on [Emmet in VS Code](https://code.visualstudio.com/docs/editor/emmet) to learn more. </ins>

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.39.2 (user setup) OS Version: WindowsNT x64 10.0. Steps to Reproduce: menu -Help -Interactive Editor Playground. to section on Emmet. on the link to the Emmet Cheat sheet in the tip section on Emmet. confirmation box opens, with a link to a HTTP page. <!-- Launch with to check. --Does this issue occur when all extensions are disabled?: Yes What I expected to see: Link uses HTTPS. What I actually saw: Link uses HTTP. Screenshot of box: !
Change:
const tree = this._tree as WorkbenchDataTree<OutlineModel, any, FuzzyScore>; tree.setInput(model); <ins> const textModel = model.textModel; const overrideConfiguration = { resource: textModel.uri, overrideIdentifier: textModel.getLanguageIdentifier().language }; this._outlineComparator.type = this._getOutlineItemCompareType(overrideConfiguration); </ins> if (element !== model) { tree.reveal(element, 0.5); tree.setFocus([element], this._fakeEvent);

Discussion:
The setting "breadcrumbs.symbolSortOrder" cannot be enabled for a specific language, i.e. "[markdown]": { "breadcrumbs.symbolSortOrder": "position" } is not possible in the settings. It makes sense to sort by position in markdown files to see headers and subheaders as they are. However, one might want to display symbols by type when writing code. Thank you in advance!
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!
Actually not a duplicate but should be straight forward to implement as filter-options can already be defined per language
Could you point me towards how to get the current resource from the editor model inside ?
The  has a reference to the text model
to verify, have this setting and a file with this content (symbol should be sorted alphabetically) Now, paste the same content into and make sure symbols are sorted by position
Change:
this.defaultSettingsEditorModel = model; options = options || validateSettingsEditorOptions({}); <del> if (!this.viewState.settingsTarget) { if (!options.target) { </del> <ins> if (!this.viewState.settingsTarget || !this.settingsTargetsWidget.settingsTarget) { const optionsHasViewStateTarget = options.viewState && (options.viewState as ISettingsEditorViewState).settingsTarget; if (!options.target && !optionsHasViewStateTarget) { </ins> options.target = ConfigurationTarget.USER_LOCAL; } }

Discussion:
Issue Type: <bBug</bthe settings UI. for a setting (e.g. "inlay"). the settings tab to a new editor group. Note that the search you entered previously has been cleared. https://user- VS Code version: Code 1.60.0 (, 2021-09-01T10:54:53.442Z) OS version: Darwin x64 20.6.0 Restricted Mode: No <details<summarySystem Info</summary </details<details<summaryExtensions (26)</summaryExtensionVersion ------ vscode-css-formatter1.0.1 vscode-nginx-conf0.1.3 reorder-lines-by-length1.0.2 docs-view0.0.9 pgformatter1.17.0 vscode-eslint2.1.25 gitlens11.6.0 vscode-diff1.4.2 shell-format7.1.0 go0.27.2 postgresql0.0.2 rainbow-csv1.9.1 render-crlf1.5.21 template-string-converter0.5.3 python2021.9. vscode-pylance2021.9.2 jupyter2021.8. jupyter-keymap1.0.0 debugger-for-chrome4.13.0 nbsp-vscode0.0.1 vscode-commons0.0.6 vscode-yaml0.22.0 final-newline0.3.2 vscode-hexdump1.8.1 change-case1.0.0 markdown-all-in-one3.4.0 </details<details<summaryA/B Experiments</summary</details<!-- generated by issue reporter --
A function called in is being called after the drop, which is correct. But, the function in the same file name isn't being called when the user does step 3 above. Another repro is to use the "move editor to X group" commands. Therefore, the fix doesn't have to do directly with dnd.
Change:
} export class FeedbackDropdown extends Dropdown { <del> protected static MAX_FEEDBACK_CHARS: number = 140; </del> <ins> protected maxFeedbackCharacters: number; </ins> protected feedback: string; protected sentiment: number;

Discussion:
Due to being appended to it !
this looks like a good place to start off, is this something I can help with?
:+1: it's marked help wanted which probably means won't get to it any time soon.
Go for it, this is a great issue to start contributing to Code. Let me know if you need any help.
Awesome, I am on it! :)
Please review :) Couldn't find any unit tests for this, did I miss it?
Change:
"vscode-ripgrep": "^1.5.7", "vscode-sqlite3": "4.0.9", "vscode-textmate": "4.4.0", <del> "xterm": "4.3.0-beta.28.vscode.1", </del> <ins> "xterm": "4.4.0-beta.13", </ins> "xterm-addon-search": "0.4.0-beta4", "xterm-addon-web-links": "0.2.1", <del> "xterm-addon-webgl": "0.4.0-beta.11", </del> <ins> "xterm-addon-webgl": "0.5.0-beta.7", </ins> "yauzl": "^2.9.2", "yazl": "^2.4.3" },

Discussion:
Re macOS zsh with oh my zsh Run scripts described in Open with Canvas rendering and select all ! Open with WebGL rendering ! !
Upstream: I think the problem with inverse is the only issue there? Let me know if I'm wrong.
yup, that's the only issue I saw.
Change:
return null; } const selection = this._editor.getSelection(); <del> // const position = this._editor.getPosition(); </del> return { <del> position: selection.getPosition(), preference: [ selection.getPosition().equals(selection.getStartPosition()) ? ContentWidgetPositionPreference.ABOVE : ContentWidgetPositionPreference.BELOW, ContentWidgetPositionPreference.EXACT ] </del> <ins> position: selection.getStartPosition(), preference: [ContentWidgetPositionPreference.ABOVE, ContentWidgetPositionPreference.EXACT] </ins> }; }

Discussion:
Testing I really like this new mode. One thing that I noticed at least while I was testing was that the "listening indicator" appeared below the code selection, but when the recording completed, inline chat appeared above the code selection. I think that it would be nice if both UI elements would use the same anchor location.
Today the indicator appears at the active end of the selection (where the cursor is) and it positions itself so that it doesn't cover the selection. This might be too much and we can simply use the selection start and always show above that.
Change:
default: 'fromEditor' }, [NotebookSetting.outputLineHeight]: { <del> markdownDescription: nls.localize('notebook.outputLineHeight', "Line height of the output text for notebook cells.n - When set to 0, editor line height is used.n - Values between 0 and 8 will be used as a multiplier with the font size.n - Values greater than or equal to 8 will be used as effective values."), </del> <ins> markdownDescription: nls.localize('notebook.outputLineHeight', "Line height of the output text within notebook cells.n - When set to 0, editor line height is used.n - Values between 0 and 8 will be used as a multiplier with the font size.n - Values greater than or equal to 8 will be used as effective values."), </ins> type: 'number', default: 0, tags: ['notebookLayout'] }, [NotebookSetting.outputFontSize]: { <del> markdownDescription: nls.localize('notebook.outputFontSize', "Font size for the output text for notebook cells. When set to 0, {0} is used.", '`#editor.fontSize#`'), </del> <ins> markdownDescription: nls.localize('notebook.outputFontSize', "Font size for the output text within notebook cells. When set to 0, {0} is used.", '`#editor.fontSize#`'), </ins> type: 'number', default: 0, tags: ['notebookLayout'] }, [NotebookSetting.outputFontFamily]: { <del> markdownDescription: nls.localize('notebook.outputFontFamily', "The font family for the output text for notebook cells. When set to empty, the {0} is used.", '`#editor.fontFamily#`'), </del> <ins> markdownDescription: nls.localize('notebook.outputFontFamily', "The font family of the output text within notebook cells. When set to empty, the {0} is used.", '`#editor.fontFamily#`'), </ins> type: 'string', tags: ['notebookLayout'] },

Discussion:
Testing This doesn't read well to me: <img width="643" alt="image" src="https://user-"Suggestion:
Similar improvements could be made to the other settings. The "" in particular: <img width="265" alt="image" src="https://user-"
Thanks for the feedback, the suggestion looks good.
Change:
import { AccessibleDiffViewer, AccessibleDiffViewerModelFromEditors } from 'vs/editor/browser/widget/diffEditor/components/accessibleDiffViewer'; import { DiffEditorDecorations } from 'vs/editor/browser/widget/diffEditor/components/diffEditorDecorations'; import { DiffEditorSash } from 'vs/editor/browser/widget/diffEditor/components/diffEditorSash'; <del> import { HideUnchangedRegionsFeature } from 'vs/editor/browser/widget/diffEditor/features/hideUnchangedRegionsFeature'; </del> import { DiffEditorViewZones } from 'vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/diffEditorViewZones'; <ins> import { HideUnchangedRegionsFeature } from 'vs/editor/browser/widget/diffEditor/features/hideUnchangedRegionsFeature'; </ins> import { MovedBlocksLinesFeature } from 'vs/editor/browser/widget/diffEditor/features/movedBlocksLinesFeature'; import { OverviewRulerFeature } from 'vs/editor/browser/widget/diffEditor/features/overviewRulerFeature'; <ins> import { RevertButtonsFeature } from 'vs/editor/browser/widget/diffEditor/features/revertButtonsFeature'; </ins> import { CSSStyle, ObservableElementSizeObserver, applyStyle, applyViewZones, bindContextKey, readHotReloadableExport, translatePosition } from 'vs/editor/browser/widget/diffEditor/utils'; import { IDiffEditorOptions } from 'vs/editor/common/config/editorOptions'; import { IDimension } from 'vs/editor/common/core/dimension';

Discussion:
a change it using the gutter arrow :bug: indentation is lost
Can you share a screenshot/screenrecording and provide context on the document you have? Thanks!
Cannot reproduce: ! Please always try to include as much context as you can.
This issue has been closed automatically because it needs more information and has not had recent activity. See also our guidelines. Happy Coding!
Hi Henning I think I can also reproduce this in 1.84.0-insider (MacOS). I believe the preconditions to reproduce is to set (which is also the default) and revert a deleted code chunk. See attached gif. !
Hey this issue might need further attention. you can help us out by closing this issue if the problem no longer exists, or adding more information.
Change:
: l10n.t('Select a branch or tag to checkout'); quickPick.show(); picks.push(... await createCheckoutItems(repository, opts?.detached)); <del> quickPick.items = [...commands, ...picks]; </del> <ins> const setQuickPickItems = () => { switch (true) { case quickPick.value === '': quickPick.items = [...commands, ...picks]; break; case commands.length === 0: quickPick.items = picks; break; case picks.length === 0: quickPick.items = commands; break; default: quickPick.items = [...picks, { label: '', kind: QuickPickItemKind.Separator }, ...commands]; break; } }; setQuickPickItems(); </ins> quickPick.busy = false; const choice = await new Promise<QuickPickItem | undefined>(c => {

Discussion:
Type: <bBug</ba workspace open the branch picker and type Bug The first time you do this, sometimes you end up with an unordered list: ! The correct order shows up when you keep start typing or try doing this again: ! VS Code version: Code - Insiders 1.91.0-insider (Universal) (, 2024-06-26T10:12:33.304Z) OS version: Darwin arm64 23.5.0 Modes: <details<summarySystem Info</summary </details<!-- generated by issue reporter --
Change:
/** * Event triggered by extensions to signal to VS Code that an edit has occurred on an {@link CustomDocument `CustomDocument`}. * <del> * @see {@link CustomDocumentProvider.onDidChangeCustomDocument `CustomDocumentProvider.onDidChangeCustomDocument`}. </del> <ins> * @see {@link CustomEditorProvider.onDidChangeCustomDocument `CustomEditorProvider.onDidChangeCustomDocument`}. </ins> */ interface CustomDocumentEditEvent<T extends CustomDocument = CustomDocument> {

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. --- VS Code Version: 1.56.1 OS Version: Windows 10 Prof 64 Bit Steps to Reproduce: CustomDocumentProvider to CustomEditorProvider line 7747 line 7786 TaskProvider line 6697: create a md link from #tasks.registerTaskProvider <!-- Launch with to check. --Does this issue occur when all extensions are disabled?: Yes/No <!-- If you answered No above, use 'Help: Start Extension Bisect' from Command Palette to try to identify the cause. --<!-- Issues caused by an extension need to be reported directly to the extension publisher. The 'Help Report Issue' dialog can assist with this. --
Hi, I would like to look into this issue. Could I be assigned ?
I'm new to this, but I'm eager to learn!
Hello, can I work on this issue ?
This is a very small change so please just submit a PR
Change:
const url = error?.url; if (error && url) { const label = error.urlLabel ? error.urlLabel : nls.localize('moreInfo', "More Info"); <ins> const uri = URI.parse(url); // Use a suffixed id if uri invokes a command, so default 'Open launch.json' command is suppressed on dialog const actionId = uri.scheme === Schemas.command ? 'debug.moreInfo.command' : 'debug.moreInfo'; </ins> return errors.createErrorWithActions(userMessage, { <del> actions: [new Action('debug.moreInfo', label, undefined, true, async () => { this.openerService.open(URI.parse(url), { allowCommands: true }); </del> <ins> actions: [new Action(actionId, label, undefined, true, async () => { this.openerService.open(uri, { allowCommands: true }); </ins> })] }); }

Discussion:
Issue Type: <bBug</bDebug adapters have long been able to provide uris along with error responses, and these uris add buttons to the error dialog. Now that my PR has merged these can be command uris. However it is not currently possible to prevent an extra 'Open ' button being to the error dialog. In some situations there may be no point in the user opening Instead they should use a button that the error response . would it be reasonable for us to suppress addition of the 'Open ' button when the error is adding its own command-type button(s)? Limiting the change in this way should minimize the chance of upsetting existing DAs which return uris with their errors. It's unlikely they have been returning command-type uris because until now these haven't been actionable. VS Code version: Code - Insiders 1.57.0-insider (, 2021-05-14T20:13:58.234Z) OS version: Windows_NT x64 10.0. <!-- generated by issue reporter --
this sounds reasonable. What is your exact use case? Just to check if other debug adapters might also profit here. fyi
my specific use case is that our implementation of launchRequest may determine that there is no debugging license for the target server. In this situation we want to help the user run the command which submits a request for a license. There is no point in suggesting that they edit their file. Are you happy for me to submit a PR?
Let's best wait and see feedback before you create a PR. Thanks
Yes, this request makes sense - feel free to submit a PR.
friendly ping for this, just to check if you are interested in tackling this. If not I might move out of this milestone. Thanks!
thanks for the ping. I still plan to get a PR in for August.
PR submitted
Lovely, thanks! Let me review it.
Would also be great if you double check with you debugger once we have a new Insiders on Monday. Thanks!
/verified
can you maybe also create a PR for the release notes for this feature? Here's the document And Andre and me left a TODO for you. Let me know if you do not have time and I can cover this. Thanks!
Submitted as You are welcome to edit it if you think the text needs improving.
Change:
await testObject.run(); <del> assert.strictEqual(testObject.verificationStatus, ExtensionVerificationStatus.Verified); </del> <ins> assert.strictEqual(testObject.verificationStatus, true); </ins> assert.strictEqual(testObject.installed, true); });

Discussion:
Continue installing the extension when signature verification fails - Report the error in telemetry CC
To verify: Install extension and make sure the extension is installed successfully. Also make sure you see following in the Shared log