mirror of
https://github.com/microsoft/vscode.git
synced 2025-12-10 00:27:05 -06:00
parent
586a7bf2ce
commit
9905225b1a
File diff suppressed because one or more lines are too long
@ -34,14 +34,13 @@ function getPlatform(product: string, os: string, arch: string, type: string): s
|
||||
case 'win32':
|
||||
switch (product) {
|
||||
case 'client': {
|
||||
const asset = arch === 'ia32' ? 'win32' : `win32-${arch}`;
|
||||
switch (type) {
|
||||
case 'archive':
|
||||
return `${asset}-archive`;
|
||||
return `win32-${arch}-archive`;
|
||||
case 'setup':
|
||||
return asset;
|
||||
return `win32-${arch}`;
|
||||
case 'user-setup':
|
||||
return `${asset}-user`;
|
||||
return `win32-${arch}-user`;
|
||||
default:
|
||||
throw new Error(`Unrecognized: ${product} ${os} ${arch} ${type}`);
|
||||
}
|
||||
@ -50,12 +49,12 @@ function getPlatform(product: string, os: string, arch: string, type: string): s
|
||||
if (arch === 'arm64') {
|
||||
throw new Error(`Unrecognized: ${product} ${os} ${arch} ${type}`);
|
||||
}
|
||||
return arch === 'ia32' ? 'server-win32' : `server-win32-${arch}`;
|
||||
return `server-win32-${arch}`;
|
||||
case 'web':
|
||||
if (arch === 'arm64') {
|
||||
throw new Error(`Unrecognized: ${product} ${os} ${arch} ${type}`);
|
||||
}
|
||||
return arch === 'ia32' ? 'server-win32-web' : `server-win32-${arch}-web`;
|
||||
return `server-win32-${arch}-web`;
|
||||
case 'cli':
|
||||
return `cli-win32-${arch}`;
|
||||
default:
|
||||
|
||||
@ -32,10 +32,6 @@ parameters:
|
||||
displayName: "🎯 Windows x64"
|
||||
type: boolean
|
||||
default: true
|
||||
- name: VSCODE_BUILD_WIN32_32BIT
|
||||
displayName: "🎯 Windows ia32"
|
||||
type: boolean
|
||||
default: true
|
||||
- name: VSCODE_BUILD_WIN32_ARM64
|
||||
displayName: "🎯 Windows arm64"
|
||||
type: boolean
|
||||
@ -107,7 +103,7 @@ variables:
|
||||
- name: VSCODE_QUALITY
|
||||
value: ${{ parameters.VSCODE_QUALITY }}
|
||||
- name: VSCODE_BUILD_STAGE_WINDOWS
|
||||
value: ${{ or(eq(parameters.VSCODE_BUILD_WIN32, true), eq(parameters.VSCODE_BUILD_WIN32_32BIT, true), eq(parameters.VSCODE_BUILD_WIN32_ARM64, true)) }}
|
||||
value: ${{ or(eq(parameters.VSCODE_BUILD_WIN32, true), eq(parameters.VSCODE_BUILD_WIN32_ARM64, true)) }}
|
||||
- name: VSCODE_BUILD_STAGE_LINUX
|
||||
value: ${{ or(eq(parameters.VSCODE_BUILD_LINUX, true), eq(parameters.VSCODE_BUILD_LINUX_ARMHF, true), eq(parameters.VSCODE_BUILD_LINUX_ARM64, true)) }}
|
||||
- name: VSCODE_BUILD_STAGE_ALPINE
|
||||
@ -252,15 +248,6 @@ stages:
|
||||
VSCODE_QUALITY: ${{ variables.VSCODE_QUALITY }}
|
||||
VSCODE_BUILD_WIN32_ARM64: ${{ parameters.VSCODE_BUILD_WIN32_ARM64 }}
|
||||
|
||||
- ${{ if and(eq(variables['VSCODE_CIBUILD'], false), eq(parameters.VSCODE_BUILD_WIN32_32BIT, true)) }}:
|
||||
- job: CLIWindowsX86
|
||||
pool: 1es-windows-2019-x64
|
||||
steps:
|
||||
- template: ./win32/cli-build-win32.yml
|
||||
parameters:
|
||||
VSCODE_QUALITY: ${{ variables.VSCODE_QUALITY }}
|
||||
VSCODE_BUILD_WIN32_32BIT: ${{ parameters.VSCODE_BUILD_WIN32_32BIT }}
|
||||
|
||||
- ${{ if and(eq(parameters.VSCODE_COMPILE_ONLY, false), eq(variables['VSCODE_BUILD_STAGE_WINDOWS'], true)) }}:
|
||||
- stage: Windows
|
||||
dependsOn:
|
||||
@ -334,22 +321,6 @@ stages:
|
||||
parameters:
|
||||
VSCODE_BUILD_WIN32: ${{ parameters.VSCODE_BUILD_WIN32 }}
|
||||
VSCODE_BUILD_WIN32_ARM64: ${{ parameters.VSCODE_BUILD_WIN32_ARM64 }}
|
||||
VSCODE_BUILD_WIN32_32BIT: ${{ parameters.VSCODE_BUILD_WIN32_32BIT }}
|
||||
|
||||
- ${{ if and(eq(variables['VSCODE_CIBUILD'], false), eq(parameters.VSCODE_BUILD_WIN32_32BIT, true)) }}:
|
||||
- job: Windows32
|
||||
timeoutInMinutes: 120
|
||||
variables:
|
||||
VSCODE_ARCH: ia32
|
||||
steps:
|
||||
- template: win32/product-build-win32.yml
|
||||
parameters:
|
||||
VSCODE_QUALITY: ${{ variables.VSCODE_QUALITY }}
|
||||
VSCODE_ARCH: ia32
|
||||
VSCODE_CIBUILD: ${{ variables.VSCODE_CIBUILD }}
|
||||
VSCODE_RUN_UNIT_TESTS: true
|
||||
VSCODE_RUN_INTEGRATION_TESTS: true
|
||||
VSCODE_RUN_SMOKE_TESTS: true
|
||||
|
||||
- ${{ if and(eq(variables['VSCODE_CIBUILD'], false), eq(parameters.VSCODE_BUILD_WIN32_ARM64, true)) }}:
|
||||
- job: WindowsARM64
|
||||
|
||||
@ -2,9 +2,6 @@ parameters:
|
||||
- name: VSCODE_BUILD_WIN32
|
||||
type: boolean
|
||||
default: false
|
||||
- name: VSCODE_BUILD_WIN32_32BIT
|
||||
type: boolean
|
||||
default: false
|
||||
- name: VSCODE_BUILD_WIN32_ARM64
|
||||
type: boolean
|
||||
default: false
|
||||
@ -44,8 +41,6 @@ steps:
|
||||
- x86_64-pc-windows-msvc
|
||||
- ${{ if eq(parameters.VSCODE_BUILD_WIN32_ARM64, true) }}:
|
||||
- aarch64-pc-windows-msvc
|
||||
- ${{ if eq(parameters.VSCODE_BUILD_WIN32_32BIT, true) }}:
|
||||
- i686-pc-windows-msvc
|
||||
|
||||
- ${{ if eq(parameters.VSCODE_BUILD_WIN32, true) }}:
|
||||
- template: ../cli/cli-compile-and-publish.yml
|
||||
@ -70,15 +65,3 @@ steps:
|
||||
OPENSSL_LIB_DIR: $(Build.ArtifactStagingDirectory)/openssl/arm64-windows-static/lib
|
||||
OPENSSL_INCLUDE_DIR: $(Build.ArtifactStagingDirectory)/openssl/arm64-windows-static/include
|
||||
RUSTFLAGS: "-C target-feature=+crt-static"
|
||||
|
||||
- ${{ if eq(parameters.VSCODE_BUILD_WIN32_32BIT, true) }}:
|
||||
- template: ../cli/cli-compile-and-publish.yml
|
||||
parameters:
|
||||
VSCODE_QUALITY: ${{ parameters.VSCODE_QUALITY }}
|
||||
VSCODE_CLI_TARGET: i686-pc-windows-msvc
|
||||
VSCODE_CLI_ARTIFACT: unsigned_vscode_cli_win32_ia32_cli
|
||||
VSCODE_CHECK_ONLY: ${{ parameters.VSCODE_CHECK_ONLY }}
|
||||
VSCODE_CLI_ENV:
|
||||
OPENSSL_LIB_DIR: $(Build.ArtifactStagingDirectory)/openssl/x86-windows-static/lib
|
||||
OPENSSL_INCLUDE_DIR: $(Build.ArtifactStagingDirectory)/openssl/x86-windows-static/include
|
||||
RUSTFLAGS: "-C target-feature=+crt-static"
|
||||
|
||||
@ -3,8 +3,6 @@ parameters:
|
||||
type: boolean
|
||||
- name: VSCODE_BUILD_WIN32_ARM64
|
||||
type: boolean
|
||||
- name: VSCODE_BUILD_WIN32_32BIT
|
||||
type: boolean
|
||||
|
||||
steps:
|
||||
- task: NodeTool@0
|
||||
@ -52,5 +50,3 @@ steps:
|
||||
- unsigned_vscode_cli_win32_x64_cli
|
||||
- ${{ if eq(parameters.VSCODE_BUILD_WIN32_ARM64, true) }}:
|
||||
- unsigned_vscode_cli_win32_arm64_cli
|
||||
- ${{ if eq(parameters.VSCODE_BUILD_WIN32_32BIT, true) }}:
|
||||
- unsigned_vscode_cli_win32_ia32_cli
|
||||
|
||||
@ -35,17 +35,14 @@ steps:
|
||||
- powershell: .\scripts\test.bat --build --tfs "Unit Tests"
|
||||
displayName: Run unit tests (Electron)
|
||||
timeoutInMinutes: 15
|
||||
continueOnError: ${{ eq(parameters.VSCODE_ARCH, 'ia32') }}
|
||||
|
||||
- powershell: yarn test-node --build
|
||||
displayName: Run unit tests (node.js)
|
||||
timeoutInMinutes: 15
|
||||
continueOnError: ${{ eq(parameters.VSCODE_ARCH, 'ia32') }}
|
||||
|
||||
- powershell: yarn test-browser-no-install --sequential --build --browser chromium --tfs "Browser Unit Tests"
|
||||
displayName: Run unit tests (Browser, Chromium)
|
||||
timeoutInMinutes: 20
|
||||
continueOnError: ${{ eq(parameters.VSCODE_ARCH, 'ia32') }}
|
||||
|
||||
- ${{ if eq(parameters.VSCODE_RUN_INTEGRATION_TESTS, true) }}:
|
||||
- powershell: |
|
||||
@ -100,7 +97,6 @@ steps:
|
||||
exec { .\scripts\test-integration.bat --build --tfs "Integration Tests" }
|
||||
displayName: Run integration tests (Electron)
|
||||
timeoutInMinutes: 20
|
||||
continueOnError: ${{ eq(parameters.VSCODE_ARCH, 'ia32') }}
|
||||
|
||||
- powershell: |
|
||||
. build/azure-pipelines/win32/exec.ps1
|
||||
@ -109,7 +105,6 @@ steps:
|
||||
exec { .\scripts\test-web-integration.bat --browser firefox }
|
||||
displayName: Run integration tests (Browser, Firefox)
|
||||
timeoutInMinutes: 20
|
||||
continueOnError: ${{ eq(parameters.VSCODE_ARCH, 'ia32') }}
|
||||
|
||||
- powershell: |
|
||||
. build/azure-pipelines/win32/exec.ps1
|
||||
@ -122,7 +117,6 @@ steps:
|
||||
exec { .\scripts\test-remote-integration.bat }
|
||||
displayName: Run integration tests (Remote)
|
||||
timeoutInMinutes: 20
|
||||
continueOnError: ${{ eq(parameters.VSCODE_ARCH, 'ia32') }}
|
||||
|
||||
- ${{ if eq(parameters.VSCODE_RUN_SMOKE_TESTS, true) }}:
|
||||
- powershell: .\build\azure-pipelines\win32\listprocesses.bat
|
||||
@ -145,14 +139,12 @@ steps:
|
||||
- powershell: yarn smoketest-no-compile --tracing --build "$(agent.builddirectory)\VSCode-win32-$(VSCODE_ARCH)"
|
||||
displayName: Run smoke tests (Electron)
|
||||
timeoutInMinutes: 20
|
||||
continueOnError: ${{ eq(parameters.VSCODE_ARCH, 'ia32') }}
|
||||
|
||||
- powershell: yarn smoketest-no-compile --web --tracing --headless
|
||||
env:
|
||||
VSCODE_REMOTE_SERVER_PATH: $(agent.builddirectory)\vscode-server-win32-$(VSCODE_ARCH)-web
|
||||
displayName: Run smoke tests (Browser, Chromium)
|
||||
timeoutInMinutes: 20
|
||||
continueOnError: ${{ eq(parameters.VSCODE_ARCH, 'ia32') }}
|
||||
|
||||
- powershell: yarn gulp compile-extension:vscode-test-resolver
|
||||
displayName: Compile test resolver extension
|
||||
@ -163,7 +155,6 @@ steps:
|
||||
VSCODE_REMOTE_SERVER_PATH: $(agent.builddirectory)\vscode-server-win32-$(VSCODE_ARCH)
|
||||
displayName: Run smoke tests (Remote)
|
||||
timeoutInMinutes: 20
|
||||
continueOnError: ${{ eq(parameters.VSCODE_ARCH, 'ia32') }}
|
||||
|
||||
- powershell: .\build\azure-pipelines\win32\listprocesses.bat
|
||||
displayName: Diagnostics after smoke test run
|
||||
|
||||
@ -11,9 +11,6 @@ fbb6e06417b1741b94d59a6de5dcf3262bfb3fc98cffbcad475296c42d1cbe94 *electron-v25.8
|
||||
8860faaaabcc15a531733dd164c858a1cc1bffefdbba7ec54f7687db796f93f3 *electron-v25.8.4-win32-arm64-pdb.zip
|
||||
e909628b4c984b3472c58b3897214e59f55ce69bee99229cdf1451a281865176 *electron-v25.8.4-win32-arm64-symbols.zip
|
||||
1355293a73da3e5d3f06a6c95c81a5124c4f26be2ec1035ccfcfeccd4c766f5d *electron-v25.8.4-win32-arm64.zip
|
||||
597cbfd2b9d542a289296d792ed9be40c3e97499207675766265a710454f76f5 *electron-v25.8.4-win32-ia32-pdb.zip
|
||||
3a0ee0d1435382cfdf727ed70e6c8edd233363dcdadde5c1c6ec170fff243a99 *electron-v25.8.4-win32-ia32-symbols.zip
|
||||
13efcbfc4a0a62339b4450c5d71d14230978e25eb410dcc7d3408b413391eead *electron-v25.8.4-win32-ia32.zip
|
||||
fef9e5ec4d146e6b310137140cee2a1172964e7584540088b1bc7fd1df15f1ff *electron-v25.8.4-win32-x64-pdb.zip
|
||||
1227ec90ae2fb30e01d4c6814af1adae983b78ea832dea0520caaa8a05ac0390 *electron-v25.8.4-win32-x64-symbols.zip
|
||||
0bbe72439cab1e72dee5fb850fdb1b17ea16fef61aa3dae93c562687737084f1 *electron-v25.8.4-win32-x64.zip
|
||||
@ -23,5 +20,4 @@ bd52d57ff97fb56ac01a3482af905d04f0d4e9c13c53858c6d9f99957eca82da *ffmpeg-v25.8.4
|
||||
9b3d09177fa1e63e2a6beecfa70aeec30aeb5c1873ff21128a68051c4e23f95d *ffmpeg-v25.8.4-linux-armv7l.zip
|
||||
edc7b1c9f1a0733f109a2c0375a4e40c5bfe0bf28b7f06dcc76e1ada0aa2f125 *ffmpeg-v25.8.4-linux-x64.zip
|
||||
84ec373f124f628ce7d8964e000e79cd1448acec05b92417207baecf9b0f039a *ffmpeg-v25.8.4-win32-arm64.zip
|
||||
ce6b46e5395f0f715ff694399580eded7e976c0dd8668304e4b087967fea711f *ffmpeg-v25.8.4-win32-ia32.zip
|
||||
7506346ff7a98377eca26464370a7c5a8c44d010d5c46a8357fa107980582fac *ffmpeg-v25.8.4-win32-x64.zip
|
||||
|
||||
@ -30,9 +30,7 @@ const platformOpensslDirName =
|
||||
process.platform === 'win32' ? (
|
||||
process.arch === 'arm64'
|
||||
? 'arm64-windows-static-md'
|
||||
: process.arch === 'ia32'
|
||||
? 'x86-windows-static-md'
|
||||
: 'x64-windows-static-md')
|
||||
: 'x64-windows-static-md')
|
||||
: process.platform === 'darwin' ? (
|
||||
process.arch === 'arm64'
|
||||
? 'arm64-osx'
|
||||
|
||||
@ -38,7 +38,6 @@ const REMOTE_FOLDER = path.join(REPO_ROOT, 'remote');
|
||||
// Targets
|
||||
|
||||
const BUILD_TARGETS = [
|
||||
{ platform: 'win32', arch: 'ia32' },
|
||||
{ platform: 'win32', arch: 'x64' },
|
||||
{ platform: 'darwin', arch: 'x64' },
|
||||
{ platform: 'darwin', arch: 'arm64' },
|
||||
@ -185,9 +184,7 @@ function nodejs(platform, arch) {
|
||||
const untar = require('gulp-untar');
|
||||
const crypto = require('crypto');
|
||||
|
||||
if (arch === 'ia32') {
|
||||
arch = 'x86';
|
||||
} else if (arch === 'armhf') {
|
||||
if (arch === 'armhf') {
|
||||
arch = 'armv7l';
|
||||
} else if (arch === 'alpine') {
|
||||
platform = 'alpine';
|
||||
|
||||
@ -18,7 +18,6 @@ const { existsSync, readdirSync } = require('fs');
|
||||
const root = path.dirname(__dirname);
|
||||
|
||||
const BUILD_TARGETS = [
|
||||
{ platform: 'win32', arch: 'ia32' },
|
||||
{ platform: 'win32', arch: 'x64' },
|
||||
{ platform: 'win32', arch: 'arm64' },
|
||||
{ platform: 'darwin', arch: null, opts: { stats: true } },
|
||||
|
||||
@ -423,12 +423,10 @@ function patchWin32DependenciesTask(destinationFolderName) {
|
||||
const buildRoot = path.dirname(root);
|
||||
|
||||
const BUILD_TARGETS = [
|
||||
{ platform: 'win32', arch: 'ia32' },
|
||||
{ platform: 'win32', arch: 'x64' },
|
||||
{ platform: 'win32', arch: 'arm64' },
|
||||
{ platform: 'darwin', arch: 'x64', opts: { stats: true } },
|
||||
{ platform: 'darwin', arch: 'arm64', opts: { stats: true } },
|
||||
{ platform: 'linux', arch: 'ia32' },
|
||||
{ platform: 'linux', arch: 'x64' },
|
||||
{ platform: 'linux', arch: 'armhf' },
|
||||
{ platform: 'linux', arch: 'arm64' },
|
||||
|
||||
@ -70,7 +70,6 @@ function buildWin32Setup(arch, target) {
|
||||
}
|
||||
|
||||
return cb => {
|
||||
const ia32AppId = target === 'system' ? product.win32AppId : product.win32UserAppId;
|
||||
const x64AppId = target === 'system' ? product.win32x64AppId : product.win32x64UserAppId;
|
||||
const arm64AppId = target === 'system' ? product.win32arm64AppId : product.win32arm64UserAppId;
|
||||
|
||||
@ -101,12 +100,11 @@ function buildWin32Setup(arch, target) {
|
||||
TunnelApplicationName: product.tunnelApplicationName,
|
||||
ApplicationName: product.applicationName,
|
||||
Arch: arch,
|
||||
AppId: { 'ia32': ia32AppId, 'x64': x64AppId, 'arm64': arm64AppId }[arch],
|
||||
IncompatibleTargetAppId: { 'ia32': product.win32AppId, 'x64': product.win32x64AppId, 'arm64': product.win32arm64AppId }[arch],
|
||||
IncompatibleArchAppId: { 'ia32': x64AppId, 'x64': ia32AppId, 'arm64': ia32AppId }[arch],
|
||||
AppId: { 'x64': x64AppId, 'arm64': arm64AppId }[arch],
|
||||
IncompatibleTargetAppId: { 'x64': product.win32x64AppId, 'arm64': product.win32arm64AppId }[arch],
|
||||
AppUserId: product.win32AppUserModelId,
|
||||
ArchitecturesAllowed: { 'ia32': '', 'x64': 'x64', 'arm64': 'arm64' }[arch],
|
||||
ArchitecturesInstallIn64BitMode: { 'ia32': '', 'x64': 'x64', 'arm64': 'arm64' }[arch],
|
||||
ArchitecturesAllowed: { 'x64': 'x64', 'arm64': 'arm64' }[arch],
|
||||
ArchitecturesInstallIn64BitMode: { 'x64': 'x64', 'arm64': 'arm64' }[arch],
|
||||
SourceDir: sourcePath,
|
||||
RepoDir: repoPath,
|
||||
OutputDir: outputPath,
|
||||
@ -116,7 +114,7 @@ function buildWin32Setup(arch, target) {
|
||||
};
|
||||
|
||||
if (quality === 'insider') {
|
||||
definitions['AppxPackage'] = `code_insiders_explorer_${arch === 'ia32' ? 'x86' : arch}.appx`;
|
||||
definitions['AppxPackage'] = `code_insiders_explorer_${arch}.appx`;
|
||||
definitions['AppxPackageFullname'] = `Microsoft.${product.win32RegValueName}_1.0.0.0_neutral__8wekyb3d8bbwe`;
|
||||
}
|
||||
|
||||
@ -133,10 +131,8 @@ function defineWin32SetupTasks(arch, target) {
|
||||
gulp.task(task.define(`vscode-win32-${arch}-${target}-setup`, task.series(cleanTask, buildWin32Setup(arch, target))));
|
||||
}
|
||||
|
||||
defineWin32SetupTasks('ia32', 'system');
|
||||
defineWin32SetupTasks('x64', 'system');
|
||||
defineWin32SetupTasks('arm64', 'system');
|
||||
defineWin32SetupTasks('ia32', 'user');
|
||||
defineWin32SetupTasks('x64', 'user');
|
||||
defineWin32SetupTasks('arm64', 'user');
|
||||
|
||||
@ -160,6 +156,5 @@ function updateIcon(executablePath) {
|
||||
};
|
||||
}
|
||||
|
||||
gulp.task(task.define('vscode-win32-ia32-inno-updater', task.series(copyInnoUpdater('ia32'), updateIcon(path.join(buildPath('ia32'), 'tools', 'inno_updater.exe')))));
|
||||
gulp.task(task.define('vscode-win32-x64-inno-updater', task.series(copyInnoUpdater('x64'), updateIcon(path.join(buildPath('x64'), 'tools', 'inno_updater.exe')))));
|
||||
gulp.task(task.define('vscode-win32-arm64-inno-updater', task.series(copyInnoUpdater('arm64'), updateIcon(path.join(buildPath('arm64'), 'tools', 'inno_updater.exe')))));
|
||||
|
||||
@ -1327,7 +1327,7 @@ begin
|
||||
#endif
|
||||
|
||||
#if "user" == InstallTarget
|
||||
#if "ia32" == Arch || "arm64" == Arch
|
||||
#if "arm64" == Arch
|
||||
#define IncompatibleArchRootKey "HKLM32"
|
||||
#else
|
||||
#define IncompatibleArchRootKey "HKLM64"
|
||||
@ -1344,24 +1344,6 @@ begin
|
||||
end;
|
||||
#endif
|
||||
|
||||
if Result and IsWin64 then begin
|
||||
RegKey := 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\' + copy('{#IncompatibleArchAppId}', 2, 38) + '_is1';
|
||||
|
||||
if '{#Arch}' = 'ia32' then begin
|
||||
Result := not RegKeyExists({#Uninstall64RootKey}, RegKey);
|
||||
ThisArch := '32';
|
||||
AltArch := '64';
|
||||
end else begin
|
||||
Result := not RegKeyExists({#Uninstall32RootKey}, RegKey);
|
||||
ThisArch := '64';
|
||||
AltArch := '32';
|
||||
end;
|
||||
|
||||
if not Result and not WizardSilent() then begin
|
||||
MsgBox('Please uninstall the ' + AltArch + '-bit version of {#NameShort} before installing this ' + ThisArch + '-bit version. Uninstalling will not delete settings.', mbInformation, MB_OK);
|
||||
end;
|
||||
end;
|
||||
|
||||
end;
|
||||
|
||||
function WizardNotSilent(): Boolean;
|
||||
|
||||
@ -38,13 +38,10 @@ async function downloadExplorerAppx(outDir, quality = 'stable', targetArch = 'x6
|
||||
}
|
||||
exports.downloadExplorerAppx = downloadExplorerAppx;
|
||||
async function main(outputDir) {
|
||||
let arch = process.env['VSCODE_ARCH'];
|
||||
const arch = process.env['VSCODE_ARCH'];
|
||||
if (!outputDir) {
|
||||
throw new Error('Required build env not set');
|
||||
}
|
||||
if (arch === 'ia32') {
|
||||
arch = 'x86';
|
||||
}
|
||||
const product = JSON.parse(fs.readFileSync(path.join(root, 'product.json'), 'utf8'));
|
||||
await downloadExplorerAppx(outputDir, product.quality, arch);
|
||||
}
|
||||
@ -54,4 +51,4 @@ if (require.main === module) {
|
||||
process.exit(1);
|
||||
});
|
||||
}
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwbG9yZXItYXBweC1mZXRjaGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiZXhwbG9yZXItYXBweC1mZXRjaGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Z0dBR2dHO0FBRWhHLFlBQVksQ0FBQzs7O0FBRWIseUJBQXlCO0FBQ3pCLCtCQUErQjtBQUMvQix1Q0FBdUM7QUFDdkMsNkJBQTZCO0FBQzdCLHVDQUFpRDtBQUVqRCxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztBQUVuRCxNQUFNLENBQUMsR0FBRyxLQUFLLENBQUMsdUJBQXVCLENBQUMsQ0FBQztBQUVsQyxLQUFLLFVBQVUsb0JBQW9CLENBQUMsTUFBYyxFQUFFLFVBQWtCLFFBQVEsRUFBRSxhQUFxQixLQUFLO0lBQ2hILE1BQU0sY0FBYyxHQUFHLE9BQU8sS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO0lBQ3hFLE1BQU0sUUFBUSxHQUFHLEdBQUcsY0FBYyxhQUFhLFVBQVUsTUFBTSxDQUFDO0lBRWhFLElBQUksTUFBTSxFQUFFLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLGVBQWUsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUNoRSxPQUFPO0lBQ1IsQ0FBQztJQUVELElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUNsQyxNQUFNLEVBQUUsQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDakQsQ0FBQztJQUVELENBQUMsQ0FBQyxlQUFlLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDN0IsTUFBTSxRQUFRLEdBQUcsTUFBTSxJQUFBLHNCQUFnQixFQUFDO1FBQ3ZDLFNBQVMsRUFBRSxJQUFJO1FBQ2YsT0FBTyxFQUFFLE9BQU87UUFDaEIsWUFBWSxFQUFFLFFBQVE7UUFDdEIsd0JBQXdCLEVBQUUsSUFBSTtRQUM5QixhQUFhLEVBQUU7WUFDZCxNQUFNLEVBQUUseUVBQXlFO1lBQ2pGLFNBQVMsRUFBRSxPQUFPO1lBQ2xCLGNBQWMsRUFBRSxRQUFRO1NBQ3hCO0tBQ0QsQ0FBQyxDQUFDO0lBRUgsQ0FBQyxDQUFDLGtCQUFrQixRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBQ2hDLE1BQU0sT0FBTyxDQUFDLFFBQVEsRUFBRSxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQztBQUMzRCxDQUFDO0FBM0JELG9EQTJCQztBQUVELEtBQUssVUFBVSxJQUFJLENBQUMsU0FBa0I7SUFDckMsSUFBSSxJQUFJLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUV0QyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDaEIsTUFBTSxJQUFJLEtBQUssQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFRCxJQUFJLElBQUksS0FBSyxNQUFNLEVBQUUsQ0FBQztRQUNyQixJQUFJLEdBQUcsS0FBSyxDQUFDO0lBQ2QsQ0FBQztJQUVELE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxjQUFjLENBQUMsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDO0lBQ3JGLE1BQU0sb0JBQW9CLENBQUMsU0FBUyxFQUFHLE9BQWUsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQUM7QUFDdkUsQ0FBQztBQUVELElBQUksT0FBTyxDQUFDLElBQUksS0FBSyxNQUFNLEVBQUUsQ0FBQztJQUM3QixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsRUFBRTtRQUNqQyxPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ25CLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDakIsQ0FBQyxDQUFDLENBQUM7QUFDSixDQUFDIn0=
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwbG9yZXItYXBweC1mZXRjaGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiZXhwbG9yZXItYXBweC1mZXRjaGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Z0dBR2dHO0FBRWhHLFlBQVksQ0FBQzs7O0FBRWIseUJBQXlCO0FBQ3pCLCtCQUErQjtBQUMvQix1Q0FBdUM7QUFDdkMsNkJBQTZCO0FBQzdCLHVDQUFpRDtBQUVqRCxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztBQUVuRCxNQUFNLENBQUMsR0FBRyxLQUFLLENBQUMsdUJBQXVCLENBQUMsQ0FBQztBQUVsQyxLQUFLLFVBQVUsb0JBQW9CLENBQUMsTUFBYyxFQUFFLFVBQWtCLFFBQVEsRUFBRSxhQUFxQixLQUFLO0lBQ2hILE1BQU0sY0FBYyxHQUFHLE9BQU8sS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO0lBQ3hFLE1BQU0sUUFBUSxHQUFHLEdBQUcsY0FBYyxhQUFhLFVBQVUsTUFBTSxDQUFDO0lBRWhFLElBQUksTUFBTSxFQUFFLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLGVBQWUsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUNoRSxPQUFPO0lBQ1IsQ0FBQztJQUVELElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUNsQyxNQUFNLEVBQUUsQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDakQsQ0FBQztJQUVELENBQUMsQ0FBQyxlQUFlLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDN0IsTUFBTSxRQUFRLEdBQUcsTUFBTSxJQUFBLHNCQUFnQixFQUFDO1FBQ3ZDLFNBQVMsRUFBRSxJQUFJO1FBQ2YsT0FBTyxFQUFFLE9BQU87UUFDaEIsWUFBWSxFQUFFLFFBQVE7UUFDdEIsd0JBQXdCLEVBQUUsSUFBSTtRQUM5QixhQUFhLEVBQUU7WUFDZCxNQUFNLEVBQUUseUVBQXlFO1lBQ2pGLFNBQVMsRUFBRSxPQUFPO1lBQ2xCLGNBQWMsRUFBRSxRQUFRO1NBQ3hCO0tBQ0QsQ0FBQyxDQUFDO0lBRUgsQ0FBQyxDQUFDLGtCQUFrQixRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBQ2hDLE1BQU0sT0FBTyxDQUFDLFFBQVEsRUFBRSxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQztBQUMzRCxDQUFDO0FBM0JELG9EQTJCQztBQUVELEtBQUssVUFBVSxJQUFJLENBQUMsU0FBa0I7SUFDckMsTUFBTSxJQUFJLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUV4QyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDaEIsTUFBTSxJQUFJLEtBQUssQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFRCxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsY0FBYyxDQUFDLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUNyRixNQUFNLG9CQUFvQixDQUFDLFNBQVMsRUFBRyxPQUFlLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDO0FBQ3ZFLENBQUM7QUFFRCxJQUFJLE9BQU8sQ0FBQyxJQUFJLEtBQUssTUFBTSxFQUFFLENBQUM7SUFDN0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEVBQUU7UUFDakMsT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNuQixPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2pCLENBQUMsQ0FBQyxDQUFDO0FBQ0osQ0FBQyJ9
|
||||
@ -45,16 +45,12 @@ export async function downloadExplorerAppx(outDir: string, quality: string = 'st
|
||||
}
|
||||
|
||||
async function main(outputDir?: string): Promise<void> {
|
||||
let arch = process.env['VSCODE_ARCH'];
|
||||
const arch = process.env['VSCODE_ARCH'];
|
||||
|
||||
if (!outputDir) {
|
||||
throw new Error('Required build env not set');
|
||||
}
|
||||
|
||||
if (arch === 'ia32') {
|
||||
arch = 'x86';
|
||||
}
|
||||
|
||||
const product = JSON.parse(fs.readFileSync(path.join(root, 'product.json'), 'utf8'));
|
||||
await downloadExplorerAppx(outputDir, (product as any).quality, arch);
|
||||
}
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "code-oss-dev",
|
||||
"version": "1.84.0",
|
||||
"distro": "8b7aeb202ebde81e55354c06a62ca5384c77771d",
|
||||
"distro": "ace645d011b7e53ba51e8d5ff153c47e3773b3d8",
|
||||
"author": {
|
||||
"name": "Microsoft Corporation"
|
||||
},
|
||||
|
||||
@ -16,10 +16,8 @@
|
||||
"win32DirName": "Microsoft Code OSS",
|
||||
"win32NameVersion": "Microsoft Code OSS",
|
||||
"win32RegValueName": "CodeOSS",
|
||||
"win32AppId": "{{E34003BB-9E10-4501-8C11-BE3FAA83F23F}",
|
||||
"win32x64AppId": "{{D77B7E06-80BA-4137-BCF4-654B95CCEBC5}",
|
||||
"win32arm64AppId": "{{D1ACE434-89C5-48D1-88D3-E2991DF85475}",
|
||||
"win32UserAppId": "{{C6065F05-9603-4FC4-8101-B9781A25D88E}",
|
||||
"win32x64UserAppId": "{{CC6B787D-37A0-49E8-AE24-8559A032BE0C}",
|
||||
"win32arm64UserAppId": "{{3AEBF0C8-F733-4AD4-BADE-FDB816D53D7B}",
|
||||
"win32AppUserModelId": "Microsoft.CodeOSS",
|
||||
|
||||
@ -411,9 +411,6 @@ function configureCrashReporter() {
|
||||
if (uuidPattern.test(crashReporterId)) {
|
||||
if (isWindows) {
|
||||
switch (process.arch) {
|
||||
case 'ia32':
|
||||
submitURL = appCenter['win32-ia32'];
|
||||
break;
|
||||
case 'x64':
|
||||
submitURL = appCenter['win32-x64'];
|
||||
break;
|
||||
|
||||
@ -224,7 +224,6 @@ export interface IFilePathCondition extends IExtensionRecommendationCondition {
|
||||
export type IFileContentCondition = (IFileLanguageCondition | IFilePathCondition) & { readonly contentPattern: string };
|
||||
|
||||
export interface IAppCenterConfiguration {
|
||||
readonly 'win32-ia32': string;
|
||||
readonly 'win32-x64': string;
|
||||
readonly 'linux-x64': string;
|
||||
readonly 'darwin': string;
|
||||
|
||||
@ -15,7 +15,7 @@ import { URI } from 'vs/base/common/uri';
|
||||
import { IHeaders, IRequestContext, IRequestOptions } from 'vs/base/parts/request/common/request';
|
||||
import { IConfigurationService } from 'vs/platform/configuration/common/configuration';
|
||||
import { IEnvironmentService } from 'vs/platform/environment/common/environment';
|
||||
import { getFallbackTargetPlarforms, getTargetPlatform, IExtensionGalleryService, IExtensionIdentifier, IExtensionInfo, IGalleryExtension, IGalleryExtensionAsset, IGalleryExtensionAssets, IGalleryExtensionVersion, InstallOperation, IQueryOptions, IExtensionsControlManifest, isNotWebExtensionInWebTargetPlatform, isTargetPlatformCompatible, ITranslation, SortBy, SortOrder, StatisticType, toTargetPlatform, WEB_EXTENSION_TAG, IExtensionQueryOptions, IDeprecationInfo, ISearchPrefferedResults } from 'vs/platform/extensionManagement/common/extensionManagement';
|
||||
import { getTargetPlatform, IExtensionGalleryService, IExtensionIdentifier, IExtensionInfo, IGalleryExtension, IGalleryExtensionAsset, IGalleryExtensionAssets, IGalleryExtensionVersion, InstallOperation, IQueryOptions, IExtensionsControlManifest, isNotWebExtensionInWebTargetPlatform, isTargetPlatformCompatible, ITranslation, SortBy, SortOrder, StatisticType, toTargetPlatform, WEB_EXTENSION_TAG, IExtensionQueryOptions, IDeprecationInfo, ISearchPrefferedResults } from 'vs/platform/extensionManagement/common/extensionManagement';
|
||||
import { adoptToGalleryExtensionId, areSameExtensions, getGalleryExtensionId, getGalleryExtensionTelemetryData } from 'vs/platform/extensionManagement/common/extensionManagementUtil';
|
||||
import { IExtensionManifest, TargetPlatform } from 'vs/platform/extensions/common/extensions';
|
||||
import { isEngineValid } from 'vs/platform/extensions/common/extensionValidator';
|
||||
@ -471,7 +471,6 @@ function getAllTargetPlatforms(rawGalleryExtension: IRawGalleryExtension): Targe
|
||||
|
||||
export function sortExtensionVersions(versions: IRawGalleryExtensionVersion[], preferredTargetPlatform: TargetPlatform): IRawGalleryExtensionVersion[] {
|
||||
/* It is expected that versions from Marketplace are sorted by version. So we are just sorting by preferred targetPlatform */
|
||||
const fallbackTargetPlatforms = getFallbackTargetPlarforms(preferredTargetPlatform);
|
||||
for (let index = 0; index < versions.length; index++) {
|
||||
const version = versions[index];
|
||||
if (version.version === versions[index - 1]?.version) {
|
||||
@ -481,10 +480,6 @@ export function sortExtensionVersions(versions: IRawGalleryExtensionVersion[], p
|
||||
if (versionTargetPlatform === preferredTargetPlatform) {
|
||||
while (insertionIndex > 0 && versions[insertionIndex - 1].version === version.version) { insertionIndex--; }
|
||||
}
|
||||
/* put it after version with preferred targetPlatform or at the beginning */
|
||||
else if (fallbackTargetPlatforms.includes(versionTargetPlatform)) {
|
||||
while (insertionIndex > 0 && versions[insertionIndex - 1].version === version.version && getTargetPlatformForExtensionVersion(versions[insertionIndex - 1]) !== preferredTargetPlatform) { insertionIndex--; }
|
||||
}
|
||||
if (insertionIndex !== index) {
|
||||
versions.splice(index, 1);
|
||||
versions.splice(insertionIndex, 0, version);
|
||||
|
||||
@ -23,7 +23,6 @@ export const EXTENSION_INSTALL_DEP_PACK_CONTEXT = 'dependecyOrPackExtensionInsta
|
||||
export function TargetPlatformToString(targetPlatform: TargetPlatform) {
|
||||
switch (targetPlatform) {
|
||||
case TargetPlatform.WIN32_X64: return 'Windows 64 bit';
|
||||
case TargetPlatform.WIN32_IA32: return 'Windows 32 bit';
|
||||
case TargetPlatform.WIN32_ARM64: return 'Windows ARM';
|
||||
|
||||
case TargetPlatform.LINUX_X64: return 'Linux 64 bit';
|
||||
@ -47,7 +46,6 @@ export function TargetPlatformToString(targetPlatform: TargetPlatform) {
|
||||
export function toTargetPlatform(targetPlatform: string): TargetPlatform {
|
||||
switch (targetPlatform) {
|
||||
case TargetPlatform.WIN32_X64: return TargetPlatform.WIN32_X64;
|
||||
case TargetPlatform.WIN32_IA32: return TargetPlatform.WIN32_IA32;
|
||||
case TargetPlatform.WIN32_ARM64: return TargetPlatform.WIN32_ARM64;
|
||||
|
||||
case TargetPlatform.LINUX_X64: return TargetPlatform.LINUX_X64;
|
||||
@ -73,9 +71,6 @@ export function getTargetPlatform(platform: Platform | 'alpine', arch: string |
|
||||
if (arch === 'x64') {
|
||||
return TargetPlatform.WIN32_X64;
|
||||
}
|
||||
if (arch === 'ia32') {
|
||||
return TargetPlatform.WIN32_IA32;
|
||||
}
|
||||
if (arch === 'arm64') {
|
||||
return TargetPlatform.WIN32_ARM64;
|
||||
}
|
||||
@ -146,17 +141,7 @@ export function isTargetPlatformCompatible(extensionTargetPlatform: TargetPlatfo
|
||||
return true;
|
||||
}
|
||||
|
||||
// Fallback
|
||||
const fallbackTargetPlatforms = getFallbackTargetPlarforms(productTargetPlatform);
|
||||
return fallbackTargetPlatforms.includes(extensionTargetPlatform);
|
||||
}
|
||||
|
||||
export function getFallbackTargetPlarforms(targetPlatform: TargetPlatform): TargetPlatform[] {
|
||||
switch (targetPlatform) {
|
||||
case TargetPlatform.WIN32_X64: return [TargetPlatform.WIN32_IA32];
|
||||
case TargetPlatform.WIN32_ARM64: return [TargetPlatform.WIN32_IA32];
|
||||
}
|
||||
return [];
|
||||
return false;
|
||||
}
|
||||
|
||||
export interface IGalleryExtensionProperties {
|
||||
|
||||
@ -71,13 +71,6 @@ suite('Extension Gallery Service', () => {
|
||||
assert.deepStrictEqual(actual, expected);
|
||||
});
|
||||
|
||||
test('sorting single extension version with fallback target platform', async () => {
|
||||
const actual = [aExtensionVersion('1.1.2', TargetPlatform.WIN32_IA32)];
|
||||
const expected = [...actual];
|
||||
sortExtensionVersions(actual, TargetPlatform.WIN32_X64);
|
||||
assert.deepStrictEqual(actual, expected);
|
||||
});
|
||||
|
||||
test('sorting single extension version with not compatible target platform', async () => {
|
||||
const actual = [aExtensionVersion('1.1.2', TargetPlatform.DARWIN_ARM64)];
|
||||
const expected = [...actual];
|
||||
@ -85,41 +78,6 @@ suite('Extension Gallery Service', () => {
|
||||
assert.deepStrictEqual(actual, expected);
|
||||
});
|
||||
|
||||
test('sorting single extension version with multiple target platforms and preferred at first', async () => {
|
||||
const actual = [aExtensionVersion('1.1.2', TargetPlatform.WIN32_X64), aExtensionVersion('1.1.2', TargetPlatform.WIN32_IA32), aExtensionVersion('1.1.2')];
|
||||
const expected = [...actual];
|
||||
sortExtensionVersions(actual, TargetPlatform.WIN32_X64);
|
||||
assert.deepStrictEqual(actual, expected);
|
||||
});
|
||||
|
||||
test('sorting single extension version with multiple target platforms and preferred at first with no fallbacks', async () => {
|
||||
const actual = [aExtensionVersion('1.1.2', TargetPlatform.DARWIN_X64), aExtensionVersion('1.1.2'), aExtensionVersion('1.1.2', TargetPlatform.WIN32_IA32)];
|
||||
const expected = [...actual];
|
||||
sortExtensionVersions(actual, TargetPlatform.DARWIN_X64);
|
||||
assert.deepStrictEqual(actual, expected);
|
||||
});
|
||||
|
||||
test('sorting single extension version with multiple target platforms and preferred at first and fallback at last', async () => {
|
||||
const actual = [aExtensionVersion('1.1.2', TargetPlatform.WIN32_X64), aExtensionVersion('1.1.2'), aExtensionVersion('1.1.2', TargetPlatform.WIN32_IA32)];
|
||||
const expected = [actual[0], actual[2], actual[1]];
|
||||
sortExtensionVersions(actual, TargetPlatform.WIN32_X64);
|
||||
assert.deepStrictEqual(actual, expected);
|
||||
});
|
||||
|
||||
test('sorting single extension version with multiple target platforms and preferred is not first', async () => {
|
||||
const actual = [aExtensionVersion('1.1.2', TargetPlatform.WIN32_IA32), aExtensionVersion('1.1.2', TargetPlatform.WIN32_X64), aExtensionVersion('1.1.2')];
|
||||
const expected = [actual[1], actual[0], actual[2]];
|
||||
sortExtensionVersions(actual, TargetPlatform.WIN32_X64);
|
||||
assert.deepStrictEqual(actual, expected);
|
||||
});
|
||||
|
||||
test('sorting single extension version with multiple target platforms and preferred is at the end', async () => {
|
||||
const actual = [aExtensionVersion('1.1.2', TargetPlatform.WIN32_IA32), aExtensionVersion('1.1.2'), aExtensionVersion('1.1.2', TargetPlatform.WIN32_X64)];
|
||||
const expected = [actual[2], actual[0], actual[1]];
|
||||
sortExtensionVersions(actual, TargetPlatform.WIN32_X64);
|
||||
assert.deepStrictEqual(actual, expected);
|
||||
});
|
||||
|
||||
test('sorting multiple extension versions without target platforms', async () => {
|
||||
const actual = [aExtensionVersion('1.2.4'), aExtensionVersion('1.1.3'), aExtensionVersion('1.1.2'), aExtensionVersion('1.1.1')];
|
||||
const expected = [...actual];
|
||||
@ -142,8 +100,8 @@ suite('Extension Gallery Service', () => {
|
||||
});
|
||||
|
||||
test('sorting multiple extension versions with target platforms - 3', async () => {
|
||||
const actual = [aExtensionVersion('1.2.4'), aExtensionVersion('1.1.2'), aExtensionVersion('1.1.1'), aExtensionVersion('1.0.0', TargetPlatform.DARWIN_ARM64), aExtensionVersion('1.0.0', TargetPlatform.WIN32_IA32), aExtensionVersion('1.0.0', TargetPlatform.WIN32_ARM64)];
|
||||
const expected = [actual[0], actual[1], actual[2], actual[5], actual[4], actual[3]];
|
||||
const actual = [aExtensionVersion('1.2.4'), aExtensionVersion('1.1.2'), aExtensionVersion('1.1.1'), aExtensionVersion('1.0.0', TargetPlatform.DARWIN_ARM64), aExtensionVersion('1.0.0', TargetPlatform.WIN32_ARM64)];
|
||||
const expected = [actual[0], actual[1], actual[2], actual[4], actual[3]];
|
||||
sortExtensionVersions(actual, TargetPlatform.WIN32_ARM64);
|
||||
assert.deepStrictEqual(actual, expected);
|
||||
});
|
||||
|
||||
@ -32,13 +32,13 @@ suite('Extension Identifier Pattern', () => {
|
||||
test('extension key', () => {
|
||||
assert.strictEqual(new ExtensionKey({ id: 'pub.extension-name' }, '1.0.1').toString(), 'pub.extension-name-1.0.1');
|
||||
assert.strictEqual(new ExtensionKey({ id: 'pub.extension-name' }, '1.0.1', TargetPlatform.UNDEFINED).toString(), 'pub.extension-name-1.0.1');
|
||||
assert.strictEqual(new ExtensionKey({ id: 'pub.extension-name' }, '1.0.1', TargetPlatform.WIN32_IA32).toString(), `pub.extension-name-1.0.1-${TargetPlatform.WIN32_IA32}`);
|
||||
assert.strictEqual(new ExtensionKey({ id: 'pub.extension-name' }, '1.0.1', TargetPlatform.WIN32_X64).toString(), `pub.extension-name-1.0.1-${TargetPlatform.WIN32_X64}`);
|
||||
});
|
||||
|
||||
test('extension key parsing', () => {
|
||||
assert.strictEqual(ExtensionKey.parse('pub.extension-name'), null);
|
||||
assert.strictEqual(ExtensionKey.parse('pub.extension-name@1.2.3'), null);
|
||||
assert.strictEqual(ExtensionKey.parse('pub.extension-name-1.0.1')?.toString(), 'pub.extension-name-1.0.1');
|
||||
assert.strictEqual(ExtensionKey.parse('pub.extension-name-1.0.1-win32-ia32')?.toString(), 'pub.extension-name-1.0.1-win32-ia32');
|
||||
assert.strictEqual(ExtensionKey.parse('pub.extension-name-1.0.1-win32-x64')?.toString(), 'pub.extension-name-1.0.1-win32-x64');
|
||||
});
|
||||
});
|
||||
|
||||
@ -290,7 +290,6 @@ export const enum ExtensionType {
|
||||
|
||||
export const enum TargetPlatform {
|
||||
WIN32_X64 = 'win32-x64',
|
||||
WIN32_IA32 = 'win32-ia32',
|
||||
WIN32_ARM64 = 'win32-arm64',
|
||||
|
||||
LINUX_X64 = 'linux-x64',
|
||||
|
||||
@ -99,11 +99,7 @@ export class Win32UpdateService extends AbstractUpdateService implements IRelaun
|
||||
}
|
||||
|
||||
protected buildUpdateFeedUrl(quality: string): string | undefined {
|
||||
let platform = 'win32';
|
||||
|
||||
if (process.arch !== 'ia32') {
|
||||
platform += `-${process.arch}`;
|
||||
}
|
||||
let platform = `win32-${process.arch}`;
|
||||
|
||||
if (getUpdateType() === UpdateType.Archive) {
|
||||
platform += '-archive';
|
||||
|
||||
@ -64,7 +64,7 @@ suite('Extension Test', () => {
|
||||
});
|
||||
|
||||
test('extension is outdated when local and gallery are on same version but on different target platforms', () => {
|
||||
const extension = instantiationService.createInstance(Extension, () => ExtensionState.Installed, () => undefined, undefined, aLocalExtension('somext', {}, { targetPlatform: TargetPlatform.WIN32_IA32 }), aGalleryExtension('somext', {}, { targetPlatform: TargetPlatform.WIN32_X64 }));
|
||||
const extension = instantiationService.createInstance(Extension, () => ExtensionState.Installed, () => undefined, undefined, aLocalExtension('somext', {}, { targetPlatform: TargetPlatform.WIN32_ARM64 }), aGalleryExtension('somext', {}, { targetPlatform: TargetPlatform.WIN32_X64 }));
|
||||
assert.strictEqual(extension.outdated, true);
|
||||
});
|
||||
|
||||
|
||||
@ -723,25 +723,6 @@ export class NativeWindow extends Disposable {
|
||||
}
|
||||
}
|
||||
|
||||
// Windows 32-bit warning
|
||||
if (isWindows && this.environmentService.os.arch === 'ia32') {
|
||||
const message = localize('windows32eolmessage', "You are running {0} 32-bit, which will soon stop receiving updates on Windows. Consider upgrading to the 64-bit build.", this.productService.nameLong);
|
||||
|
||||
this.notificationService.prompt(
|
||||
Severity.Warning,
|
||||
message,
|
||||
[{
|
||||
label: localize('learnMore', "Learn More"),
|
||||
run: () => this.openerService.open(URI.parse('https://aka.ms/vscode-faq-old-windows'))
|
||||
}],
|
||||
{
|
||||
neverShowAgain: { id: 'windows32eol', isSecondary: true, scope: NeverShowAgainScope.APPLICATION },
|
||||
priority: NotificationPriority.URGENT,
|
||||
sticky: true
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
// macOS 10.13 and 10.14 warning
|
||||
if (isMacintosh) {
|
||||
const majorVersion = this.environmentService.os.release.split('.')[0];
|
||||
|
||||
@ -81,7 +81,7 @@ export class SearchService implements IRawSearchService {
|
||||
|
||||
private getPlatformFileLimits(): { readonly maxFileSize: number } {
|
||||
return {
|
||||
maxFileSize: process.arch === 'ia32' ? 300 * ByteSize.MB : 16 * ByteSize.GB
|
||||
maxFileSize: 16 * ByteSize.GB
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user