Space Product Updates in January 2022
In this blog post, we’ve collected the most significant changes implemented in January 2022, as well as a few from December 2021.
If you haven’t heard about the new features, this is a great opportunity to learn about them and try them out:
- More IntelliJ-based IDEs in Space dev environments
- Docker support in dev environment containers
- Faster build times in Automation
- Support for Python packages
- Rendered documentation comments
More IntelliJ-based IDEs in Space dev environments
Want to code on your favorite JetBrains IDE remotely? Aside from IntelliJ IDEA and Fleet, Space dev environments now support more IntelliJ-based IDEs.
You can launch GoLand, PhpStorm, PyCharm, RubyMine, WebStorm, and CLion (starting with the 2021.3 version) remotely using Space dev environments via JetBrains Gateway.
Read this blog post to see Space dev environments in action and learn how to launch your IDE remotely.
Docker support in dev environment containers
Space now supports the Docker daemon inside the dev environment container. To run a container in a dev environment, just open the terminal in your IDE and run Docker or Docker Compose commands the same as you would on your local machine.
Check out this article to learn how to develop in a dev environment.
Faster build times in Space Automation
We’ve changed the underlying engine that runs Automation jobs, allowing you to enjoy faster build times with Space Automation. Start-up times for jobs have been dramatically reduced, and jobs consisting of multiple steps have received a significant boost, as well.
How fast do Automation jobs run?
Let’s suppose you have to run a script that contains two jobs – one job with only one ‘hello-world’ container step inside, and another one with three such steps.
With the new engine, the one-step job runs up to 10 times as fast, and the three-step job runs up to 5 times as fast.
How to speed up Automation scripts
Space Automation now uses the new engine as the default option, so you don’t have to adjust any settings for your build times to be faster. If long build times were the main issue preventing you from using Space Automation, now is a great time to give it another try.
We discovered that the new backend fixed a bug affecting container resource allocation. More specifically, the old backend ignored the CPU and RAM container configuration and gave the container access to all the resources available on the host where it was started.
While the new backend fixes this bug, you might experience a slowdown of your jobs with low CPU or memory limits configured, since they will now get the correct amount of resources.
Support for Python packages in Space
The list of packages supported by Space Packages just got bigger. You can now create your own Python repositories (PyPI) to manage and share Python packages in Space.
To create a PyPI repository, go to your Project | Packages, click on ‘New repository’, and select ‘Python package index’.
Read this article to learn how to publish and manage Python packages.
Rendered documentation comments
Space can now recognize and render documentation comments embedded in the source code to make them easier to read. Documentation comments will now appear in your Space code viewer as formatted text blocks without tags.
Markdown is supported, and if the documentation comments contain links, you can click them to go directly to the referenced web pages. You can still view documentation comments as code and switch back to the rendered view whenever you want.