June 2019
After the public launch of Gitpod.io in April, we have spent most of our time on changing our internal architecture to better scale and improve the cloud density as well as supporting VS Code extension. Although this work is not yet finished, we have added a bunch of new features on the way, which are listed below.
Toggle Maximize
Simple but useful: Double-clicking a tab will maximize the corresponding panel.
Links in terminals
You can now follow links and open files from the terminal by clicking on the respective links.
Environment Variables
Gitpod allows users to inject environment variables into workspaces. Based on a simple pattern against the repository name one can filter which env vars are actually injected. Also please note that all environment variable values are encrypted before stored in the database.
In addition to user-based environment variables, you can pass environment variables through the context link on start. See the docs for more information.
Bi-directional Scroll Sync
When editing Markdown files it is very convenient to see the preview next to the editor. You can open a preview by click the icon on the top right of the editor. Now you can scroll both the editor or the preview and see how the other part is scrolling with it, showing the corresponding sections.
Contributed through PR #5442.
Better Rust support
In addition to the Go VS Code extension, Gitpod now also runs the official Rust VS Code extensions. So expect faster and more reliable support for Rust.
Emmet support
Gitpod comes with support for emmet, a web-developer’s toolkit that can greatly improve your HTML & CSS workflow. Among other things it allows to quickly generate html boilerplate using shortcuts.
See the cheat-sheet for a quick overview of what’s supported.
Debugging in Java
The debugging of Java applications had a problem in that it the process would pick a wrong java executable when launching processes. This is now fixed.
Better Upload
You can now upload large files through drag and drop and see proper progress information on the top of the window.
Improved C++ Language Support
We have upgrade the language services to use the latest clangd version.
Better Git Amend
The git amend UI has been improved so that you can amend / squash multiple commits but also undo that.
Also the entire SCM widget has been rewritten to match VS Code’s UX.
Config: Port ranges
In your .gitpod.yml
one can now specify port ranges, so you can manage antire ranges addition
and tell Gitpod what to do when a service opens on one of those ports.
CLI: gp await-port
The cli learned a new thing, that let’s you wait for a certain port to open. This is useful if you want to wait for a certain path and then take a specific action.
Here’s an example that will open a certain path in the preview once a service is a available port 3000:
gp ports await 3000 && gp preview $(gp url 3000)my/path/index.html
Many Small Improvements
Besides these bigger features, we have fixed many bugs and improved the performance and user experience of Gitpod. We have merged 146 PRs in Gitpod and 220 in Theia.
What’s next?
With this release we have added some additional VS Code extensions.
The upcoming release will allow you to install arbitrary VS Code extensions and add that as configuration to your .gitpod.yml
files.
The GitLab integration as well as a easy-to-install, Self-Hosted version of Gitpod is in the works.
Finally, we are looking into optimizing start-up time improvements and, of course, bug-fixing and offering you a great development experience.