jiebi/CodeConvo huggingface dataset:
Change:
.then(null, ignore('ENOENT', false)); } <del> private createBinFolder(): TPromise<void> { </del> <ins> private createBinFolderAndSymlink(): TPromise<void> { </ins> return new TPromise<void>((c, e) => { const buttons = [nls.localize('ok', "OK"), nls.localize('cancel2', "Cancel")]; this.dialogService.show(Severity.Info, nls.localize('warnEscalation', "Code will now prompt with 'osascript' for Administrator privileges to install the shell command."), buttons, { cancelId: 1 }).then(choice => { switch (choice) { case 0 /* OK */: <del> const command = 'osascript -e "do shell script "mkdir -p /usr/local/bin && chown " & (do shell script ("whoami")) & " /usr/local/bin" with administrator privileges"'; </del> <ins> const command = 'osascript -e "do shell script "mkdir -p /usr/local/bin && ln -sf '' + getSource() + '' '' + this.target + ''" with administrator privileges"'; </ins> nfcall(cp.exec, command, {}) .then(null, _ => TPromise.wrapError(new Error(nls.localize('cantCreateBinFolder', "Unable to create '/usr/local/bin'."))))

Discussion:
Issue Type: <bBug</bInstalling command line tool changes ownership of away from to . Also, symlink is created as owned by . Please don't do that: not everyone is using Homebrew. VS Code version: Code 1.21.1 (, 2018-03-14T14:39:09.335Z) OS version: Darwin x64 17.4.0 <details<summarySystem Info</summary </details<details<summaryExtensions (4)</summaryExtensionVersion ------ solargraph0.13.0 Ruby0.17.0 slim0.1.2 ayu0.14.0 </detailsReproduces without extensions <!-- generated by issue reporter --
how did you install VS Code ?
Straight from the official , on a fresh new (re)install of macOS. Since I knew about the behaviour beforehand I checked the status at each step so as to open this issue: unzip move to start at this point there are no changes: is still + then a warning dialog shows up about launching an AppleScript through which will need elevated privileges, hence ask for authentication provide authentication when asked at this point, has been installed and ownership has been altered Expected behaviour: preserve ownership install inheriting ownership of
It's a good catch, though I was expecting this issue to come up much much earlier. This has been working this way for 2 years and I believe it's the first time someone has mentioned it. I'll accept a PR to fix it.
Not surprising since I suppose most people use Homebrew on Darwin, and of those who do not, many won't go and randomly check ownership of that folder, which typically occurs only once since as soon as the symlink is there no further operation is required, and the manual fix is thus a one-shot job. I merely happen to care about such things as programs requiring me to enter admin credentials and so have noticed the behaviour some time ago but was only with it due to a reinstall, so thought I might as well bring it up. Anyway, PR opened.
Change:
return { label, disposables: new DisposableStore() }; } renderElement(element: ITreeNode<SCMViewSeparatorElement, void>, index: number, templateData: SeparatorTemplate, height: number | undefined): void { <del> templateData.label.setLabel(element.element.label); </del> <ins> templateData.label.setLabel(element.element.label, undefined, { title: element.element.ariaLabel }); </ins> } renderCompressedElements(node: ITreeNode<ICompressedTreeNode<SCMViewSeparatorElement>, void>, index: number, templateData: SeparatorTemplate, height: number | undefined): void {

Discussion:
Testing a screenreader. to the Incoming/Outgoing part of the SCM viewlet. Actual: "Incoming/Outgoing". Expected: something like "Incoming and outgoing changes" screenreader reads origin/some-branch-name for the incoming changes. Expected: "origin/some-branch-name incoming" or "incoming changes from origin/some-branch-name" screenreader reads some-branch-name for the outgoing changes. Expected: "some-branch-name outgoing" or "outgoing changes from some-branch-name" CC for alternative suggestions
Great point, we should lead with the info, so place "outgoing" or "incoming" before the branch name in this case.
I have confirmed that the titles show up upon hovering over the entries, but that NVDA still reads the text as-is rather than reading the title text. Reopening.
That's interesting given that I am using the IconLabel widget's property to set the aria label.
Change:
forceShellIntegration: true, useShellEnvironment: true }); <del> this._integratedTerminalInstances.insert(terminal, termKey); </del> <ins> this._integratedTerminalInstances.insert(terminal, shellConfig); </ins> } else { cwdForPrepareCommand = args.cwd;

Discussion:
See The change that caused this was a standalone fix for a relatively minor bug, so I will back it out for now.
I'm able to debug a JS file on macOS now with nvm and a launch configuration that contains .
Just a FYI - I don't use nvm but experienced this issue. The recent update fixed it for me, thanks!!
Change:
return false; } <ins> private _updateCwd(value: string) { this._createOrGetCwdDetection().updateCwd(value); const commandDetection = this.capabilities.get(TerminalCapability.CommandDetection); commandDetection?.setCwd(value); } </ins> private _doHandleITermSequence(data: string): boolean { if (!this._terminal) { return false;

Discussion:
Part of We want to support other common shell integration sequences as fallbacks to the VS Code specific one ()
can you add verification steps for this?
On Windows Disable shell integration Open pwsh 7+ Run the following: It should change the terminal tab's description to .

Part of We want to support other common shell integration sequences as fallbacks to the VS Code specific one ()
can you add verification steps for this?
Disable shell integration Open pwsh 7+ Run the following: It should change the terminal tab's description to .

Part of We want to support other common shell integration sequences as fallbacks to the VS Code specific one () Code pointer:
I'm taking this.
sounds good
I've just submitted the PR. You can check it anytime you want.
can you add verification steps for this?
Disable shell integration Open pwsh 7+ Run the following: It should change the terminal tab's description to .
Change:
weight: KeybindingWeight.WorkbenchContrib, when: TerminalContextKeys.tabsFocus }, <del> run: (instance, c) => c.service.safeDisposeTerminal(instance), runAfter: (instances, c) => c.groupService.focusTabs() </del> <ins> run: async (c, accessor) => { for (const terminal of getSelectedInstances(accessor) ?? []) { c.service.safeDisposeTerminal(terminal); } c.groupService.focusTabs(); } </ins> }); registerTerminalAction({

Discussion:
Repro: Open multiple terminals Select multiple terminal tabs Right click and change color Change color only a single terminal is changed Real context stored with the action was done recently as part of Related:
/duplicate
Tracking each action separately
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 . See also our . Happy Coding!
I'm not sure this is worth fixing as color is meant to differentiate between tabs. Same for the icon/ renaming.
you might want multiple red though, right now it doesn't work as expected. We were actually doing this wrong by querying which tabs were selected also, after we get the actual instances this was triggered on passed into the action, so we can probably remove the special tab instance command as part of this.

Repro: Open multiple terminals Select multiple terminal tabs Right click and change icon Change icon only a single terminal is changed Real context stored with the action was done recently as part of Related:
Change:
# Support files cp -r usr/share/applications/%{name}.desktop %{buildroot}%{_datadir}/applications cp -r usr/share/applications/%{name}-url-handler.desktop %{buildroot}%{_datadir}/applications <ins> cp -r usr/share/appdata/%{name}.appdata.xml %{buildroot}%{_datadir}/appdata </ins> cp -r usr/share/mime/packages/%{name}-workspace.xml %{buildroot}%{_datadir}/mime/packages/%{name}-workspace.xml cp -r usr/share/pixmaps/@@ICON@@.png %{buildroot}%{_datadir}/pixmaps # Shell completions

Discussion:
Neither the vscode repository nor the package itself provide any appdata, which is important to have gnome-software working properly. The vscode repository should generate appstream data (xml) and provide them. So the PackageKit can save it into /var/cache/app-info/xmls/. The itself also should install a into /usr/share/metainfo/. Look here:
I believe we include in the root of the package, is that not the case?
Unfortunately, it is not the case. There's no or file. Output from : The preferred place for that appdata file is Then the repository creation should also include generating AppStream repository metadata. The mechanics of doing this is documented here: (Ignore the argument, that should not be used)
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.
This issue has been closed automatically because it needs more information and has not had recent activity. See also our guidelines. Happy Coding!
This should be reopened, because it's still broken.
Confirmed that the deb package is good but that the rpm package has this issue.
I have about 200 messages coming a day I don't know what happened how do I unsubscribe from this Microsoft thing vs code please advise
see
Verification steps: the on a Linux distribution with rpm (the link downloads an x64 .rpm file) in a terminal that shows up.
Change:
this._progressBar.infinite().show(); <ins> const replacePattern = this.replacePattern; const cellFindMatches = this._findModel.findMatches; let replaceStrings: string[] = []; cellFindMatches.forEach(cellFindMatch => { const findMatches = cellFindMatch.matches; findMatches.forEach(findMatch => { const matches = findMatch.matches; replaceStrings.push(replacePattern.buildReplaceString(matches, this._state.preserveCase)); }); }); </ins> const viewModel = this._notebookEditor._getViewModel(); <del> viewModel.replaceAll(this._findModel.findMatches, this.replaceValue).then(() => { </del> <ins> viewModel.replaceAll(this._findModel.findMatches, replaceStrings).then(() => { </ins> this._progressBar.stop(); }); }

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. --In Jupyter Notebooks, finding witrh regex works but replacing with capturing groups doesn't. I'd like if it does. I tried as in the usual editor, but the replacement treats as literal. I had to work around by copying the code section to the usual editor, and then find and replace. This seems like an inconsistent UX, and personally quite inconvinient.
Should I have opened this at ? If so, please close this so I can move on.
Thanks again for the help, it makes the find experience in notebook closer to the normal text editor one.
did you create a test plan item for this? I just the verification needed to it.
Change:
() => this.audioCueService.isCueEnabled(cue) )); <ins> private readonly isAlertEnabledCache = new CachedFunction<AudioCue, IObservable<boolean>>((cue) => observableFromEvent( this.audioCueService.onAlertEnabledChanged(cue), () => this.audioCueService.isAlertEnabled(cue) )); </ins> constructor( @IEditorService private readonly editorService: IEditorService, @IInstantiationService private readonly instantiationService: IInstantiationService,

Discussion:
Testing "Audio Cues: Line Has Warning" is set to false. "Accessibility Alert: Warning" is set to true. I generated a warning by using the Markdown Lint extension and writing text into a new Markdown file without an h1 header. When I turn on the audio cue, the accessibility alert also alerts me that there's a warning. When I turn off the audio cue but leave the accessibility alert on, the accessibility alert does not alert me that there's a warning.
I cannot seem to trigger a warning - can you pls give more specific instructions about how to do so? !
Install the extension. Then create a .md file and paste in the following The extension should already generate a warning.
Note this issue when verifying . When I tested using a screen reader, the warning only appeared once. Based on debugging (the call happens), I believe when using a braille device, this works.
Change:
const isPrimary = isPrimaryGroup(group); if (isPrimary) { <del> const to = Array.isArray<IAction>(target) ? target : target.primary; </del> <ins> const to = Array.isArray(target) ? target : target.primary; </ins> if (to.length > 0) { to.push(new VerticalSeparator());

Discussion:
What is the reasoning behind not allowing via the Monaco standalone editor checks? It seems to be valid ES6 when I look at where it is defined:
idk - requires at least edge 14, unsure what our edge minimum version is:
Looking at the compat tables, I think it should be safe to use it. I guess it must have been a left-over from the IE era. I don't remember adding any rule like this, so I don't know where to begin looking to remove it. Leaving it to you .
I opened to do this and it has the advantage that we can get rid of another file in our folder () which actually even seems to have the wrong signature compared to TS. According to , Edge 13 has very low usages and Edge 14 is out since 2016: !
Unsure how and are connected. Or is this two clean-ups in one? I have the latter because for the longest time there was a TS bug which would remove type info from arrays after checking E.g If that's now fixed, I am very happy with removing
ah good to know, I just checked both in our code and the playground and I see that this no longer seems to be the case: ! I will go ahead and merge my PR then.
it
Change:
} .monaco-editor .sticky-line-root { <ins> background-color : inherit; </ins> overflow : hidden; white-space : nowrap; width : 100%;

Discussion:
open two editor side by side drag the sidebar sash and the sash between the editors there will be screen cheese, looks like a redraw is missing at time <img width="1025" alt="Screenshot 2022-12-08 at 11 53 29" src="https://user-"
Change:
// editor.wordWrap const wordWrapConfig = this.configurationService.inspect('editor.wordWrap', { overrideIdentifier: 'scminput' }); <del> const wordWrap = wordWrapConfig.overrideIdentifiers?.includes('scminput') ? EditorOptions.wordWrap.validate(wordWrapConfig) : 'on'; </del> <ins> const wordWrap = wordWrapConfig.overrideIdentifiers?.includes('scminput') ? EditorOptions.wordWrap.validate(wordWrapConfig.value) : 'on'; </ins> return { rulers, wordWrap }; }

Discussion:
Testing It seems whenever I add the setting word wrap is off and when I remove it it is turned on (it is off for the setting without language selector):
Change:
} } <ins> cleanupCommitEditMessage(message: string): string { //TODO: Support core.commentChar return message.replace(/^s*#.*$n?/gm, '').trim(); } async getMergeMessage(): Promise<string | undefined> { const mergeMsgPath = path.join(this.repositoryRoot, '.git', 'MERGE_MSG'); try { const raw = await readfile(mergeMsgPath, 'utf8'); return raw.trim(); } catch { return undefined; } } </ins> async getCommitTemplate(): Promise<string> { try { const result = await this.run(['config', '--get', 'commit.template']);

Discussion:
VSCode Version: 1.1.1 OS Version: OS X Steps to Reproduce: into a merge conflict accepting Git's default message. It's equal to is no way to do that!
Will mention that it's also equivalent to and saving the default message that shows up in your editor - hence a very common workflow
My workaround is to invoke from a terminal. Maybe if the commit message field is empty, VSCode could just call as well and leave it up to user's configuration what happens (in my case, it would open a text editor from my system variable, which is fine).
Has the pull request been reviewed yet? Can it be pulled in?
Verification: When having a merge commit, VS Code should now automatically populate the input box with the default git merge commit message, so the user can just accept it.
Change:
import { URI } from 'vs/base/common/uri'; import { IMarker, IMarkerData, IMarkerService, IResourceMarker, MarkerSeverity, MarkerStatistics } from './markers'; <ins> export const unsupportedSchemas = new Set([Schemas.inMemory, Schemas.vscodeSourceControl, Schemas.walkThrough, Schemas.walkThroughSnippet]); </ins> class DoubleResourceMap<V>{ private _byResource = new ResourceMap<Map<string, V>>();

Discussion:
Testing <img width="1617" alt="image" src="https://user-"
I can't get squiggles to show up for the commit input box at all, even after following the steps from the linked TPI. What are some steps to verify this, or maybe someone else can verify?
Thanks Reopening the bug as the fix for this has introduced a regression.
Checked in a better fix for this issue. Should be included in tomorrow's Insiders release (2022-08-26).
closedWith
Verified, but the actions in the hover don't do anything: !
Thanks I have filed to track the issue with the actions.
Change:
}, error: error => logger.log(`download stable code error: ${error}`) } <del> }), 'download stable code', logger); </del> <ins> }), 'download stable code', logger), 1000, 3, () => new Promise<void>((resolve, reject) => { rimraf(stableCodeDestination, { maxBusyTries: 10 }, error => { if (error) { reject(error); } else { resolve(); } }); })); </ins> if (process.platform === 'darwin') { // Visual Studio Code.app/Contents/MacOS/Electron

Discussion:
It looks like the smoke test had a generic startup error caused by a TLS stream (maybe a https request?)
This is from using the module to download VSCode: did you see this before?
One idea would be to wrap is a , similar to this call: But I am not 100% sure that method can be just retried like that.
If we depend on a library and that fails, I suggest the retry logic be in the library itself.
Added retry logic, but would be nice to get this from natively.
Change:
if (items && items.length > 0) { this.followupsDisposables.add(this.instantiationService.createInstance<typeof ChatFollowups<IChatFollowup>, ChatFollowups<IChatFollowup>>(ChatFollowups, this.followupsContainer, items, this.location, undefined, followup => this._onDidAcceptFollowup.fire({ followup, response }))); } <ins> this._onDidChangeHeight.fire(); </ins> } get contentHeight(): number {

Discussion:
have a squiggle open inline chat for it the UI flickers when coming up
I believe the is the same underlying cause as Drilling into this and it seems that setting follow up always triggers a layout with the "old" dimensions which isn't going fit. I believe that explains why the editor is looking so weirdly. It only gets very little height left IMO setting follow up should only trigger a content heigh change event so that the owner can issue a relayout but should not attempt to relayout with the existing dimensions. (maybe unless the number of follow up has changed in which case the content height didn't change...) <img width="1412" alt="Screenshot 2024-06-18 at 16 47 47" src=""
tried this is a notebook and it felt very jittery still (but in a regular file it was fine) should I create a new issue for this? Seems to be due to the inline fix dialog getting placed in one spot then immediately moved <img width="1273" alt="Screenshot 2024-06-26 at 10 31 06 AM" src=""<img width="938" alt="Screenshot 2024-06-26 at 10 31 01 AM" src=""
Change:
private numMenusShown: number; private menuStyle: IMenuStyles; <ins> private overflowLayoutScheduled: IDisposable; </ins> constructor(private container: HTMLElement, private options: IMenuBarOptions = {}) { super();

Discussion:
There is signed of the explorer getting slower during the last days: <img width="387" alt="screenshot 2018-12-06 at 14 06 20" src="https://user-"
adding cos is busy and you probably know the explorer well... Not sure that promise adoption caused this - file operation have always been properly async...
One of my suspisions might be the changing of startup phases in addition to promise adoption. has the overall startup speed changed, or only the explorer got slower? Also can you see the change when you measure locally? If yes we can do some bisection to find the cause. Did all viewlets get slower? Also there has been no code changes in the explorer this milestone thus my reason for suspecting other things.
My =change touched a ton of promises, not just file service, so it could well be related. I saw a bit of places in the file service that were not truly async, e.g. where was used.
Blaming this on the promise-adoption is easy, but we all know by now they run on and it would require loads of them to get 50ms extra...
I am not worried about the time a takes, but rather the fact that our execution order of things on startup is changing by adopting because we have many places where code is now running on that previously was running sync in places where we wrapped a complete value into a promise under certain conditions.
Maybe I understood wrong but that shouldn't happen unless those things also run via , right? Ticks (multiple) are processes at the end of an event loop cycle and only then comes the next event.
yeah that might be true (hopefully is). I am running test now on Linux with a commit from 26th of November vs. today to see if there is something.
Bisecting on Linux I see a slowdown from to for the restoring of viewlet through:
Nice find, I will verify on Windows. I verifeid that on OS X there is no slowdown, which is correlated to the fact that menus are the cause (since we do not use custom menus on OS X)
To proove the theory: disabling custom title bar on Linux restores the good time for me on that commit.
does the overall startup time get 50ms slower too, or is it just reflected in the explorer?

I'd say that's because 99% of startups open the explorer when opening the editor. These are great findings.
it looks like the workbench ready time is actually worse when the native menu is enabled for me, so overall I see no total slowdown. Also the editor restore seems to be roughly the same with custom and native title.
this seems to be caused by  being called during startup which seems to access DOM properties that cause a forced layout. If I comment out that method, I see the normal times reported. I suggest you check if this method could be called after a delay, e.g. via
Change:
description: CommentThreadRangeDecorator.description, isWholeLine: false, zIndex: 20, <del> className: 'comment-thread-range-current' </del> <ins> className: 'comment-thread-range-current', shouldFillLineOnLineBreak: true </ins> }; this.activeDecorationOptions = ModelDecorationOptions.createDynamic(activeDecorationOptions);

Discussion:
I think a full range decoration would look nicer here: ! You can also use :
Last time I looked at this I didn't know about . With , I like this much more.
I this last milestone!
Is there any way to make the border only go around the outside of the selected area? Here's an example with the border as it currently is:
Unfortunately not, and it would be very complex to do that. I would just not use a border.
Change:
* Render this content widget in a location where it could overflow the editor's view dom node. */ allowEditorOverflow?: boolean; <ins> suppressMouseDown?: boolean; </ins> /** * Get a unique identifier of the content widget. */

Discussion:
VSCode Version: Version 1.3.0-insider (1.3.0-insider) OS Version: OS X El Capitan 10.11.5 Steps to Reproduce: on the non-link area of a code lens line that nothing at all happens Would really like it to at a minimum to focus the editor (if not already focused), but we really love it if it move the cursor to the previous line. I find myself VERY often clicking on that area to start typing above it and nothing happens.
I'm assuming (maybe) that this wouldn't be a difficult change -- so if someone had the time to point me in the vague direction, I would be happy to attempt to open a PR for this. :)
PR welcome! :) It is in I would extract the code that does the focus: to a closure called inside the method. Then, at you can call and then : The reason focusing is complicated is because IE has some weirdness around redirecting focus when coming from the URL bar and doing a mouse down. And the already is a good indicator that the view zone does not want to handle mouse events.