Skip to content
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

Support Profile Inheritance #191224

Closed
tbontb-iaq opened this issue Aug 24, 2023 · 6 comments
Closed

Support Profile Inheritance #191224

tbontb-iaq opened this issue Aug 24, 2023 · 6 comments
Assignees
Labels
feature-request Request for new features or functionality *out-of-scope Posted issue is not in scope of VS Code user-profiles User profile management

Comments

@tbontb-iaq
Copy link

Can something like inheritance or import be added?

global
├── web dev
│ ├── vue
│ ├── react
│ └── vanilla
├── python
│ ├── data mining
│ └── deep learning
└── c/cpp

When adding a plugin to global, it means that a plugin is installed globally.
When certain settings are added in web dev, this applies to all web development.

Originally posted by @tbontb-iaq in #190856 (comment)

@tbontb-iaq
Copy link
Author

Hello, developers of vscode. Thank you so much for your work.
I want to be able to add more functionality to profile, like this:

{
   "references": ["settings-1.json", "settings-2.json"]
}

This will allow profile to automatically import and synchronize other profile files. Developers can freely combine these configuration files according to their needs, and make the configuration of vscode more flexible.

@justschen justschen assigned sandy081 and unassigned justschen Aug 24, 2023
@sandy081 sandy081 changed the title Referencing another profile in a profile Support Profile Inheritance Aug 28, 2023
@sandy081 sandy081 added feature-request Request for new features or functionality user-profiles User profile management *out-of-scope Posted issue is not in scope of VS Code labels Aug 28, 2023
@vscodenpa
Copy link

We closed this issue because we don't plan to address it in the foreseeable future. If you disagree and feel that this issue is crucial: we are happy to listen and to reconsider.

If you wonder what we are up to, please see our roadmap and issue reporting guidelines.

Thanks for your understanding, and happy coding!

@vscodenpa vscodenpa closed this as not planned Won't fix, can't repro, duplicate, stale Aug 28, 2023
@tbontb-iaq
Copy link
Author

Very sad news.

@sandy081
Copy link
Member

If you want this behaviour only for settings here is the issue tracking this - #188612

Here is the explanation why we do not want to support profile hierarchy - #156144 (comment)

@texastoland
Copy link

texastoland commented Oct 24, 2023

I read the following issue threads.

Profile inheritance:

Settings inheritance:

Extension groups:

Many comments above are related to profiles not addressing their XY problem:

  • Same settings in every project
  • Same layout in every project
  • Different extensions in every project
  • Same extensions per category (for example related to Markdown, JS, a framework, or combination of categories)
  • Same changes everywhere when any of the above are updated

VS Code's own proflie templates demo this:

  • Need a combination of 2 templates?
  • Need to factor out common Node.js and Angular extensions for another JS frameowrk?

Profiles allow quickly reapplying layout to a new project but not extensions:

  1. Every project uniquely mixes extension categories.
  2. Creating a unique profile for every project sacrifices shared layout and settings.
  3. There's no way to inspect what's included in a profile's JSON config.

In reality extension packs were a better fit except:

  • No native way (only an extension) to manage local packs
  • No visual grouping to manage installed extensions by category

Profile inheritance (not only on creation) combined with exposing their JSON config would be 1 solution. Enhancing extension packs would be another. I just want an open issue for what's a nearly universal XY problem regarless of the solution.

@muuvmuuv
Copy link
Contributor

Since it was mentioned that "general profile inheritance" is not planned, I think extension inheritance is very helpful. I have a lot of extension I use across all my profiles, like "Code Spell Checker" or "Markdown all in One". It would be very nice when I remove or add extensions to the base profile I can click a button in other profiles to always use base-as-base and any other extension is just for that profile.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature-request Request for new features or functionality *out-of-scope Posted issue is not in scope of VS Code user-profiles User profile management
Projects
None yet
Development

No branches or pull requests

6 participants