@agi-cli/install 0.1.36 → 0.1.38
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/package.json +1 -1
- package/start.js +10 -50
package/package.json
CHANGED
package/start.js
CHANGED
|
@@ -64,57 +64,17 @@ function getVersion(binaryPath) {
|
|
|
64
64
|
}
|
|
65
65
|
|
|
66
66
|
function getLatestVersion() {
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
get(
|
|
71
|
-
url,
|
|
72
|
-
{
|
|
73
|
-
headers: {
|
|
74
|
-
'User-Agent': 'agi-installer',
|
|
75
|
-
},
|
|
76
|
-
},
|
|
77
|
-
(response) => {
|
|
78
|
-
if (response.statusCode === 302 || response.statusCode === 301) {
|
|
79
|
-
// Follow redirect
|
|
80
|
-
get(
|
|
81
|
-
response.headers.location,
|
|
82
|
-
{
|
|
83
|
-
headers: {
|
|
84
|
-
'User-Agent': 'agi-installer',
|
|
85
|
-
},
|
|
86
|
-
},
|
|
87
|
-
handleResponse,
|
|
88
|
-
);
|
|
89
|
-
} else {
|
|
90
|
-
handleResponse(response);
|
|
91
|
-
}
|
|
67
|
+
const __dirname = dirname(fileURLToPath(import.meta.url));
|
|
68
|
+
const packageJsonPath = resolve(__dirname, 'package.json');
|
|
92
69
|
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
try {
|
|
102
|
-
const json = JSON.parse(data);
|
|
103
|
-
if (json.tag_name) {
|
|
104
|
-
// Remove 'v' prefix if present (e.g., "v1.2.3" -> "1.2.3")
|
|
105
|
-
const version = json.tag_name.replace(/^v/, '');
|
|
106
|
-
resolve(version);
|
|
107
|
-
} else {
|
|
108
|
-
reject(new Error('No tag_name in response'));
|
|
109
|
-
}
|
|
110
|
-
} catch (err) {
|
|
111
|
-
reject(err);
|
|
112
|
-
}
|
|
113
|
-
});
|
|
114
|
-
}
|
|
115
|
-
},
|
|
116
|
-
).on('error', reject);
|
|
117
|
-
});
|
|
70
|
+
try {
|
|
71
|
+
const packageJson = JSON.parse(readFileSync(packageJsonPath, 'utf8'));
|
|
72
|
+
return Promise.resolve(packageJson.version);
|
|
73
|
+
} catch (err) {
|
|
74
|
+
return Promise.reject(
|
|
75
|
+
new Error(`Could not read package.json version: ${err.message}`),
|
|
76
|
+
);
|
|
77
|
+
}
|
|
118
78
|
}
|
|
119
79
|
|
|
120
80
|
function compareVersions(v1, v2) {
|