centy 0.2.6 → 0.2.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/commands/start.d.ts.map +1 -1
- package/dist/commands/start.js +4 -3
- package/dist/commands/start.js.map +1 -1
- package/dist/hooks/prerun.d.ts.map +1 -1
- package/dist/hooks/prerun.js +0 -2
- package/dist/hooks/prerun.js.map +1 -1
- package/oclif.manifest.json +609 -734
- package/package.json +1 -1
- package/dist/commands/install/all.d.ts +0 -11
- package/dist/commands/install/all.d.ts.map +0 -1
- package/dist/commands/install/all.js +0 -40
- package/dist/commands/install/all.js.map +0 -1
- package/dist/commands/install/daemon.d.ts +0 -11
- package/dist/commands/install/daemon.d.ts.map +0 -1
- package/dist/commands/install/daemon.js +0 -47
- package/dist/commands/install/daemon.js.map +0 -1
- package/dist/commands/install/tui.d.ts +0 -11
- package/dist/commands/install/tui.d.ts.map +0 -1
- package/dist/commands/install/tui.js +0 -41
- package/dist/commands/install/tui.js.map +0 -1
- package/dist/lib/install-binary/download.d.ts +0 -12
- package/dist/lib/install-binary/download.d.ts.map +0 -1
- package/dist/lib/install-binary/download.js +0 -181
- package/dist/lib/install-binary/download.js.map +0 -1
- package/dist/lib/install-binary/get-install-dir.d.ts +0 -2
- package/dist/lib/install-binary/get-install-dir.d.ts.map +0 -1
- package/dist/lib/install-binary/get-install-dir.js +0 -7
- package/dist/lib/install-binary/get-install-dir.js.map +0 -1
- package/dist/lib/install-binary/get-installed-version.d.ts +0 -2
- package/dist/lib/install-binary/get-installed-version.d.ts.map +0 -1
- package/dist/lib/install-binary/get-installed-version.js +0 -27
- package/dist/lib/install-binary/get-installed-version.js.map +0 -1
- package/dist/lib/install-binary/github-release.d.ts +0 -22
- package/dist/lib/install-binary/github-release.d.ts.map +0 -1
- package/dist/lib/install-binary/github-release.js +0 -70
- package/dist/lib/install-binary/github-release.js.map +0 -1
- package/dist/lib/install-binary/index.d.ts +0 -5
- package/dist/lib/install-binary/index.d.ts.map +0 -1
- package/dist/lib/install-binary/index.js +0 -4
- package/dist/lib/install-binary/index.js.map +0 -1
- package/dist/lib/install-binary/install-all.d.ts +0 -3
- package/dist/lib/install-binary/install-all.d.ts.map +0 -1
- package/dist/lib/install-binary/install-all.js +0 -21
- package/dist/lib/install-binary/install-all.js.map +0 -1
- package/dist/lib/install-binary/install-daemon.d.ts +0 -3
- package/dist/lib/install-binary/install-daemon.d.ts.map +0 -1
- package/dist/lib/install-binary/install-daemon.js +0 -71
- package/dist/lib/install-binary/install-daemon.js.map +0 -1
- package/dist/lib/install-binary/install-tui.d.ts +0 -3
- package/dist/lib/install-binary/install-tui.d.ts.map +0 -1
- package/dist/lib/install-binary/install-tui.js +0 -31
- package/dist/lib/install-binary/install-tui.js.map +0 -1
- package/dist/lib/install-binary/platform.d.ts +0 -5
- package/dist/lib/install-binary/platform.d.ts.map +0 -1
- package/dist/lib/install-binary/platform.js +0 -66
- package/dist/lib/install-binary/platform.js.map +0 -1
- package/dist/lib/install-binary/prerelease.d.ts +0 -22
- package/dist/lib/install-binary/prerelease.d.ts.map +0 -1
- package/dist/lib/install-binary/prerelease.js +0 -82
- package/dist/lib/install-binary/prerelease.js.map +0 -1
- package/dist/lib/install-binary/types.d.ts +0 -11
- package/dist/lib/install-binary/types.d.ts.map +0 -1
- package/dist/lib/install-binary/types.js +0 -2
- package/dist/lib/install-binary/types.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"install-all.js","sourceRoot":"","sources":["../../../src/lib/install-binary/install-all.ts"],"names":[],"mappings":"AAAA,0CAA0C;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAGnD,SAAS,IAAI;IACX,0BAA0B;AAC5B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,OAAuB;IAEvB,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAA;IACrC,MAAM,GAAG,GAAG,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAA;IAExD,GAAG,CAAC,kCAAkC,CAAC,CAAA;IAEvC,MAAM,SAAS,GAAG,MAAM,UAAU,CAAC;QACjC,GAAG,OAAO;QACV,UAAU,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,SAAS,GAAG,EAAE,CAAC;KACvC,CAAC,CAAA;IAEF,MAAM,YAAY,GAAG,MAAM,aAAa,CAAC;QACvC,GAAG,OAAO;QACV,UAAU,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,YAAY,GAAG,EAAE,CAAC;KAC1C,CAAC,CAAA;IAEF,OAAO,CAAC,SAAS,EAAE,YAAY,CAAC,CAAA;AAClC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"install-daemon.d.ts","sourceRoot":"","sources":["../../../src/lib/install-binary/install-daemon.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAiC/D,wBAAsB,aAAa,CACjC,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,aAAa,CAAC,CA6DxB"}
|
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
/* eslint-disable ddd/require-spec-file */
|
|
2
|
-
import { getDaemonAssetPattern, getBinaryFileName } from './platform.js';
|
|
3
|
-
import { getDaemonReleaseInfo, getLatestRelease } from './github-release.js';
|
|
4
|
-
import { downloadAndExtract } from './download.js';
|
|
5
|
-
import { getInstallDir } from './get-install-dir.js';
|
|
6
|
-
import { getInstalledDaemonVersion } from './get-installed-version.js';
|
|
7
|
-
import { isPrerelease, isNewerVersion } from './prerelease.js';
|
|
8
|
-
function noop() {
|
|
9
|
-
// empty progress callback
|
|
10
|
-
}
|
|
11
|
-
async function checkForNewerPrerelease(installedVersion) {
|
|
12
|
-
// Only check if user is on a prerelease
|
|
13
|
-
if (!isPrerelease(installedVersion)) {
|
|
14
|
-
return undefined;
|
|
15
|
-
}
|
|
16
|
-
try {
|
|
17
|
-
// Fetch the latest prerelease
|
|
18
|
-
const latestPrerelease = await getLatestRelease('centy-io/centy-daemon', true);
|
|
19
|
-
const latestVersion = latestPrerelease.tag_name.replace(/^v/, '');
|
|
20
|
-
// Check if the latest prerelease is newer than the installed version
|
|
21
|
-
if (isNewerVersion(installedVersion, latestVersion)) {
|
|
22
|
-
return latestVersion;
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
catch {
|
|
26
|
-
// Silently ignore errors when checking for prerelease updates
|
|
27
|
-
}
|
|
28
|
-
return undefined;
|
|
29
|
-
}
|
|
30
|
-
export async function installDaemon(options) {
|
|
31
|
-
const version = options.version;
|
|
32
|
-
const prerelease = options.prerelease !== undefined ? options.prerelease : false;
|
|
33
|
-
const onProgress = options.onProgress;
|
|
34
|
-
const log = onProgress !== undefined ? onProgress : noop;
|
|
35
|
-
// Check for newer prerelease if user is not explicitly requesting prerelease
|
|
36
|
-
// and no specific version was requested
|
|
37
|
-
let newerPrereleaseAvailable;
|
|
38
|
-
if (!prerelease && version === undefined) {
|
|
39
|
-
const installedVersion = getInstalledDaemonVersion();
|
|
40
|
-
if (installedVersion !== undefined) {
|
|
41
|
-
newerPrereleaseAvailable = await checkForNewerPrerelease(installedVersion);
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
log('Detecting platform...');
|
|
45
|
-
// For daemon, we need the version to construct the asset name
|
|
46
|
-
// If no version specified, fetch the latest release first
|
|
47
|
-
let targetVersion = version;
|
|
48
|
-
if (targetVersion === undefined) {
|
|
49
|
-
log('Fetching latest release info...');
|
|
50
|
-
const latestRelease = await getLatestRelease('centy-io/centy-daemon', prerelease);
|
|
51
|
-
targetVersion = latestRelease.tag_name.replace(/^v/, '');
|
|
52
|
-
}
|
|
53
|
-
const assetPattern = getDaemonAssetPattern(targetVersion);
|
|
54
|
-
log(`Fetching release info for centy-daemon v${targetVersion}...`);
|
|
55
|
-
// Pass the pattern with {version} placeholder for getDaemonReleaseInfo
|
|
56
|
-
const assetSuffix = assetPattern.split(`v${targetVersion}-`)[1];
|
|
57
|
-
const releaseInfo = await getDaemonReleaseInfo(`centy-daemon-v{version}-${assetSuffix}`, targetVersion);
|
|
58
|
-
log(`Downloading centy-daemon v${releaseInfo.version}...`);
|
|
59
|
-
const binaryName = getBinaryFileName('centy-daemon');
|
|
60
|
-
const installDir = getInstallDir();
|
|
61
|
-
const binaryPath = await downloadAndExtract(releaseInfo.downloadUrl, binaryName, installDir, progress => {
|
|
62
|
-
log(`Downloading... ${progress.percent}%`);
|
|
63
|
-
});
|
|
64
|
-
log(`Installed centy-daemon v${releaseInfo.version} to ${binaryPath}`);
|
|
65
|
-
return {
|
|
66
|
-
binaryPath,
|
|
67
|
-
version: releaseInfo.version,
|
|
68
|
-
newerPrereleaseAvailable,
|
|
69
|
-
};
|
|
70
|
-
}
|
|
71
|
-
//# sourceMappingURL=install-daemon.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"install-daemon.js","sourceRoot":"","sources":["../../../src/lib/install-binary/install-daemon.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"install-tui.d.ts","sourceRoot":"","sources":["../../../src/lib/install-binary/install-tui.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAM/D,wBAAsB,UAAU,CAC9B,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,aAAa,CAAC,CAiCxB"}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
/* eslint-disable ddd/require-spec-file */
|
|
2
|
-
import { getTuiAssetName, getBinaryFileName } from './platform.js';
|
|
3
|
-
import { getTuiReleaseInfo } from './github-release.js';
|
|
4
|
-
import { downloadAndExtract } from './download.js';
|
|
5
|
-
import { getInstallDir } from './get-install-dir.js';
|
|
6
|
-
function noop() {
|
|
7
|
-
// empty progress callback
|
|
8
|
-
}
|
|
9
|
-
export async function installTui(options) {
|
|
10
|
-
const version = options.version;
|
|
11
|
-
const prerelease = options.prerelease !== undefined ? options.prerelease : false;
|
|
12
|
-
const onProgress = options.onProgress;
|
|
13
|
-
const log = onProgress !== undefined ? onProgress : noop;
|
|
14
|
-
log('Detecting platform...');
|
|
15
|
-
const assetName = getTuiAssetName();
|
|
16
|
-
const versionSuffix = version !== undefined ? ` v${version}` : '';
|
|
17
|
-
log(`Fetching release info for centy-tui${versionSuffix}...`);
|
|
18
|
-
const releaseInfo = await getTuiReleaseInfo(assetName, version, prerelease);
|
|
19
|
-
log(`Downloading centy-tui v${releaseInfo.version}...`);
|
|
20
|
-
const binaryName = getBinaryFileName('centy-tui');
|
|
21
|
-
const installDir = getInstallDir();
|
|
22
|
-
const binaryPath = await downloadAndExtract(releaseInfo.downloadUrl, binaryName, installDir, progress => {
|
|
23
|
-
log(`Downloading... ${progress.percent}%`);
|
|
24
|
-
});
|
|
25
|
-
log(`Installed centy-tui v${releaseInfo.version} to ${binaryPath}`);
|
|
26
|
-
return {
|
|
27
|
-
binaryPath,
|
|
28
|
-
version: releaseInfo.version,
|
|
29
|
-
};
|
|
30
|
-
}
|
|
31
|
-
//# sourceMappingURL=install-tui.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"install-tui.js","sourceRoot":"","sources":["../../../src/lib/install-binary/install-tui.ts"],"names":[],"mappings":"AAAA,0CAA0C;AAC1C,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAGpD,SAAS,IAAI;IACX,0BAA0B;AAC5B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,OAAuB;IAEvB,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAA;IAC/B,MAAM,UAAU,GACd,OAAO,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAA;IAC/D,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAA;IACrC,MAAM,GAAG,GAAG,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAA;IAExD,GAAG,CAAC,uBAAuB,CAAC,CAAA;IAC5B,MAAM,SAAS,GAAG,eAAe,EAAE,CAAA;IAEnC,MAAM,aAAa,GAAG,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;IACjE,GAAG,CAAC,sCAAsC,aAAa,KAAK,CAAC,CAAA;IAC7D,MAAM,WAAW,GAAG,MAAM,iBAAiB,CAAC,SAAS,EAAE,OAAO,EAAE,UAAU,CAAC,CAAA;IAE3E,GAAG,CAAC,0BAA0B,WAAW,CAAC,OAAO,KAAK,CAAC,CAAA;IACvD,MAAM,UAAU,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAA;IACjD,MAAM,UAAU,GAAG,aAAa,EAAE,CAAA;IAElC,MAAM,UAAU,GAAG,MAAM,kBAAkB,CACzC,WAAW,CAAC,WAAW,EACvB,UAAU,EACV,UAAU,EACV,QAAQ,CAAC,EAAE;QACT,GAAG,CAAC,kBAAkB,QAAQ,CAAC,OAAO,GAAG,CAAC,CAAA;IAC5C,CAAC,CACF,CAAA;IAED,GAAG,CAAC,wBAAwB,WAAW,CAAC,OAAO,OAAO,UAAU,EAAE,CAAC,CAAA;IAEnE,OAAO;QACL,UAAU;QACV,OAAO,EAAE,WAAW,CAAC,OAAO;KAC7B,CAAA;AACH,CAAC"}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
export declare function getTuiAssetName(): string;
|
|
2
|
-
export declare function getDaemonAssetPattern(version: string): string;
|
|
3
|
-
export declare function isWindows(): boolean;
|
|
4
|
-
export declare function getBinaryFileName(binaryName: string): string;
|
|
5
|
-
//# sourceMappingURL=platform.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../../../src/lib/install-binary/platform.ts"],"names":[],"mappings":"AAmEA,wBAAgB,eAAe,IAAI,MAAM,CAIxC;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAK7D;AAED,wBAAgB,SAAS,IAAI,OAAO,CAEnC;AAED,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAE5D"}
|
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
/* eslint-disable ddd/require-spec-file, single-export/single-export, error/no-generic-error, error/require-custom-error, no-optional-chaining/no-optional-chaining */
|
|
2
|
-
import { arch, platform } from 'node:os';
|
|
3
|
-
function getPlatformInfo() {
|
|
4
|
-
return {
|
|
5
|
-
os: platform(),
|
|
6
|
-
arch: arch(),
|
|
7
|
-
};
|
|
8
|
-
}
|
|
9
|
-
function getTuiAssetSuffix() {
|
|
10
|
-
const info = getPlatformInfo();
|
|
11
|
-
const osMap = {
|
|
12
|
-
darwin: 'darwin',
|
|
13
|
-
linux: 'linux',
|
|
14
|
-
win32: 'windows',
|
|
15
|
-
};
|
|
16
|
-
const archMap = {
|
|
17
|
-
arm64: 'aarch64',
|
|
18
|
-
x64: 'x86_64',
|
|
19
|
-
};
|
|
20
|
-
const osName = osMap[info.os];
|
|
21
|
-
const archName = archMap[info.arch];
|
|
22
|
-
if (osName === undefined || archName === undefined) {
|
|
23
|
-
throw new Error(`Unsupported platform: ${info.os}-${info.arch}`);
|
|
24
|
-
}
|
|
25
|
-
return `${osName}-${archName}`;
|
|
26
|
-
}
|
|
27
|
-
function getDaemonTargetTriple() {
|
|
28
|
-
const info = getPlatformInfo();
|
|
29
|
-
const targetMap = {
|
|
30
|
-
darwin: {
|
|
31
|
-
arm64: 'aarch64-apple-darwin',
|
|
32
|
-
x64: 'x86_64-apple-darwin',
|
|
33
|
-
},
|
|
34
|
-
linux: {
|
|
35
|
-
arm64: 'aarch64-unknown-linux-gnu',
|
|
36
|
-
x64: 'x86_64-unknown-linux-gnu',
|
|
37
|
-
},
|
|
38
|
-
win32: {
|
|
39
|
-
x64: 'x86_64-pc-windows-msvc',
|
|
40
|
-
},
|
|
41
|
-
};
|
|
42
|
-
const osTargets = targetMap[info.os];
|
|
43
|
-
const target = osTargets?.[info.arch];
|
|
44
|
-
if (target === undefined) {
|
|
45
|
-
throw new Error(`Unsupported platform: ${info.os}-${info.arch}`);
|
|
46
|
-
}
|
|
47
|
-
return target;
|
|
48
|
-
}
|
|
49
|
-
export function getTuiAssetName() {
|
|
50
|
-
const suffix = getTuiAssetSuffix();
|
|
51
|
-
const isWindows = platform() === 'win32';
|
|
52
|
-
return `centy-tui-${suffix}${isWindows ? '.exe' : ''}`;
|
|
53
|
-
}
|
|
54
|
-
export function getDaemonAssetPattern(version) {
|
|
55
|
-
const target = getDaemonTargetTriple();
|
|
56
|
-
const isWindows = platform() === 'win32';
|
|
57
|
-
const extension = isWindows ? 'zip' : 'tar.gz';
|
|
58
|
-
return `centy-daemon-v${version}-${target}.${extension}`;
|
|
59
|
-
}
|
|
60
|
-
export function isWindows() {
|
|
61
|
-
return platform() === 'win32';
|
|
62
|
-
}
|
|
63
|
-
export function getBinaryFileName(binaryName) {
|
|
64
|
-
return isWindows() ? `${binaryName}.exe` : binaryName;
|
|
65
|
-
}
|
|
66
|
-
//# sourceMappingURL=platform.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"platform.js","sourceRoot":"","sources":["../../../src/lib/install-binary/platform.ts"],"names":[],"mappings":"AAAA,sKAAsK;AACtK,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAOxC,SAAS,eAAe;IACtB,OAAO;QACL,EAAE,EAAE,QAAQ,EAAE;QACd,IAAI,EAAE,IAAI,EAAE;KACb,CAAA;AACH,CAAC;AAED,SAAS,iBAAiB;IACxB,MAAM,IAAI,GAAG,eAAe,EAAE,CAAA;IAE9B,MAAM,KAAK,GAA2B;QACpC,MAAM,EAAE,QAAQ;QAChB,KAAK,EAAE,OAAO;QACd,KAAK,EAAE,SAAS;KACjB,CAAA;IAED,MAAM,OAAO,GAA2B;QACtC,KAAK,EAAE,SAAS;QAChB,GAAG,EAAE,QAAQ;KACd,CAAA;IAED,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAC7B,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAEnC,IAAI,MAAM,KAAK,SAAS,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QACnD,MAAM,IAAI,KAAK,CAAC,yBAAyB,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;IAClE,CAAC;IAED,OAAO,GAAG,MAAM,IAAI,QAAQ,EAAE,CAAA;AAChC,CAAC;AAED,SAAS,qBAAqB;IAC5B,MAAM,IAAI,GAAG,eAAe,EAAE,CAAA;IAE9B,MAAM,SAAS,GAA2C;QACxD,MAAM,EAAE;YACN,KAAK,EAAE,sBAAsB;YAC7B,GAAG,EAAE,qBAAqB;SAC3B;QACD,KAAK,EAAE;YACL,KAAK,EAAE,2BAA2B;YAClC,GAAG,EAAE,0BAA0B;SAChC;QACD,KAAK,EAAE;YACL,GAAG,EAAE,wBAAwB;SAC9B;KACF,CAAA;IAED,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAEpC,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAErC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,yBAAyB,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;IAClE,CAAC;IAED,OAAO,MAAM,CAAA;AACf,CAAC;AAED,MAAM,UAAU,eAAe;IAC7B,MAAM,MAAM,GAAG,iBAAiB,EAAE,CAAA;IAClC,MAAM,SAAS,GAAG,QAAQ,EAAE,KAAK,OAAO,CAAA;IACxC,OAAO,aAAa,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAA;AACxD,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,OAAe;IACnD,MAAM,MAAM,GAAG,qBAAqB,EAAE,CAAA;IACtC,MAAM,SAAS,GAAG,QAAQ,EAAE,KAAK,OAAO,CAAA;IACxC,MAAM,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAA;IAC9C,OAAO,iBAAiB,OAAO,IAAI,MAAM,IAAI,SAAS,EAAE,CAAA;AAC1D,CAAC;AAED,MAAM,UAAU,SAAS;IACvB,OAAO,QAAQ,EAAE,KAAK,OAAO,CAAA;AAC/B,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,UAAkB;IAClD,OAAO,SAAS,EAAE,CAAC,CAAC,CAAC,GAAG,UAAU,MAAM,CAAC,CAAC,CAAC,UAAU,CAAA;AACvD,CAAC"}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Check if a version string is a prerelease version.
|
|
3
|
-
* Prerelease versions contain a hyphen after the version number.
|
|
4
|
-
* Examples: "0.2.0-alpha.9", "1.0.0-beta.1", "2.0.0-rc.1"
|
|
5
|
-
*/
|
|
6
|
-
export declare function isPrerelease(version: string): boolean;
|
|
7
|
-
/**
|
|
8
|
-
* Compare two version strings.
|
|
9
|
-
* Returns:
|
|
10
|
-
* - positive if v1 > v2
|
|
11
|
-
* - negative if v1 < v2
|
|
12
|
-
* - 0 if equal
|
|
13
|
-
*
|
|
14
|
-
* Note: A stable version is considered greater than a prerelease of the same base version.
|
|
15
|
-
* e.g., 1.0.0 > 1.0.0-alpha.1
|
|
16
|
-
*/
|
|
17
|
-
export declare function compareVersions(v1: string, v2: string): number;
|
|
18
|
-
/**
|
|
19
|
-
* Check if there's a newer prerelease available given the current version.
|
|
20
|
-
*/
|
|
21
|
-
export declare function isNewerVersion(current: string, available: string): boolean;
|
|
22
|
-
//# sourceMappingURL=prerelease.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"prerelease.d.ts","sourceRoot":"","sources":["../../../src/lib/install-binary/prerelease.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAErD;AAiCD;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAyC9D;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAE1E"}
|
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
/* eslint-disable single-export/single-export, security/detect-unsafe-regex */
|
|
2
|
-
/**
|
|
3
|
-
* Check if a version string is a prerelease version.
|
|
4
|
-
* Prerelease versions contain a hyphen after the version number.
|
|
5
|
-
* Examples: "0.2.0-alpha.9", "1.0.0-beta.1", "2.0.0-rc.1"
|
|
6
|
-
*/
|
|
7
|
-
export function isPrerelease(version) {
|
|
8
|
-
return version.includes('-');
|
|
9
|
-
}
|
|
10
|
-
function parseVersion(version) {
|
|
11
|
-
// Match: major.minor.patch[-prerelease.num]
|
|
12
|
-
// This regex is safe: anchored, uses non-greedy patterns, and has bounded repetition
|
|
13
|
-
const versionRegex = /^(\d{1,10})\.(\d{1,10})\.(\d{1,10})(?:-([a-zA-Z]+)(?:\.(\d{1,10}))?)?$/;
|
|
14
|
-
const match = version.match(versionRegex);
|
|
15
|
-
if (match === null) {
|
|
16
|
-
return undefined;
|
|
17
|
-
}
|
|
18
|
-
return {
|
|
19
|
-
major: parseInt(match[1], 10),
|
|
20
|
-
minor: parseInt(match[2], 10),
|
|
21
|
-
patch: parseInt(match[3], 10),
|
|
22
|
-
prerelease: match[4],
|
|
23
|
-
prereleaseNum: match[5] !== undefined ? parseInt(match[5], 10) : undefined,
|
|
24
|
-
};
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Compare two version strings.
|
|
28
|
-
* Returns:
|
|
29
|
-
* - positive if v1 > v2
|
|
30
|
-
* - negative if v1 < v2
|
|
31
|
-
* - 0 if equal
|
|
32
|
-
*
|
|
33
|
-
* Note: A stable version is considered greater than a prerelease of the same base version.
|
|
34
|
-
* e.g., 1.0.0 > 1.0.0-alpha.1
|
|
35
|
-
*/
|
|
36
|
-
export function compareVersions(v1, v2) {
|
|
37
|
-
const p1 = parseVersion(v1);
|
|
38
|
-
const p2 = parseVersion(v2);
|
|
39
|
-
if (p1 === undefined || p2 === undefined) {
|
|
40
|
-
return v1.localeCompare(v2);
|
|
41
|
-
}
|
|
42
|
-
// Compare major.minor.patch
|
|
43
|
-
if (p1.major !== p2.major)
|
|
44
|
-
return p1.major - p2.major;
|
|
45
|
-
if (p1.minor !== p2.minor)
|
|
46
|
-
return p1.minor - p2.minor;
|
|
47
|
-
if (p1.patch !== p2.patch)
|
|
48
|
-
return p1.patch - p2.patch;
|
|
49
|
-
// Both stable = equal at this point
|
|
50
|
-
if (p1.prerelease === undefined && p2.prerelease === undefined)
|
|
51
|
-
return 0;
|
|
52
|
-
// Stable > prerelease
|
|
53
|
-
if (p1.prerelease === undefined)
|
|
54
|
-
return 1;
|
|
55
|
-
if (p2.prerelease === undefined)
|
|
56
|
-
return -1;
|
|
57
|
-
// Compare prerelease tags (alpha < beta < rc)
|
|
58
|
-
const prereleaseOrder = {
|
|
59
|
-
alpha: 1,
|
|
60
|
-
beta: 2,
|
|
61
|
-
rc: 3,
|
|
62
|
-
};
|
|
63
|
-
const order1 = prereleaseOrder[p1.prerelease] !== undefined
|
|
64
|
-
? prereleaseOrder[p1.prerelease]
|
|
65
|
-
: 0;
|
|
66
|
-
const order2 = prereleaseOrder[p2.prerelease] !== undefined
|
|
67
|
-
? prereleaseOrder[p2.prerelease]
|
|
68
|
-
: 0;
|
|
69
|
-
if (order1 !== order2)
|
|
70
|
-
return order1 - order2;
|
|
71
|
-
// Compare prerelease numbers
|
|
72
|
-
const num1 = p1.prereleaseNum !== undefined ? p1.prereleaseNum : 0;
|
|
73
|
-
const num2 = p2.prereleaseNum !== undefined ? p2.prereleaseNum : 0;
|
|
74
|
-
return num1 - num2;
|
|
75
|
-
}
|
|
76
|
-
/**
|
|
77
|
-
* Check if there's a newer prerelease available given the current version.
|
|
78
|
-
*/
|
|
79
|
-
export function isNewerVersion(current, available) {
|
|
80
|
-
return compareVersions(available, current) > 0;
|
|
81
|
-
}
|
|
82
|
-
//# sourceMappingURL=prerelease.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"prerelease.js","sourceRoot":"","sources":["../../../src/lib/install-binary/prerelease.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
export interface InstallOptions {
|
|
2
|
-
version?: string;
|
|
3
|
-
prerelease?: boolean;
|
|
4
|
-
onProgress?: (message: string) => void;
|
|
5
|
-
}
|
|
6
|
-
export interface InstallResult {
|
|
7
|
-
binaryPath: string;
|
|
8
|
-
version: string;
|
|
9
|
-
newerPrereleaseAvailable?: string;
|
|
10
|
-
}
|
|
11
|
-
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/lib/install-binary/types.ts"],"names":[],"mappings":"AACA,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;CACvC;AAED,MAAM,WAAW,aAAa;IAC5B,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,MAAM,CAAA;IACf,wBAAwB,CAAC,EAAE,MAAM,CAAA;CAClC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/lib/install-binary/types.ts"],"names":[],"mappings":""}
|