mirror of
https://github.com/VSCodium/vscodium.git
synced 2026-04-14 04:38:18 +10:00
Compare commits
64 Commits
1.73.1.223
...
1.75.0.230
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
9ad93a467b | ||
|
|
e0ce361df9 | ||
|
|
2b463cd728 | ||
|
|
fc77078868 | ||
|
|
4ccfb857a4 | ||
|
|
4b4cfe4f74 | ||
|
|
4afe89a9ce | ||
|
|
2d254e9368 | ||
|
|
553b29623c | ||
|
|
73f8d5cc86 | ||
|
|
a409e6a7ec | ||
|
|
11f4749bdb | ||
|
|
f701fd714b | ||
|
|
ad388af833 | ||
|
|
617cc85c43 | ||
|
|
6fdca57be5 | ||
|
|
7fffa6bcf1 | ||
|
|
b98ae5fe32 | ||
|
|
519d9d1e30 | ||
|
|
e82cd45830 | ||
|
|
30fea6fcbd | ||
|
|
32637c09c8 | ||
|
|
9618e11b99 | ||
|
|
43f11068ce | ||
|
|
8474e2eec6 | ||
|
|
ceaf9ce37b | ||
|
|
57507e0abf | ||
|
|
15addf4476 | ||
|
|
df7ed19561 | ||
|
|
35b7b32db0 | ||
|
|
26f90e6511 | ||
|
|
3a9c276c70 | ||
|
|
1753520ee0 | ||
|
|
2d51987163 | ||
|
|
f73d7b632b | ||
|
|
369ff79b9f | ||
|
|
a4b47f50a4 | ||
|
|
557fc06d55 | ||
|
|
14ca97b75c | ||
|
|
3cf93c6ded | ||
|
|
12121c9c9b | ||
|
|
5d3b20bf8f | ||
|
|
b57285ebae | ||
|
|
a31e11a51e | ||
|
|
ee8c7f094a | ||
|
|
078ce9427f | ||
|
|
f781310c69 | ||
|
|
33b563c334 | ||
|
|
71277ceb29 | ||
|
|
8b260dc895 | ||
|
|
25985ec81b | ||
|
|
50313cace5 | ||
|
|
61ab6ebb68 | ||
|
|
ef0a3400d5 | ||
|
|
1bfa2d920c | ||
|
|
7ecd465204 | ||
|
|
c57d5aa768 | ||
|
|
5c3db580d5 | ||
|
|
de28e119be | ||
|
|
522300a657 | ||
|
|
d0b246a9e1 | ||
|
|
1b48e182cb | ||
|
|
ab5bc94dc5 | ||
|
|
0a4c9f8822 |
1
.github/ISSUE_TEMPLATE/bug_report.md
vendored
1
.github/ISSUE_TEMPLATE/bug_report.md
vendored
@@ -34,6 +34,7 @@ If applicable, add screenshots to help explain your problem.
|
||||
- Architecture [e.g. x64, ia32, arm64]
|
||||
- Version [e.g. 1.33.0]
|
||||
- App Manager [e.g. Winget, Homebrew, Snap, AUR, RPM, Nix, ...]
|
||||
- Sandboxed [e.g. no, Flatpak, Snap]
|
||||
|
||||
**Additional context**
|
||||
Add any other context about the problem here.
|
||||
|
||||
6
.github/workflows/stable-linux.yml
vendored
6
.github/workflows/stable-linux.yml
vendored
@@ -6,6 +6,9 @@ on:
|
||||
new_release:
|
||||
type: boolean
|
||||
description: Force new Release
|
||||
force_version:
|
||||
type: boolean
|
||||
description: Force update version
|
||||
schedule:
|
||||
- cron: '0 18 * * *'
|
||||
push:
|
||||
@@ -188,10 +191,11 @@ jobs:
|
||||
|
||||
- name: Update versions repo
|
||||
env:
|
||||
FORCE_UPDATE: ${{ github.event.inputs.force_version }}
|
||||
GITHUB_TOKEN: ${{ secrets.STRONGER_GITHUB_TOKEN }}
|
||||
GITHUB_USERNAME: ${{ github.repository_owner }}
|
||||
run: ./update_version.sh
|
||||
if: env.SHOULD_BUILD == 'yes' && env.SHOULD_DEPLOY == 'yes'
|
||||
if: env.SHOULD_DEPLOY == 'yes'
|
||||
|
||||
aur:
|
||||
needs:
|
||||
|
||||
6
.github/workflows/stable-macos.yml
vendored
6
.github/workflows/stable-macos.yml
vendored
@@ -6,6 +6,9 @@ on:
|
||||
new_release:
|
||||
type: boolean
|
||||
description: Force new Release
|
||||
force_version:
|
||||
type: boolean
|
||||
description: Force update version
|
||||
schedule:
|
||||
- cron: '0 18 * * *'
|
||||
push:
|
||||
@@ -81,10 +84,11 @@ jobs:
|
||||
|
||||
- name: Update versions repo
|
||||
env:
|
||||
FORCE_UPDATE: ${{ github.event.inputs.force_version }}
|
||||
GITHUB_TOKEN: ${{ secrets.STRONGER_GITHUB_TOKEN }}
|
||||
GITHUB_USERNAME: ${{ github.repository_owner }}
|
||||
run: ./update_version.sh
|
||||
if: env.SHOULD_BUILD == 'yes' && env.SHOULD_DEPLOY == 'yes'
|
||||
if: env.SHOULD_DEPLOY == 'yes'
|
||||
|
||||
- name: Clean up keychain
|
||||
if: always()
|
||||
|
||||
6
.github/workflows/stable-windows.yml
vendored
6
.github/workflows/stable-windows.yml
vendored
@@ -6,6 +6,9 @@ on:
|
||||
new_release:
|
||||
type: boolean
|
||||
description: Force new Release
|
||||
force_version:
|
||||
type: boolean
|
||||
description: Force update version
|
||||
schedule:
|
||||
- cron: '0 18 * * *'
|
||||
push:
|
||||
@@ -93,10 +96,11 @@ jobs:
|
||||
|
||||
- name: Update versions repo
|
||||
env:
|
||||
FORCE_UPDATE: ${{ github.event.inputs.force_version }}
|
||||
GITHUB_TOKEN: ${{ secrets.STRONGER_GITHUB_TOKEN }}
|
||||
GITHUB_USERNAME: ${{ github.repository_owner }}
|
||||
run: ./update_version.sh
|
||||
if: env.SHOULD_BUILD == 'yes' && env.SHOULD_DEPLOY == 'yes'
|
||||
if: env.SHOULD_DEPLOY == 'yes'
|
||||
|
||||
winget:
|
||||
needs: build
|
||||
|
||||
55
DOCS.md
55
DOCS.md
@@ -45,51 +45,72 @@ Likewise, while the descriptions for "Extensions: Auto Check Updates" and "Exten
|
||||
|
||||
## <a id="extensions-marketplace"></a>Extensions + Marketplace
|
||||
|
||||
### <a id="howto-openvsx-marketplace"></a>How to use the OpenVSX Marketplace
|
||||
Being a vscode based editor, VSCodium gets additional features by installing VS Code extensions.
|
||||
Unfortunately, as Microsoft [prohibits usages of the Microsoft marketplace by any other products](https://github.com/microsoft/vscode/issues/31168) or redistribution of `.vsix` files from it, in order to use VS Code extensions in non-Microsoft products those need to be installed differently.
|
||||
|
||||
By default the `product.json` file is set up to use [open-vsx.org](https://open-vsx.org/) as extension gallery, which has an [adapter](https://github.com/eclipse/openvsx/wiki/Using-Open-VSX-in-VS-Code) to the Marketplace API used by VS Code. Since that is a rather new project, you will likely miss some extensions you know from the VS Code Marketplace. You have the following options to obtain such missing extensions:
|
||||
By default, the `product.json` file is set up to use [open-vsx.org](https://open-vsx.org/) as extension gallery, which has an [adapter](https://github.com/eclipse/openvsx/wiki/Using-Open-VSX-in-VS-Code) to the Marketplace API used by VS Code. Since that is a rather new project, you will likely miss some extensions you know from the VS Code Marketplace. You have the following options to obtain such missing extensions:
|
||||
|
||||
* Ask the extension maintainers to publish to [open-vsx.org](https://open-vsx.org/) in addition to the VS Code Marketplace. The publishing process is documented in the [Open VSX Wiki](https://github.com/eclipse/openvsx/wiki/Publishing-Extensions).
|
||||
* Create a pull request to [this repository](https://github.com/open-vsx/publish-extensions) to have the [@open-vsx](https://github.com/open-vsx) service account publish the extensions for you.
|
||||
* Download and [install the vsix files](https://code.visualstudio.com/docs/editor/extension-gallery#_install-from-a-vsix).
|
||||
* Download and [install the vsix files](https://code.visualstudio.com/docs/editor/extension-gallery#_install-from-a-vsix), for example from the release page in their source repository.
|
||||
|
||||
### <a id="howto-openvsx-marketplace"></a>How to use the Open VSX Registry
|
||||
|
||||
As noted above, the [Open VSX Registry](https://open-vsx.org/) is the pre-set extension gallery in VSCodium. Using the extension view in VSCodium will therefore by default use it.
|
||||
See [this article](https://www.gitpod.io/blog/open-vsx/) for more information on the motivation behind Open VSX.
|
||||
|
||||
### <a id="howto-vscode-marketplace"></a>How to use the VS Code Marketplace
|
||||
### <a id="howto-switch-marketplace"></a>How to use a different extension gallery
|
||||
|
||||
You can switch and use the VS Code marketplace by using the following solutions. However, note that [ this is not legal](https://github.com/microsoft/vscode/issues/31168).
|
||||
You can switch from the pre-set Open VSX Registry by configuring the endpoints using the following solutions.
|
||||
These examples use the URLs for Microsoft's VS Code Marketplace, see [below](#howto-vscode-marketplace) for more information on that.
|
||||
|
||||
With the following environment variables:
|
||||
- `VSCODE_GALLERY_SERVICE_URL='https://marketplace.visualstudio.com/_apis/public/gallery'`
|
||||
- `VSCODE_GALLERY_CACHE_URL='https://vscode.blob.core.windows.net/gallery/index'`
|
||||
- `VSCODE_GALLERY_ITEM_URL='https://marketplace.visualstudio.com/items'`
|
||||
- `VSCODE_GALLERY_CACHE_URL='https://vscode.blob.core.windows.net/gallery/index'`
|
||||
- `VSCODE_GALLERY_CONTROL_URL=''`
|
||||
- `VSCODE_GALLERY_RECOMMENDATIONS_URL=''`
|
||||
|
||||
Or by creating a custom `product.json` at the following location:
|
||||
Or by creating a custom `product.json` at the following location (replace `VSCodium` by `VSCodium - Insiders` if you use that):
|
||||
- Windows: `%APPDATA%\VSCodium` or `%USERPROFILE%\AppData\Roaming\VSCodium`
|
||||
- macOS: `~/Library/Application Support/VSCodium`
|
||||
- Linux: `$XDG_CONFIG_HOME/VSCodium` or `~/.config/VSCodium`
|
||||
|
||||
with the content:
|
||||
|
||||
```json
|
||||
- Note: set `cacheUrl` to empty string for every other extension gallery
|
||||
|
||||
```jsonc
|
||||
{
|
||||
"extensionsGallery": {
|
||||
"serviceUrl": "https://marketplace.visualstudio.com/_apis/public/gallery",
|
||||
"cacheUrl": "https://vscode.blob.core.windows.net/gallery/index",
|
||||
"itemUrl": "https://marketplace.visualstudio.com/items",
|
||||
"controlUrl": "",
|
||||
"recommendationsUrl": ""
|
||||
"cacheUrl": "https://vscode.blob.core.windows.net/gallery/index",
|
||||
"controlUrl": ""
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### <a id="howto-selfhost-marketplace"></a>How to self-host your own VS Code Marketplace
|
||||
### <a id="howto-selfhost-marketplace"></a>How to self-host your own extension gallery
|
||||
|
||||
Individual developers and enterprise companies in regulated or security-conscious industries can self-host their own VS Code Marketplace using the [code-marketplace](https://coder.com/blog/running-a-private-vs-code-extension-marketplace) open-source project.
|
||||
Individual developers and enterprise companies in regulated or security-conscious industries can self-host their own extension gallery. In all of these cases you'd enter its endpoint URLs as noted above, replacing `marketplace.visualstudio.com` with `your-self-hosted-marketplace-address.example.com` (or IP address), setting `cacheUrl` / `VSCODE_GALLERY_CACHE_URL` to an empty string.
|
||||
|
||||
> `code-marketplace` is a self-contained go binary that does not have a frontend or any mechanisms for extension authors to add or update extensions in the marketplace. It simply reads extensions from file storage and provides an API for VSCode compatible editors to consume.
|
||||
There are likely other options, but the following were reported to work:
|
||||
|
||||
* [Open VSX](https://github.com/eclipse/openvsx) eclipse open-source project
|
||||
While the public instance which is run by the Eclipse Foundation is the pre-set endpoint in VSCodium, you can host your own instance.
|
||||
|
||||
> Open VSX is a [vendor-neutral](https://projects.eclipse.org/projects/ecd.openvsx) open-source alternative to the [Visual Studio Marketplace](https://marketplace.visualstudio.com/vscode). It provides a server application that manages [VS Code extensions](https://code.visualstudio.com/api) in a database, a web application similar to the VS Code Marketplace, and a command-line tool for publishing extensions similar to [vsce](https://code.visualstudio.com/api/working-with-extensions/publishing-extension#vsce).
|
||||
|
||||
* [code-marketplace](https://coder.com/blog/running-a-private-vs-code-extension-marketplace) open-source project
|
||||
|
||||
> `code-marketplace` is a self-contained go binary that does not have a frontend or any mechanisms for extension authors to add or update extensions in the marketplace. It simply reads extensions from file storage and provides an API for VSCode compatible editors to consume.
|
||||
|
||||
### <a id="howto-vscode-marketplace"></a>How to use the VS Code Marketplace
|
||||
|
||||
As with any online service, ensure you've understood [its terms of use](https://aka.ms/vsmarketplace-ToU).
|
||||
Also note that this extension gallery hosts multiple extensions that are non-free and have license-agreements that explicit forbid to use them in non-Microsoft products, along with using telemetry.
|
||||
|
||||
The endpoint URLs are given in the [example above](#howto-switch-marketplace).
|
||||
|
||||
|
||||
### <a id="proprietary-debugging-tools"></a>Proprietary Debugging Tools
|
||||
@@ -102,7 +123,7 @@ A workaround exists to get debugging working in C# projects, by using Samsung's
|
||||
|
||||
Like the debuggers mentioned above, some extensions you may find in the marketplace (like the [Remote Development Extensions](https://code.visualstudio.com/docs/remote/remote-overview)) only function with the official Visual Studio Code build. You can work around this by adding the extension's internal ID (found on the extension's page) to the `extensionAllowedProposedApi` property of the product.json in your VSCodium installation. For example:
|
||||
|
||||
```json
|
||||
```jsonc
|
||||
"extensionAllowedProposedApi": [
|
||||
// ...
|
||||
"ms-vscode-remote.vscode-remote-extensionpack",
|
||||
@@ -172,7 +193,7 @@ inode/directory=codium.desktop;org.gnome.Nautilus.desktop;
|
||||
This is a common question for Visual Studio Code and the procedure is slightly different in VSCodium because the `defaults` path is different.
|
||||
|
||||
```bash
|
||||
$ defaults write com.visualstudio.code.oss ApplePressAndHoldEnabled -bool false
|
||||
$ defaults write com.vscodium ApplePressAndHoldEnabled -bool false
|
||||
```
|
||||
|
||||
## <a id="terminal-support"></a>How do I open VSCodium from the terminal?
|
||||
|
||||
12
README.md
12
README.md
@@ -13,9 +13,9 @@
|
||||
[](https://snapcraft.io/codium)
|
||||
[](https://snapcraft.io/codium)
|
||||
|
||||
[](https://github.com/VSCodium/vscodium/actions/workflows/linux.yml?query=branch%3Amaster)
|
||||
[](https://github.com/VSCodium/vscodium/actions/workflows/macos.yml?query=branch%3Amaster)
|
||||
[](https://github.com/VSCodium/vscodium/actions/workflows/windows.yml?query=branch%3Amaster)
|
||||
[](https://github.com/VSCodium/vscodium/actions/workflows/stable-linux.yml?query=branch%3Amaster)
|
||||
[](https://github.com/VSCodium/vscodium/actions/workflows/stable-macos.yml?query=branch%3Amaster)
|
||||
[](https://github.com/VSCodium/vscodium/actions/workflows/stable-windows.yml?query=branch%3Amaster)
|
||||
|
||||
</div>
|
||||
|
||||
@@ -166,13 +166,9 @@ If you would like to support the development of VSCodium, feel free to send BTC
|
||||
Special thanks to:
|
||||
|
||||
<table>
|
||||
<tr>
|
||||
<td>@estatra</td>
|
||||
<td>for the latest logo</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/jaredreich" target="_blank">@jaredreich</a></td>
|
||||
<td>for the previous logo</td>
|
||||
<td>for the logo</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/PalinuroSec" target="_blank">@PalinuroSec</a></td>
|
||||
|
||||
@@ -7,8 +7,9 @@
|
||||
export APP_NAME="VSCodium"
|
||||
export CI_BUILD="no"
|
||||
export SHOULD_BUILD="yes"
|
||||
export SKIP_BUILD="no"
|
||||
export SKIP_ASSETS="yes"
|
||||
export SKIP_BUILD="no"
|
||||
export SKIP_SOURCE="no"
|
||||
export VSCODE_LATEST="no"
|
||||
export VSCODE_QUALITY="stable"
|
||||
|
||||
@@ -26,6 +27,9 @@ while getopts ":ilop" opt; do
|
||||
p)
|
||||
export SKIP_ASSETS="no"
|
||||
;;
|
||||
s)
|
||||
export SKIP_SOURCE="yes"
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
@@ -50,29 +54,29 @@ else
|
||||
fi
|
||||
|
||||
echo "OS_NAME=\"${OS_NAME}\""
|
||||
echo "SKIP_SOURCE=\"${SKIP_SOURCE}\""
|
||||
echo "SKIP_BUILD=\"${SKIP_BUILD}\""
|
||||
echo "SKIP_ASSETS=\"${SKIP_ASSETS}\""
|
||||
echo "VSCODE_ARCH=\"${VSCODE_ARCH}\""
|
||||
echo "VSCODE_LATEST=\"${VSCODE_LATEST}\""
|
||||
echo "VSCODE_QUALITY=\"${VSCODE_QUALITY}\""
|
||||
|
||||
if [[ "${SKIP_BUILD}" == "no" ]]; then
|
||||
if [[ "${SKIP_SOURCE}" == "no" ]]; then
|
||||
rm -rf vscode* VSCode*
|
||||
|
||||
. get_repo.sh
|
||||
. version.sh
|
||||
|
||||
# save variables for later
|
||||
echo "MS_TAG=\"${MS_TAG}\"" > build.env
|
||||
echo "MS_COMMIT=\"${MS_COMMIT}\"" >> build.env
|
||||
echo "RELEASE_VERSION=\"${RELEASE_VERSION}\"" >> build.env
|
||||
echo "BUILD_SOURCEVERSION=\"${BUILD_SOURCEVERSION}\"" >> build.env
|
||||
|
||||
. build.sh
|
||||
|
||||
if [[ "${VSCODE_QUALITY}" == "insider" && "${VSCODE_LATEST}" == "yes" ]]; then
|
||||
echo "$( cat "insider.json" | jq --arg 'tag' "${MS_TAG/\-insider/}" --arg 'commit' "${MS_COMMIT}" '. | .tag=$tag | .commit=$commit' )" > "insider.json"
|
||||
fi
|
||||
else
|
||||
if [[ "${SKIP_ASSETS}" != "no" ]]; then
|
||||
rm -rf VSCode*
|
||||
fi
|
||||
|
||||
. build.env
|
||||
|
||||
echo "MS_TAG=\"${MS_TAG}\""
|
||||
@@ -81,6 +85,23 @@ else
|
||||
echo "BUILD_SOURCEVERSION=\"${BUILD_SOURCEVERSION}\""
|
||||
fi
|
||||
|
||||
if [[ "${SKIP_BUILD}" == "no" ]]; then
|
||||
if [[ "${SKIP_SOURCE}" != "no" ]]; then
|
||||
cd vscode || { echo "'vscode' dir not found"; exit 1; }
|
||||
|
||||
git add .
|
||||
git reset -q --hard HEAD
|
||||
|
||||
cd ..
|
||||
fi
|
||||
|
||||
. build.sh
|
||||
|
||||
if [[ "${VSCODE_QUALITY}" == "insider" && "${VSCODE_LATEST}" == "yes" ]]; then
|
||||
echo "$( cat "insider.json" | jq --arg 'tag' "${MS_TAG/\-insider/}" --arg 'commit' "${MS_COMMIT}" '. | .tag=$tag | .commit=$commit' )" > "insider.json"
|
||||
fi
|
||||
fi
|
||||
|
||||
if [[ "${SKIP_ASSETS}" == "no" ]]; then
|
||||
if [[ "${OS_NAME}" == "windows" ]]; then
|
||||
rm -rf build/windows/msi/releasedir
|
||||
|
||||
@@ -30,4 +30,6 @@ fi
|
||||
|
||||
APIS=`cat ${DIRECTORY}/resources/app/product.json | jq -r '.extensionEnabledApiProposals'`
|
||||
|
||||
APIS=`echo "${APIS}" | jq '. += {"jeanp413.open-remote-ssh": ["resolvers", "tunnels", "terminalDataWriteEvent", "contribRemoteHelp", "contribViewsRemote"]}'`
|
||||
|
||||
cat <<< $(jq --argjson v "${APIS}" 'setpath(["extensionEnabledApiProposals"]; $v)' product.json) > product.json
|
||||
|
||||
@@ -1,21 +1,50 @@
|
||||
#!/bin/bash
|
||||
|
||||
export VSCODE_QUALITY="stable"
|
||||
|
||||
while getopts ":ilp" opt; do
|
||||
case "$opt" in
|
||||
i)
|
||||
export VSCODE_QUALITY="insider"
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
cd vscode || { echo "'vscode' dir not found"; exit 1; }
|
||||
|
||||
git add .
|
||||
git reset -q --hard HEAD
|
||||
|
||||
for file in ../patches/*.patch; do
|
||||
if [ -f "${file}" ]; then
|
||||
echo applying patch: "${file}"
|
||||
git apply --ignore-whitespace "${file}"
|
||||
for FILE in ../patches/*.patch; do
|
||||
if [ -f "${FILE}" ]; then
|
||||
echo applying patch: "${FILE}"
|
||||
git apply --ignore-whitespace "${FILE}"
|
||||
if [ $? -ne 0 ]; then
|
||||
echo failed to apply patch "${file}"
|
||||
git apply --reject "${file}"
|
||||
echo failed to apply patch "${FILE}"
|
||||
git apply --reject "${FILE}"
|
||||
read -p "Press any key when the conflict have been resolved..." -n1 -s
|
||||
git diff -U1 > "${file}"
|
||||
git add .
|
||||
git diff --staged -U1 > "${FILE}"
|
||||
fi
|
||||
git add .
|
||||
git reset -q --hard HEAD
|
||||
fi
|
||||
done
|
||||
|
||||
if [[ "${VSCODE_QUALITY}" == "insider" ]]; then
|
||||
for FILE in ../patches/insider/*.patch; do
|
||||
if [ -f "${FILE}" ]; then
|
||||
echo applying patch: "${FILE}"
|
||||
git apply --ignore-whitespace "${FILE}"
|
||||
if [ $? -ne 0 ]; then
|
||||
echo failed to apply patch "${FILE}"
|
||||
git apply --reject "${FILE}"
|
||||
read -p "Press any key when the conflict have been resolved..." -n1 -s
|
||||
git add .
|
||||
git diff --staged -U1 > "${FILE}"
|
||||
fi
|
||||
git add .
|
||||
git reset -q --hard HEAD
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{
|
||||
"tag": "1.73.0",
|
||||
"commit": "8fa188b2b301d36553cbc9ce1b0a146ccb93351f"
|
||||
"tag": "1.75.0",
|
||||
"commit": "e2816fe719a4026ffa1ee0189dc89bdfdbafb164"
|
||||
}
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
set -ex
|
||||
|
||||
GH_ARCH="amd64"
|
||||
|
||||
VERSION=`curl "https://api.github.com/repos/cli/cli/releases/latest" | grep '"tag_name"' | sed -E 's/.*"([^"]+)".*/\1/' | cut -c2-`
|
||||
VERSION=`curl --retry 12 --retry-delay 30 "https://api.github.com/repos/cli/cli/releases/latest" | grep '"tag_name"' | sed -E 's/.*"([^"]+)".*/\1/' | cut -c2-`
|
||||
|
||||
curl -sSL "https://github.com/cli/cli/releases/download/v${VERSION}/gh_${VERSION}_linux_${GH_ARCH}.tar.gz" -o "gh_${VERSION}_linux_${GH_ARCH}.tar.gz"
|
||||
curl --retry 12 --retry-delay 120 -sSL "https://github.com/cli/cli/releases/download/v${VERSION}/gh_${VERSION}_linux_${GH_ARCH}.tar.gz" -o "gh_${VERSION}_linux_${GH_ARCH}.tar.gz"
|
||||
|
||||
tar xf "gh_${VERSION}_linux_${GH_ARCH}.tar.gz"
|
||||
|
||||
|
||||
10
patch.sh
10
patch.sh
@@ -1,6 +1,10 @@
|
||||
#!/bin/bash
|
||||
|
||||
FILE="../patches/${1}.patch"
|
||||
if [[ "${1}" == *patch ]]; then
|
||||
FILE="../patches/${1}"
|
||||
else
|
||||
FILE="../patches/${1}.patch"
|
||||
fi
|
||||
|
||||
cd vscode || { echo "'vscode' dir not found"; exit 1; }
|
||||
|
||||
@@ -11,8 +15,12 @@ if [[ -f "${FILE}" ]]; then
|
||||
git apply --reject "${FILE}"
|
||||
fi
|
||||
|
||||
git apply --reject "../patches/helper/settings.patch"
|
||||
|
||||
read -p "Press any key when the conflict have been resolved..." -n1 -s
|
||||
|
||||
git restore .vscode/settings.json
|
||||
|
||||
git add .
|
||||
git diff --staged -U1 > "${FILE}"
|
||||
|
||||
|
||||
@@ -1,78 +1,69 @@
|
||||
diff --git a/.vscode/settings.json b/.vscode/settings.json
|
||||
index 3907bc7..1772769 100644
|
||||
--- a/.vscode/settings.json
|
||||
+++ b/.vscode/settings.json
|
||||
@@ -88,3 +88,3 @@
|
||||
"editor.defaultFormatter": "vscode.typescript-language-features",
|
||||
- "editor.formatOnSave": true
|
||||
+ // "editor.formatOnSave": true
|
||||
},
|
||||
diff --git a/build/gulpfile.reh.js b/build/gulpfile.reh.js
|
||||
index 980f647..959fb88 100644
|
||||
index f3cdbff..ac7c39b 100644
|
||||
--- a/build/gulpfile.reh.js
|
||||
+++ b/build/gulpfile.reh.js
|
||||
@@ -245,4 +245,5 @@ function packageTask(type, platform, arch, sourceFolderName, destinationFolderNa
|
||||
@@ -246,4 +246,5 @@ function packageTask(type, platform, arch, sourceFolderName, destinationFolderNa
|
||||
const name = product.nameShort;
|
||||
+ const release = packageJson.release;
|
||||
const packageJsonStream = gulp.src(['remote/package.json'], { base: 'remote' })
|
||||
- .pipe(json({ name, version, dependencies: undefined, optionalDependencies: undefined }));
|
||||
+ .pipe(json({ name, version, release, dependencies: undefined, optionalDependencies: undefined }));
|
||||
|
||||
@@ -251,3 +252,3 @@ function packageTask(type, platform, arch, sourceFolderName, destinationFolderNa
|
||||
@@ -252,3 +253,3 @@ function packageTask(type, platform, arch, sourceFolderName, destinationFolderNa
|
||||
const productJsonStream = gulp.src(['product.json'], { base: '.' })
|
||||
- .pipe(json({ commit, date, version }));
|
||||
+ .pipe(json({ commit, date, version, release }));
|
||||
|
||||
diff --git a/build/gulpfile.vscode.js b/build/gulpfile.vscode.js
|
||||
index 6947d1e..80f358e 100644
|
||||
index cdc802b..49ab315 100644
|
||||
--- a/build/gulpfile.vscode.js
|
||||
+++ b/build/gulpfile.vscode.js
|
||||
@@ -224,3 +224,3 @@ function packageTask(platform, arch, sourceFolderName, destinationFolderName, op
|
||||
@@ -227,3 +227,3 @@ function packageTask(platform, arch, sourceFolderName, destinationFolderName, op
|
||||
|
||||
- let version = packageJson.version;
|
||||
+ let version = packageJson.version
|
||||
const quality = product.quality;
|
||||
@@ -232,3 +232,4 @@ function packageTask(platform, arch, sourceFolderName, destinationFolderName, op
|
||||
@@ -235,3 +235,4 @@ function packageTask(platform, arch, sourceFolderName, destinationFolderName, op
|
||||
const name = product.nameShort;
|
||||
- const packageJsonUpdates = { name, version };
|
||||
+ const release = packageJson.release;
|
||||
+ const packageJsonUpdates = { name, version, release };
|
||||
|
||||
@@ -243,3 +244,3 @@ function packageTask(platform, arch, sourceFolderName, destinationFolderName, op
|
||||
@@ -246,3 +247,3 @@ function packageTask(platform, arch, sourceFolderName, destinationFolderName, op
|
||||
const date = new Date().toISOString();
|
||||
- const productJsonUpdate = { commit, date, checksums, version };
|
||||
+ const productJsonUpdate = { commit, date, checksums, version, release };
|
||||
|
||||
diff --git a/build/gulpfile.vscode.linux.js b/build/gulpfile.vscode.linux.js
|
||||
index 4a25ca5..ca33d2e 100644
|
||||
index cdc8870..f6e4e09 100644
|
||||
--- a/build/gulpfile.vscode.linux.js
|
||||
+++ b/build/gulpfile.vscode.linux.js
|
||||
@@ -24,4 +24,2 @@ const commit = util.getVersion(root);
|
||||
@@ -25,4 +25,2 @@ const commit = getVersion(root);
|
||||
|
||||
-const linuxPackageRevision = Math.floor(new Date().getTime() / 1000);
|
||||
-
|
||||
/**
|
||||
@@ -87,3 +85,3 @@ function prepareDebPackage(arch) {
|
||||
@@ -88,3 +86,3 @@ function prepareDebPackage(arch) {
|
||||
.pipe(replace('@@NAME@@', product.applicationName))
|
||||
- .pipe(replace('@@VERSION@@', packageJson.version + '-' + linuxPackageRevision))
|
||||
+ .pipe(replace('@@VERSION@@', `${packageJson.version}.${packageJson.release}`))
|
||||
.pipe(replace('@@ARCHITECTURE@@', debArch))
|
||||
@@ -192,4 +190,3 @@ function prepareRpmPackage(arch) {
|
||||
@@ -193,4 +191,3 @@ function prepareRpmPackage(arch) {
|
||||
.pipe(replace('@@ICON@@', product.linuxIconName))
|
||||
- .pipe(replace('@@VERSION@@', packageJson.version))
|
||||
- .pipe(replace('@@RELEASE@@', linuxPackageRevision))
|
||||
+ .pipe(replace('@@VERSION@@', `${packageJson.version}.${packageJson.release}`))
|
||||
.pipe(replace('@@ARCHITECTURE@@', rpmArch))
|
||||
@@ -266,3 +263,3 @@ function prepareSnapPackage(arch) {
|
||||
@@ -267,3 +264,3 @@ function prepareSnapPackage(arch) {
|
||||
.pipe(replace('@@NAME@@', product.applicationName))
|
||||
- .pipe(replace('@@VERSION@@', commit.substr(0, 8)))
|
||||
+ .pipe(replace('@@VERSION@@', `${packageJson.version}.${packageJson.release}`))
|
||||
// Possible run-on values https://snapcraft.io/docs/architectures
|
||||
diff --git a/build/gulpfile.vscode.win32.js b/build/gulpfile.vscode.win32.js
|
||||
index 81ba509..43f5377 100644
|
||||
index 0d3abda..2606af5 100644
|
||||
--- a/build/gulpfile.vscode.win32.js
|
||||
+++ b/build/gulpfile.vscode.win32.js
|
||||
@@ -93,4 +93,4 @@ function buildWin32Setup(arch, target) {
|
||||
@@ -94,4 +94,4 @@ function buildWin32Setup(arch, target) {
|
||||
DirName: product.win32DirName,
|
||||
- Version: pkg.version,
|
||||
- RawVersion: pkg.version.replace(/-\w+$/, ''),
|
||||
@@ -89,7 +80,7 @@ index 61659d2..5cafa06 100644
|
||||
+Release: el7
|
||||
Summary: Code editing. Redefined.
|
||||
diff --git a/src/vs/base/common/product.ts b/src/vs/base/common/product.ts
|
||||
index e07695c..55ccc32 100644
|
||||
index 7ec238b..9295018 100644
|
||||
--- a/src/vs/base/common/product.ts
|
||||
+++ b/src/vs/base/common/product.ts
|
||||
@@ -34,2 +34,3 @@ export interface IProductConfiguration {
|
||||
@@ -97,22 +88,22 @@ index e07695c..55ccc32 100644
|
||||
+ readonly release: string;
|
||||
readonly date?: string;
|
||||
diff --git a/src/vs/platform/diagnostics/node/diagnosticsService.ts b/src/vs/platform/diagnostics/node/diagnosticsService.ts
|
||||
index 66e35c8..087c055 100644
|
||||
index 561966b..30814a0 100644
|
||||
--- a/src/vs/platform/diagnostics/node/diagnosticsService.ts
|
||||
+++ b/src/vs/platform/diagnostics/node/diagnosticsService.ts
|
||||
@@ -238,3 +238,3 @@ export class DiagnosticsService implements IDiagnosticsService {
|
||||
@@ -236,3 +236,3 @@ export class DiagnosticsService implements IDiagnosticsService {
|
||||
const output: string[] = [];
|
||||
- output.push(`Version: ${this.productService.nameShort} ${this.productService.version} (${this.productService.commit || 'Commit unknown'}, ${this.productService.date || 'Date unknown'})`);
|
||||
+ output.push(`Version: ${this.productService.nameShort} ${this.productService.version} ${this.productService.release || 'Release unknown'} (${this.productService.commit || 'Commit unknown'}, ${this.productService.date || 'Date unknown'})`);
|
||||
output.push(`OS Version: ${osLib.type()} ${osLib.arch()} ${osLib.release()}`);
|
||||
diff --git a/src/vs/platform/product/common/product.ts b/src/vs/platform/product/common/product.ts
|
||||
index bceda01..4fe44e2 100644
|
||||
index ef798fa..cfa7866 100644
|
||||
--- a/src/vs/platform/product/common/product.ts
|
||||
+++ b/src/vs/platform/product/common/product.ts
|
||||
@@ -49,6 +49,7 @@ else if (typeof require?.__$__nodeRequire === 'function') {
|
||||
@@ -43,6 +43,7 @@ else if (globalThis._VSCODE_PRODUCT_JSON && globalThis._VSCODE_PACKAGE_JSON) {
|
||||
if (!product.version) {
|
||||
- const pkg = require.__$__nodeRequire(joinPath(rootPath, 'package.json').fsPath) as { version: string };
|
||||
+ const pkg = require.__$__nodeRequire(joinPath(rootPath, 'package.json').fsPath) as { version: string, release: string };
|
||||
- const pkg = globalThis._VSCODE_PACKAGE_JSON as { version: string };
|
||||
+ const pkg = globalThis._VSCODE_PACKAGE_JSON as { version: string, release: string };
|
||||
|
||||
Object.assign(product, {
|
||||
- version: pkg.version
|
||||
@@ -120,19 +111,19 @@ index bceda01..4fe44e2 100644
|
||||
+ release: pkg.release
|
||||
});
|
||||
diff --git a/src/vs/workbench/browser/parts/dialogs/dialogHandler.ts b/src/vs/workbench/browser/parts/dialogs/dialogHandler.ts
|
||||
index ec4ff95..2ed2c03 100644
|
||||
index 6a3768d..023eeed 100644
|
||||
--- a/src/vs/workbench/browser/parts/dialogs/dialogHandler.ts
|
||||
+++ b/src/vs/workbench/browser/parts/dialogs/dialogHandler.ts
|
||||
@@ -22,2 +22,3 @@ import { IInstantiationService } from 'vs/platform/instantiation/common/instanti
|
||||
import { MarkdownRenderer } from 'vs/editor/contrib/markdownRenderer/browser/markdownRenderer';
|
||||
@@ -21,2 +21,3 @@ import { MarkdownRenderer } from 'vs/editor/contrib/markdownRenderer/browser/mar
|
||||
import { defaultButtonStyles, defaultCheckboxStyles, defaultDialogStyles, defaultInputBoxStyles } from 'vs/platform/theme/browser/defaultStyles';
|
||||
+import { getReleaseString } from 'vs/workbench/common/release';
|
||||
|
||||
@@ -145,2 +146,4 @@ export class BrowserDialogHandler implements IDialogHandler {
|
||||
@@ -147,2 +148,4 @@ export class BrowserDialogHandler implements IDialogHandler {
|
||||
const detailString = (useAgo: boolean): string => {
|
||||
+ const releaseString = getReleaseString();
|
||||
+
|
||||
return localize('aboutDetail',
|
||||
@@ -151,3 +154,3 @@ export class BrowserDialogHandler implements IDialogHandler {
|
||||
@@ -153,3 +156,3 @@ export class BrowserDialogHandler implements IDialogHandler {
|
||||
navigator.userAgent
|
||||
- );
|
||||
+ ).replace('\n', `\n${releaseString} ${this.productService.release || 'Unknown'}\n`);
|
||||
|
||||
@@ -1,20 +1,21 @@
|
||||
diff --git a/src/vs/platform/product/common/product.ts b/src/vs/platform/product/common/product.ts
|
||||
index bceda01..174c766 100644
|
||||
index ef798fa..5a0550b 100644
|
||||
--- a/src/vs/platform/product/common/product.ts
|
||||
+++ b/src/vs/platform/product/common/product.ts
|
||||
@@ -6,3 +6,3 @@
|
||||
import { FileAccess } from 'vs/base/common/network';
|
||||
@@ -5,3 +5,4 @@
|
||||
|
||||
-import { globals } from 'vs/base/common/platform';
|
||||
+import { AppResourcePath, FileAccess } from 'vs/base/common/network';
|
||||
+import { globals, isWindows } from 'vs/base/common/platform';
|
||||
import { env } from 'vs/base/common/process';
|
||||
@@ -11,2 +11,3 @@ import { dirname, joinPath } from 'vs/base/common/resources';
|
||||
@@ -9,2 +10,3 @@ import { IProductConfiguration } from 'vs/base/common/product';
|
||||
import { ISandboxConfiguration } from 'vs/base/parts/sandbox/common/sandboxTypes';
|
||||
+import { getUserDataPath } from 'vs/platform/environment/node/userDataPath';
|
||||
|
||||
@@ -35,2 +36,41 @@ else if (typeof require?.__$__nodeRequire === 'function') {
|
||||
@@ -29,2 +31,40 @@ else if (globalThis._VSCODE_PRODUCT_JSON && globalThis._VSCODE_PACKAGE_JSON) {
|
||||
|
||||
+ // Set user-defined extension gallery
|
||||
+ const { serviceUrl, searchUrl, itemUrl, controlUrl, recommendationsUrl } = product.extensionsGallery || {}
|
||||
+ const { serviceUrl, searchUrl, itemUrl, controlUrl } = product.extensionsGallery || {}
|
||||
+
|
||||
+ Object.assign(product, {
|
||||
+ extensionsGallery: {
|
||||
@@ -22,7 +23,6 @@ index bceda01..174c766 100644
|
||||
+ searchUrl: env['VSCODE_GALLERY_SEARCH_URL'] || searchUrl,
|
||||
+ itemUrl: env['VSCODE_GALLERY_ITEM_URL'] || itemUrl,
|
||||
+ controlUrl: env['VSCODE_GALLERY_CONTROL_URL'] || controlUrl,
|
||||
+ recommendationsUrl: env['VSCODE_GALLERY_RECOMMENDATIONS_URL'] || recommendationsUrl
|
||||
+ }
|
||||
+ })
|
||||
+
|
||||
@@ -46,7 +46,7 @@ index bceda01..174c766 100644
|
||||
+ const userDataPath = getUserDataPath({} as any, product.nameShort);
|
||||
+ const userProductPath = isWindows ? `file:///${userDataPath}/product.json` : `file://${userDataPath}/product.json`;
|
||||
+
|
||||
+ const userProduct = require.__$__nodeRequire(FileAccess.asFileUri(userProductPath, require).fsPath);
|
||||
+ const userProduct = require.__$__nodeRequire(FileAccess.asFileUri(userProductPath as AppResourcePath).fsPath);
|
||||
+
|
||||
+ product = merge(product, userProduct);
|
||||
+ } catch (ex) {
|
||||
|
||||
23
patches/helper/settings.patch
Normal file
23
patches/helper/settings.patch
Normal file
@@ -0,0 +1,23 @@
|
||||
diff --git a/.vscode/settings.json b/.vscode/settings.json
|
||||
index 7ae8bce..724b9ad 100644
|
||||
--- a/.vscode/settings.json
|
||||
+++ b/.vscode/settings.json
|
||||
@@ -9,5 +9,5 @@
|
||||
"cli/target": true,
|
||||
- "build/**/*.js": {
|
||||
- "when": "$(basename).ts"
|
||||
- }
|
||||
+ // "build/**/*.js": {
|
||||
+ // "when": "$(basename).ts"
|
||||
+ // }
|
||||
},
|
||||
@@ -81,3 +81,3 @@
|
||||
"gulp.autoDetect": "off",
|
||||
- "files.insertFinalNewline": true,
|
||||
+ // "files.insertFinalNewline": true,
|
||||
"[plaintext]": {
|
||||
@@ -91,3 +91,3 @@
|
||||
"editor.defaultFormatter": "vscode.typescript-language-features",
|
||||
- "editor.formatOnSave": true
|
||||
+ // "editor.formatOnSave": true
|
||||
},
|
||||
23
patches/insider/add-remote-url.patch
Normal file
23
patches/insider/add-remote-url.patch
Normal file
@@ -0,0 +1,23 @@
|
||||
diff --git a/src/vs/workbench/contrib/remote/browser/remote.contribution.ts b/src/vs/workbench/contrib/remote/browser/remote.contribution.ts
|
||||
index 63e7f2d..e9a6b7d 100644
|
||||
--- a/src/vs/workbench/contrib/remote/browser/remote.contribution.ts
|
||||
+++ b/src/vs/workbench/contrib/remote/browser/remote.contribution.ts
|
||||
@@ -13,2 +13,4 @@ import { RemoteStatusIndicator } from 'vs/workbench/contrib/remote/browser/remot
|
||||
import { AutomaticPortForwarding, ForwardedPortsView, PortRestore } from 'vs/workbench/contrib/remote/browser/remoteExplorer';
|
||||
+import { CommandsRegistry } from 'vs/platform/commands/common/commands';
|
||||
+import { localize } from 'vs/nls';
|
||||
|
||||
@@ -23 +25,13 @@ workbenchContributionsRegistry.registerWorkbenchContribution(AutomaticPortForwar
|
||||
workbenchContributionsRegistry.registerWorkbenchContribution(RemoteMarkers, LifecyclePhase.Eventually);
|
||||
+
|
||||
+CommandsRegistry.registerCommand({
|
||||
+ id: 'remote.serverDownloadUrlTemplate',
|
||||
+ description: {
|
||||
+ description: localize('remote.serverDownloadUrlTemplate', 'Provides the url template to download the server archive'),
|
||||
+ args: [],
|
||||
+ returns: 'string',
|
||||
+ },
|
||||
+ handler: async (_) => {
|
||||
+ return 'https://github.com/VSCodium/vscodium-insiders/releases/download/${version}.${release}-insider/vscodium-reh-${os}-${arch}-${version}.${release}-insider.tar.gz';
|
||||
+ }
|
||||
+});
|
||||
@@ -1,21 +1,9 @@
|
||||
diff --git a/src/vs/platform/windows/electron-main/windowImpl.ts b/src/vs/platform/windows/electron-main/windowImpl.ts
|
||||
index c9501cb..a6958ff 100644
|
||||
index 3b8a644..71ea0ad 100644
|
||||
--- a/src/vs/platform/windows/electron-main/windowImpl.ts
|
||||
+++ b/src/vs/platform/windows/electron-main/windowImpl.ts
|
||||
@@ -42,7 +42,6 @@ import { Color } from 'vs/base/common/color';
|
||||
import { IPolicyService } from 'vs/platform/policy/common/policy';
|
||||
import { IUserDataProfile } from 'vs/platform/userDataProfile/common/userDataProfile';
|
||||
import { IStateMainService } from 'vs/platform/state/electron-main/state';
|
||||
-import product from 'vs/platform/product/common/product';
|
||||
import { IUserDataProfilesMainService } from 'vs/platform/userDataProfile/electron-main/userDataProfile';
|
||||
|
||||
export interface IWindowCreationOptions {
|
||||
@@ -203,7 +202,7 @@ export class CodeWindow extends Disposable implements ICodeWindow {
|
||||
if (typeof windowSettings?.experimental?.useSandbox === 'boolean') {
|
||||
useSandbox = windowSettings.experimental.useSandbox;
|
||||
} else {
|
||||
- useSandbox = typeof product.quality === 'string' && product.quality !== 'stable';
|
||||
+ useSandbox = false;
|
||||
@@ -213,4 +213,2 @@ export class CodeWindow extends Disposable implements ICodeWindow {
|
||||
useSandbox = true;
|
||||
- } else {
|
||||
- useSandbox = typeof this.productService.quality === 'string' && this.productService.quality !== 'stable';
|
||||
}
|
||||
|
||||
const options: BrowserWindowConstructorOptions & { experimentalDarkMode: boolean } = {
|
||||
|
||||
15
patches/insider/disable-windows-appx.patch
Normal file
15
patches/insider/disable-windows-appx.patch
Normal file
@@ -0,0 +1,15 @@
|
||||
diff --git a/build/gulpfile.vscode.win32.js b/build/gulpfile.vscode.win32.js
|
||||
index 0d3abda..9e5143a 100644
|
||||
--- a/build/gulpfile.vscode.win32.js
|
||||
+++ b/build/gulpfile.vscode.win32.js
|
||||
@@ -116,6 +116,6 @@ function buildWin32Setup(arch, target) {
|
||||
|
||||
- if (quality === 'insider') {
|
||||
- definitions['AppxPackage'] = `code_insiders_explorer_${arch === 'ia32' ? 'x86' : arch}.appx`;
|
||||
- definitions['AppxPackageFullname'] = `Microsoft.${product.win32RegValueName}_1.0.0.0_neutral__8wekyb3d8bbwe`;
|
||||
- }
|
||||
+ // if (quality === 'insider') {
|
||||
+ // definitions['AppxPackage'] = `code_insiders_explorer_${arch === 'ia32' ? 'x86' : arch}.appx`;
|
||||
+ // definitions['AppxPackageFullname'] = `Microsoft.${product.win32RegValueName}_1.0.0.0_neutral__8wekyb3d8bbwe`;
|
||||
+ // }
|
||||
|
||||
66
patches/remove-mangle.patch
Normal file
66
patches/remove-mangle.patch
Normal file
@@ -0,0 +1,66 @@
|
||||
diff --git a/build/lib/compilation.js b/build/lib/compilation.js
|
||||
index 71bc9fb..238a3b9 100644
|
||||
--- a/build/lib/compilation.js
|
||||
+++ b/build/lib/compilation.js
|
||||
@@ -20,3 +20,2 @@ const File = require("vinyl");
|
||||
const task = require("./task");
|
||||
-const mangleTypeScript_1 = require("./mangleTypeScript");
|
||||
const watch = require('./watch');
|
||||
@@ -103,23 +102,3 @@ function compileTask(src, out, build) {
|
||||
}
|
||||
- // mangle: TypeScript to TypeScript
|
||||
- let mangleStream = es.through();
|
||||
- if (build) {
|
||||
- let ts2tsMangler = new mangleTypeScript_1.Mangler(compile.projectPath, (...data) => fancyLog(ansiColors.blue('[mangler]'), ...data));
|
||||
- const newContentsByFileName = ts2tsMangler.computeNewFileContents();
|
||||
- mangleStream = es.through(function write(data) {
|
||||
- const newContents = newContentsByFileName.get(data.path);
|
||||
- if (newContents !== undefined) {
|
||||
- data.contents = Buffer.from(newContents.out);
|
||||
- data.sourceMap = newContents.sourceMap && JSON.parse(newContents.sourceMap);
|
||||
- }
|
||||
- this.push(data);
|
||||
- }, function end() {
|
||||
- this.push(null);
|
||||
- // free resources
|
||||
- newContentsByFileName.clear();
|
||||
- ts2tsMangler = undefined;
|
||||
- });
|
||||
- }
|
||||
return srcPipe
|
||||
- .pipe(mangleStream)
|
||||
.pipe(generator.stream)
|
||||
diff --git a/build/lib/compilation.ts b/build/lib/compilation.ts
|
||||
index 8e0f19a..27ea44c 100644
|
||||
--- a/build/lib/compilation.ts
|
||||
+++ b/build/lib/compilation.ts
|
||||
@@ -19,4 +19,2 @@ import * as File from 'vinyl';
|
||||
import * as task from './task';
|
||||
-import { Mangler } from './mangleTypeScript';
|
||||
-import { RawSourceMap } from 'source-map';
|
||||
const watch = require('./watch');
|
||||
@@ -123,24 +121,3 @@ export function compileTask(src: string, out: string, build: boolean): () => Nod
|
||||
|
||||
- // mangle: TypeScript to TypeScript
|
||||
- let mangleStream = es.through();
|
||||
- if (build) {
|
||||
- let ts2tsMangler = new Mangler(compile.projectPath, (...data) => fancyLog(ansiColors.blue('[mangler]'), ...data));
|
||||
- const newContentsByFileName = ts2tsMangler.computeNewFileContents();
|
||||
- mangleStream = es.through(function write(data: File & { sourceMap?: RawSourceMap }) {
|
||||
- const newContents = newContentsByFileName.get(data.path);
|
||||
- if (newContents !== undefined) {
|
||||
- data.contents = Buffer.from(newContents.out);
|
||||
- data.sourceMap = newContents.sourceMap && JSON.parse(newContents.sourceMap);
|
||||
- }
|
||||
- this.push(data);
|
||||
- }, function end() {
|
||||
- this.push(null);
|
||||
- // free resources
|
||||
- newContentsByFileName.clear();
|
||||
- (<any>ts2tsMangler) = undefined;
|
||||
- });
|
||||
- }
|
||||
-
|
||||
return srcPipe
|
||||
- .pipe(mangleStream)
|
||||
.pipe(generator.stream)
|
||||
@@ -1,18 +1,19 @@
|
||||
diff --git a/extensions/github-authentication/src/githubServer.ts b/extensions/github-authentication/src/githubServer.ts
|
||||
index 830e698..cd6f27e 100644
|
||||
index 8565178..e35d29f 100644
|
||||
--- a/extensions/github-authentication/src/githubServer.ts
|
||||
+++ b/extensions/github-authentication/src/githubServer.ts
|
||||
@@ -7,4 +7,2 @@ import * as vscode from 'vscode';
|
||||
import fetch, { Response } from 'node-fetch';
|
||||
-import { v4 as uuid } from 'uuid';
|
||||
@@ -6,4 +6,2 @@
|
||||
import * as vscode from 'vscode';
|
||||
-import * as path from 'path';
|
||||
-import { PromiseAdapter, promiseFromEvent } from './common/utils';
|
||||
import { ExperimentationTelemetry } from './experimentationService';
|
||||
@@ -12,13 +10,4 @@ import { AuthProviderType } from './github';
|
||||
import { ExperimentationTelemetry } from './common/experimentationService';
|
||||
@@ -11,14 +9,6 @@ import { AuthProviderType, UriEventHandler } from './github';
|
||||
import { Log } from './common/logger';
|
||||
-import { isSupportedEnvironment } from './common/env';
|
||||
-import { LoopbackAuthServer } from './authServer';
|
||||
-import path = require('path');
|
||||
-
|
||||
-import { LoopbackAuthServer } from './node/authServer';
|
||||
-import { crypto } from './node/crypto';
|
||||
import { fetching } from './node/fetch';
|
||||
|
||||
-const CLIENT_ID = '01ab8ac9400c4e429b23';
|
||||
-const GITHUB_TOKEN_URL = 'https://vscode.dev/codeExchangeProxyEndpoints/github/login/oauth/access_token';
|
||||
const NETWORK_ERROR = 'network error';
|
||||
@@ -20,8 +21,8 @@ index 830e698..cd6f27e 100644
|
||||
-const REDIRECT_URL_STABLE = 'https://vscode.dev/redirect';
|
||||
-const REDIRECT_URL_INSIDERS = 'https://insiders.vscode.dev/redirect';
|
||||
-
|
||||
class UriEventHandler extends vscode.EventEmitter<vscode.Uri> implements vscode.UriHandler {
|
||||
@@ -42,9 +31,2 @@ export interface IGitHubServer extends vscode.Disposable {
|
||||
export interface IGitHubServer {
|
||||
@@ -30,8 +20,2 @@ export interface IGitHubServer {
|
||||
|
||||
-interface IGitHubDeviceCodeResponse {
|
||||
- device_code: string;
|
||||
@@ -29,32 +30,29 @@ index 830e698..cd6f27e 100644
|
||||
- verification_uri: string;
|
||||
- interval: number;
|
||||
-}
|
||||
-
|
||||
async function getScopes(token: string, serverUri: vscode.Uri, logger: Log): Promise<string[]> {
|
||||
@@ -55,3 +37,3 @@ async function getScopes(token: string, serverUri: vscode.Uri, logger: Log): Pro
|
||||
Authorization: `token ${token}`,
|
||||
- 'User-Agent': 'Visual-Studio-Code'
|
||||
+ 'User-Agent': 'VSCodium'
|
||||
}
|
||||
@@ -75,7 +57,4 @@ export class GitHubServer implements IGitHubServer {
|
||||
|
||||
- private _pendingNonces = new Map<string, string[]>();
|
||||
- private _codeExchangePromises = new Map<string, { promise: Promise<string>; cancel: vscode.EventEmitter<void> }>();
|
||||
private _disposable: vscode.Disposable | undefined;
|
||||
private static _uriHandler: UriEventHandler | undefined;
|
||||
@@ -63,8 +47,4 @@ export class GitHubServer implements IGitHubServer {
|
||||
|
||||
- private readonly _pendingNonces = new Map<string, string[]>();
|
||||
- private readonly _codeExchangePromises = new Map<string, { promise: Promise<string>; cancel: vscode.EventEmitter<void> }>();
|
||||
private readonly _type: AuthProviderType;
|
||||
|
||||
- private _redirectEndpoint: string | undefined;
|
||||
|
||||
@@ -83,2 +62,3 @@ export class GitHubServer implements IGitHubServer {
|
||||
public readonly type: AuthProviderType,
|
||||
-
|
||||
constructor(
|
||||
@@ -72,3 +52,5 @@ export class GitHubServer implements IGitHubServer {
|
||||
private readonly _telemetryReporter: ExperimentationTelemetry,
|
||||
+ // @ts-ignore
|
||||
private readonly _supportDeviceCodeFlow: boolean,
|
||||
@@ -102,41 +82,2 @@ export class GitHubServer implements IGitHubServer {
|
||||
private readonly _uriHandler: UriEventHandler,
|
||||
+ // @ts-ignore
|
||||
private readonly _extensionKind: vscode.ExtensionKind,
|
||||
@@ -87,41 +69,2 @@ export class GitHubServer implements IGitHubServer {
|
||||
|
||||
- private async getRedirectEndpoint(): Promise<string> {
|
||||
- if (this._redirectEndpoint) {
|
||||
- return this._redirectEndpoint;
|
||||
- }
|
||||
- if (this.type === AuthProviderType.github) {
|
||||
- if (this._type === AuthProviderType.github) {
|
||||
- const proxyEndpoints = await vscode.commands.executeCommand<{ [providerId: string]: string } | undefined>('workbench.getCodeExchangeProxyEndpoints');
|
||||
- // If we are running in insiders vscode.dev, then ensure we use the redirect route on that.
|
||||
- this._redirectEndpoint = REDIRECT_URL_STABLE;
|
||||
@@ -64,7 +62,7 @@ index 830e698..cd6f27e 100644
|
||||
- return this._redirectEndpoint;
|
||||
- } else {
|
||||
- // GHES
|
||||
- const result = await fetch(this.getServerUri('/meta').toString(true));
|
||||
- const result = await fetching(this.getServerUri('/meta').toString(true));
|
||||
- if (result.ok) {
|
||||
- try {
|
||||
- const json: { installed_version: string } = await result.json();
|
||||
@@ -89,8 +87,8 @@ index 830e698..cd6f27e 100644
|
||||
- return this._redirectEndpoint;
|
||||
- }
|
||||
-
|
||||
dispose() {
|
||||
@@ -156,58 +97,8 @@ export class GitHubServer implements IGitHubServer {
|
||||
// TODO@joaomoreno TODO@TylerLeonhardt
|
||||
@@ -137,57 +80,2 @@ export class GitHubServer implements IGitHubServer {
|
||||
let userCancelled: boolean | undefined;
|
||||
- const yes = vscode.l10n.t('Yes');
|
||||
- const no = vscode.l10n.t('No');
|
||||
@@ -108,9 +106,9 @@ index 830e698..cd6f27e 100644
|
||||
- }
|
||||
- };
|
||||
-
|
||||
- const nonce = uuid();
|
||||
- const nonce: string = crypto.getRandomValues(new Uint32Array(2)).reduce((prev, curr) => prev += curr.toString(16), '');
|
||||
- const callbackUri = await vscode.env.asExternalUri(vscode.Uri.parse(`${vscode.env.uriScheme}://vscode.github-authentication/did-authenticate?nonce=${encodeURIComponent(nonce)}`));
|
||||
|
||||
-
|
||||
- const supported = isSupportedEnvironment(callbackUri);
|
||||
- if (supported) {
|
||||
- try {
|
||||
@@ -121,8 +119,13 @@ index 830e698..cd6f27e 100644
|
||||
- }
|
||||
- }
|
||||
-
|
||||
- // Starting a local server isn't supported in web
|
||||
- if (vscode.env.uiKind === vscode.UIKind.Desktop) {
|
||||
- // Starting a local server is only supported if:
|
||||
- // 1. We are in a UI extension because we need to open a port on the machine that has the browser
|
||||
- // 2. We are in a node runtime because we need to open a port on the machine
|
||||
- if (
|
||||
- this._extensionKind === vscode.ExtensionKind.UI &&
|
||||
- typeof navigator === 'undefined'
|
||||
- ) {
|
||||
- try {
|
||||
- await promptToContinue();
|
||||
- return await this.doLoginWithLocalServer(scopes);
|
||||
@@ -132,7 +135,8 @@ index 830e698..cd6f27e 100644
|
||||
- }
|
||||
- }
|
||||
-
|
||||
- if (this._supportDeviceCodeFlow) {
|
||||
- // We only can use the Device Code flow when we have a full node environment because of CORS.
|
||||
- if (typeof navigator === 'undefined') {
|
||||
- try {
|
||||
- await promptToContinue();
|
||||
- return await this.doLoginDeviceCodeFlow(scopes);
|
||||
@@ -140,7 +144,11 @@ index 830e698..cd6f27e 100644
|
||||
- this._logger.error(e);
|
||||
- userCancelled = e.message ?? e === 'User Cancelled';
|
||||
- }
|
||||
- } else if (!supported) {
|
||||
- }
|
||||
|
||||
@@ -195,10 +83,7 @@ export class GitHubServer implements IGitHubServer {
|
||||
// With that said, GitHub Enterprise isn't used by Settings Sync so we can use PATs for that.
|
||||
- if (!supported || this._type === AuthProviderType.githubEnterprise) {
|
||||
- try {
|
||||
- await promptToContinue();
|
||||
- return await this.doLoginWithPat(scopes);
|
||||
@@ -154,7 +162,7 @@ index 830e698..cd6f27e 100644
|
||||
+ this._logger.error(e);
|
||||
+ userCancelled = e.message ?? e === 'User Cancelled';
|
||||
}
|
||||
@@ -217,136 +108,2 @@ export class GitHubServer implements IGitHubServer {
|
||||
@@ -208,136 +93,2 @@ export class GitHubServer implements IGitHubServer {
|
||||
|
||||
- private async doLoginWithoutLocalServer(scopes: string, nonce: string, callbackUri: vscode.Uri): Promise<string> {
|
||||
- this._logger.info(`Trying without local server... (${scopes})`);
|
||||
@@ -187,7 +195,7 @@ index 830e698..cd6f27e 100644
|
||||
- // before completing it.
|
||||
- let codeExchangePromise = this._codeExchangePromises.get(scopes);
|
||||
- if (!codeExchangePromise) {
|
||||
- codeExchangePromise = promiseFromEvent(GitHubServer._uriHandler!.event, this.handleUri(scopes));
|
||||
- codeExchangePromise = promiseFromEvent(this._uriHandler!.event, this.handleUri(scopes));
|
||||
- this._codeExchangePromises.set(scopes, codeExchangePromise);
|
||||
- }
|
||||
-
|
||||
@@ -258,7 +266,7 @@ index 830e698..cd6f27e 100644
|
||||
- path: '/login/device/code',
|
||||
- query: `client_id=${CLIENT_ID}&scope=${scopes}`
|
||||
- });
|
||||
- const result = await fetch(uri.toString(true), {
|
||||
- const result = await fetching(uri.toString(true), {
|
||||
- method: 'POST',
|
||||
- headers: {
|
||||
- Accept: 'application/json'
|
||||
@@ -291,7 +299,7 @@ index 830e698..cd6f27e 100644
|
||||
- }
|
||||
-
|
||||
private async doLoginWithPat(scopes: string): Promise<string> {
|
||||
@@ -374,124 +131,2 @@ export class GitHubServer implements IGitHubServer {
|
||||
@@ -381,124 +132,2 @@ export class GitHubServer implements IGitHubServer {
|
||||
|
||||
- private async waitForDeviceCodeAccessToken(
|
||||
- json: IGitHubDeviceCodeResponse,
|
||||
@@ -322,7 +330,7 @@ index 830e698..cd6f27e 100644
|
||||
- }
|
||||
- let accessTokenResult;
|
||||
- try {
|
||||
- accessTokenResult = await fetch(refreshTokenUri.toString(true), {
|
||||
- accessTokenResult = await fetching(refreshTokenUri.toString(true), {
|
||||
- method: 'POST',
|
||||
- headers: {
|
||||
- Accept: 'application/json'
|
||||
@@ -388,11 +396,11 @@ index 830e698..cd6f27e 100644
|
||||
- const endpointUrl = proxyEndpoints?.github ? `${proxyEndpoints.github}login/oauth/access_token` : GITHUB_TOKEN_URL;
|
||||
-
|
||||
- const body = new URLSearchParams([['code', code]]);
|
||||
- if (this.type === AuthProviderType.githubEnterprise) {
|
||||
- if (this._type === AuthProviderType.githubEnterprise) {
|
||||
- body.append('github_enterprise', this.baseUri.toString(true));
|
||||
- body.append('redirect_uri', await this.getRedirectEndpoint());
|
||||
- }
|
||||
- const result = await fetch(endpointUrl, {
|
||||
- const result = await fetching(endpointUrl, {
|
||||
- method: 'POST',
|
||||
- headers: {
|
||||
- Accept: 'application/json',
|
||||
@@ -417,19 +425,19 @@ index 830e698..cd6f27e 100644
|
||||
-
|
||||
private getServerUri(path: string = '') {
|
||||
diff --git a/src/vs/workbench/browser/parts/activitybar/activitybarActions.ts b/src/vs/workbench/browser/parts/activitybar/activitybarActions.ts
|
||||
index ce2a3e8..2a5cf60 100644
|
||||
index 266311d..f066323 100644
|
||||
--- a/src/vs/workbench/browser/parts/activitybar/activitybarActions.ts
|
||||
+++ b/src/vs/workbench/browser/parts/activitybar/activitybarActions.ts
|
||||
@@ -306,3 +306,3 @@ export class AccountsActivityActionViewItem extends MenuActivityActionViewItem {
|
||||
@@ -307,3 +307,3 @@ export class AccountsActivityActionViewItem extends MenuActivityActionViewItem {
|
||||
|
||||
- if (providers.length && !menus.length) {
|
||||
+ if (!menus.length) {
|
||||
const noAccountsAvailableAction = disposables.add(new Action('noAccountsAvailable', localize('noAccounts', "You are not signed in to any accounts"), undefined, false));
|
||||
diff --git a/src/vs/workbench/services/authentication/browser/authenticationService.ts b/src/vs/workbench/services/authentication/browser/authenticationService.ts
|
||||
index d5e2b75..a996eb7 100644
|
||||
index 8dd6e19..10c2611 100644
|
||||
--- a/src/vs/workbench/services/authentication/browser/authenticationService.ts
|
||||
+++ b/src/vs/workbench/services/authentication/browser/authenticationService.ts
|
||||
@@ -279,12 +279,2 @@ export class AuthenticationService extends Disposable implements IAuthentication
|
||||
@@ -274,12 +274,2 @@ export class AuthenticationService extends Disposable implements IAuthentication
|
||||
}
|
||||
-
|
||||
- if (!this._authenticationProviders.size) {
|
||||
|
||||
9
patches/win7.patch
Normal file
9
patches/win7.patch
Normal file
@@ -0,0 +1,9 @@
|
||||
diff --git a/build/win32/code.iss b/build/win32/code.iss
|
||||
index d365ab1..1a02701 100644
|
||||
--- a/build/win32/code.iss
|
||||
+++ b/build/win32/code.iss
|
||||
@@ -28,3 +28,3 @@ ChangesEnvironment=true
|
||||
ChangesAssociations=true
|
||||
-MinVersion=6.2
|
||||
+MinVersion=6.1.7600
|
||||
SourceDir={#SourceDir}
|
||||
34
product.json
34
product.json
@@ -48,10 +48,10 @@
|
||||
],
|
||||
"extensionEnabledApiProposals": {
|
||||
"ms-vscode.vscode-selfhost-test-provider": [
|
||||
"testObserver"
|
||||
"testObserver",
|
||||
"testContinuousRun"
|
||||
],
|
||||
"VisualStudioExptTeam.vscodeintellicode-completions": [
|
||||
"inlineCompletionsNew",
|
||||
"inlineCompletionsAdditions"
|
||||
],
|
||||
"ms-vsliveshare.vsliveshare": [
|
||||
@@ -70,7 +70,6 @@
|
||||
"portsAttributes",
|
||||
"findTextInFiles",
|
||||
"workspaceTrust",
|
||||
"resolvers",
|
||||
"tunnels"
|
||||
],
|
||||
"ms-toolsai.vscode-ai-remote": [
|
||||
@@ -112,6 +111,7 @@
|
||||
"fileSearchProvider",
|
||||
"quickPickSortByLabel",
|
||||
"workspaceTrust",
|
||||
"scmActionButton",
|
||||
"scmSelectedProvider",
|
||||
"scmValidation",
|
||||
"textSearchProvider",
|
||||
@@ -119,6 +119,7 @@
|
||||
],
|
||||
"ms-vscode-remote.remote-wsl": [
|
||||
"resolvers",
|
||||
"contribRemoteHelp",
|
||||
"contribViewsRemote",
|
||||
"telemetry"
|
||||
],
|
||||
@@ -126,14 +127,15 @@
|
||||
"resolvers",
|
||||
"tunnels",
|
||||
"terminalDataWriteEvent",
|
||||
"contribRemoteHelp",
|
||||
"contribViewsRemote",
|
||||
"telemetry"
|
||||
],
|
||||
"ms-vscode.remote-server": [
|
||||
"resolvers",
|
||||
"tunnels"
|
||||
"resolvers"
|
||||
],
|
||||
"ms-vscode.remote-explorer": [
|
||||
"contribRemoteHelp",
|
||||
"contribViewsRemote",
|
||||
"extensionsAny"
|
||||
],
|
||||
@@ -143,31 +145,34 @@
|
||||
"tunnels",
|
||||
"workspaceTrust",
|
||||
"terminalDimensions",
|
||||
"contribRemoteHelp",
|
||||
"contribViewsRemote"
|
||||
],
|
||||
"ms-vscode.js-debug-nightly": [
|
||||
"portsAttributes",
|
||||
"findTextInFiles",
|
||||
"workspaceTrust",
|
||||
"resolvers",
|
||||
"tunnels"
|
||||
],
|
||||
"ms-vscode.lsif-browser": [
|
||||
"documentFiltersExclusive"
|
||||
],
|
||||
"GitHub.vscode-pull-request-github": [
|
||||
"contribCommentThreadAdditionalMenu",
|
||||
"tokenInformation",
|
||||
"commentsResolvedState",
|
||||
"contribShareMenu",
|
||||
"contribCommentPeekContext",
|
||||
"treeItemCheckbox"
|
||||
"treeItemCheckbox",
|
||||
"codiconDecoration",
|
||||
"diffCommand",
|
||||
"contribCommentEditorActionsMenu",
|
||||
"quickDiffProvider"
|
||||
],
|
||||
"GitHub.copilot": [
|
||||
"inlineCompletionsNew",
|
||||
"inlineCompletionsAdditions"
|
||||
],
|
||||
"GitHub.copilot-nightly": [
|
||||
"inlineCompletionsNew",
|
||||
"inlineCompletionsAdditions"
|
||||
],
|
||||
"GitHub.remotehub": [
|
||||
@@ -211,7 +216,6 @@
|
||||
"notebookCellExecutionState"
|
||||
],
|
||||
"ms-vscode.azure-sphere-tools-ui": [
|
||||
"resolvers",
|
||||
"tunnels"
|
||||
],
|
||||
"ms-azuretools.vscode-azureappservice": [
|
||||
@@ -222,6 +226,16 @@
|
||||
],
|
||||
"ms-vscode.cpptools": [
|
||||
"terminalDataWriteEvent"
|
||||
],
|
||||
"redhat.java": [
|
||||
"documentPaste"
|
||||
],
|
||||
"jeanp413.open-remote-ssh": [
|
||||
"resolvers",
|
||||
"tunnels",
|
||||
"terminalDataWriteEvent",
|
||||
"contribRemoteHelp",
|
||||
"contribViewsRemote"
|
||||
]
|
||||
},
|
||||
"extensionKind": {
|
||||
|
||||
@@ -23,7 +23,7 @@ if [[ $( gh release view --repo "${ASSETS_REPOSITORY}" "${RELEASE_VERSION}" 2>&1
|
||||
CREATE_OPTIONS="--generate-notes"
|
||||
fi
|
||||
|
||||
gh release create "${RELEASE_VERSION}" --repo "${ASSETS_REPOSITORY}" --notes "${NOTES}" ${CREATE_OPTIONS}
|
||||
gh release create "${RELEASE_VERSION}" --repo "${ASSETS_REPOSITORY}" --title "${RELEASE_VERSION}" --notes "${NOTES}" ${CREATE_OPTIONS}
|
||||
fi
|
||||
|
||||
cd assets
|
||||
|
||||
@@ -14,12 +14,12 @@ REPLACEMENT="s|//[^/]+\.data\.microsoft\.com|//0\.0\.0\.0|g"
|
||||
|
||||
if is_gnu_sed; then
|
||||
replace_with_debug () {
|
||||
echo "found: ${2} (`date`)"
|
||||
echo "found: ${2}"
|
||||
sed -i -E "${1}" "${2}"
|
||||
}
|
||||
else
|
||||
replace_with_debug () {
|
||||
echo "found: ${2} (`date`)"
|
||||
echo "found: ${2}"
|
||||
sed -i '' -E "${1}" "${2}"
|
||||
}
|
||||
fi
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
set -e
|
||||
|
||||
if [[ "${SHOULD_BUILD}" != "yes" ]]; then
|
||||
if [[ "${SHOULD_BUILD}" != "yes" && "${FORCE_UPDATE}" != "true" ]]; then
|
||||
echo "Will not update version JSON because we did not build"
|
||||
exit
|
||||
fi
|
||||
@@ -12,6 +12,15 @@ if [[ -z "${GITHUB_TOKEN}" ]]; then
|
||||
exit
|
||||
fi
|
||||
|
||||
if [[ "${FORCE_UPDATE}" == "true" ]]; then
|
||||
. version.sh
|
||||
fi
|
||||
|
||||
if [[ -z "${BUILD_SOURCEVERSION}" ]]; then
|
||||
echo "Will not update version JSON because no BUILD_SOURCEVERSION defined"
|
||||
exit
|
||||
fi
|
||||
|
||||
# {
|
||||
# "url": "https://az764295.vo.msecnd.net/stable/51b0b28134d51361cf996d2f0a1c698247aeabd8/VSCode-darwin-stable.zip",
|
||||
# "name": "1.33.1",
|
||||
@@ -75,11 +84,11 @@ generateJson() {
|
||||
updateLatestVersion() {
|
||||
echo "Generating ${VERSION_PATH}/latest.json"
|
||||
|
||||
# do not update the same version since BUILD_SOURCEVERSION might be different
|
||||
# do not update the same version
|
||||
if [[ -f "versions/${VERSION_PATH}/latest.json" ]]; then
|
||||
CURRENT_VERSION=$( jq -r '.name' "versions/${VERSION_PATH}/latest.json" )
|
||||
|
||||
if [[ "${CURRENT_VERSION}" == "${RELEASE_VERSION}" ]]; then
|
||||
if [[ "${CURRENT_VERSION}" == "${RELEASE_VERSION}" && "${FORCE_UPDATE}" != "true" ]]; then
|
||||
return
|
||||
fi
|
||||
fi
|
||||
|
||||
Reference in New Issue
Block a user