-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
When using the Latest Release of JetBrains IDEs, if the workspace has tasks defined on .gitpod.yml, the IDE will start with one terminal opened for each task #10595
Conversation
ffea919
to
be9c325
Compare
/hold This PR should only be merged after the Stable version of JetBrains IDEs becomes 2022.2, which contains the fix for https://youtrack.jetbrains.com/issue/CWM-6093. |
Should we review it? build seems to be broken |
...jetbrains/backend-plugin/src/main/kotlin/io/gitpod/jetbrains/remote/GitpodTerminalService.kt
Outdated
Show resolved
Hide resolved
I've re-run the build, and it's working now. |
...jetbrains/backend-plugin/src/main/kotlin/io/gitpod/jetbrains/remote/GitpodTerminalService.kt
Outdated
Show resolved
Hide resolved
e9963af
to
99dd2bb
Compare
/werft run 👍 started the job as gitpod-build-felladrin-10579-multiple-terminals-in-intelli.18 |
@felladrin why it does not work in stable anymore? Should not we use conditional compilation to have one version for EAP and another for stable? see how it is done in Rust: https://github.com/intellij-rust/intellij-rust/blob/eefa4f43e19e5dc6e3923e99478b504bdec24028/build.gradle.kts#L388-L398 |
@felladrin I was trying with https://github.com/akosyakov/parcel-demo and for some reasons the second terminal is I'm also not sure about welcome terminal. I'm kind of liking it, but at the same time maybe a user wants to see the last terminal. |
Also explicit closing of the frontend terminal still does not trigger closing of the underlying supervisor task. We should make sure that it works. Do we track it already for JB remote dev? @felladrin |
I tried. Checked every method available inside inside I've also tried using
I agree! Let me remove it. |
Hmm, it was not implemented this time. I'll put this PR back to Draft state while I implement it with the following specs:
|
Good point. I need to set up a listener for terminal title changes. |
Thanks for sharing! It could work for conditionally using But terminals losing reference is not related to the plugin SDK, but to the Backend IDE compilation. And the fix is only available in Backend IDE 2022.2+ builds. |
💡Got it! |
Yes, we should avoid long standing PRs. We should have one plugin which can work in both versions at any time and after new release we just need to clean up old version code. |
9549e89
to
f23e6e9
Compare
We agreed that we should separate that this logic is only applied if latest is toggled for now, i.e. experimentation phase in [1]. After that it can be merged and worked on with follow-up PRs. |
d5036b4
to
a8307db
Compare
Alright, code updated, along with the description for the PR and the "how to test" section. |
… tasks defined on .gitpod.yml, the IDE will start with one terminal opened for each task
ab3f2ca
to
0229fdc
Compare
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It is great work! Thank you for such nice separation.
Resolves #10579
I don't think it does. We should do all follow-up PRs, right? And address outstanding usability issues?
Thank you! |
/unhold |
Description
When using the Latest Release of JetBrains IDEs, if the workspace has tasks defined on .gitpod.yml, the IDE will start with one terminal opened for each task, behaving similar to VS Code on Gitpod.
When using the Stable Release the behavior remains the current one: one terminal will be displayed, with a welcome message and invoking
gp tasks attach
.This separation of versions was required for backward compatibility, as there were breaking changes on the API between IntelliJ 2022.1 and 2022.2. Also, the fix for Shared Terminals Losing Reference was applied only to v2022.2.
Known limitations
To be done in a follow-up PR
Related Issue(s)
Part of #10579
How to test
Release Notes
Werft options: