Skip to content

Releases: eclipse-che/che

Eclipse Che 7.80.0

23 Jan 18:18
Compare
Choose a tag to compare

Major Enhancements

Support workspace startup for every Git provider over SSH protocol

It is now possible to configure SSH keys and start workspaces using not only GitHub, GitLab, BitBucket, and Azure DevOps, but also any other Git providers that were previously not supported, such as:

Allow to copy and paste an SSH Key on the User Dashboard

It is now possible not only to upload but also to copy and paste an SSH Key on the the User Dashboard:

Screen.Recording.2023-12-20.at.15.45.57.mov

Support Devfiles version 2.2.1 and 2.2.2

Devfiles with schemaVersion 2.2.1 and 2.2.2 are now supported.

Documentation for Eclipse Che installation on the Azure Kubernetes Service (AKS)

Installation instructions for Eclipse Che on Azure Kubernetes Service (AKS) are now part of the official documentation. Before this release, only community-contributed blog post on this subject was available.

Major Bug fixes

Workspace from public GitHub Enterprise Server repo fails to start

Previously workspaces from public GitHub Enterprise Server repositories failed to start if no OAuth or Personal Access Token (PAT) was configured.

'defaultPlugins' defined in the Custom Resource are ignored and not applied during workspace startup

The regression related to processing the defaultPlugins defined in the Custom Resource has been fixed in this release, and extra sidecar plugins can be added using a devfile.yaml reference:

     devEnvironments:
       - editor: che-incubator/che-code/insiders
         plugins:
            - >-
              https://example.com/devfile.yaml 

Eclipse Che 7.79.0

15 Jan 09:01
Compare
Choose a tag to compare

Major Enhancements

Administrators can specify which users and groups are authorized to use Eclipse Che

In this release, new properties for advanced authorization have been added to the Custom Resource:

AllowUsers []string `json:"authorizedUsers,omitempty"`
AllowGroups []string `json:"authorizedGroups,omitempty"`
DenyUsers []string `json:"unauthorizedUsers,omitempty"`
DenyGroups []string `json:"unauthorizedGroups,omitempty"`

The new configuration allows setting up granular access for different groups and users:

 networking:
    auth:
      advancedAuthorization:
        allowUsers:
          - user-a
          - user-b
        denyUsers:
          - user-c
        allowGroups:
          - team-a
          - team-b
        denyGroups:
          - team-c

Users who are not allowed will see the following warning when trying to access the User Dashboard:

Screenshot 2024-01-11 at 13 41 34

N.B. AllowGroups and DenyGroupsproperties are only supported on OpenShift.

Eclipse Che local development experience with IntelliJ IDEA

Initial support of the local desktop development using IntelliJ Thin Client connected to a remote DevWorkspace is now available:

IDEA

Support multi-arch builds in next-build GH Workflow for DevWorkspace Operator

DevWorkspace Operator is now being built for the following platforms: linux/amd64, linux/arm64, linux/ppc64le and linux/s390x.
The related multi-arch images are available at:

  • quay.io/devfile/devworkspace-controller:next
  • quay.io/devfile/project-clone:next
  • quay.io/devfile/devworkspace-operator-index:next
  • quay.io/devfile/devworkspace-operator-index:next-digest
  • quay.io/devfile/devworkspace-operator-bundle:next
  • quay.io/devfile/devworkspace-operator-bundle:next-digest

Support for VS Code Extension services, such as Ansible Lightspeed, that use the OAuth authorization flow

OAuth2 authorization code flow using Callbacks and URI handlers is now supported, and Visual Studio Code Extensions that use this flow will work in the Eclipse Che workspaces. For instance, users of the Ansible VS Code extension can use its AI-powered Lightspeed service.

N.B. The Ansible VS Code Extension issue currently prevents the extension from working on remote development environments.

Major Bug Fixes

New projects are lost after a workspace restart

Before this release, VS Code launcher was adding projects from the devfile to .vscode-workspace configuration file only during the initial workspace startup. However, if a new project (or dependent project) was added to the devfile.yaml, and the workspace was restarted using the Restart Workspace from Local Devfile, the new project was not added to the .vscode-workspace configuration file, and the user was not able to see it in the VS Code, although all the projects were cloned in /projects folder. The defect has been fixed in this release and now the projects are correctly updated in the .vscode-workspace configuration file.

Bitbucket OAuth 1.0 is not displayed on Git Services tab

Bitbucket OAuth 1.0 is now correctly displayed on the 'Git Services' Tab of the User Dashboard:

screenshot-eclipse-che apps rosa sqcr5-629wf-29x 6jy4 p3 openshiftapps com-2024 01 11-14_20_10

Eclipse Che 7.78.0

04 Jan 16:23
Compare
Choose a tag to compare

Major Enhancements

Add a way to reject the authorization opt-out flag from the dashboard

Starting from this release a user can revoke the authorization for configured Git Services from the User Dashboard:

revoke_auth

Add support for PATs in GitHub Enterprise Server

Personal Access Token (PAT) for the GitHub Enterprise Server (self-hosted instance) can be now configured from the User Dashboard. Before this release, only github.com and GitHub Enterprise Cloud were supported.

Improve options when workspace startup fails

In this release, a few major enhancements have been made for cases when a workspace fails to start for some reason:

Workspace startup page

A user can navigate to the OpenShift cluster and edit the DevWorkspace spec right from the workspace startup screen:

Screenshot 2023-11-23 at 17 03 10

Workspaces list page

On the 'Workspaces' page the problematic workspace will be marked with the warning sign:

Screenshot 2023-11-23 at 17 03 23

Workspace details page

it is now possible to navigate to the DevWorkspace object from the 'Overview' tab of the User Dashboard when running on OpenShift:

Screenshot 2024-01-04 at 17 16 36

Support devfile private raw URLs with ?token parameter on github.com

The ?token URL parameter is now supported for resolving private devfiles from github.com e.g. raw.githubusercontent.com/account/repository/main/devfile.yaml?token=<token>.

Set Java 17 as the default in the Universal Developer Image

Java 17 is now used by default in the Universal Developer Image:

Screenshot 2024-01-04 at 14 21 25

Major Bug Fixes

Issue accessing existing workspaces which shows "No PersonalAccessTokenFetcher configured" error

Before this update, re-opening an existing workspace resulted in a "No PersonalAccessTokenFetcher configured" error message. With this update, the token is refreshed on a workspace restart.

VS Code che-resource-monitor extension not working

To get the metrics, the resource monitor extension needs to know the pod name provided by the HOSTNAME environment variable.
However, sometimes the variable could be overridden with a different value which breaks the plugin. To avoid this problem it has been decided to copy the HOSTNAME env var to DEVWORKSPACE_POD_NAME env var before launching the editor and fall back on the new variable when necessary.

Eclipse Che 7.77.0

17 Nov 17:02
Compare
Choose a tag to compare

Major Enhancements

Support configuring OAuth for GitHub Enterprise Server and GitHub SaaS simultaneously

Starting from this release it is possible to configure the OAuth flow for GitHub Enterprise Server and GitHub SaaS simultaneously.
More details about this feature can be found in this demo video.

Support GitHub Device Authentication in VS Code to allow extensions such as GitHub Copilot

GitHub Copilot VS Code activation failed in a Dev Spaces workspace. That's because the web authorization flow is failing. To allow GitHub Copilot and other GitHub extensions to run on DevSpaces workspaces we have added support for the GitHub device activation flow.
To use GitHub Copilot in a workspace a user has to follow the following 2 steps:

  1. Authenticate to GitHub using the new "Device Authentication" command
  2. Install the GitHub Copilot extension through the upload of the VSX file (GitHub Copilot is not published on opens-vsx.org)

N.B. Step 1 needs to be executed only once. Step 2 needs to be repeated for every new workspace.

copilot-activation

SSH key configuration from the User Dashboard

Now users can add their SSH key from the User Dashboard.

Screenshot 2023-10-30 at 11 54 29

Screenshot 2023-10-30 at 11 54 34

Screenshot 2023-10-30 at 11 54 54

Generated routes for VS Code editor should use HTTPS protocol by default

Starting from this release routes generated for the VS Code editor are using HTTPS protocol by default.

Screenshot 2023-11-17 at 15 07 22

Major Bug Fixes

Workspace URL parameters get lost after the user accepts OAuth authorization backported to branch 7.74.x

Before this release, URL parameters used during workspace startup such as <github-repo-url>?che-editor=che-incubator/che-idea/latest were lost after successful OAuth authentication.

OAuth tokens are not refreshed on workspace restart backported to branch 7.74.x

Before this release, OAuth tokens were not refreshed during a workspace restart.

Changes in workspace disappearing after 'Restart with default devfile' backported to branch 7.74.x

Before this release, the ephemeral mode was used for the 'Restart with default devfile' functionality. When restarted, any changes in the workspace were lost. With this update, restarting the workspace with the default devfile does not erase changes you made previously.

Azure DevOps Git repositories with white spaces in the URL

It was not possible to start a workspace based on the Azure DevOps Git repositories which contain white spaces. With this release, the issue is fixed.

Screenshot 2023-11-17 at 16 00 22

Unauthorized errors when opening the IDE

Unauthorized errors when opening IDE are fixed in this release.

2023-07-11 12 14 57

Enabling persistence of home directory breaks Universal Developer Image's home directory, PATH, and environment variables

Enabling the persistence of the home directory does not break the Universal Developer image's home directory, PATH, and environment variables anymore.

Impossible to build che-code docker image due to reaching the maximum amount of opened files

In this release, the amount of opened files has been increased for the Universal Developer Image which allows building images for repositories with a sufficient amount of files like che-code.

Pre-create common tooling config directories in Universal Developer Image

In this release, common tooling config directories are pre-created in the default Universal Developer Image with the right permissions allowing to write into them from the workspace:

  • Maven: /home/user/.m2/
  • Gradle: /home/user/.gradle/
  • Pip: /home/user/.config/pip/
  • Cargo: /home/user/.cargo/
  • Sbt: /home/user/.sbt/1.0/
  • PHP: /home/user/.composer/
  • .NET: /home/user/.nuget

Eclipse Che 7.76.0

02 Nov 11:32
Compare
Choose a tag to compare

Major Enhancements

After stopping a workspace in VS Code, the user is now redirected to the Dashboard

Now when a user stops a workspace from the VS Code editor they will be redirected automatically to the User Dashboard.

screencast-che-dogfooding apps che-dev x6e0 p1 openshiftapps com-2023 09 29-14_24_02

Enhance OAuth integration when a user doesn't want to grant permissions

If a user rejects an SCM provider authorization request while creating or starting an existing workspace, their choice is saved in the workspace-preferences config-map in the namespace. During the subsequent workspaces startups, the prompt to proceed with the OAuth authorization for the rejected SCM provider does not appear anymore.

Support for devfile API events.preStop

It is now possible to specify preStop events in the devfile that would be executed before stopping the workspace. Similar to postStart , multiple devfile commands could be specified as preStop:

    events:
      preStop:
        - first-command
        - second-command
        - third-command

Major Bug Fixes

Rework "Backend is not available" error page

Better error handling on the User Dashboard. Instead of the general "Backend is not available" error page now the HTTP Error code together with the endpoint that threw the error is displayed:

Screenshot 2023-11-02 at 11 03 15

Unauthorized when opening the IDE

The Unauthorized error occasionally shown during the workspace startup 'Open IDE' phase has been fixed in this release.

"Bearer Token Authorization" errors from the Dashboard

The Bearer Token Authorization errors occasionally occurring in the dashboard has been mitigated with the request retries functionality.

Eclipse Che 7.75.0

29 Sep 15:14
Compare
Choose a tag to compare

Major Enhancement

Configuration of the user's name and email from the User Dashboard for .gitconfig

Now it is possible to configure the user's name and email on the User Dashboard that will be used in the workspaces' .gitconfig settings.

Screen.Recording.2023-09-29.at.12.16.28.mov
Screenshot 2023-09-28 at 15 59 53 Screenshot 2023-09-28 at 16 08 31

Major Bug Fixes

VS Code data about a previously opened workspace is cached in the browser when switching workspaces (cherry-picked to 7.74.x branch)

When switching workspaces, or deleting and re-creating a workspace, data from previously opened workspaces will no longer be cached in the browser and used by VS Code.

An error appears on workspace start if the SCM authorization page is rejected

When a user rejects SCM authorization, no error will be shown, and the workspace will be started correctly. Note that since authorization is rejected by the user it will not be possible to git push from the workspace without any setup.

Eclipse Che 7.74.0

15 Sep 19:00
Compare
Choose a tag to compare

Major Enhancement

Dashboard logo customization from the Custom Resource

It is now possible to change the Eclipse Che logo using the dedicated Custom Resource property.

Screenshot 2023-09-15 at 15 21 06 Screenshot 2023-09-15 at 15 19 02

Navigation from the DevWorkspace Dashboard view to the OpenShift Console DevWorkspace object

Now it is possible to navigate from the Workspace Details -> DevWorkspace view on the User Dashboard to the OpenShift Console in order to inspect or edit the DevWorkspace object.

264029633-9c60aa3d-c92f-4202-a340-c996a53e615d.mov

Configuration of the 'Getting Started' samples using the dedicated ConfigMap

Starting for this release it is possible to configure 'Getting Started' samples on the User Dashboard by providing a dedicated ConfigMap object:

apiVersion: v1    
kind: ConfigMap
metadata:
  name: getting-started-sample
  namespace: eclipse-che
  labels:
    app.kubernetes.io/part-of: che.eclipse.org
    app.kubernetes.io/component: getting-started-samples
data:
  my-samples: |-
    [
      {
        "displayName": "Eclipse Che Dashboard",
        "description": "Cloud Development Environment for the Eclipse Che Dashboard.",
        "tags": ["Eclipse Che", "Dashboard"],
        "url": "https://github.com/eclipse-che/che-dashboard"
      }
    ]

More details about this feature can be found in the official documentation.

Support setting ImagePullPolicy in CheCluster for workspace containers

ImagePullPolicy for DevWorkspace containers can be now set using the dedicated CheCluster CR field.

Major Bug Fixes

Devfile without metadata fails to start

Workspace startup based on devfiles that do not contain metadata is now possible with Eclipse Che.

Adding extra permissions break Bitbucket Saas OAuth flow

Granting extra permissions to the Bitbucket OAuth application does not break the workspace startup flow anymore.

Handle failures in routing reconciler in a recoverable way

Improved routing handing in the DevWorkspace Operator.

Initialize and update submodules when present in the project

If a cloned-and-checked-out project has a .gitmodules file in the root of the repo, run git submodule update --init --recursive inside the project to clone all submodules. Failures in setting up submodules result only in a warning log and do not prevent the project from being 'set up', as the user can later initialize submodules manually.

Do not abort PVC size calculation early if volume size not defined

If at least one volume in a DevWorkspace specifies its size, and the computed PVC size is greater than the default per-workspace PVC size, the computed PVC size will be used.

Failed to download the project zip file from the external devfile registry because of `x509: certificate signed by unknown authority` error

project-clone init container now reads any .crt or .pem files stored in /public-certs. These certificates are added to the HTTP client used for preparing zip-based projects in a DevWorkspace, and allow for downloading project zips from default-untrusted sources by e.g. auto-mounting certificates to /public-certs in the container.

Unable to fetch GitLab devfile - ref is missing from API call

Starting a new workspace from a RAW devfile URL doesn't support the custom name of the devfile

Now it is possible to start workspaces based on the raw URLs, and the devfile name could be custom. Prior to this release only devfile.yaml and .devfile.yaml were supported.

Eclipse Che 7.73.0

24 Aug 14:02
Compare
Choose a tag to compare

Major Enhancement

Allow configuring default container/pod SecurityContext in CheCluster CR

New CheCluster CR fields have been introduced spec.devEnvironments.security, spec.devEnvironments.security.containerSecurityContext, and spec.devEnvironments.security.podSecurityContext.
The latter two fields allow configuring the pod and security contexts used by workspaces by setting the corresponding DWOC fields.

When the devEnvironments.security.containerSecurityContext field is used and devEnvironments.disableContainerBuildCapabilities is set to false, the container security context required for the container-builds SCC will be used, overriding the security context set in devEnvironments.security.containerSecurityContext.

Workspaces Startup Page Improvements

startup improvements

vlcsnap-2023-08-08-11h20m11s343

Major Bug Fixes

Azure Repo ending with .git fails to recognize the devfile in the repo

Avoid workspaces page blinking

Dashboard sends the same requests double times

"Backend is not available" error when trying to login into Dashboard with both Bitbucket Server OAuth and PAT configured

Eclipse Che 7.72.0

03 Aug 12:03
Compare
Choose a tag to compare

Major Enhancement

New option to persist workspaces $HOME directory

This release introduces 2 new CheCluster CRs fields for managing workspaces home directory:

  • spec.devEnvironments.persistUserHome: holds config settings related to the persistence of /home/user/ in workspaces
  • spec.devEnvironments.persistUserHome.enabled determines whether /home/user/ will persist in workspaces. Disabled by default.

Added kubedock to run containers in the universal developer image

kubedock is now part of the universal developer image (Eclipse Che default image). If the environment variable KUBEDOCK_ENABLED is set to true in a workspace (this can be done using a devfile), the kubedock server is started at startup.

When KUBEDOCK_ENABLED=true then the following commands will be executed with kubedock (the remaining commands, in particular podman build, will be executed by the local podman):

podman run
podman ps
podman exec
podman cp
podman logs
podman inspect
podman kill
podman rm
podman wait
podman stop
podman start

Add a DevWorkspace Operator configuration to ignore OpenShift cluster-wide proxy settings

Before this trusted TLS certificates configured in Eclipse Che were ignored if an OpenShift cluster-wide proxy was configured.
This new DevWorkspace Operator configuration allow to avoid this undesired behavior.

Include the commands imported from a parent Devfile as to VS Code Tasks

Commands defined in the parent Devfile are now visible in the VS Code Tasks:

image

Simplified the procedure to add a Git personal access token

Before users had to provide the git username when adding a personal access token. That was redundant and cause of errors so Eclipse Che doesn't require it anymore.

screenshot-eclipse-che apps rosa h448e-94kxe-cxf ok1t p3 openshiftapps com-2023 07 20-11_54_05

Eclipse Che 7.71.0

08 Aug 19:31
Compare
Choose a tag to compare

Major Enhancement

All personal access tokens used in Che workspaces are listed in user preferences UI

Developers can list and manage Git personal access tokens from user preferences. This applies to token that has been created from the Che Dashboard UI as well as those that have been created manually (using a Kubernetes secret).

Support building a custom Devfile registry from a Bitbucket server

It's possible for an admin to create a custom Devfile registry from a clone of the Devfiel registry that is hosted on a Bitbucket repository.

Specify which Devfile component hosts the IDE

By default Eclipse Che hosts the IDE (VS Code, IntelliJ or PyCharm) in the first container specified in a Devfile. After this enhancement it is possible to specify the component that will host the IDE using the attribute controller.devfile.io/merge-contribution: true. In the following example the IDE will be hosted in "component2":

schemaVersion: 2.2.0
components:
  - name: component1
    container: 
      image: quay.io/sclorg/postgresql-15-c9s:c9s
  - name: component2
     attributes:
       controller.devfile.io/merge-contribution: true
     container: 
       image: quay.io/devfile/developer-base-image:latest

Automatically configure podman to trust OpenShift internal container registry

With this new feature, when Eclipse is deployed on Red Hat OpenShift, the TLS certificates of the OpenShift internal container registry are trusted by podman. Users can use podman to pull images without adding the certificate manually.

Update existing workspaces IDEs after Eclipse Che upgrade

With this update the IDEs of existing workspaces will be updated automatically after an upgrade or whenever the definition of the IDE changes.

Major Bug Fixes

Fix operator overriding CheCluster customizations

Some fields of the CheCluster such as .spec.components.pluginRegistry.openVSXURL, if customized by an administrator, could be overridden by the operator.

It's possible to add an Azure Devops token from user preferences UI

Developers can now add their Azure Devops personal access token from Che Dashboard user preferences.
azure-devops-pat-GUI