Skip to content

Add xterm as an IDE #17005

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

Closed
wants to merge 7 commits into from
Closed

Add xterm as an IDE #17005

wants to merge 7 commits into from

Conversation

filiptronicek
Copy link
Member

@filiptronicek filiptronicek commented Mar 23, 2023

Description

Adds Xterm.js as a web alternative to connecting to your workspace via SSH from your terminal. The code can be found at https://github.com/gitpod-io/xterm-web-ide and the Docker image is at ide/xterm-web.

Note: The original PR is at #8464, but it was merged incorrectly.

Note: this relies on #16847 being merged first

How to test

  1. Open the preview environment
  2. In the preferences, select notice there is no Xterm IDE
  3. In Configcat, include yourself in the enable-rule for experimentalIdes (non-prod)
  4. Wait a couple of minutes (🫖 time)
  5. Reload and see the Terminal IDE magically appear
  6. Create a workspace and have a blast

Useful commands

Re-pull the IDE:

kubectl rollout restart deployment/ide-service

Current limitations

  • Does not work on mobile [fixed]

    iPad demo
    RPReplay_Final1679590301.mp4

Release Notes

NONE

⬆️ we can mention it after we finish the internal dog food

Documentation

Todo

  • gp stop closes xterm.js editor and shows the "Workspace Stopping" screen
  • gp open works
  • gp preview works
  • Ensure heartbreating works
  • Move Docker image from DockerHub to our GCP registry

Nice-to-haves

Build Options:

  • /werft with-werft
    Run the build with werft instead of GHA
  • leeway-no-cache
  • /werft no-test
    Run Leeway with --dont-test
Publish Options
  • /werft publish-to-npm
  • /werft publish-to-jb-marketplace
Installer Options
  • with-dedicated-emulation
  • with-ws-manager-mk2
  • workspace-feature-flags
    Add desired feature flags to the end of the line above, space separated

Preview Environment Options:

  • /werft with-local-preview
    If enabled this will build install/preview
  • /werft with-preview
  • /werft with-large-vm
  • /werft with-gce-vm
    If enabled this will create the environment on GCE infra
  • with-integration-tests=all
    Valid options are all, workspace, webapp, ide, jetbrains, vscode, ssh

@filiptronicek filiptronicek requested review from a team March 23, 2023 19:36
@filiptronicek filiptronicek requested a review from gtsiolis as a code owner March 23, 2023 19:36
@werft-gitpod-dev-com
Copy link

started the job as gitpod-build-ft-add-xterm-ide.70 because the annotations in the pull request description changed
(with .werft/ from main)

@github-actions github-actions bot added team: webapp Issue belongs to the WebApp team team: IDE labels Mar 23, 2023
@filiptronicek filiptronicek mentioned this pull request Mar 23, 2023
10 tasks
@filiptronicek filiptronicek self-assigned this Mar 23, 2023
@filiptronicek filiptronicek force-pushed the ft/add-xterm-ide branch 2 times, most recently from af7ef9e to dc5ef83 Compare March 25, 2023 23:57
@ghostdevv
Copy link
Contributor

ghostdevv commented Apr 3, 2023

🙏🙏🙏

@atduarte
Copy link
Contributor

atduarte commented Apr 4, 2023

/reviewpad summarize

@reviewpad
Copy link

reviewpad bot commented Apr 4, 2023

AI-Generated Pull Request Summary: This pull request introduces changes related to adding an experimental "Terminal" IDE option. The main additions are:

  1. A new experimentalIdes feature flag added in the FeatureFlagContext.
  2. The IDEOption interface now has an experimental field to mark IDE options as experimental.
  3. A new function filteredIdeOptions() is implemented to filter IDE options based on the experimentalIdes flag.
  4. The Terminal IDE logo SVG file is added.
  5. IDE configuration updates to include the new Terminal IDE option with the experimental flag set to true.

Additionally, there is a minor change in the loading frame, where the frame is now prepended to the body instead of being appended.

@filiptronicek
Copy link
Member Author

filiptronicek commented Apr 4, 2023

Don't replace me yet, André 😠

@kylos101
Copy link
Contributor

kylos101 commented Apr 4, 2023

/reviewpad robin prompt what could we improve?

@reviewpad
Copy link

reviewpad bot commented Apr 4, 2023

/reviewpad robin prompt what could we improve?

@kylos101 an error occurred running your command

Errors:

  • rpc error: code = Unknown desc = error, status code: 400, message: This model's maximum context length is 8192 tokens. However, your messages resulted in 8734 tokens. Please reduce the length of the messages.

@filiptronicek
Copy link
Member Author

/reviewpad robin prompt tell me a joke

@reviewpad
Copy link

reviewpad bot commented Apr 5, 2023

/reviewpad robin prompt tell me a joke

@filiptronicek an error occurred running your command

Errors:

  • rpc error: code = Unknown desc = error, status code: 400, message: This model's maximum context length is 8192 tokens. However, your messages resulted in 8733 tokens. Please reduce the length of the messages.

@werft-gitpod-dev-com
Copy link

started the job as gitpod-build-ft-add-xterm-ide.75 because the annotations in the pull request description changed
(with .werft/ from main)

@filiptronicek
Copy link
Member Author

filiptronicek commented Apr 12, 2023

/gh run recreate-vm

Comment triggered a workflow run

Started workflow run: 4680923119

  • recreate_vm: true

@werft-gitpod-dev-com
Copy link

started the job as gitpod-build-ft-add-xterm-ide.76 because the annotations in the pull request description changed
(with .werft/ from main)

@filiptronicek
Copy link
Member Author

Going to re-create the branch because of preview environment issues

@filiptronicek filiptronicek deleted the ft/add-xterm-ide branch April 12, 2023 19:37
@filiptronicek filiptronicek restored the ft/add-xterm-ide branch April 12, 2023 19:37
@filiptronicek filiptronicek reopened this Apr 12, 2023
@filiptronicek
Copy link
Member Author

For preview environment reasons, please use #17196 for reviewing / testing.

@filiptronicek filiptronicek deleted the ft/add-xterm-ide branch April 14, 2023 15:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
Status: In Validation
Development

Successfully merging this pull request may close these issues.

5 participants