-
Notifications
You must be signed in to change notification settings - Fork 8.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Deleting the reference to a profile from a JSON fragment file prevents the profile from showing back up again even when the profile still exists in the fragment file. #13916
Comments
Thanks for filing this, @danmock. There's definitely a few things we could do to make this experience better. Off the top of my head:
As a stop-gap, do any of those things help? We'll make sure to discuss this at a team meeting. |
I was about to write a response as well. To just state some things that @DHowett left unsaid: The specific PR which changed this is #11007. This change was quite important to make profile deletions less confusing. For instance Visual Studio 17.3 now ships with the "VSDebugConsole" fragment. Without this change it would be impossible to properly get rid of that profile for anyone who has Visual Studio installed. But if you do need it back it still shows up ready to be cloned at any time: IMO, if anything, we should improve our UX in regards to profile creation to make the discovery of previously deleted profiles more obvious to users. |
Are the deleted profiles from the |
This is where it gets weird, and why I'm not comfortable closing this out as "solved" or anything. The profiles in that list are the actual "deleted" ones. There's a few boring and indepth reasons for that... but suffice it to say we still deserialize all of the fragments and dynamic profiles and everything before we choose which ones to show. When you create one using |
I see. For our use case that would be problematic since we require a specific GUID for the profile, for each profile. |
another related thread: #11510 |
The original intent with dynamic profiles was that they could be uninstalled but that Terminal would remember your settings in case they ever came back. After we implemented dynamic profile _deletion_, however, we accidentally made it so that saving your settings after a dynamic profile disappeared scoured it from the planet _forever_ (since we remembered that we generated it, but now it was no longer in the settings file). This pull request implements: - Tracking for orphaned dynamic profiles - A new settings page for the profile that explains what happened - Badging on the Navigation Menu indicating which profiles are orphaned and which are hidden Closes #14061 Closes #11510 Refs #13916 Refs #9997
The original intent with dynamic profiles was that they could be uninstalled but that Terminal would remember your settings in case they ever came back. After we implemented dynamic profile _deletion_, however, we accidentally made it so that saving your settings after a dynamic profile disappeared scoured it from the planet _forever_ (since we remembered that we generated it, but now it was no longer in the settings file). This pull request implements: - Tracking for orphaned dynamic profiles Closes #14061 Closes #11510 Refs #13916 Refs #9997 Modified for 1.22. I am not including any of the UI affordances. (cherry picked from commit 90866c7) Service-Card-Id: PVTI_lADOAF3p4s4AmhmQzgU1-p4 Service-Version: 1.22
Correct! It’s backwards from the others - the user deletes their personal stub for a fragment and it never comes back (by design today, but Carlos’ Wxtensions page will help solve this.) |
The original intent with dynamic profiles was that they could be uninstalled but that Terminal would remember your settings in case they ever came back. After we implemented dynamic profile _deletion_, however, we accidentally made it so that saving your settings after a dynamic profile disappeared scoured it from the planet _forever_ (since we remembered that we generated it, but now it was no longer in the settings file). This pull request implements: - Tracking for orphaned dynamic profiles Closes #14061 Closes #11510 Refs #13916 Refs #9997 Modified for 1.22. I am not including any of the UI affordances. (cherry picked from commit 90866c7) Service-Card-Id: PVTI_lADOAF3p4s4AmhmQzgU1-p4 Service-Version: 1.22
The original intent with dynamic profiles was that they could be uninstalled but that Terminal would remember your settings in case they ever came back. After we implemented dynamic profile _deletion_, however, we accidentally made it so that saving your settings after a dynamic profile disappeared scoured it from the planet _forever_ (since we remembered that we generated it, but now it was no longer in the settings file). This pull request implements: - Tracking for orphaned dynamic profiles Closes #14061 Closes #11510 Refs #13916 Refs #9997 Modified for 1.22. I am not including any of the UI affordances. (cherry picked from commit 90866c7) Service-Card-Id: PVTI_lADOAF3p4s4AmhmQzgU1-p4 Service-Version: 1.22 (cherry picked from commit 2143ca1) Service-Card-Id: PVTI_lADOAF3p4s4AmhmszgU2frw Service-Version: 1.21
Windows Terminal version
1.14.2282.0
Windows build number
10.0.22000.0
Other Software
No response
Steps to reproduce
$Env:LocalAppData\Microsoft\Windows Terminal\Fragments\TestFragmentDir\testFragment.json
testFragment.json
profile from thesettings.json
file.Expected Behavior
Either:
testFragment.json
in addition to the reference to said profile from thesettings.json
file.or
testFragment.json
profile from thesettings.json
file, the reference should reappear (as the fragment file containing the profile still exists).Actual Behavior
As listed in Steps to reproduce.
Scenario where this is an issue:
settings.json
file, removing several profiles, including references to the profiles from the fragment files that we provided them.The text was updated successfully, but these errors were encountered: