mycontext-cli 2.0.17 → 2.0.19
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"AAIA,qBAAa,aAAa;IAClB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"AAIA,qBAAa,aAAa;IAClB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IA8H9B,OAAO,CAAC,iBAAiB;YAoBX,UAAU;IA8CxB,OAAO,CAAC,YAAY;IAepB,OAAO,CAAC,iBAAiB;CAW1B"}
|
package/dist/commands/update.js
CHANGED
|
@@ -6,11 +6,40 @@ const logger_1 = require("../utils/logger");
|
|
|
6
6
|
class UpdateCommand {
|
|
7
7
|
async execute() {
|
|
8
8
|
logger_1.logger.info("Updating mycontext CLI...");
|
|
9
|
+
// Check if we're in a project directory that might interfere
|
|
10
|
+
const fs = require("fs-extra");
|
|
11
|
+
const path = require("path");
|
|
12
|
+
const packageJsonPath = path.join(process.cwd(), "package.json");
|
|
13
|
+
if (await fs.pathExists(packageJsonPath)) {
|
|
14
|
+
try {
|
|
15
|
+
const packageJson = await fs.readJson(packageJsonPath);
|
|
16
|
+
if (packageJson.packageManager &&
|
|
17
|
+
packageJson.packageManager.includes("pnpm")) {
|
|
18
|
+
logger_1.logger.warn("⚠️ You're in a project that uses pnpm. This might interfere with global updates.");
|
|
19
|
+
logger_1.logger.info("💡 Try running the update from your home directory or use: npm i -g mycontext-cli@latest");
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
catch (e) {
|
|
23
|
+
// Ignore errors reading package.json
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
// Check current version first
|
|
27
|
+
const currentVersion = this.getCurrentVersion();
|
|
28
|
+
logger_1.logger.info(`Current version: ${currentVersion}`);
|
|
9
29
|
// Try pnpm first (cleaner output)
|
|
10
30
|
try {
|
|
11
31
|
logger_1.logger.progress("Checking for updates via pnpm...");
|
|
12
32
|
await this.runCommand("pnpm", ["add", "-g", "mycontext-cli@latest"]);
|
|
13
|
-
|
|
33
|
+
// Wait a moment for the update to take effect
|
|
34
|
+
await new Promise((resolve) => setTimeout(resolve, 2000));
|
|
35
|
+
// Verify the update actually happened
|
|
36
|
+
const newVersion = this.getCurrentVersion();
|
|
37
|
+
if (newVersion !== currentVersion) {
|
|
38
|
+
logger_1.logger.success(`Updated successfully via pnpm: ${currentVersion} → ${newVersion}`);
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
logger_1.logger.info("Already up to date via pnpm");
|
|
42
|
+
}
|
|
14
43
|
this.printNextCommands();
|
|
15
44
|
return;
|
|
16
45
|
}
|
|
@@ -21,17 +50,85 @@ class UpdateCommand {
|
|
|
21
50
|
try {
|
|
22
51
|
logger_1.logger.progress("Checking for updates via npm...");
|
|
23
52
|
await this.runCommand("npm", ["i", "-g", "mycontext-cli@latest"]);
|
|
24
|
-
|
|
53
|
+
// Wait a moment for the update to take effect
|
|
54
|
+
await new Promise((resolve) => setTimeout(resolve, 2000));
|
|
55
|
+
// Verify the update actually happened
|
|
56
|
+
const newVersion = this.getCurrentVersion();
|
|
57
|
+
if (newVersion !== currentVersion) {
|
|
58
|
+
logger_1.logger.success(`Updated successfully via npm: ${currentVersion} → ${newVersion}`);
|
|
59
|
+
}
|
|
60
|
+
else {
|
|
61
|
+
logger_1.logger.info("Already up to date via npm");
|
|
62
|
+
}
|
|
25
63
|
this.printNextCommands();
|
|
26
64
|
}
|
|
27
65
|
catch (error) {
|
|
66
|
+
// Try alternative approaches
|
|
67
|
+
logger_1.logger.warn("Standard update failed, trying alternative methods...");
|
|
68
|
+
try {
|
|
69
|
+
// Try with --force flag
|
|
70
|
+
logger_1.logger.progress("Trying npm with --force flag...");
|
|
71
|
+
await this.runCommand("npm", [
|
|
72
|
+
"i",
|
|
73
|
+
"-g",
|
|
74
|
+
"mycontext-cli@latest",
|
|
75
|
+
"--force",
|
|
76
|
+
]);
|
|
77
|
+
const newVersion = this.getCurrentVersion();
|
|
78
|
+
if (newVersion !== currentVersion) {
|
|
79
|
+
logger_1.logger.success(`Updated successfully via npm --force: ${currentVersion} → ${newVersion}`);
|
|
80
|
+
this.printNextCommands();
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
catch (e) {
|
|
85
|
+
logger_1.logger.verbose("npm --force also failed");
|
|
86
|
+
}
|
|
87
|
+
// Try clearing cache and updating
|
|
88
|
+
try {
|
|
89
|
+
logger_1.logger.progress("Clearing npm cache and trying again...");
|
|
90
|
+
await this.runCommand("npm", ["cache", "clean", "--force"]);
|
|
91
|
+
await this.runCommand("npm", ["i", "-g", "mycontext-cli@latest"]);
|
|
92
|
+
const newVersion = this.getCurrentVersion();
|
|
93
|
+
if (newVersion !== currentVersion) {
|
|
94
|
+
logger_1.logger.success(`Updated successfully after cache clear: ${currentVersion} → ${newVersion}`);
|
|
95
|
+
this.printNextCommands();
|
|
96
|
+
return;
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
catch (e) {
|
|
100
|
+
logger_1.logger.verbose("Cache clear approach also failed");
|
|
101
|
+
}
|
|
28
102
|
logger_1.logger.error("Failed to update CLI automatically");
|
|
29
103
|
logger_1.logger.info("Try manually:");
|
|
30
104
|
logger_1.logger.info(" pnpm add -g mycontext-cli@latest");
|
|
31
105
|
logger_1.logger.info(" npm i -g mycontext-cli@latest");
|
|
106
|
+
logger_1.logger.info(" npm i -g mycontext-cli@latest --force");
|
|
107
|
+
logger_1.logger.info(" npm cache clean --force && npm i -g mycontext-cli@latest");
|
|
32
108
|
throw error;
|
|
33
109
|
}
|
|
34
110
|
}
|
|
111
|
+
getCurrentVersion() {
|
|
112
|
+
try {
|
|
113
|
+
// Try to get the version from the actual installed package
|
|
114
|
+
const { execSync } = require("child_process");
|
|
115
|
+
const result = execSync("mycontext --version", { encoding: "utf8" });
|
|
116
|
+
const versionMatch = result.match(/(\d+\.\d+\.\d+)/);
|
|
117
|
+
if (versionMatch) {
|
|
118
|
+
return versionMatch[1];
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
catch (error) {
|
|
122
|
+
// Fallback to package.json
|
|
123
|
+
try {
|
|
124
|
+
return require("../../package.json").version;
|
|
125
|
+
}
|
|
126
|
+
catch {
|
|
127
|
+
return "unknown";
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
return "unknown";
|
|
131
|
+
}
|
|
35
132
|
async runCommand(command, args) {
|
|
36
133
|
return new Promise((resolve, reject) => {
|
|
37
134
|
const child = (0, child_process_1.spawn)(command, args, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":";;;AACA,iDAAgD;AAChD,4CAAyC;AAEzC,MAAa,aAAa;IACxB,KAAK,CAAC,OAAO;QACX,eAAM,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;QAEzC,kCAAkC;QAClC,IAAI,CAAC;YACH,eAAM,CAAC,QAAQ,CAAC,kCAAkC,CAAC,CAAC;YACpD,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,sBAAsB,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"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"}
|
package/dist/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "mycontext-cli",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.19",
|
|
4
4
|
"description": "Component-first visual builder with zero-error guarantees. Generate and validate React/Next.js components one at a time, preview them visually, then scale to complete applications using Claude Agent SDK.",
|
|
5
5
|
"main": "dist/cli.js",
|
|
6
6
|
"bin": {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "mycontext-cli",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.19",
|
|
4
4
|
"description": "Component-first visual builder with zero-error guarantees. Generate and validate React/Next.js components one at a time, preview them visually, then scale to complete applications using Claude Agent SDK.",
|
|
5
5
|
"main": "dist/cli.js",
|
|
6
6
|
"bin": {
|