diff --git a/.github/ISSUE_TEMPLATE/bug-report.yml b/.github/ISSUE_TEMPLATE/bug-report.yml index b8f169a4b1fa..44443560fe15 100644 --- a/.github/ISSUE_TEMPLATE/bug-report.yml +++ b/.github/ISSUE_TEMPLATE/bug-report.yml @@ -86,6 +86,18 @@ body: validations: required: true + - type: dropdown + attributes: + label: Does this bug reproduce in VS Code web? + description: If the bug reproduces in VS Code web, submit the issue upstream instead (https://github.com/microsoft/vscode). You can run VS Code web with `code serve-web`. + options: + - Yes, this is also broken in VS Code web + - No, this works as expected in VS Code web + - This cannot be tested in VS Code web + - I did not test VS Code web + validations: + required: true + - type: dropdown attributes: label: Does this bug reproduce in GitHub Codespaces? diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index f1b642becb96..29bf6393ef4d 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -32,7 +32,7 @@ jobs: helm: ${{ steps.filter.outputs.helm }} steps: - name: Checkout repo - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Check changed files uses: dorny/paths-filter@v3 id: filter @@ -64,8 +64,8 @@ jobs: runs-on: ubuntu-22.04 timeout-minutes: 5 steps: - - uses: actions/checkout@v5 - - uses: actions/setup-node@v4 + - uses: actions/checkout@v6 + - uses: actions/setup-node@v6 with: node-version-file: .node-version cache: npm @@ -82,8 +82,8 @@ jobs: needs: changes if: needs.changes.outputs.docs == 'true' steps: - - uses: actions/checkout@v5 - - uses: actions/setup-node@v4 + - uses: actions/checkout@v6 + - uses: actions/setup-node@v6 with: node-version-file: .node-version cache: npm @@ -100,7 +100,7 @@ jobs: needs: changes if: needs.changes.outputs.helm == 'true' steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6 - uses: azure/setup-helm@v4 with: token: ${{ secrets.GITHUB_TOKEN }} @@ -114,8 +114,8 @@ jobs: needs: changes if: needs.changes.outputs.code == 'true' steps: - - uses: actions/checkout@v5 - - uses: actions/setup-node@v4 + - uses: actions/checkout@v6 + - uses: actions/setup-node@v6 with: node-version-file: .node-version cache: npm @@ -132,11 +132,11 @@ jobs: if: needs.changes.outputs.ci == 'true' steps: - name: Checkout repo - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Check workflow files run: | - bash <(curl https://raw.githubusercontent.com/rhysd/actionlint/main/scripts/download-actionlint.bash) 1.7.1 - ./actionlint -color -shellcheck= -ignore "set-output" + bash <(curl https://raw.githubusercontent.com/rhysd/actionlint/main/scripts/download-actionlint.bash) 1.7.9 + ./actionlint -color -shellcheck= -ignore "softprops/action-gh-release" shell: bash test-unit: @@ -146,8 +146,8 @@ jobs: needs: changes if: needs.changes.outputs.code == 'true' steps: - - uses: actions/checkout@v5 - - uses: actions/setup-node@v4 + - uses: actions/checkout@v6 + - uses: actions/setup-node@v6 with: node-version-file: .node-version cache: npm @@ -169,7 +169,7 @@ jobs: CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} DISABLE_V8_COMPILE_CACHE: 1 steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6 with: submodules: true - run: sudo apt update && sudo apt install -y libkrb5-dev @@ -178,7 +178,7 @@ jobs: packages: quilt version: 1.0 - run: quilt push -a - - uses: actions/setup-node@v4 + - uses: actions/setup-node@v6 with: node-version-file: .node-version cache: npm @@ -231,9 +231,9 @@ jobs: needs: [changes, build] if: needs.changes.outputs.code == 'true' || needs.changes.outputs.deps == 'true' steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6 - run: sudo apt update && sudo apt install -y libkrb5-dev - - uses: actions/setup-node@v4 + - uses: actions/setup-node@v6 with: node-version-file: .node-version cache: npm @@ -265,9 +265,9 @@ jobs: needs: [changes, build] if: needs.changes.outputs.code == 'true' || needs.changes.outputs.deps == 'true' steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6 - run: sudo apt update && sudo apt install -y libkrb5-dev - - uses: actions/setup-node@v4 + - uses: actions/setup-node@v6 with: node-version-file: .node-version cache: npm diff --git a/.github/workflows/installer.yaml b/.github/workflows/installer.yaml index c33ee0070763..f89c5b31de1b 100644 --- a/.github/workflows/installer.yaml +++ b/.github/workflows/installer.yaml @@ -30,7 +30,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout repo - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Install code-server run: ./install.sh @@ -44,7 +44,7 @@ jobs: container: "alpine:3.17" steps: - name: Checkout repo - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Install curl run: apk add curl @@ -67,7 +67,7 @@ jobs: steps: - name: Checkout repo - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Install code-server run: ./install.sh diff --git a/.github/workflows/publish.yaml b/.github/workflows/publish.yaml index 374c35876d41..49e1c6013be7 100644 --- a/.github/workflows/publish.yaml +++ b/.github/workflows/publish.yaml @@ -25,10 +25,10 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout code-server - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Install Node.js - uses: actions/setup-node@v4 + uses: actions/setup-node@v6 with: node-version-file: .node-version @@ -53,38 +53,6 @@ jobs: NPM_TOKEN: ${{ secrets.NPM_TOKEN }} NPM_ENVIRONMENT: "production" - homebrew: - needs: npm - runs-on: ubuntu-latest - steps: - # Ensure things are up to date - # Suggested by homebrew maintainers - # https://github.com/Homebrew/discussions/discussions/1532#discussioncomment-782633 - - name: Set up Homebrew - id: set-up-homebrew - uses: Homebrew/actions/setup-homebrew@master - - - name: Checkout code-server - uses: actions/checkout@v5 - - - name: Configure git - run: | - git config --global user.name cdrci - git config --global user.email opensource@coder.com - - # Strip out the v (v4.9.1 -> 4.9.1). - - name: Get and set VERSION - run: | - TAG="${{ github.event.inputs.version || github.ref_name }}" - echo "VERSION=${TAG#v}" >> $GITHUB_ENV - - - name: Bump code-server homebrew version - env: - VERSION: ${{ env.VERSION }} - HOMEBREW_GITHUB_API_TOKEN: ${{secrets.HOMEBREW_GITHUB_API_TOKEN}} - - run: ./ci/steps/brew-bump.sh - aur: runs-on: ubuntu-latest timeout-minutes: 10 @@ -94,13 +62,13 @@ jobs: steps: # We need to checkout code-server so we can get the version - name: Checkout code-server - uses: actions/checkout@v5 + uses: actions/checkout@v6 with: fetch-depth: 0 path: "./code-server" - name: Checkout code-server-aur repo - uses: actions/checkout@v5 + uses: actions/checkout@v6 with: repository: "cdrci/code-server-aur" token: ${{ secrets.HOMEBREW_GITHUB_API_TOKEN }} @@ -148,7 +116,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout code-server - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Set up QEMU uses: docker/setup-qemu-action@v3 diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 76179e20dea6..8f49c908083c 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -60,10 +60,10 @@ jobs: steps: - name: Checkout repo - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Install Node.js - uses: actions/setup-node@v4 + uses: actions/setup-node@v6 with: node-version-file: .node-version cache: npm @@ -134,10 +134,10 @@ jobs: steps: - name: Checkout repo - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Install Node.js - uses: actions/setup-node@v4 + uses: actions/setup-node@v6 with: node-version-file: .node-version cache: npm @@ -195,10 +195,10 @@ jobs: steps: - name: Checkout repo - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Install Node.js - uses: actions/setup-node@v4 + uses: actions/setup-node@v6 with: node-version-file: .node-version cache: npm diff --git a/.github/workflows/scripts.yaml b/.github/workflows/scripts.yaml index a39d90ad4c96..d6b2728ad66f 100644 --- a/.github/workflows/scripts.yaml +++ b/.github/workflows/scripts.yaml @@ -41,7 +41,7 @@ jobs: container: "alpine:3.17" steps: - name: Checkout repo - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Install test utilities run: apk add bats checkbashisms @@ -58,7 +58,7 @@ jobs: timeout-minutes: 5 steps: - name: Checkout repo - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Install lint utilities run: sudo apt install shellcheck diff --git a/.github/workflows/security.yaml b/.github/workflows/security.yaml index d8afcfce34d7..cb512093d6c2 100644 --- a/.github/workflows/security.yaml +++ b/.github/workflows/security.yaml @@ -25,12 +25,12 @@ jobs: timeout-minutes: 15 steps: - name: Checkout repo - uses: actions/checkout@v5 + uses: actions/checkout@v6 with: fetch-depth: 0 - name: Install Node.js - uses: actions/setup-node@v4 + uses: actions/setup-node@v6 with: node-version-file: .node-version @@ -46,7 +46,7 @@ jobs: runs-on: ubuntu-22.04 steps: - name: Checkout repo - uses: actions/checkout@v5 + uses: actions/checkout@v6 with: fetch-depth: 0 @@ -76,7 +76,7 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@v5 + uses: actions/checkout@v6 # Initializes the CodeQL tools for scanning. - name: Initialize CodeQL diff --git a/.github/workflows/trivy-docker.yaml b/.github/workflows/trivy-docker.yaml index 97769603da9e..e8c303e9d9c0 100644 --- a/.github/workflows/trivy-docker.yaml +++ b/.github/workflows/trivy-docker.yaml @@ -48,7 +48,7 @@ jobs: steps: - name: Checkout code - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Run Trivy vulnerability scanner in image mode uses: aquasecurity/trivy-action@b6643a29fecd7f34b3597bc6acb0a98b03d33ff8 diff --git a/docs/FAQ.md b/docs/FAQ.md index a695cc64ac6a..c9c4f7c3a6ef 100644 --- a/docs/FAQ.md +++ b/docs/FAQ.md @@ -31,6 +31,7 @@ - [What's the difference between code-server and Theia?](#whats-the-difference-between-code-server-and-theia) - [What's the difference between code-server and OpenVSCode-Server?](#whats-the-difference-between-code-server-and-openvscode-server) - [What's the difference between code-server and GitHub Codespaces?](#whats-the-difference-between-code-server-and-github-codespaces) +- [What's the difference between code-server and VS Code web?](#whats-the-difference-between-code-server-and-vs-code-web) - [Does code-server have any security login validation?](#does-code-server-have-any-security-login-validation) - [Are there community projects involving code-server?](#are-there-community-projects-involving-code-server) - [How do I change the port?](#how-do-i-change-the-port) @@ -439,6 +440,8 @@ Specific changes include: - The ability to use your own marketplace and collect your own telemetry - Built-in proxy for accessing ports on the remote machine integrated into VS Code's ports panel +- Settings are stored on disk like desktop VS Code, instead of in browser + storage (note that state is still stored in browser storage). - Wrapper process that spawns VS Code on-demand and has a separate CLI - Notification when updates are available - [Some other things](https://github.com/coder/code-server/tree/main/patches) @@ -447,6 +450,12 @@ Some of these changes appear very unlikely to ever be adopted by Microsoft. Some may make their way upstream, further closing the gap, but at the moment it looks like there will always be some subtle differences. +## What's the difference between code-server and VS Code web? + +VS Code web (which can be ran using `code serve-web`) has the same differences +as the Codespaces section above. VS Code web can be a better choice if you need +access to the official Microsoft marketplace. + ## Does code-server have any security login validation? code-server supports setting a single password and limits logins to two per diff --git a/lib/vscode b/lib/vscode index 1e3c50d64110..bf9252a2fb45 160000 --- a/lib/vscode +++ b/lib/vscode @@ -1 +1 @@ -Subproject commit 1e3c50d64110be466c0b4a45222e81d2c9352888 +Subproject commit bf9252a2fb45be6893dd8870c0bf37e2e1766d61