From 3b5afe84e87983bee6e9bd373fdefdbd624ebcc5 Mon Sep 17 00:00:00 2001 From: Alex Dima Date: Thu, 20 Jan 2022 09:31:00 +0100 Subject: [PATCH] Fixes #140997: Move server entry points to `src/` --- build/gulpfile.reh.js | 4 ++-- resources/server/bin-dev/code-server.sh | 2 +- resources/server/bin-dev/helpers/browser.sh | 2 +- resources/server/bin-dev/remote-cli/code.sh | 2 +- resources/server/bin/code-server.sh | 2 +- resources/server/bin/helpers/browser.sh | 2 +- resources/server/bin/remote-cli/code.sh | 2 +- resources/server/bin/server-old.sh | 2 +- src/{vs/server/cli.js => server-cli.js} | 6 +++--- src/{vs/server/main.js => server-main.js} | 14 +++++++------- src/vs/base/parts/ipc/common/ipc.net.ts | 2 +- src/vs/server/remoteExtensionHostAgent.ts | 4 ++-- src/vs/server/remoteExtensionHostAgentServer.ts | 8 ++++---- src/vs/workbench/api/node/extHostTunnelService.ts | 2 +- .../test/node/api/extHostTunnelService.test.ts | 2 +- 15 files changed, 28 insertions(+), 28 deletions(-) rename src/{vs/server/cli.js => server-cli.js} (79%) rename src/{vs/server/main.js => server-main.js} (94%) diff --git a/build/gulpfile.reh.js b/build/gulpfile.reh.js index 8629fef8edc..a58753e7d80 100644 --- a/build/gulpfile.reh.js +++ b/build/gulpfile.reh.js @@ -63,8 +63,8 @@ const serverResources = [ 'out-build/vs/base/common/performance.js', // main entry points - 'out-build/vs/server/cli.js', - 'out-build/vs/server/main.js', + 'out-build/server-cli.js', + 'out-build/server-main.js', // Watcher 'out-build/vs/platform/files/**/*.exe', diff --git a/resources/server/bin-dev/code-server.sh b/resources/server/bin-dev/code-server.sh index 99a47c4fb22..88c67ed4801 100755 --- a/resources/server/bin-dev/code-server.sh +++ b/resources/server/bin-dev/code-server.sh @@ -22,7 +22,7 @@ function code() { NODE_ENV=development \ VSCODE_DEV=1 \ - $NODE "$ROOT/out/vs/server/main.js" "$@" + $NODE "$ROOT/out/server-main.js" "$@" } code "$@" diff --git a/resources/server/bin-dev/helpers/browser.sh b/resources/server/bin-dev/helpers/browser.sh index 60ff85d6e77..5ab90398f47 100755 --- a/resources/server/bin-dev/helpers/browser.sh +++ b/resources/server/bin-dev/helpers/browser.sh @@ -14,5 +14,5 @@ PROD_NAME="Code Server - Dev" VERSION="" COMMIT="" EXEC_NAME="" -CLI_SCRIPT="$VSCODE_PATH/out/vs/server/cli.js" +CLI_SCRIPT="$VSCODE_PATH/out/server-cli.js" node "$CLI_SCRIPT" "$PROD_NAME" "$VERSION" "$COMMIT" "$EXEC_NAME" "--openExternal" "$@" diff --git a/resources/server/bin-dev/remote-cli/code.sh b/resources/server/bin-dev/remote-cli/code.sh index 18165bfe3ce..1d0bc9b5c85 100755 --- a/resources/server/bin-dev/remote-cli/code.sh +++ b/resources/server/bin-dev/remote-cli/code.sh @@ -14,5 +14,5 @@ PROD_NAME="Code Server - Dev" VERSION="" COMMIT="" EXEC_NAME="$(basename "$(test -L "$0" && readlink "$0" || echo "$0")")" -CLI_SCRIPT="$VSCODE_PATH/out/vs/server/cli.js" +CLI_SCRIPT="$VSCODE_PATH/out/server-cli.js" node "$CLI_SCRIPT" "$PROD_NAME" "$VERSION" "$COMMIT" "$EXEC_NAME" "$@" diff --git a/resources/server/bin/code-server.sh b/resources/server/bin/code-server.sh index 982180598ee..00cd7cf6ac7 100644 --- a/resources/server/bin/code-server.sh +++ b/resources/server/bin/code-server.sh @@ -9,4 +9,4 @@ esac ROOT=$(dirname "$(dirname "$0")") -"$ROOT/node" ${INSPECT:-} "$ROOT/out/vs/server/main.js" "$@" +"$ROOT/node" ${INSPECT:-} "$ROOT/out/server-main.js" "$@" diff --git a/resources/server/bin/helpers/browser.sh b/resources/server/bin/helpers/browser.sh index 2cc3570be96..de9d64a0501 100644 --- a/resources/server/bin/helpers/browser.sh +++ b/resources/server/bin/helpers/browser.sh @@ -8,5 +8,5 @@ APP_NAME="@@APPNAME@@" VERSION="@@VERSION@@" COMMIT="@@COMMIT@@" EXEC_NAME="@@APPNAME@@" -CLI_SCRIPT="$ROOT/out/vs/server/cli.js" +CLI_SCRIPT="$ROOT/out/server-cli.js" "$ROOT/node" "$CLI_SCRIPT" "$APP_NAME" "$VERSION" "$COMMIT" "$EXEC_NAME" "--openExternal" "$@" diff --git a/resources/server/bin/remote-cli/code.sh b/resources/server/bin/remote-cli/code.sh index 20ed0ff4cfb..5f282991ab4 100644 --- a/resources/server/bin/remote-cli/code.sh +++ b/resources/server/bin/remote-cli/code.sh @@ -8,5 +8,5 @@ APP_NAME="@@APPNAME@@" VERSION="@@VERSION@@" COMMIT="@@COMMIT@@" EXEC_NAME="@@APPNAME@@" -CLI_SCRIPT="$ROOT/out/vs/server/cli.js" +CLI_SCRIPT="$ROOT/out/server-cli.js" "$ROOT/node" "$CLI_SCRIPT" "$APP_NAME" "$VERSION" "$COMMIT" "$EXEC_NAME" "$@" diff --git a/resources/server/bin/server-old.sh b/resources/server/bin/server-old.sh index 593a00ae6ce..7861d790be3 100644 --- a/resources/server/bin/server-old.sh +++ b/resources/server/bin/server-old.sh @@ -9,4 +9,4 @@ esac ROOT="$(dirname "$0")" -"$ROOT/node" ${INSPECT:-} "$ROOT/out/vs/server/main.js" --compatibility=1.63 "$@" +"$ROOT/node" ${INSPECT:-} "$ROOT/out/server-main.js" --compatibility=1.63 "$@" diff --git a/src/vs/server/cli.js b/src/server-cli.js similarity index 79% rename from src/vs/server/cli.js rename to src/server-cli.js index ae9ba20eb5c..86cc7f8a6f8 100644 --- a/src/vs/server/cli.js +++ b/src/server-cli.js @@ -13,9 +13,9 @@ delete process.env['ELECTRON_RUN_AS_NODE']; if (process.env['VSCODE_DEV']) { // When running out of sources, we need to load node modules from remote/node_modules, // which are compiled against nodejs, not electron - process.env['VSCODE_INJECT_NODE_MODULE_LOOKUP_PATH'] = process.env['VSCODE_INJECT_NODE_MODULE_LOOKUP_PATH'] || path.join(__dirname, '..', '..', '..', 'remote', 'node_modules'); - require('../../bootstrap-node').injectNodeModuleLookupPath(process.env['VSCODE_INJECT_NODE_MODULE_LOOKUP_PATH']); + process.env['VSCODE_INJECT_NODE_MODULE_LOOKUP_PATH'] = process.env['VSCODE_INJECT_NODE_MODULE_LOOKUP_PATH'] || path.join(__dirname, '..', 'remote', 'node_modules'); + require('./bootstrap-node').injectNodeModuleLookupPath(process.env['VSCODE_INJECT_NODE_MODULE_LOOKUP_PATH']); } else { delete process.env['VSCODE_INJECT_NODE_MODULE_LOOKUP_PATH']; } -require('../../bootstrap-amd').load('vs/server/remoteCli'); +require('./bootstrap-amd').load('vs/server/remoteCli'); diff --git a/src/vs/server/main.js b/src/server-main.js similarity index 94% rename from src/vs/server/main.js rename to src/server-main.js index 40f7dfb28b1..0d68cec47d1 100644 --- a/src/vs/server/main.js +++ b/src/server-main.js @@ -5,9 +5,9 @@ // @ts-check -const perf = require('../base/common/performance'); +const perf = require('./vs/base/common/performance'); const performance = require('perf_hooks').performance; -const product = require('../../../product.json'); +const product = require('../product.json'); const readline = require('readline'); const http = require('http'); @@ -43,7 +43,7 @@ async function start() { } /** - * @typedef { import('./remoteExtensionHostAgentServer').IServerAPI } IServerAPI + * @typedef { import('./vs/server/remoteExtensionHostAgentServer').IServerAPI } IServerAPI */ /** @type {IServerAPI | null} */ let _remoteExtensionHostAgentServer = null; @@ -247,7 +247,7 @@ async function findFreePort(host, start, end) { return undefined; } -/** @returns { Promise } */ +/** @returns { Promise } */ function loadCode() { return new Promise((resolve, reject) => { const path = require('path'); @@ -255,12 +255,12 @@ function loadCode() { if (process.env['VSCODE_DEV']) { // When running out of sources, we need to load node modules from remote/node_modules, // which are compiled against nodejs, not electron - process.env['VSCODE_INJECT_NODE_MODULE_LOOKUP_PATH'] = process.env['VSCODE_INJECT_NODE_MODULE_LOOKUP_PATH'] || path.join(__dirname, '..', '..', '..', 'remote', 'node_modules'); - require('../../bootstrap-node').injectNodeModuleLookupPath(process.env['VSCODE_INJECT_NODE_MODULE_LOOKUP_PATH']); + process.env['VSCODE_INJECT_NODE_MODULE_LOOKUP_PATH'] = process.env['VSCODE_INJECT_NODE_MODULE_LOOKUP_PATH'] || path.join(__dirname, '..', 'remote', 'node_modules'); + require('./bootstrap-node').injectNodeModuleLookupPath(process.env['VSCODE_INJECT_NODE_MODULE_LOOKUP_PATH']); } else { delete process.env['VSCODE_INJECT_NODE_MODULE_LOOKUP_PATH']; } - require('../../bootstrap-amd').load('vs/server/remoteExtensionHostAgent', resolve, reject); + require('./bootstrap-amd').load('vs/server/remoteExtensionHostAgent', resolve, reject); }); } diff --git a/src/vs/base/parts/ipc/common/ipc.net.ts b/src/vs/base/parts/ipc/common/ipc.net.ts index c62b08b0f64..5a679c05f20 100644 --- a/src/vs/base/parts/ipc/common/ipc.net.ts +++ b/src/vs/base/parts/ipc/common/ipc.net.ts @@ -1123,7 +1123,7 @@ export class PersistentProtocol implements IMessagePassingProtocol { // ? 'renderer' // : (process.argv.includes('--type=extensionHost') // ? 'extensionHost' -// : (process.argv.some(item => item.includes('server/main')) +// : (process.argv.some(item => item.includes('server-main')) // ? 'server' // : 'unknown' // ) diff --git a/src/vs/server/remoteExtensionHostAgent.ts b/src/vs/server/remoteExtensionHostAgent.ts index 5f07507dae6..c4ded8d28fc 100644 --- a/src/vs/server/remoteExtensionHostAgent.ts +++ b/src/vs/server/remoteExtensionHostAgent.ts @@ -55,14 +55,14 @@ args['extensions-dir'] = args['extensions-dir'] || join(REMOTE_DATA_FOLDER, 'ext }); /** - * invoked by vs/server/main.js + * invoked by server-main.js */ export function spawnCli() { runCli(args, REMOTE_DATA_FOLDER, serverOptions); } /** - * invoked by vs/server/main.js + * invoked by server-main.js */ export function createServer(address: string | net.AddressInfo | null): Promise { return doCreateServer(address, args, REMOTE_DATA_FOLDER); diff --git a/src/vs/server/remoteExtensionHostAgentServer.ts b/src/vs/server/remoteExtensionHostAgentServer.ts index 8504f281490..b40e025dbe6 100644 --- a/src/vs/server/remoteExtensionHostAgentServer.ts +++ b/src/vs/server/remoteExtensionHostAgentServer.ts @@ -987,19 +987,19 @@ function parseConnectionToken(args: ServerParsedArgs): { connectionToken: string export interface IServerAPI { /** - * Do not remove!!. Called from vs/server/main.js + * Do not remove!!. Called from server-main.js */ handleRequest(req: http.IncomingMessage, res: http.ServerResponse): Promise; /** - * Do not remove!!. Called from vs/server/main.js + * Do not remove!!. Called from server-main.js */ handleUpgrade(req: http.IncomingMessage, socket: net.Socket): void; /** - * Do not remove!!. Called from vs/server/main.js + * Do not remove!!. Called from server-main.js */ handleServerError(err: Error): void; /** - * Do not remove!!. Called from vs/server/main.js + * Do not remove!!. Called from server-main.js */ dispose(): void; } diff --git a/src/vs/workbench/api/node/extHostTunnelService.ts b/src/vs/workbench/api/node/extHostTunnelService.ts index b19cadd9746..03d0f5229f8 100644 --- a/src/vs/workbench/api/node/extHostTunnelService.ts +++ b/src/vs/workbench/api/node/extHostTunnelService.ts @@ -107,7 +107,7 @@ export function loadConnectionTable(stdout: string): Record[] { function knownExcludeCmdline(command: string): boolean { return !!command.match(/.*\.vscode-server-[a-zA-Z]+\/bin.*/) - || (command.indexOf('out/vs/server/main.js') !== -1) + || (command.indexOf('out/server-main.js') !== -1) || (command.indexOf('_productName=VSCode') !== -1); } diff --git a/src/vs/workbench/test/node/api/extHostTunnelService.test.ts b/src/vs/workbench/test/node/api/extHostTunnelService.test.ts index 2137f867466..a29d12b6cb9 100644 --- a/src/vs/workbench/test/node/api/extHostTunnelService.test.ts +++ b/src/vs/workbench/test/node/api/extHostTunnelService.test.ts @@ -185,7 +185,7 @@ const processes: { pid: number, cwd: string, cmd: string }[] = [ { pid: 314, cwd: '/mnt/c/Users/alros/AppData/Local/Programs/Microsoft VS Code Insiders', - cmd: '/home/alex/.vscode-server-insiders/bin/bc13785d3dd99b4b0e9da9aed17bb79809a50804/node/home/alex/.vscode-server-insiders/bin/bc13785d3dd99b4b0e9da9aed17bb79809a50804/out/vs/server/main.js--port=0--use-host-proxy--enable-remote-auto-shutdown--print-ip-address' + cmd: '/home/alex/.vscode-server-insiders/bin/bc13785d3dd99b4b0e9da9aed17bb79809a50804/node/home/alex/.vscode-server-insiders/bin/bc13785d3dd99b4b0e9da9aed17bb79809a50804/out/server-main.js--port=0--use-host-proxy--enable-remote-auto-shutdown--print-ip-address' }, { pid: 3172,