jiebi/CodeConvo huggingface dataset:
Change:
private _onProjectLanguageServiceStateChanged = new EventEmitter<Proto.ProjectLanguageServiceStateEventBody>(); private _onDidBeginInstallTypings = new EventEmitter<Proto.BeginInstallTypesEventBody>(); private _onDidEndInstallTypings = new EventEmitter<Proto.EndInstallTypesEventBody>(); <ins> private _onTypesInstallerInitializationFailed = new EventEmitter<Proto.TypesInstallerInitializationFailedEventBody>(); </ins> private _packageInfo: IPackageInfo | null; private _apiVersion: API;

Discussion:
VSCode Version: Code 1.10.0 (, 2017-03-01T17:09:34.031Z) OS Version: Linux x64 4.5.5-300.fc24.x86_64 Extensions: none Steps to Reproduce: -Does not show type-specific proposals There is a single file in the cache: with just the empty object in it. /cc
The root cause seems to be that is not installed. I'm investigating this on other platforms as well
Two issues are tracking this on the TypeScript side: No error being generated: Add error message to typings install failure:
With TS 2.2.2 insiders we just picked up, an error notification is now generated in this case. It still does not have a good user facing message about not having npm installed. That is being tracked by
We don't handle the new event from the TS Server yet.
Change:
export const defaultListStyles: IColorMapping = { listFocusBackground: listFocusBackground, listFocusForeground: listFocusForeground, <del> listActiveSelectionBackground: listActiveSelectionBackground, </del> <ins> listActiveSelectionBackground: darken(listActiveSelectionBackground, 0.1), </ins> listActiveSelectionForeground: listActiveSelectionForeground, listFocusAndSelectionBackground: listActiveSelectionBackground, listFocusAndSelectionForeground: listActiveSelectionForeground,

Discussion:
fyi Notice how I am using the up / down arrow to focus different elements in the tree. However some of those elements are also selected. So the issue is that there is no distinction if an element is selected, or selected + focused. !
After doing some digging, it turns out that I introduced this bug when fixing some accessibility issues (back in July) with I'll need to revisit the colors used here and see if I can re-use the lighten/darken function while still being accessible.
thanks. That would be great. Also note the same is true for light theme.
Here's what I did to try to find a color that works with our lighten/darken function without having to create a new theme token. is the only function that will pass the cc ratio across both light/dark themes. This is because is already at the lowest ratio (4.5:1) in the light theme and anything lighter will fail. I've created to fix this, below is a comparison of the two: <img width="1562" alt="image" src="https://user-"!
Adding verified
Change:
import { Disposable, IDisposable } from 'vs/base/common/lifecycle'; import { Event } from 'vs/base/common/event'; import { URI } from 'vs/base/common/uri'; <del> import { FilePermission, FileSystemProviderCapabilities, FileSystemProviderErrorCode, FileType, IFileDeleteOptions, IFileOverwriteOptions, IFileSystemProviderWithFileReadCapability, IStat, IWatchOptions } from 'vs/platform/files/common/files'; </del> <ins> import { FilePermission, FileSystemProviderCapabilities, FileSystemProviderErrorCode, FileType, IFileDeleteOptions, IFileOverwriteOptions, IFileSystemProviderWithFileReadWriteCapability, IStat, IWatchOptions } from 'vs/platform/files/common/files'; </ins> import { ChangeType, decodeEditSessionFileContent, EDIT_SESSIONS_SCHEME, IEditSessionsStorageService } from 'vs/workbench/contrib/editSessions/common/editSessions'; <ins> import { NotSupportedError } from 'vs/base/common/errors'; </ins> <del> export class EditSessionsFileSystemProvider implements IFileSystemProviderWithFileReadCapability { </del> <ins> export class EditSessionsFileSystemProvider implements IFileSystemProviderWithFileReadWriteCapability { </ins> static readonly SCHEMA = EDIT_SESSIONS_SCHEME;

Discussion:
Refs: I do not understand this condition: How does that make sure a method exists? The only check for this that is valid currently is , the is just a detail of the file system and not a capability.
This looks like an actual typo to me or missing code review, not sure the consequences, as it could lead to errors when wrongly asserting, so maybe moving to August for investigation.
TLDR I misunderstood how the declared capabilities relate to the actual declared methods and the meaning of . For context, this change came in through and the intention of this change was to support the scenario where an has declared but not : since is optional in the interface and the capability requires both and to be implemented: I made this change because when implementing a with but not , this would result in throwing here: I see how it's possible that a which has check does not have a method implemented. Additionally I see that we have other examples of how to handle the requirement of a readonly filesystem which implements both and , e.g.: I am reverting Apologies for the incorrect code change and thank you for pointing this out.
Change:
"settings": { "foreground": "#b267e6" } <ins> }, { "name": "this.self", "scope": "variable.language", "settings": { "foreground": "#c7444a" } }, { "name": "this.self", "scope": "variable.language", "settings": { "foreground": "#c7444a" } </ins> } ] }  No newline at end of file

Discussion:
VSCode Version: 1.13.0 OS Version: Mint 18 Steps to Reproduce: to print `this.someMethod(); You can see, that "this" is colorless. It's so bad, because I need with this highlight when I work with classes. For example comparsion between VS code(left) and Sublime (right). Also highlight for arguments sometimes is in place, sometimes is not. !
You can install extension for this. I recommended or
This is not a bug in the grammar. Other themes colorize just fine: ! Monokai does not however
Change:
resetStateMachine = true; } } else if (state === State.End) { <del> const chClass = classifier.get(chCode); </del> <ins> let chClass: CharacterClass; if (chCode === CharCode.OpenSquareBracket) { // Allow for the authority part to contain ipv6 addresses which contain [ and ] hasOpenSquareBracket = true; chClass = CharacterClass.None; } else { chClass = classifier.get(chCode); } </ins> // Check if character terminates link if (chClass === CharacterClass.ForceTermination) {

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.28.2 OS Version: Microsoft Windows 10 Pro, 10.0. Build Steps to Reproduce (2 problems): a source code file over an IPv6 URL and notice the faulty incomplete underline: ! Click the link: the default browser opens without accessing the URL <!-- Launch with to check. --Does this issue occur when all extensions are disabled? Yes
(Experimental duplicate detection) Thanks for submitting this issue. Please also check if it is already covered by an existing one, like: <!-- score: 0.463 --<!-- potentialduplicatescomment --
Change:
"title": "%command.previous%", "original": "Previous Conflict", "command": "merge-conflict.previous", <ins> "enablement": "!isMergeEditor", </ins> "icon": "$(arrow-up)" }, {

Discussion:
We have the extension which highlights git merge markers (using codelens and decorations) and we adds conflict navigation commands. This conflicts with the new merge editor and we should find ways to suppress it when merge is being used, e.g hide commands based on the context key
fyi - we did push some pragmatic changes to the merge-conflict extension to disable itself when the user enables the experimental git merge editor...
Change:
return null; } <del> interface IRenderer { render(text: string): string; } </del> class MDDocumentContentProvider implements vscode.TextDocumentContentProvider { private _context: vscode.ExtensionContext; private _onDidChange = new vscode.EventEmitter<vscode.Uri>(); private _waiting: boolean; <del> private _renderer: IRenderer; constructor(context: vscode.ExtensionContext) { </del> <ins> constructor(private engine: MarkdownEngine, context: vscode.ExtensionContext) { </ins> this._context = context; this._waiting = false; <del> this._renderer = this.createRenderer(); } private createRenderer(): IRenderer { const hljs = require('highlight.js'); const mdnh = require('markdown-it-named-headers'); const md = require('markdown-it')({ html: true, highlight: (str: string, lang: string) => { if (lang && hljs.getLanguage(lang)) { try { return `<pre class="hljs"><code><div>${hljs.highlight(lang, str, true).value}</div></code></pre>`; } catch (error) { } } return `<pre class="hljs"><code><div>${md.utils.escapeHtml(str)}</div></code></pre>`; } }).use(mdnh, {}); return md; </del> } private getMediaPath(mediaFile: string): string {

Discussion:
It's very hard to navigate a large markdown file, such as our release notes. Outline information would be very helpful, let's do this!
See
Change:
const endTime = extensionSegments[2 * j + 1]; extensionTotalTime += (endTime - startTime); } <del> profileInfo = { </del> <ins> extProfileInfo = { </ins> segments: extensionSegments, totalTime: extensionTotalTime };

Discussion:
Issue Type: <bBug</bAfter clicking "Stop Extensions Host Profile", the profile timings don't appear in the list. VS Code version: Code 1.54.3 (, 2021-03-15T10:55:45.459Z) OS version: WindowsNT x64 10.0. <details<summarySystem Info</summary </details<details<summaryExtensions (13)</summaryExtensionVersion ------ vscode-eslint2.1.19 EditorConfig0.16.4 go0.23.3 python2021.3. jupyter2021.3. remote-containers0.163.2 cpptools1.2.2 js-debug-nightly2021.3.2417 vs-keybindings0.2.0 vscode-github-issue-notebooks0.0.75 debugger-for-chrome4.12.12 rust0.7.8 vscode-lldb1.6.1 </details<details<summaryA/B Experiments</summary</details<!-- generated by issue reporter --
Change:
const onDidChangeCollapseStateRelay = new Relay<ICollapseStateChangeEvent<T, TFilterData>>(); const onDidChangeActiveNodes = new Relay<ITreeNode<T, TFilterData>[]>(); const activeNodes = this.disposables.add(new EventCollection(onDidChangeActiveNodes.event)); <del> this.renderers = renderers.map(r => new TreeRenderer<T, TFilterData, TRef, any>(r, () => this.model, onDidChangeCollapseStateRelay.event, activeNodes, _options)); </del> <ins> const renderedIndentGuides = new SetMap<ITreeNode<T, TFilterData>, HTMLDivElement>(); this.renderers = renderers.map(r => new TreeRenderer<T, TFilterData, TRef, any>(r, () => this.model, onDidChangeCollapseStateRelay.event, activeNodes, renderedIndentGuides, _options)); </ins> for (const r of this.renderers) { this.disposables.add(r); }

Discussion:
Type: <bBug</b! VS Code version: Code - Insiders 1.72.0-insider (, 2022-09-23T05:17:37.024Z) OS version: Windows_NT x64 10.0. Modes: Sandboxed: Yes /assign <!-- generated by issue reporter --
/assign
Completely agree on this. Tree ident guide highlights are pretty awful throughout the hole app, except the editor itself because of the color lines.
Great find!
Change:
group: '3_compare', order: 30, command: compareSelectedCommand, <del> when: ContextKeyExpr.and(ResourceContextKey.HasResource, WorkbenchListDoubleSelection) </del> <ins> when: ContextKeyExpr.and(ResourceContextKey.HasResource, WorkbenchListDoubleSelection, isFileOrUntitledResourceContextKey) </ins> }); MenuRegistry.appendMenuItem(MenuId.OpenEditorsContext, {

Discussion:
VSCode Version: 1.52.1 OS Version: Windows 10 Steps to Reproduce: a WebView tab, such as the Markdown preview. click on it in the Open Editors Section, and select "Select for Compare". click on any other item and select "Compare with Selected". ! Does this issue occur when all extensions are disabled?: Yes
//cc not sure we have a context key to use here already
Code pointer We would need to use that context key for all the compare context menu actions in the Open Editors view
isn't this just a matter of using for this command? We seem to be using this also to limit commands such as "Copy"?
you are correct, I checked and this is indeed the context key we needed here.
Will have to revert this due to
PR:
/verified
Change:
private _onDidChangeLogLevel = new EventEmitter<LogLevel>(); readonly onDidChangeLogLevel: Event<LogLevel> = this._onDidChangeLogLevel.event; <del> private _currentLogLevel: LogLevel; </del> <ins> private _currentLogLevel!: LogLevel; </ins> get currentLogLevel(): LogLevel { return this._currentLogLevel; } <ins> set currentLogLevel(value: LogLevel) { if (this._currentLogLevel === value) { return; } this._currentLogLevel = value; this._onDidChangeLogLevel.fire(value); this.log(localize('gitLogLevel', "Log level: {0}", LogLevel[value])); } </ins> <del> private _defaultLogLevel: LogLevel; </del> <ins> private _defaultLogLevel!: LogLevel; </ins> get defaultLogLevel(): LogLevel { return this._defaultLogLevel; }

Discussion:
Testing open the settings and change the setting open the git output view. Nothing has changed there, no message that the log level has change, not any debug messages the setting is only the initial level. It would be nice if a setting change also change the actual log level . Alternative describe in the settings description that the setting is only represents the initial log level, and that a reload is necessary. (I'd rather prefer the first approach as we want settings to be 'live')

Testing Version: 1.68.0-insider (user setup) Commit: Date: 2022-05-31T05:17:04.479Z Run the command and select Would be nice to get a message in the log
Looks like the the message is not shown as it is of type and is less than than. Would be good to always show it, regardless of the current and the new level. Same problem with the initial message when the output is started.
Change:
savePartsSplashSoon.schedule(); }, undefined, this._disposables); <del> configService.onDidChangeConfiguration(e => { </del> <ins> _configService.onDidChangeConfiguration(e => { </ins> if (e.affectsConfiguration('window.titleBarStyle')) { this._didChangeTitleBarStyle = true; this._savePartsSplash();

Discussion:
! cc
is this with latest from main, eg out of source? I believe there is no insiders with the larger titlebar (due to CC)
the activity bar also changes size... there must be more to it. I guess rapid render is getting wrong values. Do you use zoom?
Correct, this is main on OSS. Confirmed that I wasn't zoomed.
is there some conflict of zoom here? Even the watermark renders for a bit slightly enlarged before shrinking?
I can only reproduce with zoom enabled, e.g zoom in once or twice reload workbench rapid render but also water mark are wrongly sized during load
LGTM other than the window controls overlay (WCO), which is being tracked at
Change:
// Stub out all services instantiationService.stub(IEditSessionsLogService, logService); instantiationService.stub(IFileService, fileService); <ins> instantiationService.stub(ILifecycleService, new class extends mock<ILifecycleService>() { override onWillShutdown = Event.None; }); </ins> instantiationService.stub(INotificationService, new TestNotificationService()); instantiationService.stub(IEditSessionsWorkbenchService, new class extends mock<IEditSessionsWorkbenchService>() { }); instantiationService.stub(IProgressService, ProgressService);

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. -- introduces which controls when we attempt to restore an edit session for the current workspace. The user still has to remember to store their edit session or use the explicit Continue Working On trigger. In order to make it harder to lose edit sessions across , , , and RemoteHub on desktop, we should introduce a setting with initial setting values and . When set to , we'll attempt to store the current edit session (if any) before a workbench unload. This will only really reliably work in desktop because in web we cannot run long running tasks in the onbeforeunload handler (, tracked in ). To mitigate this we should also explore introducing an option to continuously sync edit sessions. That first requires tolerance of edit sessions originating from multiple VS Code clients concurrently.
On , we do have a service worker which is used primarily for caching. Service workers can outlive their associated pages, and can be synchronously 'd to like other workers. Perhaps we can use that service worker (or a new one) to allow the workbench to send information to save before it unloads.
Change:
return firstError; } <ins> // Handle zsh shell integration - Set $ZDOTDIR to a temp dir and create $ZDOTDIR/.zshrc if (this.shellLaunchConfig.env?.['_ZDOTDIR'] === '1') { const zdotdir = path.join(tmpdir(), 'vscode-zsh'); await fs.mkdir(zdotdir, { recursive: true }); const source = path.join(path.dirname(FileAccess.asFileUri('', require).fsPath), 'out/vs/workbench/contrib/terminal/browser/media/shellIntegration.zsh'); await fs.copyFile(source, path.join(zdotdir, '.zshrc')); this._ptyOptions.env = this._ptyOptions.env || {}; this._ptyOptions.env['ZDOTDIR'] = zdotdir; delete this._ptyOptions.env['_ZDOTDIR']; } </ins> try { await this.setupPtyProcess(this.shellLaunchConfig, this._ptyOptions); return undefined;

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/No 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: 1.65.0-insider OS Version: MacOS12.2.2 Steps to Reproduce: with setting new terminal <img width="1440" alt="image" src="https://user-"
Thanks, we're aware of this issue and have been working toward its resolution
Change:
'libatspi2.0-0 (>= 2.9.90)', 'libc6 (>= 2.17)', 'libcairo2 (>= 1.6.0)', <del> 'libcups2 (>= 1.6.0)', </del> 'libcurl3-gnutls | libcurl3-nss | libcurl4 | libcurl3', 'libdbus-1-3 (>= 1.0.2)', 'libdrm2 (>= 2.4.38)',

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: 1.73.1 OS Version: Gentoo Linux Starting with 1.72, vscode has a hard dependency on a printing library, otherwise it refuses to even start. CUPS is quite a heavy dependency and not all Linux installations have it. This is a bug for two reasons: does not even support printing () then, such heavy libraries shall be only loaded on demand.
So, can you arrange with electron to not include the dependency on a heavy printing library? Nobody has printers these days.
Do you know which vscode release is going to start using Electron 22?
Verified with
Change:
return result; } <del> public getChildren(): Item[] { var child = this.firstChild; var results = []; while (child) { results.push(child); child = child.next; } return results; } </del> private isAncestorOf(item: Item): boolean { while (item) { if (item.id === this.id) {

Discussion:
introduced a  API to the tree via I'm pretty sure that method's implementation can be achieved outside the tree itself. There are , and methods on it. If so, please remove the API method and implement on the search usage side.
This was to the tree with the idea in mind that it would be useful elsewhere like the file explorer. And in fact I'd really like to have the same behavior on the file explorer. So moving it into search code is not the right thing to do but it could go into some TreeHelper class outside of the tree itself.
No need to overload with classes. A simple util function would do.
I don't think this is actually achievable outside the tree itself with the current tree API. It needs to calculate the tree depth to collapse to, and the navigator from just returns elements of the tree without the context of where they are in the tree. IMO, it makes sense for this method to stay on the tree since it's coupled with the tree's data
Good point. But this is really only used for search. I don't really buy into the generic usefulness of this as an API call, which needs to be maintained for the entire tree's lifecycle. As far as I am aware, search trees can only go 2/3 levels deep, depending on whether there are multiple folders in the workspace or not. That knowledge is kept in the search's tree user; the same entity knows exactly what it should collapse or otherwise. Can't it just call the right calls?
Change:
const mouseOverDomEmitter = dom.addDisposableListener(htmlElement, dom.EventType.MOUSE_OVER, onMouseOver, true); const onFocus = () => { <del> if (hoverPreparation) { </del> <ins> if (isMouseDown || hoverPreparation) { </ins> return; } const target: IHoverDelegateTarget = {

Discussion:
! It's those 3 options that don't work, until there are multiple shells running. Once you have two or more shells, those options start working, as below I'm showing me renaming successfully the 2nd shell: ! Originally posted by in
I think related to this
PR fixing it
moving the issue with to this issue as it's not a recent regression