From 887ae97cb3506383dc91fe9ac68856a2924e7a31 Mon Sep 17 00:00:00 2001 From: Jonathan Yu Date: Mon, 28 Feb 2022 23:22:00 +0000 Subject: [PATCH 1/4] feat: add version of Code OSS to output Show the bundled version of Code OSS in the text-based output for --version and --help, in addition to the JSON output (--version --json) Closes: #4874 --- src/node/constants.ts | 2 +- src/node/entry.ts | 14 ++++---------- test/unit/node/constants.test.ts | 4 ++-- 3 files changed, 7 insertions(+), 13 deletions(-) diff --git a/src/node/constants.ts b/src/node/constants.ts index b3c84048cc38..8a8facaf5351 100644 --- a/src/node/constants.ts +++ b/src/node/constants.ts @@ -35,7 +35,7 @@ export const httpProxyUri = * for outputting to the console. */ export function getVersionString(): string { - return [version, commit].join(" ") + return [version, commit, "Code", codeVersion].join(" ") } /** diff --git a/src/node/entry.ts b/src/node/entry.ts index 92fd8a8e78e5..010f18b76fd0 100644 --- a/src/node/entry.ts +++ b/src/node/entry.ts @@ -1,6 +1,6 @@ import { logger } from "@coder/logger" import { optionDescriptions, parse, readConfigFile, setDefaults, shouldOpenInExistingInstance } from "./cli" -import { commit, version } from "./constants" +import { getVersionString, getVersionJsonString } from "./constants" import { openInExistingInstance, runCodeServer, runVsCodeCli, shouldSpawnCliProcess } from "./main" import { isChild, wrapper } from "./wrapper" @@ -24,7 +24,7 @@ async function entry(): Promise { const args = await setDefaults(cliArgs, configArgs) if (args.help) { - console.log("code-server", version, commit) + console.log("code-server", getVersionString()) console.log("") console.log(`Usage: code-server [options] [path]`) console.log(` - Opening a directory: code-server ./path/to/your/project`) @@ -39,15 +39,9 @@ async function entry(): Promise { if (args.version) { if (args.json) { - console.log( - JSON.stringify({ - codeServer: version, - commit, - vscode: require("../../vendor/modules/code-oss-dev/package.json").version, - }), - ) + console.log(getVersionJsonString()) } else { - console.log(version, commit) + console.log(getVersionString()) } return } diff --git a/test/unit/node/constants.test.ts b/test/unit/node/constants.test.ts index 70192d70ca50..6a18c2efaaa7 100644 --- a/test/unit/node/constants.test.ts +++ b/test/unit/node/constants.test.ts @@ -60,7 +60,7 @@ describe("constants", () => { }) it("should return a human-readable version string", () => { - expect(constants.getVersionString()).toStrictEqual(`${mockPackageJson.version} ${mockPackageJson.commit}`) + expect(constants.getVersionString()).toStrictEqual(`${mockPackageJson.version} ${mockPackageJson.commit} Code ${mockCodePackageJson.version}`) }) it("should return a machine-readable version string", () => { @@ -124,7 +124,7 @@ describe("constants", () => { it("should return a human-readable version string", () => { // this string is not super useful - expect(constants.getVersionString()).toStrictEqual("development development") + expect(constants.getVersionString()).toStrictEqual("development development Code development") }) it("should return a machine-readable version string", () => { From 59549ce33957a9aaf41705b7730069155f59a53b Mon Sep 17 00:00:00 2001 From: Jonathan Yu Date: Mon, 28 Feb 2022 23:29:14 +0000 Subject: [PATCH 2/4] yarn fmt --- test/unit/node/constants.test.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/test/unit/node/constants.test.ts b/test/unit/node/constants.test.ts index 6a18c2efaaa7..66913fdbd7ff 100644 --- a/test/unit/node/constants.test.ts +++ b/test/unit/node/constants.test.ts @@ -60,7 +60,9 @@ describe("constants", () => { }) it("should return a human-readable version string", () => { - expect(constants.getVersionString()).toStrictEqual(`${mockPackageJson.version} ${mockPackageJson.commit} Code ${mockCodePackageJson.version}`) + expect(constants.getVersionString()).toStrictEqual( + `${mockPackageJson.version} ${mockPackageJson.commit} Code ${mockCodePackageJson.version}`, + ) }) it("should return a machine-readable version string", () => { From a7bf30808c069d07c969514bba252529cbc1c20a Mon Sep 17 00:00:00 2001 From: Jonathan Yu Date: Tue, 1 Mar 2022 17:52:04 +0000 Subject: [PATCH 3/4] update version string --- src/node/constants.ts | 2 +- test/unit/node/constants.test.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/node/constants.ts b/src/node/constants.ts index 8a8facaf5351..e27e9a4d8ce7 100644 --- a/src/node/constants.ts +++ b/src/node/constants.ts @@ -35,7 +35,7 @@ export const httpProxyUri = * for outputting to the console. */ export function getVersionString(): string { - return [version, commit, "Code", codeVersion].join(" ") + return [version, commit, "with Code", codeVersion].join(" ") } /** diff --git a/test/unit/node/constants.test.ts b/test/unit/node/constants.test.ts index 66913fdbd7ff..5e611fa891bd 100644 --- a/test/unit/node/constants.test.ts +++ b/test/unit/node/constants.test.ts @@ -61,7 +61,7 @@ describe("constants", () => { it("should return a human-readable version string", () => { expect(constants.getVersionString()).toStrictEqual( - `${mockPackageJson.version} ${mockPackageJson.commit} Code ${mockCodePackageJson.version}`, + `${mockPackageJson.version} ${mockPackageJson.commit} with Code ${mockCodePackageJson.version}`, ) }) From be783ca0455964ad9883e6e9c9636b3265c26180 Mon Sep 17 00:00:00 2001 From: Jonathan Yu Date: Tue, 1 Mar 2022 17:55:24 +0000 Subject: [PATCH 4/4] update test --- test/unit/node/constants.test.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/unit/node/constants.test.ts b/test/unit/node/constants.test.ts index 5e611fa891bd..24501cbd2be8 100644 --- a/test/unit/node/constants.test.ts +++ b/test/unit/node/constants.test.ts @@ -126,7 +126,7 @@ describe("constants", () => { it("should return a human-readable version string", () => { // this string is not super useful - expect(constants.getVersionString()).toStrictEqual("development development Code development") + expect(constants.getVersionString()).toStrictEqual("development development with Code development") }) it("should return a machine-readable version string", () => {