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

[Feat]: Add setting to keep extension host alive #6643

Open
heatherbuletti opened this issue Jan 31, 2024 · 2 comments
Open

[Feat]: Add setting to keep extension host alive #6643

heatherbuletti opened this issue Jan 31, 2024 · 2 comments
Labels
enhancement Some improvement that isn't a feature

Comments

@heatherbuletti
Copy link

What is your suggestion?

Add a setting to keep the extension host alive for a configurable amount of time.

Why do you want this feature?

We are using extensions that rely on the code server extension host to be running even when the IDE is not open in the browser. The current behavior seems to be that the extension host terminates after a few minutes of closing the IDE, but we would like to be able to keep it alive for hours or indefinitely.

Are there any workarounds to get this functionality today?

Not that we're aware of, but please let us know if we missed something!

Are you interested in submitting a PR for this?

Probably not, sorry!

@heatherbuletti heatherbuletti added the enhancement Some improvement that isn't a feature label Jan 31, 2024
@heatherbuletti heatherbuletti changed the title [Feat]: [Feat]: Add setting to keep extension host alive Jan 31, 2024
@code-asher
Copy link
Member

code-asher commented Feb 1, 2024

This is a great idea, but I think this would be too much of a rework to be maintainable as a patch here in code-server.

I think keeping the extension host alive means serializing state and sending that all back to the client so it can resume the connection to an already-running host, and there is also the question of how to handle multiple windows open at the same time (currently they all just get their own extension host). Or, some other kind of rearchitecturing.

It would be a better experience (and it would fix several bugs with deactivating extensions and debugging) but that work will need to go upstream, I think. https://github.com/microsoft/vscode

As for workarounds, if you need some kind of persistent process you might have to spawn a new process and detach it so it will not get killed when the extension host dies, and then communicate with it through some kind of IPC, maybe a socket or something.

@heatherbuletti
Copy link
Author

thanks for the reply!! the specific issue we're running into is the fact that multiple windows get different extension hosts, but architecturally it makes sense that it is not feasible to address this in code-server without major changes. i appreciate your consideration either way!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Some improvement that isn't a feature
Projects
None yet
Development

No branches or pull requests

2 participants