Merge branch 'insider'

This commit is contained in:
Baptiste Augrain 2022-12-08 19:54:34 +01:00
commit 12121c9c9b
14 changed files with 154 additions and 117 deletions

View file

@ -69,7 +69,6 @@ With the following environment variables:
- `VSCODE_GALLERY_ITEM_URL='https://marketplace.visualstudio.com/items'` - `VSCODE_GALLERY_ITEM_URL='https://marketplace.visualstudio.com/items'`
- `VSCODE_GALLERY_CACHE_URL='https://vscode.blob.core.windows.net/gallery/index'` - `VSCODE_GALLERY_CACHE_URL='https://vscode.blob.core.windows.net/gallery/index'`
- `VSCODE_GALLERY_CONTROL_URL=''` - `VSCODE_GALLERY_CONTROL_URL=''`
- `VSCODE_GALLERY_RECOMMENDATIONS_URL=''`
Or by creating a custom `product.json` at the following location (replace `VSCodium` by `VSCodium - Insiders` if you use that): 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` - Windows: `%APPDATA%\VSCodium` or `%USERPROFILE%\AppData\Roaming\VSCodium`
@ -85,7 +84,6 @@ with the content:
"itemUrl": "https://marketplace.visualstudio.com/items", "itemUrl": "https://marketplace.visualstudio.com/items",
"cacheUrl": "https://vscode.blob.core.windows.net/gallery/index", // set to empty string for every other extension gallery "cacheUrl": "https://vscode.blob.core.windows.net/gallery/index", // set to empty string for every other extension gallery
"controlUrl": "", "controlUrl": "",
"recommendationsUrl": ""
} }
} }
``` ```

View file

@ -60,6 +60,7 @@ if [[ "${SKIP_BUILD}" == "no" ]]; then
rm -rf vscode* VSCode* rm -rf vscode* VSCode*
. get_repo.sh . get_repo.sh
. version.sh
# save variables for later # save variables for later
echo "MS_TAG=\"${MS_TAG}\"" > build.env echo "MS_TAG=\"${MS_TAG}\"" > build.env

View file

@ -30,4 +30,6 @@ fi
APIS=`cat ${DIRECTORY}/resources/app/product.json | jq -r '.extensionEnabledApiProposals'` APIS=`cat ${DIRECTORY}/resources/app/product.json | jq -r '.extensionEnabledApiProposals'`
APIS=`echo "${APIS}" | jq '. += {"jeanp413.open-remote-ssh": ["resolvers", "tunnels", "terminalDataWriteEvent", "contribViewsRemote"]}'`
cat <<< $(jq --argjson v "${APIS}" 'setpath(["extensionEnabledApiProposals"]; $v)' product.json) > product.json cat <<< $(jq --argjson v "${APIS}" 'setpath(["extensionEnabledApiProposals"]; $v)' product.json) > product.json

View file

@ -1,21 +1,50 @@
#!/bin/bash #!/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; } cd vscode || { echo "'vscode' dir not found"; exit 1; }
git add . git add .
git reset -q --hard HEAD git reset -q --hard HEAD
for file in ../patches/*.patch; do for FILE in ../patches/*.patch; do
if [ -f "${file}" ]; then if [ -f "${FILE}" ]; then
echo applying patch: "${file}" echo applying patch: "${FILE}"
git apply --ignore-whitespace "${file}" git apply --ignore-whitespace "${FILE}"
if [ $? -ne 0 ]; then if [ $? -ne 0 ]; then
echo failed to apply patch "${file}" echo failed to apply patch "${FILE}"
git apply --reject "${file}" git apply --reject "${FILE}"
read -p "Press any key when the conflict have been resolved..." -n1 -s 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 fi
git add . git add .
git reset -q --hard HEAD git reset -q --hard HEAD
fi fi
done 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

View file

@ -1,4 +1,4 @@
{ {
"tag": "1.73.0", "tag": "1.75.0",
"commit": "8fa188b2b301d36553cbc9ce1b0a146ccb93351f" "commit": "b92894493e6f971a3c71912d823e699d3a05d643"
} }

View 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 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 --- a/build/gulpfile.reh.js
+++ b/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 name = product.nameShort;
+ const release = packageJson.release; + const release = packageJson.release;
const packageJsonStream = gulp.src(['remote/package.json'], { base: 'remote' }) const packageJsonStream = gulp.src(['remote/package.json'], { base: 'remote' })
- .pipe(json({ name, version, dependencies: undefined, optionalDependencies: undefined })); - .pipe(json({ name, version, dependencies: undefined, optionalDependencies: undefined }));
+ .pipe(json({ name, version, release, 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: '.' }) const productJsonStream = gulp.src(['product.json'], { base: '.' })
- .pipe(json({ commit, date, version })); - .pipe(json({ commit, date, version }));
+ .pipe(json({ commit, date, version, release })); + .pipe(json({ commit, date, version, release }));
diff --git a/build/gulpfile.vscode.js b/build/gulpfile.vscode.js 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 --- a/build/gulpfile.vscode.js
+++ b/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;
+ let version = packageJson.version + let version = packageJson.version
const quality = product.quality; 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 name = product.nameShort;
- const packageJsonUpdates = { name, version }; - const packageJsonUpdates = { name, version };
+ const release = packageJson.release; + const release = packageJson.release;
+ const packageJsonUpdates = { name, version, 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 date = new Date().toISOString();
- const productJsonUpdate = { commit, date, checksums, version }; - const productJsonUpdate = { commit, date, checksums, version };
+ const productJsonUpdate = { commit, date, checksums, version, release }; + const productJsonUpdate = { commit, date, checksums, version, release };
diff --git a/build/gulpfile.vscode.linux.js b/build/gulpfile.vscode.linux.js 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 --- a/build/gulpfile.vscode.linux.js
+++ b/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); -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('@@NAME@@', product.applicationName))
- .pipe(replace('@@VERSION@@', packageJson.version + '-' + linuxPackageRevision)) - .pipe(replace('@@VERSION@@', packageJson.version + '-' + linuxPackageRevision))
+ .pipe(replace('@@VERSION@@', `${packageJson.version}.${packageJson.release}`)) + .pipe(replace('@@VERSION@@', `${packageJson.version}.${packageJson.release}`))
.pipe(replace('@@ARCHITECTURE@@', debArch)) .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('@@ICON@@', product.linuxIconName))
- .pipe(replace('@@VERSION@@', packageJson.version)) - .pipe(replace('@@VERSION@@', packageJson.version))
- .pipe(replace('@@RELEASE@@', linuxPackageRevision)) - .pipe(replace('@@RELEASE@@', linuxPackageRevision))
+ .pipe(replace('@@VERSION@@', `${packageJson.version}.${packageJson.release}`)) + .pipe(replace('@@VERSION@@', `${packageJson.version}.${packageJson.release}`))
.pipe(replace('@@ARCHITECTURE@@', rpmArch)) .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('@@NAME@@', product.applicationName))
- .pipe(replace('@@VERSION@@', commit.substr(0, 8))) - .pipe(replace('@@VERSION@@', commit.substr(0, 8)))
+ .pipe(replace('@@VERSION@@', `${packageJson.version}.${packageJson.release}`)) + .pipe(replace('@@VERSION@@', `${packageJson.version}.${packageJson.release}`))
// Possible run-on values https://snapcraft.io/docs/architectures // Possible run-on values https://snapcraft.io/docs/architectures
diff --git a/build/gulpfile.vscode.win32.js b/build/gulpfile.vscode.win32.js 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 --- a/build/gulpfile.vscode.win32.js
+++ b/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, DirName: product.win32DirName,
- Version: pkg.version, - Version: pkg.version,
- RawVersion: pkg.version.replace(/-\w+$/, ''), - RawVersion: pkg.version.replace(/-\w+$/, ''),
@ -89,7 +80,7 @@ index 61659d2..5cafa06 100644
+Release: el7 +Release: el7
Summary: Code editing. Redefined. Summary: Code editing. Redefined.
diff --git a/src/vs/base/common/product.ts b/src/vs/base/common/product.ts 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 --- a/src/vs/base/common/product.ts
+++ b/src/vs/base/common/product.ts +++ b/src/vs/base/common/product.ts
@@ -34,2 +34,3 @@ export interface IProductConfiguration { @@ -34,2 +34,3 @@ export interface IProductConfiguration {
@ -97,22 +88,22 @@ index e07695c..55ccc32 100644
+ readonly release: string; + readonly release: string;
readonly date?: string; readonly date?: string;
diff --git a/src/vs/platform/diagnostics/node/diagnosticsService.ts b/src/vs/platform/diagnostics/node/diagnosticsService.ts 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 --- a/src/vs/platform/diagnostics/node/diagnosticsService.ts
+++ b/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[] = []; 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.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(`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()}`); 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 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 --- a/src/vs/platform/product/common/product.ts
+++ b/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) { if (!product.version) {
- const pkg = require.__$__nodeRequire(joinPath(rootPath, 'package.json').fsPath) as { version: string }; - const pkg = globalThis._VSCODE_PACKAGE_JSON 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, release: string };
Object.assign(product, { Object.assign(product, {
- version: pkg.version - version: pkg.version
@ -120,19 +111,19 @@ index bceda01..4fe44e2 100644
+ release: pkg.release + release: pkg.release
}); });
diff --git a/src/vs/workbench/browser/parts/dialogs/dialogHandler.ts b/src/vs/workbench/browser/parts/dialogs/dialogHandler.ts 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 --- a/src/vs/workbench/browser/parts/dialogs/dialogHandler.ts
+++ b/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 @@ -21,2 +21,3 @@ import { MarkdownRenderer } from 'vs/editor/contrib/markdownRenderer/browser/mar
import { MarkdownRenderer } from 'vs/editor/contrib/markdownRenderer/browser/markdownRenderer'; import { defaultButtonStyles, defaultCheckboxStyles, defaultDialogStyles, defaultInputBoxStyles } from 'vs/platform/theme/browser/defaultStyles';
+import { getReleaseString } from 'vs/workbench/common/release'; +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 detailString = (useAgo: boolean): string => {
+ const releaseString = getReleaseString(); + const releaseString = getReleaseString();
+ +
return localize('aboutDetail', return localize('aboutDetail',
@@ -151,3 +154,3 @@ export class BrowserDialogHandler implements IDialogHandler { @@ -153,3 +156,3 @@ export class BrowserDialogHandler implements IDialogHandler {
navigator.userAgent navigator.userAgent
- ); - );
+ ).replace('\n', `\n${releaseString} ${this.productService.release || 'Unknown'}\n`); + ).replace('\n', `\n${releaseString} ${this.productService.release || 'Unknown'}\n`);

View file

@ -1,20 +1,21 @@
diff --git a/src/vs/platform/product/common/product.ts b/src/vs/platform/product/common/product.ts 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 --- a/src/vs/platform/product/common/product.ts
+++ b/src/vs/platform/product/common/product.ts +++ b/src/vs/platform/product/common/product.ts
@@ -6,3 +6,3 @@ @@ -5,3 +5,4 @@
import { FileAccess } from 'vs/base/common/network';
-import { globals } from 'vs/base/common/platform'; -import { globals } from 'vs/base/common/platform';
+import { AppResourcePath, FileAccess } from 'vs/base/common/network';
+import { globals, isWindows } from 'vs/base/common/platform'; +import { globals, isWindows } from 'vs/base/common/platform';
import { env } from 'vs/base/common/process'; 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 { ISandboxConfiguration } from 'vs/base/parts/sandbox/common/sandboxTypes';
+import { getUserDataPath } from 'vs/platform/environment/node/userDataPath'; +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 + // Set user-defined extension gallery
+ const { serviceUrl, searchUrl, itemUrl, controlUrl, recommendationsUrl } = product.extensionsGallery || {} + const { serviceUrl, searchUrl, itemUrl, controlUrl } = product.extensionsGallery || {}
+ +
+ Object.assign(product, { + Object.assign(product, {
+ extensionsGallery: { + extensionsGallery: {
@ -22,7 +23,6 @@ index bceda01..174c766 100644
+ searchUrl: env['VSCODE_GALLERY_SEARCH_URL'] || searchUrl, + searchUrl: env['VSCODE_GALLERY_SEARCH_URL'] || searchUrl,
+ itemUrl: env['VSCODE_GALLERY_ITEM_URL'] || itemUrl, + itemUrl: env['VSCODE_GALLERY_ITEM_URL'] || itemUrl,
+ controlUrl: env['VSCODE_GALLERY_CONTROL_URL'] || controlUrl, + 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 userDataPath = getUserDataPath({} as any, product.nameShort);
+ const userProductPath = isWindows ? `file:///${userDataPath}/product.json` : `file://${userDataPath}/product.json`; + 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); + product = merge(product, userProduct);
+ } catch (ex) { + } catch (ex) {

View file

@ -1,21 +1,9 @@
diff --git a/src/vs/platform/windows/electron-main/windowImpl.ts b/src/vs/platform/windows/electron-main/windowImpl.ts 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 --- a/src/vs/platform/windows/electron-main/windowImpl.ts
+++ b/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'; @@ -213,4 +213,2 @@ export class CodeWindow extends Disposable implements ICodeWindow {
import { IPolicyService } from 'vs/platform/policy/common/policy'; useSandbox = true;
import { IUserDataProfile } from 'vs/platform/userDataProfile/common/userDataProfile'; - } else {
import { IStateMainService } from 'vs/platform/state/electron-main/state'; - useSandbox = typeof this.productService.quality === 'string' && this.productService.quality !== 'stable';
-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;
} }
const options: BrowserWindowConstructorOptions & { experimentalDarkMode: boolean } = {

View 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`;
+ // }

View file

@ -1,18 +1,19 @@
diff --git a/extensions/github-authentication/src/githubServer.ts b/extensions/github-authentication/src/githubServer.ts diff --git a/extensions/github-authentication/src/githubServer.ts b/extensions/github-authentication/src/githubServer.ts
index 830e698..cd6f27e 100644 index e1f766d..4f11dbe 100644
--- a/extensions/github-authentication/src/githubServer.ts --- a/extensions/github-authentication/src/githubServer.ts
+++ b/extensions/github-authentication/src/githubServer.ts +++ b/extensions/github-authentication/src/githubServer.ts
@@ -7,4 +7,2 @@ import * as vscode from 'vscode'; @@ -6,4 +6,2 @@
import fetch, { Response } from 'node-fetch'; import * as vscode from 'vscode';
-import { v4 as uuid } from 'uuid'; -import * as path from 'path';
-import { PromiseAdapter, promiseFromEvent } from './common/utils'; -import { PromiseAdapter, promiseFromEvent } from './common/utils';
import { ExperimentationTelemetry } from './experimentationService'; import { ExperimentationTelemetry } from './common/experimentationService';
@@ -12,13 +10,4 @@ import { AuthProviderType } from './github'; @@ -11,14 +9,6 @@ import { AuthProviderType, UriEventHandler } from './github';
import { Log } from './common/logger'; import { Log } from './common/logger';
-import { isSupportedEnvironment } from './common/env'; -import { isSupportedEnvironment } from './common/env';
-import { LoopbackAuthServer } from './authServer'; -import { LoopbackAuthServer } from './node/authServer';
-import path = require('path'); -import { crypto } from './node/crypto';
- import { fetching } from './node/fetch';
-const CLIENT_ID = '01ab8ac9400c4e429b23'; -const CLIENT_ID = '01ab8ac9400c4e429b23';
-const GITHUB_TOKEN_URL = 'https://vscode.dev/codeExchangeProxyEndpoints/github/login/oauth/access_token'; -const GITHUB_TOKEN_URL = 'https://vscode.dev/codeExchangeProxyEndpoints/github/login/oauth/access_token';
const NETWORK_ERROR = 'network error'; const NETWORK_ERROR = 'network error';
@ -20,8 +21,8 @@ index 830e698..cd6f27e 100644
-const REDIRECT_URL_STABLE = 'https://vscode.dev/redirect'; -const REDIRECT_URL_STABLE = 'https://vscode.dev/redirect';
-const REDIRECT_URL_INSIDERS = 'https://insiders.vscode.dev/redirect'; -const REDIRECT_URL_INSIDERS = 'https://insiders.vscode.dev/redirect';
- -
class UriEventHandler extends vscode.EventEmitter<vscode.Uri> implements vscode.UriHandler { export interface IGitHubServer {
@@ -42,9 +31,2 @@ export interface IGitHubServer extends vscode.Disposable { @@ -30,9 +20,2 @@ export interface IGitHubServer {
-interface IGitHubDeviceCodeResponse { -interface IGitHubDeviceCodeResponse {
- device_code: string; - device_code: string;
@ -31,30 +32,28 @@ index 830e698..cd6f27e 100644
-} -}
- -
async function getScopes(token: string, serverUri: vscode.Uri, logger: Log): Promise<string[]> { 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 @@ -63,8 +46,4 @@ export class GitHubServer implements IGitHubServer {
Authorization: `token ${token}`,
- 'User-Agent': 'Visual-Studio-Code' - private readonly _pendingNonces = new Map<string, string[]>();
+ 'User-Agent': 'VSCodium' - private readonly _codeExchangePromises = new Map<string, { promise: Promise<string>; cancel: vscode.EventEmitter<void> }>();
} private readonly _type: AuthProviderType;
@@ -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;
- private _redirectEndpoint: string | undefined; - private _redirectEndpoint: string | undefined;
-
@@ -83,2 +62,3 @@ export class GitHubServer implements IGitHubServer { constructor(
public readonly type: AuthProviderType, @@ -72,3 +51,5 @@ export class GitHubServer implements IGitHubServer {
private readonly _telemetryReporter: ExperimentationTelemetry,
+ // @ts-ignore
private readonly _uriHandler: UriEventHandler,
+ // @ts-ignore + // @ts-ignore
private readonly _supportDeviceCodeFlow: boolean, private readonly _supportDeviceCodeFlow: boolean,
@@ -102,41 +82,2 @@ export class GitHubServer implements IGitHubServer { @@ -87,41 +68,2 @@ export class GitHubServer implements IGitHubServer {
- private async getRedirectEndpoint(): Promise<string> { - private async getRedirectEndpoint(): Promise<string> {
- if (this._redirectEndpoint) { - if (this._redirectEndpoint) {
- return 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'); - 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. - // If we are running in insiders vscode.dev, then ensure we use the redirect route on that.
- this._redirectEndpoint = REDIRECT_URL_STABLE; - this._redirectEndpoint = REDIRECT_URL_STABLE;
@ -64,7 +63,7 @@ index 830e698..cd6f27e 100644
- return this._redirectEndpoint; - return this._redirectEndpoint;
- } else { - } else {
- // GHES - // GHES
- const result = await fetch(this.getServerUri('/meta').toString(true)); - const result = await fetching(this.getServerUri('/meta').toString(true));
- if (result.ok) { - if (result.ok) {
- try { - try {
- const json: { installed_version: string } = await result.json(); - const json: { installed_version: string } = await result.json();
@ -89,8 +88,8 @@ index 830e698..cd6f27e 100644
- return this._redirectEndpoint; - return this._redirectEndpoint;
- } - }
- -
dispose() { // TODO@joaomoreno TODO@TylerLeonhardt
@@ -156,58 +97,8 @@ export class GitHubServer implements IGitHubServer { @@ -137,58 +79,8 @@ export class GitHubServer implements IGitHubServer {
let userCancelled: boolean | undefined; let userCancelled: boolean | undefined;
- const yes = vscode.l10n.t('Yes'); - const yes = vscode.l10n.t('Yes');
- const no = vscode.l10n.t('No'); - const no = vscode.l10n.t('No');
@ -108,7 +107,7 @@ 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 callbackUri = await vscode.env.asExternalUri(vscode.Uri.parse(`${vscode.env.uriScheme}://vscode.github-authentication/did-authenticate?nonce=${encodeURIComponent(nonce)}`));
- const supported = isSupportedEnvironment(callbackUri); - const supported = isSupportedEnvironment(callbackUri);
@ -154,7 +153,7 @@ index 830e698..cd6f27e 100644
+ this._logger.error(e); + this._logger.error(e);
+ userCancelled = e.message ?? e === 'User Cancelled'; + userCancelled = e.message ?? e === 'User Cancelled';
} }
@@ -217,136 +108,2 @@ export class GitHubServer implements IGitHubServer { @@ -198,136 +90,2 @@ export class GitHubServer implements IGitHubServer {
- private async doLoginWithoutLocalServer(scopes: string, nonce: string, callbackUri: vscode.Uri): Promise<string> { - private async doLoginWithoutLocalServer(scopes: string, nonce: string, callbackUri: vscode.Uri): Promise<string> {
- this._logger.info(`Trying without local server... (${scopes})`); - this._logger.info(`Trying without local server... (${scopes})`);
@ -187,7 +186,7 @@ index 830e698..cd6f27e 100644
- // before completing it. - // before completing it.
- let codeExchangePromise = this._codeExchangePromises.get(scopes); - let codeExchangePromise = this._codeExchangePromises.get(scopes);
- if (!codeExchangePromise) { - if (!codeExchangePromise) {
- codeExchangePromise = promiseFromEvent(GitHubServer._uriHandler!.event, this.handleUri(scopes)); - codeExchangePromise = promiseFromEvent(this._uriHandler!.event, this.handleUri(scopes));
- this._codeExchangePromises.set(scopes, codeExchangePromise); - this._codeExchangePromises.set(scopes, codeExchangePromise);
- } - }
- -
@ -258,7 +257,7 @@ index 830e698..cd6f27e 100644
- path: '/login/device/code', - path: '/login/device/code',
- query: `client_id=${CLIENT_ID}&scope=${scopes}` - query: `client_id=${CLIENT_ID}&scope=${scopes}`
- }); - });
- const result = await fetch(uri.toString(true), { - const result = await fetching(uri.toString(true), {
- method: 'POST', - method: 'POST',
- headers: { - headers: {
- Accept: 'application/json' - Accept: 'application/json'
@ -291,7 +290,7 @@ index 830e698..cd6f27e 100644
- } - }
- -
private async doLoginWithPat(scopes: string): Promise<string> { private async doLoginWithPat(scopes: string): Promise<string> {
@@ -374,124 +131,2 @@ export class GitHubServer implements IGitHubServer { @@ -355,124 +113,2 @@ export class GitHubServer implements IGitHubServer {
- private async waitForDeviceCodeAccessToken( - private async waitForDeviceCodeAccessToken(
- json: IGitHubDeviceCodeResponse, - json: IGitHubDeviceCodeResponse,
@ -322,7 +321,7 @@ index 830e698..cd6f27e 100644
- } - }
- let accessTokenResult; - let accessTokenResult;
- try { - try {
- accessTokenResult = await fetch(refreshTokenUri.toString(true), { - accessTokenResult = await fetching(refreshTokenUri.toString(true), {
- method: 'POST', - method: 'POST',
- headers: { - headers: {
- Accept: 'application/json' - Accept: 'application/json'
@ -388,11 +387,11 @@ index 830e698..cd6f27e 100644
- const endpointUrl = proxyEndpoints?.github ? `${proxyEndpoints.github}login/oauth/access_token` : GITHUB_TOKEN_URL; - const endpointUrl = proxyEndpoints?.github ? `${proxyEndpoints.github}login/oauth/access_token` : GITHUB_TOKEN_URL;
- -
- const body = new URLSearchParams([['code', code]]); - 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('github_enterprise', this.baseUri.toString(true));
- body.append('redirect_uri', await this.getRedirectEndpoint()); - body.append('redirect_uri', await this.getRedirectEndpoint());
- } - }
- const result = await fetch(endpointUrl, { - const result = await fetching(endpointUrl, {
- method: 'POST', - method: 'POST',
- headers: { - headers: {
- Accept: 'application/json', - Accept: 'application/json',
@ -417,19 +416,19 @@ index 830e698..cd6f27e 100644
- -
private getServerUri(path: string = '') { private getServerUri(path: string = '') {
diff --git a/src/vs/workbench/browser/parts/activitybar/activitybarActions.ts b/src/vs/workbench/browser/parts/activitybar/activitybarActions.ts 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 2fff6cf..46967ce 100644
--- a/src/vs/workbench/browser/parts/activitybar/activitybarActions.ts --- a/src/vs/workbench/browser/parts/activitybar/activitybarActions.ts
+++ b/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 (providers.length && !menus.length) {
+ if (!menus.length) { + if (!menus.length) {
const noAccountsAvailableAction = disposables.add(new Action('noAccountsAvailable', localize('noAccounts', "You are not signed in to any accounts"), undefined, false)); 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 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 1d9ac76..57b915c 100644
--- a/src/vs/workbench/services/authentication/browser/authenticationService.ts --- a/src/vs/workbench/services/authentication/browser/authenticationService.ts
+++ b/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 @@ -267,12 +267,2 @@ export class AuthenticationService extends Disposable implements IAuthentication
} }
- -
- if (!this._authenticationProviders.size) { - if (!this._authenticationProviders.size) {

9
patches/win7.patch Normal file
View 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}

View file

@ -130,8 +130,7 @@
"telemetry" "telemetry"
], ],
"ms-vscode.remote-server": [ "ms-vscode.remote-server": [
"resolvers", "resolvers"
"tunnels"
], ],
"ms-vscode.remote-explorer": [ "ms-vscode.remote-explorer": [
"contribViewsRemote", "contribViewsRemote",
@ -222,6 +221,12 @@
], ],
"ms-vscode.cpptools": [ "ms-vscode.cpptools": [
"terminalDataWriteEvent" "terminalDataWriteEvent"
],
"jeanp413.open-remote-ssh": [
"resolvers",
"tunnels",
"terminalDataWriteEvent",
"contribViewsRemote"
] ]
}, },
"extensionKind": { "extensionKind": {

View file

@ -23,7 +23,7 @@ if [[ $( gh release view --repo "${ASSETS_REPOSITORY}" "${RELEASE_VERSION}" 2>&1
CREATE_OPTIONS="--generate-notes" CREATE_OPTIONS="--generate-notes"
fi 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 fi
cd assets cd assets

View file

@ -14,12 +14,12 @@ REPLACEMENT="s|//[^/]+\.data\.microsoft\.com|//0\.0\.0\.0|g"
if is_gnu_sed; then if is_gnu_sed; then
replace_with_debug () { replace_with_debug () {
echo "found: ${2} (`date`)" echo "found: ${2}"
sed -i -E "${1}" "${2}" sed -i -E "${1}" "${2}"
} }
else else
replace_with_debug () { replace_with_debug () {
echo "found: ${2} (`date`)" echo "found: ${2}"
sed -i '' -E "${1}" "${2}" sed -i '' -E "${1}" "${2}"
} }
fi fi