-
Notifications
You must be signed in to change notification settings - Fork 30.7k
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
Feature: Specifying the load order of extensions (reduce startup wait-time) #46846
Comments
Already today not all extensions are loaded on startup. Loaded extensions can be seen via |
@alexandrudima True, however I still think this feature would be useful. When I take a look at my loaded extensions during normal workload, there are two extensions with around 33 ms, a bunch around 500 ms and one > 2400 ms. The most important extension needs 366 ms. If I could make this important one load first, followed by the two very quick ones and then the rest, could speed up my workflow. By the way, what's the difference between "Activation" and "Startup Activation"? |
@Lisoph Can you create issues against the extensions with slow startup? It is somewhat crazy that an extension would take 2400ms to activate... Startup Activation means that the extension got activated on VSCode startup (it uses The other got activated by you doing something. e.g. clicking an action, opening a certain file type, etc. |
@alexandrudima good idea with raising an issue on the extension's GitHub, but I don't think this can apply to all extensions. I wouldn't necessarily consider slow startup a bug of an extension. Some extensions just need some time to load (for whatever reason). Thanks for clarifying the activations! |
I still think this would be really helpful. From experience, loading extentions such as Docker, Azure or Live Share takes priority over things such as XML and JSON formater, so I need to wait few seconds before i can format a document. I would like to put these extentions first because they take almost no time to load and I need them availible as soon as possible |
I have installed a tab which replaces the empty workspace view of VS Code. Its startup activation is 12ms, but I have to wait two or three seconds from VS Code's startup to see it because it's a ways down the load queue. This is the only extension I want to have loaded almost instantly, so I second this feature request. |
I'm finding visual conflicts with extensions that enhance the text editor visuals/experience and want to decide which extensions have priority over the others... I'm assuming being able to set the load-order (as well as the draw-order, supposing that could be different) would be a welcome addition to VS Code users. |
This feature would be useful for my workflow that uses both |
I believe this may be what is causing the Redwood repository reported issue |
Isn't #57481 the same issue? |
It appears it is. It was created 5 months after this one and mostly other people are commenting there. This yields > 60 upvotes (22 here, 43 there). I don't think I'm a fan of their priority solution though. Shuffling around precedence scores could become unwieldly. |
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! |
Hi, please reconsider this one. See for example the issue above referencing this one: rust-lang/rust-analyzer#15852 and the number of thumbs down on the above triage bot comment. Without being able to control the startup order, it seems it's not possible to influence the environment which is necessary so that later extensions see the environment configured by the earlier extensions. |
In my setup Bookmarks extensions (alefragnani.Bookmarks, tintinweb.vscode-inline-bookmarks) conflict with Outline generation extensions (Oracle.sql-developer) when are activated before (the Outline panel remain empty). |
Lazy loading extensionsI don't really care about the order of extensions, but I would really love to be able to have a JS or Python related extension load only when first JS or Python file is opened, when a command is executed for the first time, or simply being able to defer loading of any extension n seconds after startup and then have them load with lowest priority so that the IDE doesn't hang. In short, have the extension provide the API (e.g. commands, keyboard shortcuts), but load lazily only after a feature is used for the first time. /edit added #234231 |
Allow the user to specify in what order installed extensions get loaded. This could reduce wait times quite a bit, or at least give the impression of a faster startup; by allowing small, essential extensions to get loaded first.
Users often install a lot of extensions, but in reality, only very few are really vital for the user's workflow. By allowing these "vital" extensions to be loaded first, the user has to wait less time before being able to work.
Proposal
The load order could be specified as an array, where extensions lower in the array (= with lower index) get loaded first:
Extensions not mentioned in the list would get loaded after the last specified extension (after whatever).
The text was updated successfully, but these errors were encountered: