Space - 2022

Released: Jan 31, 2022

Mises à jour de 2022

December 2022

Updated Dec 21, 2022

Features

  • Added support for Guest Users - You can now invite clients, freelancers, and other external partners to collaborate on your project in one place. Guest users in Space have a special status, a customizable set of permissions, and limited access to people and data in your organization.
    • Take advantage of the guest users feature to invite:
      • Clients to keep an eye on the project, monitor its progress, and communicate with your team.
      • Freelance developers to collaborate on issues, review code, and chat.
      • Freelance marketers, designers, and other specialists to collaborate with your development team.
      • Partners to work together on a joint project.
    • By default, guests do not have access to your organization’s resources. Instead, they need to be explicitly granted access to resources and features in specific projects and chat channels in Space. Guest permissions can be customized individually by project administrators.
    • Guest users do not have access to organization-wide features, including blogs, calendars, member profiles, organization details, working hours, locations, and others. Administrative permissions are also unavailable to them.
    • When granted access, guests can participate in your project on different levels – collaborating on documents and issues, reviewing code, or writing package and Git repositories. Guests can collaborate on your project using their web browser or the Space desktop, Android, and Apple iOS applications.

June 2022

Updated Jul 7, 2022

Features

  • Added support for deployments - A deployment is a Space entity that represents the delivery of source code changes to a deployment environment (a deployment target).
    • As a user - Deployments let you track your code changes and answer questions like “Which product version is now in production?”, “Which specific commit was used to deploy the production version?”, “How many changes (commits) were there between version A and version B?”, etc.
    • As a team - Deployments make the product release lifecycle more transparent. As you have a predefined list of deployment targets (such as web, desktop, cloud, mobile, and so on), you always know where your product is deployed. A deployment schedule lets you plan how often it is deployed.
    • As a company - Deployments can also deliver company-wide benefits. For example, think of Space deployments as a uniform standard for defining deployment targets in your company. So every released product, application version, or internal service update is recorded and tracked. This could simplify managing risks in log4j-like scenarios. Having all targets defined in Space, you can easily track which library versions are delivered to the end users.
    • A deployment in Space doesn’t run any build scripts by itself. It is just a state machine that tracks the current deployment status. The status updates are sent by a CI/CD server with the help of the space command-line tool (provided as a Docker image: public.registry.jetbrains.space/p/space/containers/space-cli:latest) or with the Space HTTP API.
    • There’s also an option to manually change the deployment state in the UI. This means that you can use deployments with any CI/CD tool of your choice, including Space Automation, JetBrains TeamCity, GitHub Actions, and others.

May 2022

Updated Jun 8, 2022

Features

Automation

  • Introduced Space Automation workers - A new way to run your Automation jobs on your own hardware or on virtual machines in the Space Cloud. Automation workers let you perform CI/CD workflows that are not possible with containers. An Automation worker is a lightweight Java application that runs on Linux, Microsoft Windows, or Apple macOS. A worker connects to Automation via the Space HTTP API, gets jobs and source code from Space, runs the jobs, and reports the results back to Space.
    • Space self-hosted workers - Using Space self-hosted workers, you can run any build script on your own hardware on Linux, Windows, and macOS. Build full Microsoft .NET Framework apps on Windows and run builds on specific hardware, for example to build Apple iOS and macOS apps, run ML tasks on GPUs, and more.
    • Space Cloud workers - With Space Cloud workers, you can run build scripts on virtual machines hosted on the Space Cloud infrastructure. This means you can use them for CI/CD tasks that require full access to the system, which is not possible in Docker containers​​.
    • How to choose a run environment for a job - The environment where a job will run depends on various conditions. Now, there are two available pool types – Space Automation Cloud (default) and self-hosted workers. You can override the default pool value using the Requirements block.

Issues

  • Introducing Time Tracking in Issues - You can now log and track time spent working on issues in Space. This update allows you and your colleagues to keep track of time spent on tasks and report the results to a manager or a client with downloadable .csv files.
    • Log time spent on issues - To log time spent on an issue, go to the issue and click on ‘Spent time‘. Then, add Duration, Start day, and Description, @mention someone, or change the Assignee.
    • Log time spent on sub-issues - Adding time to sub-issues can be done in exactly the same way as issues. When logging time spent on a sub-issue, the overall issue time will be increased automatically.
    • Download time tracking reports - To download a report in .csv format, go to the issue and click on ‘Time tracking report’ in the top right-hand corner. To view and log time spent on issues, you need the appropriate permissions. You can grant them to your colleagues as a project administrator, or request them from your admin as a user.
    • Time tracking functionality is available in the Team plan and above.
  • Introducing Matrix reports for issues in Space - You can now create and export Matrix reports for issues in Space. This report allows you to display issues for two customizable attribute values, and view them as a matrix or a chart. You can customize your report by choosing issue attributes for the X and Y axes between Assignee, Created by, Status, and Tag. Sort the data by clicking on the arrows next to the attributes. To access the list of respective issues, simply click on a number in the table. Visualize your report as either a matrix or a chart by changing the report view.
  • Export Project Issue list from Space - You can now export your Project Issue list in either .csv or .xlsx format as well. Go to your Project > Issues and click on the Reports button in the top right corner, where you can select the format to export the issue list in.

Integrations

  • Space has been added to the Toolbox App - You can now access all your favorite Space projects right from the JetBrains Toolbox App.
    • You can connect your Space account, as well as the other team tools and SaaS applications, in a new Services tab.
    • Open your favorite Space projects directly from a list in the Toolbox App.

Code reviews

  • Create code reviews and merge requests instantly - You can now create code reviews and merge requests in just a few clicks. Press + on the left menu no matter where you are in Space and select what you want to create - Code Review or Merge Request. Space will automatically suggest the repositories and branches that you’ve recently pushed changes to.

Updated May 4, 2022

Features

  • Configure dev environments with devfiles - With the latest Space update, you can configure almost anything with the help of 'devfiles', though you should note that Space currently supports only a subset of the Devfile 2.2.0 features
    • A devfile is an open-source specification that uses YAML formatting for configuring and running build environments.
    • A project may have a single devfile.yaml file or several *.devfile.yaml files located in the .space folder in the repository root.
    • When you create a dev environment, you can choose from all the devfiles available in the project.
    • Space automatically fills in the settings for the dev environment based on the selected devfile.
      • Note that you can’t currently use a devfile to prepare a warm-up snapshot. For that, you still need to use an Automation job.
  • Beta Support for JetBrains Rider - Added the ability to use dev environments for developing .NET projects with JetBrains Rider.
  • Change IDE versions in existing environments - Added the ability to change the IDE version used in an already created environment. Just go to the list of your dev environments (on the personal navigation sidebar), select a dev environment, and change the settings. The dev environment will automatically be relaunched with the updated IDE version. All of your uncommitted data is safe, and will be available after the restart.

April 2022

Updated May 2, 2022

Features

Integrations

  • Choose when to post a code review comment in IntelliJ IDEA 2022.1 - When reviewing code changes in the IDE, you can now choose when to post a code review comment:
    • Post Now immediately posts the comment in the code review and notifies the author and other code review participants immediately.
    • Save as Draft batches all comments, and sends them in one go when you approve changes or wait for a response.
  • Use shortcuts with code review comments - Improved the code review user interface and show applicable keyboard shortcuts. When posting a code review comment, you can use Enter to add a new line. Ctrl+Enter will save or post the comment.

Code reviews

  • Comment on multiple lines in code reviews - Added multi-line comments to Space code reviews. To comment on several lines, open a code review or a merge request, drag your mouse pointer to select as many lines as you like, and leave your comment.
  • Suggest code changes in merge requests - When reviewing a merge request from your teammate, you can now make quick edits to the code and post them as suggestions instead of just leaving comments. To suggest edits, select a line or a fragment of code, click ‘Suggest changes’, and edit it. Comment your edits as well if you’d like to explain the reasoning behind them. When your teammate sees your edits, they can accept and commit them right away with just a couple clicks.
Calendar
  • Integrate Space Calendar with your favorite calendar app with CalDAV support - With this update, you can now manage your Space work schedule and personal plans from your favorite calendar app.
    • CalDAV support has been added in Space, allowing you to view and edit your Space calendar from calendars and mail applications that support CalDAV, such as Apple Mac and Apple iPhone Calendars, Thunderbird, and others.

Package management

  • Manage and share file artifacts with Space Packages - A new type of Space Package repository is now available for automated storage and sharing of project-related files - File Repository.
    • Use command-line tools, like cURL and Microsoft PowerShell, to remotely manage the repository or handle files and folders from within the UI. Thanks to file content immutability enabled by default, you can ensure reproducibility for your CI/CD pipelines.

Dashboard

  • Customize your Space dashboard:
    • You can now rearrange the widgets on your personal dashboard or hide those you don’t need.
    • The default dashboard provides an overview of useful day-to-day information, with widgets like the Calendar, Favorite Projects, Code Reviews, Followed Teams, and Recent Blog Posts.
    • You can adjust the widgets any way you like, and if you ever want to revert them back to the default view, you can simply click ‘Reset to default’.

March 2022

Updated Mar 29, 2022

Features

  • Upload any file - Added the ability to upload personal files and all project-related artifacts (images, PDFs, etc.) directly to Documents. You’ll be able to share, preview, and download any file from a single storage space and conveniently access everything you need to work on your project with just a few clicks.
  • Checklists are moving to Documents - Checklists have been integrated into Documents to give you even more tools for centralized project planning. Your existing Checklists are now conveniently stored within the Documents panel. If you created them last year, they will be stored in a dedicated folder. Otherwise, you can quickly sort them by Document type. The old “Checklists” section is still present in the left navigation bar, but it will redirect you to the default Documents view with pre-filtered results when you click it. It will be removed altogether in a later update.
  • Folders and Introductions - Previously, Books were used as designated root folders, but now Documents are organized solely via folders. For the ease of identifying the folder’s purpose, you can quickly set any file within the folder as an Introduction - an expandable section serving as a description. The assigned file then gets a distinctive icon so you can easily spot it among the rest of the files. You can edit or remove the current introduction or assign another file at any time. You can also drag and drop files and folders.
  • Centralized management of all your documents - Now that all mission critical files and checklists are under the Documents umbrella, the management panel has been reworked to allow you to manage all your documents, for personal and project use, in one place.
    • By default, your personal Documents view shows every file you’ve recently opened or interacted with throughout your Space organization.
    • You can see each file’s location and easily narrow down your search with predefined filters and drop-downs.
    • This Document-centric view makes it quick and easy for you to continue working on project files instead of worrying about the folder location and structure.
  • Documents API - Added the ability to use API calls to communicate and interact with Documents.

February 2022

Updated Mar 9, 2022

Features

Issues

  • Added the ability to break complex issues down into smaller tasks with sub-items - You can now add sub-items to Space issues. They allow you to break complex issues down into smaller tasks, or list requirements, DoDs, and other relevant information. Just like checklists, sub-items can have a nested structure, and you can check them off upon completion. You’ll find the new Sub-items section under the issue description.
  • Added the ability to track all mentions from the issue history - To make sure that you don’t miss anything important, it has been made easier to track any mentions and discussions related to your tasks in Space.
    • Whenever somebody mentions an issue by its ID or link in a Space chat channel, code review comment, or another issue, the mention is automatically reflected in the issue’s history.
    • This way, you can be sure no important discussions go missing and you always have the full context.
  • Added the ability to filter issues by board and sprint - You can now search for issues even faster - use the new Board filter on a project’s issues list to filter by board and sprint.

Applications

  • Added the ability to allow your Space applications to access private chat channels - Thanks to the new application authorization options, you can now allow your Space applications to access private channels in Space chats.
    • Added an option to specify what your application can do within a particular private or public channel. For example, you can allow an application to view and post messages, update channel info, add new members, and more.
    • This level of granularity in the permissions helps you keep your communication private by ensuring that the application can only access the information you allow it to.

Package management

  • Added the ability to integrate Space Packages with remote repositories - Introduced mirroring for Space Packages. With this update, you can now:
    • Manually publish local packages to a remote repository - To publish a package to a remote repository, such as Maven Central, you can now specify a list of related remote repositories for each local one and publish packages to any of them.
    • Auto-cache packages from a remote repository - When you reference a package from a mirror repository, Space will download it from the associated remote repository and cache it locally if it’s not available. This feature allows you to simplify referencing packages from remote repositories and optimize network traffic. You can now use a single Space repository to cache all build dependencies from remote repositories.
  • Added the ability to manage and share Composer packages in Space - Space Packages now lets you create your own Composer repositories. Use them to store and share packages in your PHP projects. To create a Composer repository, go to your Project | Packages, click on ‘New repository’, and select ‘Composer repository’.

Updated Feb 10, 2022

Features

  • Added support for Vault parameters in Space Automation scripts.

January 2022

Updated Jan 31, 2022

Features

  • Introduces support for more IntelliJ-based IDEs:
    • GoLand.
    • PhpStorm.
    • PyCharm.
    • RubyMine.
    • WebStorm.
    • CLion.
    • All these IDEs work with Space dev environments via the JetBrains Gateway.
  • Docker support in dev environment containers - Space now supports the Docker daemon inside the dev environment container.
  • Faster build times in Space Automation - 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. 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. 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.
  • Support for Python packages in Space - You can now create your own Python repositories (PyPI) to manage and share Python packages in Space.
  • 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 now 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.
    • Rendering currently works for JavaScript, TypeScript, Java, Kotlin, and Rust, provided that the documentation comments contained in the source code adhere to the standard syntax of the corresponding language.

Fixes

  • 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.