diff --git a/.github/workflows/insider-linux.yml b/.github/workflows/insider-linux.yml index 68b475b..1a3ac3c 100644 --- a/.github/workflows/insider-linux.yml +++ b/.github/workflows/insider-linux.yml @@ -113,6 +113,7 @@ jobs: - name: Build env: SHOULD_BUILD_REH: 'no' + SHOULD_BUILD_REH_WEB: 'no' run: ./build.sh if: env.SHOULD_BUILD == 'yes' @@ -143,13 +144,13 @@ jobs: include: - vscode_arch: x64 npm_arch: x64 - image: vscodium/vscodium-linux-build-agent:bionic-x64 + image: vscodium/vscodium-linux-build-agent:focal-x64 - vscode_arch: arm64 npm_arch: arm64 - image: vscodium/vscodium-linux-build-agent:bionic-arm64 + image: vscodium/vscodium-linux-build-agent:focal-arm64 - vscode_arch: armhf npm_arch: arm - image: vscodium/vscodium-linux-build-agent:bionic-armhf + image: vscodium/vscodium-linux-build-agent:focal-armhf - vscode_arch: riscv64 npm_arch: riscv64 image: vscodium/vscodium-linux-build-agent:focal-riscv64 @@ -180,8 +181,9 @@ jobs: - name: Check existing VSCodium tags/releases env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} CHECK_REH: 'no' + DISABLE_APPIMAGE: ${{ vars.DISABLE_INSIDER_APPIMAGE }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} run: ./check_tags.sh if: env.SHOULD_BUILD == 'yes' @@ -205,6 +207,7 @@ jobs: - name: Prepare assets env: SHOULD_BUILD_REH: 'no' + SHOULD_BUILD_REH_WEB: 'no' run: ./prepare_assets.sh if: env.SHOULD_BUILD == 'yes' && (env.SHOULD_DEPLOY == 'yes' || github.event.inputs.generate_assets == 'true') @@ -292,21 +295,21 @@ jobs: uses: actions/download-artifact@v3 with: name: vscode - if: env.SHOULD_BUILD_REH != 'no' || github.event.inputs.generate_assets == 'true' + if: env.SHOULD_BUILD_REH != 'no' || env.SHOULD_BUILD_REH_WEB != 'no' || github.event.inputs.generate_assets == 'true' - name: Build env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} npm_config_arch: ${{ matrix.npm_arch }} run: ./package_linux_reh.sh - if: env.SHOULD_BUILD_REH != 'no' || github.event.inputs.generate_assets == 'true' + if: env.SHOULD_BUILD_REH != 'no' || env.SHOULD_BUILD_REH_WEB != 'no' || github.event.inputs.generate_assets == 'true' - name: Release env: GITHUB_TOKEN: ${{ secrets.STRONGER_GITHUB_TOKEN }} GITHUB_USERNAME: ${{ github.repository_owner }} run: ./release.sh - if: env.SHOULD_BUILD_REH != 'no' && env.SHOULD_DEPLOY == 'yes' + if: (env.SHOULD_BUILD_REH != 'no' || env.SHOULD_BUILD_REH_WEB != 'no') && env.SHOULD_DEPLOY == 'yes' - name: Upload assets uses: actions/upload-artifact@v4 @@ -333,6 +336,7 @@ jobs: BUILD_SOURCEVERSION: ${{ needs.compile.outputs.BUILD_SOURCEVERSION }} MS_COMMIT: ${{ needs.check.outputs.MS_COMMIT }} MS_TAG: ${{ needs.check.outputs.MS_TAG }} + OS_NAME: alpine RELEASE_VERSION: ${{ needs.check.outputs.RELEASE_VERSION }} SHOULD_BUILD: ${{ needs.check.outputs.SHOULD_BUILD }} SHOULD_DEPLOY: ${{ needs.check.outputs.SHOULD_DEPLOY }} @@ -428,7 +432,7 @@ jobs: platform: - amd64 - arm64 - if: needs.check.outputs.SHOULD_DEPLOY == 'yes' && vars.DISABLE_SNAP != 'yes' + if: needs.check.outputs.SHOULD_DEPLOY == 'yes' && vars.DISABLE_INSIDER_SNAP != 'yes' steps: - uses: actions/checkout@v3 diff --git a/.github/workflows/insider-macos.yml b/.github/workflows/insider-macos.yml index 05f14e6..ba63fba 100644 --- a/.github/workflows/insider-macos.yml +++ b/.github/workflows/insider-macos.yml @@ -60,6 +60,7 @@ jobs: uses: actions/setup-python@v5 with: python-version: '3.11' + if: env.VSCODE_ARCH == 'x64' - name: Clone VSCode repo env: diff --git a/.github/workflows/stable-linux.yml b/.github/workflows/stable-linux.yml index f9900c6..7e6d12d 100644 --- a/.github/workflows/stable-linux.yml +++ b/.github/workflows/stable-linux.yml @@ -112,6 +112,7 @@ jobs: - name: Build env: SHOULD_BUILD_REH: 'no' + SHOULD_BUILD_REH_WEB: 'no' run: ./build.sh if: env.SHOULD_BUILD == 'yes' @@ -205,6 +206,7 @@ jobs: - name: Prepare assets env: SHOULD_BUILD_REH: 'no' + SHOULD_BUILD_REH_WEB: 'no' run: ./prepare_assets.sh if: env.SHOULD_BUILD == 'yes' && (env.SHOULD_DEPLOY == 'yes' || github.event.inputs.generate_assets == 'true') @@ -292,21 +294,21 @@ jobs: uses: actions/download-artifact@v3 with: name: vscode - if: env.SHOULD_BUILD_REH != 'no' || github.event.inputs.generate_assets == 'true' + if: env.SHOULD_BUILD_REH != 'no' || env.SHOULD_BUILD_REH_WEB != 'no' || github.event.inputs.generate_assets == 'true' - name: Build env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} npm_config_arch: ${{ matrix.npm_arch }} run: ./package_linux_reh.sh - if: env.SHOULD_BUILD_REH != 'no' || github.event.inputs.generate_assets == 'true' + if: env.SHOULD_BUILD_REH != 'no' || env.SHOULD_BUILD_REH_WEB != 'no' || github.event.inputs.generate_assets == 'true' - name: Release env: GITHUB_TOKEN: ${{ secrets.STRONGER_GITHUB_TOKEN }} GITHUB_USERNAME: ${{ github.repository_owner }} run: ./release.sh - if: env.SHOULD_BUILD_REH != 'no' && env.SHOULD_DEPLOY == 'yes' + if: (env.SHOULD_BUILD_REH != 'no' || env.SHOULD_BUILD_REH_WEB != 'no') && env.SHOULD_DEPLOY == 'yes' - name: Upload assets uses: actions/upload-artifact@v4 @@ -333,6 +335,7 @@ jobs: BUILD_SOURCEVERSION: ${{ needs.compile.outputs.BUILD_SOURCEVERSION }} MS_COMMIT: ${{ needs.check.outputs.MS_COMMIT }} MS_TAG: ${{ needs.check.outputs.MS_TAG }} + OS_NAME: alpine RELEASE_VERSION: ${{ needs.check.outputs.RELEASE_VERSION }} SHOULD_BUILD: ${{ needs.check.outputs.SHOULD_BUILD }} SHOULD_DEPLOY: ${{ needs.check.outputs.SHOULD_DEPLOY }} diff --git a/.nvmrc b/.nvmrc index 7795cad..c61a3d7 100644 --- a/.nvmrc +++ b/.nvmrc @@ -1 +1 @@ -20.12 +20.14 diff --git a/build.sh b/build.sh index c31f612..919a6a5 100755 --- a/build.sh +++ b/build.sh @@ -35,6 +35,7 @@ if [[ "${SHOULD_BUILD}" == "yes" ]]; then if [[ "${VSCODE_ARCH}" != "ia32" && "${VSCODE_ARCH}" != "x64" ]]; then SHOULD_BUILD_REH="no" + SHOULD_BUILD_REH_WEB="no" fi VSCODE_PLATFORM="win32" @@ -50,13 +51,14 @@ if [[ "${SHOULD_BUILD}" == "yes" ]]; then fi if [[ "${SHOULD_BUILD_REH}" != "no" ]]; then - if [[ "${OS_NAME}" == "linux" ]]; then - export VSCODE_NODE_GLIBC='-glibc-2.17' - fi - yarn gulp minify-vscode-reh yarn gulp "vscode-reh-${VSCODE_PLATFORM}-${VSCODE_ARCH}-min-ci" fi + if [[ "${SHOULD_BUILD_REH_WEB}" != "no" ]]; then + yarn gulp minify-vscode-reh-web + yarn gulp "vscode-reh-web-${VSCODE_PLATFORM}-${VSCODE_ARCH}-min-ci" + fi + cd .. fi diff --git a/check_tags.sh b/check_tags.sh index 284c9dd..70b914d 100755 --- a/check_tags.sh +++ b/check_tags.sh @@ -98,6 +98,13 @@ elif [[ "${ASSETS}" != "null" ]]; then export SHOULD_BUILD_REH="no" fi + if [[ -z $( contains "${APP_NAME_LC}-reh-web-darwin-${VSCODE_ARCH}-${RELEASE_VERSION}.tar.gz" ) ]]; then + echo "Building on MacOS because we have no REH-web archive" + export SHOULD_BUILD="yes" + else + export SHOULD_BUILD_REH_WEB="no" + fi + if [[ "${SHOULD_BUILD}" != "yes" ]]; then echo "Already have all the MacOS builds" fi @@ -127,6 +134,7 @@ elif [[ "${ASSETS}" != "null" ]]; then fi export SHOULD_BUILD_REH="no" + export SHOULD_BUILD_REH_WEB="no" if [[ "${SHOULD_BUILD}" != "yes" ]]; then echo "Already have all the Windows arm64 builds" @@ -176,6 +184,13 @@ elif [[ "${ASSETS}" != "null" ]]; then export SHOULD_BUILD_REH="no" fi + if [[ -z $( contains "${APP_NAME_LC}-reh-web-win32-${VSCODE_ARCH}-${RELEASE_VERSION}.tar.gz" ) ]]; then + echo "Building on Windows ia32 because we have no REH-web archive" + export SHOULD_BUILD="yes" + else + export SHOULD_BUILD_REH_WEB="no" + fi + if [[ "${SHOULD_BUILD}" != "yes" ]]; then echo "Already have all the Windows ia32 builds" fi @@ -224,6 +239,13 @@ elif [[ "${ASSETS}" != "null" ]]; then export SHOULD_BUILD_REH="no" fi + if [[ -z $( contains "${APP_NAME_LC}-reh-web-win32-${VSCODE_ARCH}-${RELEASE_VERSION}.tar.gz" ) ]]; then + echo "Building on Windows x64 because we have no REH-web archive" + export SHOULD_BUILD="yes" + else + export SHOULD_BUILD_REH_WEB="no" + fi + if [[ "${SHOULD_BUILD}" != "yes" ]]; then echo "Already have all the Windows x64 builds" fi @@ -231,6 +253,7 @@ elif [[ "${ASSETS}" != "null" ]]; then elif [[ "${OS_NAME}" == "linux" ]]; then if [[ "${CHECK_ONLY_REH}" == "yes" ]]; then + if [[ -z $( contains "${APP_NAME_LC}-reh-linux-${VSCODE_ARCH}-${RELEASE_VERSION}.tar.gz" ) ]]; then echo "Building on Linux ${VSCODE_ARCH} because we have no REH archive" export SHOULD_BUILD="yes" @@ -238,6 +261,15 @@ elif [[ "${ASSETS}" != "null" ]]; then echo "Already have the Linux REH ${VSCODE_ARCH} archive" export SHOULD_BUILD_REH="no" fi + + if [[ -z $( contains "${APP_NAME_LC}-reh-web-linux-${VSCODE_ARCH}-${RELEASE_VERSION}.tar.gz" ) ]]; then + echo "Building on Linux ${VSCODE_ARCH} because we have no REH-web archive" + export SHOULD_BUILD="yes" + else + echo "Already have the Linux REH-web ${VSCODE_ARCH} archive" + export SHOULD_BUILD_REH_WEB="no" + fi + else # linux-arm64 @@ -270,6 +302,13 @@ elif [[ "${ASSETS}" != "null" ]]; then export SHOULD_BUILD_REH="no" fi + if [[ "${CHECK_REH}" != "no" && -z $( contains "${APP_NAME_LC}-reh-web-linux-arm64-${RELEASE_VERSION}.tar.gz" ) ]]; then + echo "Building on Linux arm64 because we have no REH-web archive" + export SHOULD_BUILD="yes" + else + export SHOULD_BUILD_REH_WEB="no" + fi + export SHOULD_BUILD_APPIMAGE="no" if [[ "${SHOULD_BUILD}" != "yes" ]]; then @@ -307,6 +346,13 @@ elif [[ "${ASSETS}" != "null" ]]; then export SHOULD_BUILD_REH="no" fi + if [[ "${CHECK_REH}" != "no" && -z $( contains "${APP_NAME_LC}-reh-web-linux-armhf-${RELEASE_VERSION}.tar.gz" ) ]]; then + echo "Building on Linux arm because we have no REH-web archive" + export SHOULD_BUILD="yes" + else + export SHOULD_BUILD_REH_WEB="no" + fi + export SHOULD_BUILD_APPIMAGE="no" if [[ "${SHOULD_BUILD}" != "yes" ]]; then @@ -328,6 +374,13 @@ elif [[ "${ASSETS}" != "null" ]]; then export SHOULD_BUILD_REH="no" fi + if [[ -z $( contains "${APP_NAME_LC}-reh-web-linux-ppc64le-${RELEASE_VERSION}.tar.gz" ) ]]; then + echo "Building on Linux PowerPC64LE because we have no REH-web archive" + export SHOULD_BUILD="yes" + else + export SHOULD_BUILD_REH_WEB="no" + fi + if [[ "${SHOULD_BUILD}" != "yes" ]]; then echo "Already have all the Linux PowerPC64LE builds" fi @@ -353,6 +406,13 @@ elif [[ "${ASSETS}" != "null" ]]; then export SHOULD_BUILD_REH="no" fi + if [[ -z $( contains "${APP_NAME_LC}-reh-web-linux-riscv64-${RELEASE_VERSION}.tar.gz" ) ]]; then + echo "Building on Linux RISC-V 64 because we have no REH-web archive" + export SHOULD_BUILD="yes" + else + export SHOULD_BUILD_REH_WEB="no" + fi + if [[ "${SHOULD_BUILD}" != "yes" ]]; then echo "Already have all the Linux riscv64 builds" fi @@ -397,11 +457,73 @@ elif [[ "${ASSETS}" != "null" ]]; then export SHOULD_BUILD_REH="no" fi + if [[ "${CHECK_REH}" != "no" && -z $( contains "${APP_NAME_LC}-reh-web-linux-x64-${RELEASE_VERSION}.tar.gz" ) ]]; then + echo "Building on Linux x64 because we have no REH-web archive" + export SHOULD_BUILD="yes" + else + export SHOULD_BUILD_REH_WEB="no" + fi + if [[ "${SHOULD_BUILD}" != "yes" ]]; then echo "Already have all the Linux x64 builds" fi fi fi + + elif [[ "${OS_NAME}" == "alpine" ]]; then + + if [[ "${CHECK_ONLY_REH}" == "yes" ]]; then + if [[ -z $( contains "${APP_NAME_LC}-reh-alpine-${VSCODE_ARCH}-${RELEASE_VERSION}.tar.gz" ) ]]; then + echo "Building on Alpine ${VSCODE_ARCH} because we have no REH archive" + export SHOULD_BUILD="yes" + else + echo "Already have the Alpine REH ${VSCODE_ARCH} archive" + export SHOULD_BUILD_REH="no" + fi + + if [[ -z $( contains "${APP_NAME_LC}-reh-web-alpine-${VSCODE_ARCH}-${RELEASE_VERSION}.tar.gz" ) ]]; then + echo "Building on Alpine ${VSCODE_ARCH} because we have no REH-web archive" + export SHOULD_BUILD="yes" + else + echo "Already have the Alpine REH-web ${VSCODE_ARCH} archive" + export SHOULD_BUILD_REH_WEB="no" + fi + else + + # alpine-arm64 + if [[ "${VSCODE_ARCH}" == "arm64" || "${CHECK_ALL}" == "yes" ]]; then + if [[ "${CHECK_REH}" != "no" && -z $( contains "${APP_NAME_LC}-reh-alpine-arm64-${RELEASE_VERSION}.tar.gz" ) ]]; then + echo "Building on Alpine arm64 because we have no REH archive" + export SHOULD_BUILD="yes" + else + export SHOULD_BUILD_REH="no" + fi + + if [[ "${CHECK_REH}" != "no" && -z $( contains "${APP_NAME_LC}-reh-web-alpine-arm64-${RELEASE_VERSION}.tar.gz" ) ]]; then + echo "Building on Alpine arm64 because we have no REH-web archive" + export SHOULD_BUILD="yes" + else + export SHOULD_BUILD_REH_WEB="no" + fi + fi + + # alpine-x64 + if [[ "${VSCODE_ARCH}" == "x64" || "${CHECK_ALL}" == "yes" ]]; then + if [[ "${CHECK_REH}" != "no" && -z $( contains "${APP_NAME_LC}-reh-alpine-x64-${RELEASE_VERSION}.tar.gz" ) ]]; then + echo "Building on Alpine x64 because we have no REH archive" + export SHOULD_BUILD="yes" + else + export SHOULD_BUILD_REH="no" + fi + + if [[ "${CHECK_REH}" != "no" && -z $( contains "${APP_NAME_LC}-reh-web-alpine-x64-${RELEASE_VERSION}.tar.gz" ) ]]; then + echo "Building on Alpine x64 because we have no REH-web archive" + export SHOULD_BUILD="yes" + else + export SHOULD_BUILD_REH_WEB="no" + fi + fi + fi fi else if [[ "${IS_SPEARHEAD}" == "yes" ]]; then @@ -421,6 +543,7 @@ else elif [[ "${OS_NAME}" == "windows" ]]; then if [[ "${VSCODE_ARCH}" == "arm64" ]]; then export SHOULD_BUILD_REH="no" + export SHOULD_BUILD_REH_WEB="no" fi fi @@ -438,6 +561,7 @@ echo "SHOULD_BUILD_EXE_USR=${SHOULD_BUILD_EXE_USR}" >> "${GITHUB_ENV}" echo "SHOULD_BUILD_MSI=${SHOULD_BUILD_MSI}" >> "${GITHUB_ENV}" echo "SHOULD_BUILD_MSI_NOUP=${SHOULD_BUILD_MSI_NOUP}" >> "${GITHUB_ENV}" echo "SHOULD_BUILD_REH=${SHOULD_BUILD_REH}" >> "${GITHUB_ENV}" +echo "SHOULD_BUILD_REH_WEB=${SHOULD_BUILD_REH_WEB}" >> "${GITHUB_ENV}" echo "SHOULD_BUILD_RPM=${SHOULD_BUILD_RPM}" >> "${GITHUB_ENV}" echo "SHOULD_BUILD_TAR=${SHOULD_BUILD_TAR}" >> "${GITHUB_ENV}" echo "SHOULD_BUILD_ZIP=${SHOULD_BUILD_ZIP}" >> "${GITHUB_ENV}" diff --git a/insider.json b/insider.json index 4febaca..7e5be99 100644 --- a/insider.json +++ b/insider.json @@ -1,4 +1,4 @@ { - "tag": "1.92.0", - "commit": "97d1b933ada0ca69bea107f7a89e029991277ccc" + "tag": "1.93.0", + "commit": "5b066ec2e30cf46bc636d6d27af5404713f6b0f8" } diff --git a/package_alpine_reh.sh b/package_alpine_reh.sh index 5cb1d70..60616ac 100755 --- a/package_alpine_reh.sh +++ b/package_alpine_reh.sh @@ -19,6 +19,18 @@ VSCODE_REMOTE_DEPENDENCIES_CONTAINER_NAME="vscodium/vscodium-linux-build-agent:a export VSCODE_HOST_MOUNT VSCODE_REMOTE_DEPENDENCIES_CONTAINER_NAME +if [[ -d "../patches/alpine/reh/" ]]; then + for file in "../patches/alpine/reh/"*.patch; do + if [[ -f "${file}" ]]; then + echo applying patch: "${file}"; + if ! git apply --ignore-whitespace "${file}"; then + echo failed to apply patch "${file}" >&2 + exit 1 + fi + fi + done +fi + for i in {1..5}; do # try 5 times yarn --frozen-lockfile --check-files && break if [[ $i == 3 ]]; then diff --git a/package_linux_bin.sh b/package_linux_bin.sh index 090b71c..0175b27 100755 --- a/package_linux_bin.sh +++ b/package_linux_bin.sh @@ -26,7 +26,7 @@ if [[ "${VSCODE_ARCH}" == "riscv64" ]]; then export VSCODE_ELECTRON_REPO='riscv-forks/electron-riscv-releases' export ELECTRON_SKIP_BINARY_DOWNLOAD=1 export PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD=1 - ELECTRON_VERSION="30.1.2" + ELECTRON_VERSION="30.3.1" if [[ "${ELECTRON_VERSION}" != "$(yarn config get target)" ]]; then # Fail the pipeline if electron target doesn't match what is used. # Look for releases here if electron version used by vscode changed: @@ -34,8 +34,8 @@ if [[ "${VSCODE_ARCH}" == "riscv64" ]]; then echo "Electron RISC-V binary version doesn't match target electron version!" exit 1 fi - export VSCODE_ELECTRON_TAG="v${ELECTRON_VERSION}.riscv2" - echo "871a049ae913a37664532e93e6d1c8dc2da6260e9297c90d6d525f79581948b8 *electron-v30.1.2-linux-riscv64.zip" >> build/checksums/electron.txt + export VSCODE_ELECTRON_TAG="v${ELECTRON_VERSION}.riscv1" + echo "ad36c48a8b0e061fbdeda91ff2a4c9a2f39d016c8ba23c7b4ed1394c37b1503b *electron-v${ELECTRON_VERSION}-linux-riscv64.zip" >> build/checksums/electron.txt fi if [[ -d "../patches/linux/client/" ]]; then diff --git a/package_linux_reh.sh b/package_linux_reh.sh index 20970bb..86b1d49 100755 --- a/package_linux_reh.sh +++ b/package_linux_reh.sh @@ -7,6 +7,10 @@ if [[ "${CI_BUILD}" == "no" ]]; then exit 1 fi +APP_NAME_LC="$( echo "${APP_NAME}" | awk '{print tolower($0)}' )" + +mkdir -p assets + tar -xzf ./vscode.tar.gz cd vscode || { echo "'vscode' dir not found"; exit 1; } @@ -96,20 +100,32 @@ node build/azure-pipelines/distro/mixin-npm export VSCODE_NODE_GLIBC="-glibc-${GLIBC_VERSION}" -yarn gulp minify-vscode-reh -yarn gulp "vscode-reh-${VSCODE_PLATFORM}-${VSCODE_ARCH}-min-ci" +if [[ "${SHOULD_BUILD_REH}" != "no" ]]; then + echo "Building REH" + yarn gulp minify-vscode-reh + yarn gulp "vscode-reh-${VSCODE_PLATFORM}-${VSCODE_ARCH}-min-ci" -EXPECTED_GLIBC_VERSION="${GLIBC_VERSION}" EXPECTED_GLIBCXX_VERSION="${GLIBCXX_VERSION}" SEARCH_PATH="../vscode-reh-${VSCODE_PLATFORM}-${VSCODE_ARCH}" ./build/azure-pipelines/linux/verify-glibc-requirements.sh + EXPECTED_GLIBC_VERSION="${GLIBC_VERSION}" EXPECTED_GLIBCXX_VERSION="${GLIBCXX_VERSION}" SEARCH_PATH="../vscode-reh-${VSCODE_PLATFORM}-${VSCODE_ARCH}" ./build/azure-pipelines/linux/verify-glibc-requirements.sh -cd .. + echo "Archiving REH" + pushd "../vscode-reh-${VSCODE_PLATFORM}-${VSCODE_ARCH}" + tar czf "../assets/${APP_NAME_LC}-reh-${VSCODE_PLATFORM}-${VSCODE_ARCH}-${RELEASE_VERSION}.tar.gz" . + popd +fi -APP_NAME_LC="$( echo "${APP_NAME}" | awk '{print tolower($0)}' )" +if [[ "${SHOULD_BUILD_REH_WEB}" != "no" ]]; then + echo "Building REH-web" + yarn gulp minify-vscode-reh-web + yarn gulp "vscode-reh-web-${VSCODE_PLATFORM}-${VSCODE_ARCH}-min-ci" -mkdir -p assets + EXPECTED_GLIBC_VERSION="${GLIBC_VERSION}" EXPECTED_GLIBCXX_VERSION="${GLIBCXX_VERSION}" SEARCH_PATH="../vscode-reh-web-${VSCODE_PLATFORM}-${VSCODE_ARCH}" ./build/azure-pipelines/linux/verify-glibc-requirements.sh + + echo "Archiving REH-web" + pushd "../vscode-reh-web-${VSCODE_PLATFORM}-${VSCODE_ARCH}" + tar czf "../assets/${APP_NAME_LC}-reh-web-${VSCODE_PLATFORM}-${VSCODE_ARCH}-${RELEASE_VERSION}.tar.gz" . + popd +fi -echo "Building and moving REH" -cd "vscode-reh-${VSCODE_PLATFORM}-${VSCODE_ARCH}" -tar czf "../assets/${APP_NAME_LC}-reh-${VSCODE_PLATFORM}-${VSCODE_ARCH}-${RELEASE_VERSION}.tar.gz" . cd .. npm install -g checksum diff --git a/patches/alpine/reh/fix-node-docker.patch b/patches/alpine/reh/fix-node-docker.patch new file mode 100644 index 0000000..27a7fb5 --- /dev/null +++ b/patches/alpine/reh/fix-node-docker.patch @@ -0,0 +1,23 @@ +diff --git a/build/gulpfile.reh.js b/build/gulpfile.reh.js +index e12a33e..9300d62 100644 +--- a/build/gulpfile.reh.js ++++ b/build/gulpfile.reh.js +@@ -188,5 +188,16 @@ function getNodeChecksum(expectedName) { + function extractAlpinefromDocker(nodeVersion, platform, arch) { +- const imageName = arch === 'arm64' ? 'arm64v8/node' : 'node'; ++ let imageName = 'node'; ++ let dockerPlatform = ''; ++ ++ if (arch === 'arm64') { ++ imageName = 'arm64v8/node'; ++ ++ const architecture = cp.execSync(`docker info --format '{{json .Architecture}}'`, { encoding: 'utf8' }).trim(); ++ if (architecture != '"aarch64"') { ++ dockerPlatform = '--platform=linux/arm64'; ++ } ++ } ++ + log(`Downloading node.js ${nodeVersion} ${platform} ${arch} from docker image ${imageName}`); +- const contents = cp.execSync(`docker run --rm ${imageName}:${nodeVersion}-alpine /bin/sh -c 'cat \`which node\`'`, { maxBuffer: 100 * 1024 * 1024, encoding: 'buffer' }); ++ const contents = cp.execSync(`docker run --rm ${dockerPlatform} ${imageName}:${nodeVersion}-alpine /bin/sh -c 'cat \`which node\`'`, { maxBuffer: 100 * 1024 * 1024, encoding: 'buffer' }); + return es.readArray([new File({ path: 'node', contents, stat: { mode: parseInt('755', 8) } })]); diff --git a/patches/brand.patch b/patches/brand.patch index ee4ed43..07ccf87 100644 --- a/patches/brand.patch +++ b/patches/brand.patch @@ -282,7 +282,7 @@ index af6c9d8..7057b54 100644 + "json.tracing.desc": "Traces the communication between VSCodium and the JSON language server.", "json.colorDecorators.enable.desc": "Enables or disables color decorators", diff --git a/extensions/markdown-language-features/package.nls.json b/extensions/markdown-language-features/package.nls.json -index 3549ec5..8460eb1 100644 +index da567b4..37e3f7d 100644 --- a/extensions/markdown-language-features/package.nls.json +++ b/extensions/markdown-language-features/package.nls.json @@ -21,3 +21,3 @@ @@ -290,6 +290,11 @@ index 3549ec5..8460eb1 100644 - "markdown.trace.server.desc": "Traces the communication between VS Code and the Markdown language server.", + "markdown.trace.server.desc": "Traces the communication between VSCodium and the Markdown language server.", "markdown.server.log.desc": "Controls the logging level of the Markdown language server.", +@@ -75,3 +75,3 @@ + "comment": [ +- "This setting is use the user drops or pastes image data into the editor. In this case, VS Code automatically creates a new image file in the workspace containing the dropped/pasted image.", ++ "This setting is use the user drops or pastes image data into the editor. In this case, VSCodium automatically creates a new image file in the workspace containing the dropped/pasted image.", + "It's easier to explain this setting with an example. For example, let's say the setting value was:", diff --git a/extensions/media-preview/package.nls.json b/extensions/media-preview/package.nls.json index c45e1e2..d8408d8 100644 --- a/extensions/media-preview/package.nls.json @@ -354,7 +359,7 @@ index b18b340..ca2eb2d 100644 + "comment": "The simpler (?<=\\bProcess\\.|\\bCommandLine\\.) breaks VSCodium / Atom, see https://github.com/textmate/swift.tmbundle/issues/29", "name": "support.variable.swift", diff --git a/extensions/typescript-language-features/package.nls.json b/extensions/typescript-language-features/package.nls.json -index cba2400..039d20d 100644 +index d2a0ca8..c781a86 100644 --- a/extensions/typescript-language-features/package.nls.json +++ b/extensions/typescript-language-features/package.nls.json @@ -75,4 +75,4 @@ @@ -364,12 +369,12 @@ index cba2400..039d20d 100644 + "typescript.locale": "Sets the locale used to report JavaScript and TypeScript errors. Defaults to use VSCodium's locale.", + "typescript.locale.auto": "Use VSCodium's configured display language", "configuration.implicitProjectConfig.module": "Sets the module system for the program. See more: https://www.typescriptlang.org/tsconfig#module.", -@@ -159,3 +159,3 @@ +@@ -160,3 +160,3 @@ "typescript.workspaceSymbols.excludeLibrarySymbols": "Exclude symbols that come from library files in Go to Symbol in Workspace results. Requires using TypeScript 5.3+ in the workspace.", - "typescript.updateImportsOnFileMove.enabled": "Enable/disable automatic updating of import paths when you rename or move a file in VS Code.", + "typescript.updateImportsOnFileMove.enabled": "Enable/disable automatic updating of import paths when you rename or move a file in VSCodium.", "typescript.updateImportsOnFileMove.enabled.prompt": "Prompt on each rename.", -@@ -165,5 +165,5 @@ +@@ -166,5 +166,5 @@ "typescript.suggest.enabled": "Enabled/disable autocomplete suggestions.", - "configuration.surveys.enabled": "Enabled/disable occasional surveys that help us improve VS Code's JavaScript and TypeScript support.", + "configuration.surveys.enabled": "Enabled/disable occasional surveys that help us improve VSCodium's JavaScript and TypeScript support.", @@ -377,7 +382,7 @@ index cba2400..039d20d 100644 - "configuration.tsserver.useVsCodeWatcher": "Use VS Code's file watchers instead of TypeScript's. Requires using TypeScript 5.4+ in the workspace.", + "configuration.tsserver.useVsCodeWatcher": "Use VSCodium's file watchers instead of TypeScript's. Requires using TypeScript 5.4+ in the workspace.", "configuration.tsserver.watchOptions": "Configure which watching strategies should be used to keep track of files and directories.", -@@ -218,6 +218,6 @@ +@@ -234,6 +234,6 @@ "configuration.suggest.objectLiteralMethodSnippets.enabled": "Enable/disable snippet completions for methods in object literals.", - "configuration.tsserver.web.projectWideIntellisense.enabled": "Enable/disable project-wide IntelliSense on web. Requires that VS Code is running in a trusted context.", + "configuration.tsserver.web.projectWideIntellisense.enabled": "Enable/disable project-wide IntelliSense on web. Requires that VSCodium is running in a trusted context.", @@ -386,7 +391,7 @@ index cba2400..039d20d 100644 - "configuration.tsserver.nodePath": "Run TS Server on a custom Node installation. This can be a path to a Node executable, or 'node' if you want VS Code to detect a Node installation.", + "configuration.tsserver.nodePath": "Run TS Server on a custom Node installation. This can be a path to a Node executable, or 'node' if you want VSCodium to detect a Node installation.", "configuration.updateImportsOnPaste": "Automatically update imports when pasting code. Requires TypeScript 5.6+.", -@@ -232,6 +232,6 @@ +@@ -248,6 +248,6 @@ "walkthroughs.nodejsWelcome.debugJsFile.title": "Run and Debug your JavaScript", - "walkthroughs.nodejsWelcome.debugJsFile.description": "Once you've installed Node.js, you can run JavaScript programs at a terminal by entering ``node your-file-name.js``\nAnother easy way to run Node.js programs is by using VS Code's debugger which lets you run your code, pause at different points, and help you understand what's going on step-by-step.\n[Start Debugging](command:javascript-walkthrough.commands.debugJsFile)", + "walkthroughs.nodejsWelcome.debugJsFile.description": "Once you've installed Node.js, you can run JavaScript programs at a terminal by entering ``node your-file-name.js``\nAnother easy way to run Node.js programs is by using VSCodium's debugger which lets you run your code, pause at different points, and help you understand what's going on step-by-step.\n[Start Debugging](command:javascript-walkthrough.commands.debugJsFile)", @@ -414,35 +419,35 @@ index 239519e..a308077 100644 + vscode.window.showErrorMessage(vscode.l10n.t("VSCodium\'s tsserver was deleted by another application such as a misbehaving virus detection tool. Please reinstall VSCodium.")); throw new Error('Could not find bundled tsserver.js'); diff --git a/extensions/typescript-language-features/src/tsconfig.ts b/extensions/typescript-language-features/src/tsconfig.ts -index 04f08a1..2b2b1bb 100644 +index e85c715..9059335 100644 --- a/extensions/typescript-language-features/src/tsconfig.ts +++ b/extensions/typescript-language-features/src/tsconfig.ts -@@ -151,3 +151,3 @@ export async function openProjectConfigForFile( +@@ -155,3 +155,3 @@ export async function openProjectConfigForFile( vscode.window.showInformationMessage( - vscode.l10n.t("Please open a folder in VS Code to use a TypeScript or JavaScript project")); + vscode.l10n.t("Please open a folder in VSCodium to use a TypeScript or JavaScript project")); return; diff --git a/extensions/typescript-language-features/src/typescriptServiceClient.ts b/extensions/typescript-language-features/src/typescriptServiceClient.ts -index b61153b..660fa7d 100644 +index 2d3ea9e..a19481a 100644 --- a/extensions/typescript-language-features/src/typescriptServiceClient.ts +++ b/extensions/typescript-language-features/src/typescriptServiceClient.ts -@@ -640,3 +640,3 @@ export default class TypeScriptServiceClient extends Disposable implements IType +@@ -663,3 +663,3 @@ export default class TypeScriptServiceClient extends Disposable implements IType prompt = vscode.window.showErrorMessage( - vscode.l10n.t("The JS/TS language service immediately crashed 5 times. The service will not be restarted.\nThis may be caused by a plugin contributed by one of these extensions: {0}.\nPlease try disabling these extensions before filing an issue against VS Code.", pluginExtensionList)); + vscode.l10n.t("The JS/TS language service immediately crashed 5 times. The service will not be restarted.\nThis may be caused by a plugin contributed by one of these extensions: {0}.\nPlease try disabling these extensions before filing an issue against VSCodium.", pluginExtensionList)); } else { -@@ -661,3 +661,3 @@ export default class TypeScriptServiceClient extends Disposable implements IType +@@ -684,3 +684,3 @@ export default class TypeScriptServiceClient extends Disposable implements IType prompt = vscode.window.showWarningMessage( - vscode.l10n.t("The JS/TS language service crashed 5 times in the last 5 Minutes.\nThis may be caused by a plugin contributed by one of these extensions: {0}\nPlease try disabling these extensions before filing an issue against VS Code.", pluginExtensionList)); + vscode.l10n.t("The JS/TS language service crashed 5 times in the last 5 Minutes.\nThis may be caused by a plugin contributed by one of these extensions: {0}\nPlease try disabling these extensions before filing an issue against VSCodium.", pluginExtensionList)); } else { -@@ -675,3 +675,3 @@ export default class TypeScriptServiceClient extends Disposable implements IType +@@ -698,3 +698,3 @@ export default class TypeScriptServiceClient extends Disposable implements IType prompt = vscode.window.showWarningMessage( - vscode.l10n.t("The JS/TS language service crashed.\nThis may be caused by a plugin contributed by one of these extensions: {0}.\nPlease try disabling these extensions before filing an issue against VS Code.", pluginExtensionList)); + vscode.l10n.t("The JS/TS language service crashed.\nThis may be caused by a plugin contributed by one of these extensions: {0}.\nPlease try disabling these extensions before filing an issue against VSCodium.", pluginExtensionList)); } else { diff --git a/extensions/vscode-api-tests/package.json b/extensions/vscode-api-tests/package.json -index 61828a7..1757d01 100644 +index 8a1032f..1041fd2 100644 --- a/extensions/vscode-api-tests/package.json +++ b/extensions/vscode-api-tests/package.json @@ -2,3 +2,3 @@ @@ -520,10 +525,10 @@ index fa001b5..13abac2 100644 + throw Error(`Failed to download and unzip VSCodium ${quality} - ${commit}`); } diff --git a/src/vs/code/electron-main/app.ts b/src/vs/code/electron-main/app.ts -index ca405dd..42d1f6b 100644 +index ca47f74..a55be4c 100644 --- a/src/vs/code/electron-main/app.ts +++ b/src/vs/code/electron-main/app.ts -@@ -532,3 +532,3 @@ export class CodeApplication extends Disposable { +@@ -534,3 +534,3 @@ export class CodeApplication extends Disposable { async startup(): Promise { - this.logService.debug('Starting VS Code'); + this.logService.debug('Starting VSCodium'); @@ -570,6 +575,15 @@ index 75ab2ba..8c06c7e 100644 - throw new Error(nls.localize('restartCode', "Please restart VS Code before reinstalling {0}.", this.manifest.displayName || this.manifest.name)); + throw new Error(nls.localize('restartCode', "Please restart VSCodium before reinstalling {0}.", this.manifest.displayName || this.manifest.name)); } +diff --git a/src/vs/platform/extensions/common/extensionValidator.ts b/src/vs/platform/extensions/common/extensionValidator.ts +index 5fae8b4..73b70cc 100644 +--- a/src/vs/platform/extensions/common/extensionValidator.ts ++++ b/src/vs/platform/extensions/common/extensionValidator.ts +@@ -371,3 +371,3 @@ export function areApiProposalsCompatible(apiProposals: string[], arg1?: any): b + if (existingProposal.version !== version) { +- incompatibleNotices.push(nls.localize('apiProposalMismatch', "Extension is using an API proposal '{0}' that is not compatible with the current version of VS Code.", proposalName)); ++ incompatibleNotices.push(nls.localize('apiProposalMismatch', "Extension is using an API proposal '{0}' that is not compatible with the current version of VSCodium.", proposalName)); + } diff --git a/src/vs/platform/externalTerminal/node/externalTerminalService.ts b/src/vs/platform/externalTerminal/node/externalTerminalService.ts index 9f85b14..57d913c 100644 --- a/src/vs/platform/externalTerminal/node/externalTerminalService.ts @@ -641,10 +655,10 @@ index b28bd28..f8255a6 100644 + description: localize({ key: 'vscode.extension.contributes.views.containers.id', comment: ['Contribution refers to those that an extension contributes to VSCodium through an extension/contribution point. '] }, "Unique id used to identify the container in which views can be contributed using 'views' contribution point"), type: 'string', diff --git a/src/vs/workbench/api/common/extHostApiCommands.ts b/src/vs/workbench/api/common/extHostApiCommands.ts -index 5535cec..f4b04fe 100644 +index 6384178..01393f9 100644 --- a/src/vs/workbench/api/common/extHostApiCommands.ts +++ b/src/vs/workbench/api/common/extHostApiCommands.ts -@@ -413,3 +413,3 @@ const newCommands: ApiCommand[] = [ +@@ -443,3 +443,3 @@ const newCommands: ApiCommand[] = [ ApiCommandArgument.Uri.with('resource', 'Resource to open'), - ApiCommandArgument.String.with('viewId', 'Custom editor view id. This should be the viewType string for custom editors or the notebookType string for notebooks. Use \'default\' to use VS Code\'s default text editor'), + ApiCommandArgument.String.with('viewId', 'Custom editor view id. This should be the viewType string for custom editors or the notebookType string for notebooks. Use \'default\' to use VSCodium\'s default text editor'), @@ -668,7 +682,7 @@ index 49a2f01..e39520d 100644 + test('Opening a notebook results in VSCodium firing the event onDidChangeActiveNotebookEditor twice #118470', function () { let count = 0; diff --git a/src/vs/workbench/browser/workbench.contribution.ts b/src/vs/workbench/browser/workbench.contribution.ts -index d83ac06..4387b88 100644 +index bf16298..e51bef1 100644 --- a/src/vs/workbench/browser/workbench.contribution.ts +++ b/src/vs/workbench/browser/workbench.contribution.ts @@ -652,3 +652,3 @@ const registry = Registry.as(ConfigurationExtensions.Con @@ -676,11 +690,20 @@ index d83ac06..4387b88 100644 - localize('appName', "`${appName}`: e.g. VS Code."), + localize('appName', "`${appName}`: e.g. VSCodium."), localize('remoteName', "`${remoteName}`: e.g. SSH"), +diff --git a/src/vs/workbench/contrib/accessibility/browser/accessibilityStatus.ts b/src/vs/workbench/contrib/accessibility/browser/accessibilityStatus.ts +index 5d3949a..28f3fa6 100644 +--- a/src/vs/workbench/contrib/accessibility/browser/accessibilityStatus.ts ++++ b/src/vs/workbench/contrib/accessibility/browser/accessibilityStatus.ts +@@ -52,3 +52,3 @@ export class AccessibilityStatus extends Disposable implements IWorkbenchContrib + Severity.Info, +- localize('screenReaderDetectedExplanation.question', "Are you using a screen reader to operate VS Code?"), ++ localize('screenReaderDetectedExplanation.question', "Are you using a screen reader to operate VSCodium?"), + [{ diff --git a/src/vs/workbench/contrib/debug/browser/debugAdapterManager.ts b/src/vs/workbench/contrib/debug/browser/debugAdapterManager.ts -index 4233162..9bd6599 100644 +index 8e1fc26..c9026b2 100644 --- a/src/vs/workbench/contrib/debug/browser/debugAdapterManager.ts +++ b/src/vs/workbench/contrib/debug/browser/debugAdapterManager.ts -@@ -153,3 +153,3 @@ export class AdapterManager extends Disposable implements IAdapterManager { +@@ -176,3 +176,3 @@ export class AdapterManager extends Disposable implements IAdapterManager { type: 'number', - description: nls.localize('debugServer', "For debug extension development only: if a port is specified VS Code tries to connect to a debug adapter running in server mode"), + description: nls.localize('debugServer', "For debug extension development only: if a port is specified VSCodium tries to connect to a debug adapter running in server mode"), @@ -715,7 +738,7 @@ index 60aa8d8..ed2fe8f 100644 + localize('InstallVSIXAction.successReload', "Completed installing extension from VSIX. Please reload VSCodium to enable it."), [{ diff --git a/src/vs/workbench/contrib/extensions/browser/extensionsActions.ts b/src/vs/workbench/contrib/extensions/browser/extensionsActions.ts -index 5a58533..9536088 100644 +index c5d00d3..4f114d4 100644 --- a/src/vs/workbench/contrib/extensions/browser/extensionsActions.ts +++ b/src/vs/workbench/contrib/extensions/browser/extensionsActions.ts @@ -105,3 +105,3 @@ export class PromptExtensionInstallFailureAction extends Action { @@ -749,15 +772,15 @@ index 5a58533..9536088 100644 + const message = requireReload ? localize('ReinstallAction.successReload', "Please reload VSCodium to complete reinstalling the extension {0}.", extension.identifier.id) : localize('ReinstallAction.success', "Reinstalling the extension {0} is completed.", extension.identifier.id); diff --git a/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.ts b/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.ts -index d691d2b..2dfdc1e 100644 +index ba69585..8bcc21a 100644 --- a/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.ts +++ b/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.ts -@@ -436,3 +436,3 @@ export class Extension implements IExtension { +@@ -451,3 +451,3 @@ export class Extension implements IExtension { return Promise.resolve(`# ${this.displayName || this.name} -**Notice:** This extension is bundled with Visual Studio Code. It can be disabled but not uninstalled. +**Notice:** This extension is bundled with VSCodium. It can be disabled but not uninstalled. ## Features -@@ -474,3 +474,3 @@ ${this.description} +@@ -489,3 +489,3 @@ ${this.description} if (this.type === ExtensionType.System) { - return Promise.resolve(`Please check the [VS Code Release Notes](command:${ShowCurrentReleaseNotesActionId}) for changes to the built-in extensions.`); + return Promise.resolve(`Please check the [VSCodium Release Notes](command:${ShowCurrentReleaseNotesActionId}) for changes to the built-in extensions.`); @@ -811,6 +834,15 @@ index 4b8d4c2..cfdbb92 100644 - patternErrorMessage: localize('vscode.extension.contributes.localizations.translations.id.pattern', "Id should be `vscode` or in format `publisherId.extensionName` for translating VS code or an extension respectively.") + patternErrorMessage: localize('vscode.extension.contributes.localizations.translations.id.pattern', "Id should be `vscode` or in format `publisherId.extensionName` for translating VSCodium or an extension respectively.") }, +diff --git a/src/vs/workbench/contrib/localization/common/localizationsActions.ts b/src/vs/workbench/contrib/localization/common/localizationsActions.ts +index 7f2f1f1..dc6ff2d 100644 +--- a/src/vs/workbench/contrib/localization/common/localizationsActions.ts ++++ b/src/vs/workbench/contrib/localization/common/localizationsActions.ts +@@ -26,3 +26,3 @@ export class ConfigureDisplayLanguageAction extends Action2 { + metadata: { +- description: localize2('configureLocaleDescription', "Changes the locale of VS Code based on installed language packs. Common languages include French, Chinese, Spanish, Japanese, German, Korean, and more.") ++ description: localize2('configureLocaleDescription', "Changes the locale of VSCodium based on installed language packs. Common languages include French, Chinese, Spanish, Japanese, German, Korean, and more.") + } diff --git a/src/vs/workbench/contrib/preferences/browser/keyboardLayoutPicker.ts b/src/vs/workbench/contrib/preferences/browser/keyboardLayoutPicker.ts index 50ed5aa..a28e184 100644 --- a/src/vs/workbench/contrib/preferences/browser/keyboardLayoutPicker.ts @@ -823,28 +855,19 @@ index 50ed5aa..a28e184 100644 + `// ${nls.localize('doc', 'Open VSCodium and run "Developer: Inspect Key Mappings (JSON)" from Command Palette.')}`, ``, diff --git a/src/vs/workbench/contrib/remoteTunnel/electron-sandbox/remoteTunnel.contribution.ts b/src/vs/workbench/contrib/remoteTunnel/electron-sandbox/remoteTunnel.contribution.ts -index 0f75017..2736bfe 100644 +index e65b86b..a8a5069 100644 --- a/src/vs/workbench/contrib/remoteTunnel/electron-sandbox/remoteTunnel.contribution.ts +++ b/src/vs/workbench/contrib/remoteTunnel/electron-sandbox/remoteTunnel.contribution.ts -@@ -559,3 +559,3 @@ export class RemoteTunnelWorkbenchContribution extends Disposable implements IWo +@@ -560,3 +560,3 @@ export class RemoteTunnelWorkbenchContribution extends Disposable implements IWo }, - "You can now access this machine anywhere via the secure tunnel [{0}](command:{4}). To connect via a different machine, use the generated [{1}]({2}) link or use the [{6}]({7}) extension in the desktop or web. You can [configure](command:{3}) or [turn off](command:{5}) this access via the VS Code Accounts menu.", + "You can now access this machine anywhere via the secure tunnel [{0}](command:{4}). To connect via a different machine, use the generated [{1}]({2}) link or use the [{6}]({7}) extension in the desktop or web. You can [configure](command:{3}) or [turn off](command:{5}) this access via the VSCodium Accounts menu.", connectionInfo.tunnelName, connectionInfo.domain, linkToOpenForMarkdown, RemoteTunnelCommandIds.manage, RemoteTunnelCommandIds.configure, RemoteTunnelCommandIds.turnOff, remoteExtension.friendlyName, 'https://code.visualstudio.com/docs/remote/tunnels' -diff --git a/src/vs/workbench/contrib/surveys/browser/ces.contribution.ts b/src/vs/workbench/contrib/surveys/browser/ces.contribution.ts -index b24d91f..a098a62 100644 ---- a/src/vs/workbench/contrib/surveys/browser/ces.contribution.ts -+++ b/src/vs/workbench/contrib/surveys/browser/ces.contribution.ts -@@ -75,3 +75,3 @@ class CESContribution extends Disposable implements IWorkbenchContribution { - -- const message = await this.tasExperimentService?.getTreatment('CESSurveyMessage') ?? nls.localize('cesSurveyQuestion', 'Got a moment to help the VS Code team? Please tell us about your experience with VS Code so far.'); -+ const message = await this.tasExperimentService?.getTreatment('CESSurveyMessage') ?? nls.localize('cesSurveyQuestion', 'Got a moment to help the VSCodium team? Please tell us about your experience with VSCodium so far.'); - const button = await this.tasExperimentService?.getTreatment('CESSurveyButton') ?? nls.localize('giveFeedback', "Give Feedback"); diff --git a/src/vs/workbench/contrib/tasks/browser/abstractTaskService.ts b/src/vs/workbench/contrib/tasks/browser/abstractTaskService.ts -index e11e8a8..640356b 100644 +index 4670c5a..a8546cc 100644 --- a/src/vs/workbench/contrib/tasks/browser/abstractTaskService.ts +++ b/src/vs/workbench/contrib/tasks/browser/abstractTaskService.ts -@@ -3174,3 +3174,3 @@ export abstract class AbstractTaskService extends Disposable implements ITaskSer +@@ -3189,3 +3189,3 @@ export abstract class AbstractTaskService extends Disposable implements ITaskSer if (response.code && response.code === TerminateResponseCode.ProcessNotFound) { - this._notificationService.error(nls.localize('TerminateAction.noProcess', 'The launched process doesn\'t exist anymore. If the task spawned background tasks exiting VS Code might result in orphaned processes.')); + this._notificationService.error(nls.localize('TerminateAction.noProcess', 'The launched process doesn\'t exist anymore. If the task spawned background tasks exiting VSCodium might result in orphaned processes.')); @@ -882,7 +905,7 @@ index 9efbc2a..18c7aec 100644 + message: nls.localize('TaskSystem.noProcess', 'The launched task doesn\'t exist anymore. If the task spawned background processes exiting VSCodium might result in orphaned processes. To avoid this start the last background process with a wait flag.'), primaryButton: nls.localize({ key: 'TaskSystem.exitAnyways', comment: ['&& denotes a mnemonic'] }, "&&Exit Anyways"), diff --git a/src/vs/workbench/contrib/terminal/browser/terminalView.ts b/src/vs/workbench/contrib/terminal/browser/terminalView.ts -index d774d65..0040ea1 100644 +index 1efbc44..ea72734 100644 --- a/src/vs/workbench/contrib/terminal/browser/terminalView.ts +++ b/src/vs/workbench/contrib/terminal/browser/terminalView.ts @@ -202,3 +202,3 @@ export class TerminalViewPane extends ViewPane { @@ -891,64 +914,78 @@ index d774d65..0040ea1 100644 + this._notificationService.prompt(Severity.Warning, nls.localize('terminal.monospaceOnly', "The terminal only supports monospace fonts. Be sure to restart VSCodium if this is a newly installed font."), choices); } diff --git a/src/vs/workbench/contrib/terminal/common/terminalConfiguration.ts b/src/vs/workbench/contrib/terminal/common/terminalConfiguration.ts -index c44b2c3..2c02c9c 100644 +index 4dc967f..d4177f6 100644 --- a/src/vs/workbench/contrib/terminal/common/terminalConfiguration.ts +++ b/src/vs/workbench/contrib/terminal/common/terminalConfiguration.ts -@@ -295,3 +295,3 @@ const terminalConfiguration: IConfigurationNode = { +@@ -296,3 +296,3 @@ const terminalConfiguration: IConfigurationNode = { [TerminalSettingId.DetectLocale]: { - markdownDescription: localize('terminal.integrated.detectLocale', "Controls whether to detect and set the `$LANG` environment variable to a UTF-8 compliant option since VS Code's terminal only supports UTF-8 encoded data coming from the shell."), + markdownDescription: localize('terminal.integrated.detectLocale', "Controls whether to detect and set the `$LANG` environment variable to a UTF-8 compliant option since VSCodium's terminal only supports UTF-8 encoded data coming from the shell."), type: 'string', -@@ -309,3 +309,3 @@ const terminalConfiguration: IConfigurationNode = { +@@ -310,3 +310,3 @@ const terminalConfiguration: IConfigurationNode = { markdownEnumDescriptions: [ - localize('terminal.integrated.gpuAcceleration.auto', "Let VS Code detect which renderer will give the best experience."), + localize('terminal.integrated.gpuAcceleration.auto', "Let VSCodium detect which renderer will give the best experience."), localize('terminal.integrated.gpuAcceleration.on', "Enable GPU acceleration within the terminal."), -@@ -397,3 +397,3 @@ const terminalConfiguration: IConfigurationNode = { +@@ -398,3 +398,3 @@ const terminalConfiguration: IConfigurationNode = { 'terminal.integrated.commandsToSkipShell', - "A set of command IDs whose keybindings will not be sent to the shell but instead always be handled by VS Code. This allows keybindings that would normally be consumed by the shell to act instead the same as when the terminal is not focused, for example `Ctrl+P` to launch Quick Open.\n\n \n\nMany commands are skipped by default. To override a default and pass that command's keybinding to the shell instead, add the command prefixed with the `-` character. For example add `-workbench.action.quickOpen` to allow `Ctrl+P` to reach the shell.\n\n \n\nThe following list of default skipped commands is truncated when viewed in Settings Editor. To see the full list, {1} and search for the first command from the list below.\n\n \n\nDefault Skipped Commands:\n\n{0}", + "A set of command IDs whose keybindings will not be sent to the shell but instead always be handled by VSCodium. This allows keybindings that would normally be consumed by the shell to act instead the same as when the terminal is not focused, for example `Ctrl+P` to launch Quick Open.\n\n \n\nMany commands are skipped by default. To override a default and pass that command's keybinding to the shell instead, add the command prefixed with the `-` character. For example add `-workbench.action.quickOpen` to allow `Ctrl+P` to reach the shell.\n\n \n\nThe following list of default skipped commands is truncated when viewed in Settings Editor. To see the full list, {1} and search for the first command from the list below.\n\n \n\nDefault Skipped Commands:\n\n{0}", DEFAULT_COMMANDS_TO_SKIP_SHELL.sort().map(command => `- ${command}`).join('\n'), -@@ -409,3 +409,3 @@ const terminalConfiguration: IConfigurationNode = { +@@ -410,3 +410,3 @@ const terminalConfiguration: IConfigurationNode = { [TerminalSettingId.AllowChords]: { - markdownDescription: localize('terminal.integrated.allowChords', "Whether or not to allow chord keybindings in the terminal. Note that when this is true and the keystroke results in a chord it will bypass {0}, setting this to false is particularly useful when you want ctrl+k to go to your shell (not VS Code).", '`#terminal.integrated.commandsToSkipShell#`'), + markdownDescription: localize('terminal.integrated.allowChords', "Whether or not to allow chord keybindings in the terminal. Note that when this is true and the keystroke results in a chord it will bypass {0}, setting this to false is particularly useful when you want ctrl+k to go to your shell (not VSCodium).", '`#terminal.integrated.commandsToSkipShell#`'), type: 'boolean', -@@ -420,3 +420,3 @@ const terminalConfiguration: IConfigurationNode = { +@@ -421,3 +421,3 @@ const terminalConfiguration: IConfigurationNode = { restricted: true, - markdownDescription: localize('terminal.integrated.env.osx', "Object with environment variables that will be added to the VS Code process to be used by the terminal on macOS. Set to `null` to delete the environment variable."), + markdownDescription: localize('terminal.integrated.env.osx', "Object with environment variables that will be added to the VSCodium process to be used by the terminal on macOS. Set to `null` to delete the environment variable."), type: 'object', -@@ -429,3 +429,3 @@ const terminalConfiguration: IConfigurationNode = { +@@ -430,3 +430,3 @@ const terminalConfiguration: IConfigurationNode = { restricted: true, - markdownDescription: localize('terminal.integrated.env.linux', "Object with environment variables that will be added to the VS Code process to be used by the terminal on Linux. Set to `null` to delete the environment variable."), + markdownDescription: localize('terminal.integrated.env.linux', "Object with environment variables that will be added to the VSCodium process to be used by the terminal on Linux. Set to `null` to delete the environment variable."), type: 'object', -@@ -438,3 +438,3 @@ const terminalConfiguration: IConfigurationNode = { +@@ -439,3 +439,3 @@ const terminalConfiguration: IConfigurationNode = { restricted: true, - markdownDescription: localize('terminal.integrated.env.windows', "Object with environment variables that will be added to the VS Code process to be used by the terminal on Windows. Set to `null` to delete the environment variable."), + markdownDescription: localize('terminal.integrated.env.windows', "Object with environment variables that will be added to the VSCodium process to be used by the terminal on Windows. Set to `null` to delete the environment variable."), type: 'object', -@@ -562,3 +562,3 @@ const terminalConfiguration: IConfigurationNode = { +@@ -468,3 +468,3 @@ const terminalConfiguration: IConfigurationNode = { + [TerminalSettingId.ExperimentalWindowsUseConptyDll]: { +- markdownDescription: localize('terminal.integrated.experimentalWindowsUseConptyDll', "Whether to use the experimental conpty.dll shipped with VS Code, instead of the one bundled with Windows."), ++ markdownDescription: localize('terminal.integrated.experimentalWindowsUseConptyDll', "Whether to use the experimental conpty.dll shipped with VSCodium, instead of the one bundled with Windows."), + type: 'boolean', +@@ -568,3 +568,3 @@ const terminalConfiguration: IConfigurationNode = { [TerminalSettingId.AutoReplies]: { - markdownDescription: localize('terminal.integrated.autoReplies', "A set of messages that, when encountered in the terminal, will be automatically responded to. Provided the message is specific enough, this can help automate away common responses.\n\nRemarks:\n\n- Use {0} to automatically respond to the terminate batch job prompt on Windows.\n- The message includes escape sequences so the reply might not happen with styled text.\n- Each reply can only happen once every second.\n- Use {1} in the reply to mean the enter key.\n- To unset a default key, set the value to null.\n- Restart VS Code if new don't apply.", '`"Terminate batch job (Y/N)": "Y\\r"`', '`"\\r"`'), + markdownDescription: localize('terminal.integrated.autoReplies', "A set of messages that, when encountered in the terminal, will be automatically responded to. Provided the message is specific enough, this can help automate away common responses.\n\nRemarks:\n\n- Use {0} to automatically respond to the terminate batch job prompt on Windows.\n- The message includes escape sequences so the reply might not happen with styled text.\n- Each reply can only happen once every second.\n- Use {1} in the reply to mean the enter key.\n- To unset a default key, set the value to null.\n- Restart VSCodium if new don't apply.", '`"Terminate batch job (Y/N)": "Y\\r"`', '`"\\r"`'), type: 'object', -@@ -575,3 +575,3 @@ const terminalConfiguration: IConfigurationNode = { +@@ -581,3 +581,3 @@ const terminalConfiguration: IConfigurationNode = { restricted: true, - markdownDescription: localize('terminal.integrated.shellIntegration.enabled', "Determines whether or not shell integration is auto-injected to support features like enhanced command tracking and current working directory detection. \n\nShell integration works by injecting the shell with a startup script. The script gives VS Code insight into what is happening within the terminal.\n\nSupported shells:\n\n- Linux/macOS: bash, fish, pwsh, zsh\n - Windows: pwsh, git bash\n\nThis setting applies only when terminals are created, so you will need to restart your terminals for it to take effect.\n\n Note that the script injection may not work if you have custom arguments defined in the terminal profile, have enabled {1}, have a [complex bash `PROMPT_COMMAND`](https://code.visualstudio.com/docs/editor/integrated-terminal#_complex-bash-promptcommand), or other unsupported setup. To disable decorations, see {0}", '`#terminal.integrated.shellIntegrations.decorationsEnabled#`', '`#editor.accessibilitySupport#`'), + markdownDescription: localize('terminal.integrated.shellIntegration.enabled', "Determines whether or not shell integration is auto-injected to support features like enhanced command tracking and current working directory detection. \n\nShell integration works by injecting the shell with a startup script. The script gives VSCodium insight into what is happening within the terminal.\n\nSupported shells:\n\n- Linux/macOS: bash, fish, pwsh, zsh\n - Windows: pwsh, git bash\n\nThis setting applies only when terminals are created, so you will need to restart your terminals for it to take effect.\n\n Note that the script injection may not work if you have custom arguments defined in the terminal profile, have enabled {1}, have a [complex bash `PROMPT_COMMAND`](https://code.visualstudio.com/docs/editor/integrated-terminal#_complex-bash-promptcommand), or other unsupported setup. To disable decorations, see {0}", '`#terminal.integrated.shellIntegrations.decorationsEnabled#`', '`#editor.accessibilitySupport#`'), type: 'boolean', +diff --git a/src/vs/workbench/contrib/terminalContrib/suggest/common/terminalSuggestConfiguration.ts b/src/vs/workbench/contrib/terminalContrib/suggest/common/terminalSuggestConfiguration.ts +index b178293..69e4e1b 100644 +--- a/src/vs/workbench/contrib/terminalContrib/suggest/common/terminalSuggestConfiguration.ts ++++ b/src/vs/workbench/contrib/terminalContrib/suggest/common/terminalSuggestConfiguration.ts +@@ -69,3 +69,3 @@ export const terminalSuggestConfiguration: IStringDictionaryreview the guidance we provide.' + 'Before you report an issue here please review the guidance we provide.' ); +diff --git a/src/vs/workbench/contrib/issue/electron-sandbox/issueReporterService.ts b/src/vs/workbench/contrib/issue/electron-sandbox/issueReporterService.ts +index b923388..043a8ac 100644 +--- a/src/vs/workbench/contrib/issue/electron-sandbox/issueReporterService.ts ++++ b/src/vs/workbench/contrib/issue/electron-sandbox/issueReporterService.ts +@@ -555,3 +555,3 @@ export class IssueReporter extends Disposable { + if (title) { +- this.searchDuplicates(title, issueDescription); ++ this.searchGitHub('VSCodium/vscodium', title); + } else { +@@ -647,33 +647,2 @@ export class IssueReporter extends Disposable { + +- @debounce(300) +- private searchDuplicates(title: string, body?: string): void { +- const url = 'https://vscode-probot.westus.cloudapp.azure.com:7890/duplicate_candidates'; +- const init = { +- method: 'POST', +- body: JSON.stringify({ +- title, +- body +- }), +- headers: new Headers({ +- 'Content-Type': 'application/json' +- }) +- }; +- +- fetch(url, init).then((response) => { +- response.json().then(result => { +- this.clearSearchResults(); +- +- if (result && result.candidates) { +- this.displaySearchResults(result.candidates); +- } else { +- throw new Error('Unexpected response, no candidates property'); +- } +- }).catch(_ => { +- // Ignore +- }); +- }).catch(_ => { +- // Ignore +- }); +- } +- + private displaySearchResults(results: SearchResult[]) { +@@ -769,4 +738,4 @@ export class IssueReporter extends Disposable { + sourceSelect.append(this.makeOption('', localize('selectSource', "Select source"), true)); +- sourceSelect.append(this.makeOption(IssueSource.VSCode, localize('vscode', "Visual Studio Code"), false)); +- sourceSelect.append(this.makeOption(IssueSource.Extension, localize('extension', "A VS Code extension"), false)); ++ sourceSelect.append(this.makeOption(IssueSource.VSCode, localize('vscode', "VSCodium"), false)); ++ sourceSelect.append(this.makeOption(IssueSource.Extension, localize('extension', "A VSCodium extension"), false)); + if (this.configuration.product.reportMarketplaceIssueUrl) { +@@ -830,3 +799,3 @@ export class IssueReporter extends Disposable { + hide(descriptionTextArea); +- reset(descriptionTitle, localize('handlesIssuesElsewhere', "This extension handles issues outside of VS Code")); ++ reset(descriptionTitle, localize('handlesIssuesElsewhere', "This extension handles issues outside of VSCodium")); + reset(descriptionSubtitle, localize('elsewhereDescription', "The '{0}' extension prefers to use an external issue reporter. To be taken to that issue reporting experience, click the button below.", selectedExtension.displayName)); diff --git a/prepare_assets.sh b/prepare_assets.sh index 3ab7c1d..fc3eb91 100755 --- a/prepare_assets.sh +++ b/prepare_assets.sh @@ -219,6 +219,13 @@ if [[ "${SHOULD_BUILD_REH}" != "no" ]]; then cd .. fi +if [[ "${SHOULD_BUILD_REH_WEB}" != "no" ]]; then + echo "Building and moving REH-web" + cd "vscode-reh-web-${VSCODE_PLATFORM}-${VSCODE_ARCH}" + tar czf "../assets/${APP_NAME_LC}-reh-web-${VSCODE_PLATFORM}-${VSCODE_ARCH}-${RELEASE_VERSION}.tar.gz" . + cd .. +fi + cd assets for FILE in *; do diff --git a/product.json b/product.json index b18b2ef..859be90 100644 --- a/product.json +++ b/product.json @@ -87,7 +87,7 @@ "terminalDataWriteEvent", "terminalExecuteCommandEvent", "contribIssueReporter", - "terminalShellIntegration" + "notebookReplDocument" ], "ms-dotnettools.dotnet-interactive-vscode": [ "notebookMessaging" @@ -200,7 +200,6 @@ "treeViewMarkdownMessage" ], "GitHub.copilot": [ - "authGetSessions", "inlineCompletionsAdditions" ], "GitHub.copilot-nightly": [ @@ -231,13 +230,13 @@ "newSymbolNamesProvider", "findFiles2", "extensionsAny", - "authGetSessions", "authLearnMore", "testObserver", "aiTextSearchProvider", "documentFiltersExclusive", "chatParticipantPrivate", - "lmTools" + "lmTools", + "contribDebugCreateConfiguration" ], "GitHub.remotehub": [ "contribRemoteHelp", @@ -283,7 +282,8 @@ "quickPickItemTooltip", "notebookExecution", "notebookCellExecution", - "notebookVariableProvider" + "notebookVariableProvider", + "notebookReplDocument" ], "dbaeumer.vscode-eslint": [ "notebookCellExecutionState" @@ -294,24 +294,22 @@ "ms-azuretools.vscode-azureappservice": [ "terminalDataWriteEvent" ], - "ms-azuretools.vscode-azureresourcegroups": [ - "authGetSessions" - ], "ms-azuretools.vscode-azure-github-copilot": [ - "chatParticipantAdditions", - "embeddings", - "languageModelSystem", "lmTools" ], "ms-vscode.anycode": [ "extensionsAny" ], "ms-vscode.cpptools": [ - "terminalDataWriteEvent" + "terminalDataWriteEvent", + "lmTools" ], "redhat.java": [ "documentPaste" ], + "vscjava.vscode-java-pack": [ + "lmTools" + ], "ms-dotnettools.csdevkit": [ "inlineCompletionsAdditions" ], diff --git a/stable.json b/stable.json index 6fcf718..9c7a6be 100644 --- a/stable.json +++ b/stable.json @@ -1,4 +1,4 @@ { - "tag": "1.92.2", - "commit": "fee1edb8d6d72a0ddff41e5f71a671c23ed924b9" + "tag": "1.93.0", + "commit": "4849ca9bdf9666755eb463db297b69e5385090e3" }