@simplysm/sd-cli 12.9.2 → 12.9.11

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.
@@ -144,7 +144,7 @@ export class SdCliProject {
144
144
  }
145
145
  }
146
146
  logger.debug("배포 시작...");
147
- await pkgPaths.parallelAsync(async (pkgPath) => {
147
+ for (const pkgPath of pkgPaths) {
148
148
  const pkgName = path.basename(pkgPath);
149
149
  const pkgConf = projConf.packages[pkgName];
150
150
  if (pkgConf?.publish == null)
@@ -152,7 +152,7 @@ export class SdCliProject {
152
152
  logger.debug(`[${pkgName}] 배포 시작...`);
153
153
  await this._publishPkgAsync(pkgPath, pkgConf.publish);
154
154
  logger.debug(`[${pkgName}] 배포 완료`);
155
- });
155
+ }
156
156
  if (projConf.postPublish && projConf.postPublish.length > 0) {
157
157
  logger.debug("배포후 작업...");
158
158
  for (const postPublishItem of projConf.postPublish) {
@@ -1 +1 @@
1
- {"version":3,"file":"sd-cli-project.js","sourceRoot":"","sources":["../../src/entry/sd-cli-project.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sd-cli-project.js","sourceRoot":"","sources":["../../src/entry/sd-cli-project.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ export {};
@@ -0,0 +1,205 @@
1
+ #!/usr/bin/env node
2
+ import yargs from "yargs";
3
+ import { hideBin } from "yargs/helpers";
4
+ import { SdCliProject } from "./entry/sd-cli-project";
5
+ import { SdLogger, SdLoggerSeverity } from "@simplysm/sd-core-node";
6
+ import { EventEmitter } from "events";
7
+ import { SdCliElectron } from "./entry/sd-cli-electron";
8
+ import { SdCliLocalUpdate } from "./entry/sd-cli-local-update";
9
+ import { SdCliCordova } from "./entry/sd-cli-cordova";
10
+ import { SdCliAiCommand } from "./entry/sd-cli-ai-command";
11
+ import { SdCliPostinstall } from "./entry/sd-cli-postinstall";
12
+ Error.stackTraceLimit = Infinity;
13
+ EventEmitter.defaultMaxListeners = 0;
14
+ const argv = (await yargs(hideBin(process.argv))
15
+ .help("help", "도움말")
16
+ .alias("help", "h")
17
+ .options({
18
+ debug: {
19
+ type: "boolean",
20
+ describe: "디버그 로그를 표시할 것인지 여부",
21
+ default: false,
22
+ },
23
+ })
24
+ .command("local-update", "로컬 라이브러리 업데이트를 수행합니다.", (cmd) => cmd
25
+ .version(false)
26
+ .hide("help")
27
+ .hide("debug")
28
+ .options({
29
+ config: {
30
+ string: true,
31
+ describe: "simplysm.js 파일 경로",
32
+ },
33
+ options: {
34
+ string: true,
35
+ array: true,
36
+ describe: "옵션 설정",
37
+ },
38
+ }))
39
+ .command("watch", "프로젝트의 각 패키지에 대한 변경감지 빌드를 수행합니다.", (cmd) => cmd
40
+ .version(false)
41
+ .hide("help")
42
+ .hide("debug")
43
+ .options({
44
+ config: {
45
+ string: true,
46
+ describe: "simplysm.js 파일 경로",
47
+ },
48
+ options: {
49
+ string: true,
50
+ array: true,
51
+ describe: "옵션 설정",
52
+ },
53
+ packages: {
54
+ string: true,
55
+ array: true,
56
+ describe: "수행할 패키지 설정",
57
+ },
58
+ inspects: {
59
+ string: true,
60
+ array: true,
61
+ describe: "크롬 inspect를 수행할 패키지 설정",
62
+ },
63
+ }))
64
+ .command("build", "프로젝트의 각 패키지에 대한 빌드를 수행합니다.", (cmd) => cmd
65
+ .version(false)
66
+ .hide("help")
67
+ .hide("debug")
68
+ .options({
69
+ config: {
70
+ string: true,
71
+ describe: "simplysm.js 파일 경로",
72
+ },
73
+ options: {
74
+ string: true,
75
+ array: true,
76
+ describe: "옵션 설정",
77
+ },
78
+ packages: {
79
+ string: true,
80
+ array: true,
81
+ describe: "수행할 패키지 설정",
82
+ },
83
+ }))
84
+ .command("publish", "프로젝트의 각 패키지를 배포합니다.", (cmd) => cmd
85
+ .version(false)
86
+ .hide("help")
87
+ .hide("debug")
88
+ .options({
89
+ noBuild: {
90
+ type: "boolean",
91
+ describe: "빌드를 하지않고 배포합니다.",
92
+ default: false,
93
+ },
94
+ config: {
95
+ type: "string",
96
+ describe: "simplysm.js 파일 경로",
97
+ },
98
+ options: {
99
+ type: "string",
100
+ array: true,
101
+ describe: "옵션 설정",
102
+ },
103
+ packages: {
104
+ type: "string",
105
+ array: true,
106
+ describe: "수행할 패키지 설정",
107
+ },
108
+ }))
109
+ .command("run-electron <package>", "변경감지중인 플랫폼을 ELECTRON 앱 형태로 띄웁니다.", (cmd) => cmd
110
+ .positional("package", {
111
+ type: "string",
112
+ describe: "패키지명",
113
+ demandOption: true,
114
+ })
115
+ .options({
116
+ config: {
117
+ type: "string",
118
+ describe: "simplysm.js 파일 경로",
119
+ },
120
+ options: {
121
+ type: "string",
122
+ array: true,
123
+ describe: "옵션 설정",
124
+ },
125
+ }))
126
+ .command("build-electron-for-dev <package>", "변경감지중인 플랫폼을 ELECTRON 앱 형태로 띄웁니다.", (cmd) => cmd
127
+ .positional("package", {
128
+ type: "string",
129
+ describe: "패키지명",
130
+ demandOption: true,
131
+ })
132
+ .options({
133
+ config: {
134
+ type: "string",
135
+ describe: "simplysm.js 파일 경로",
136
+ },
137
+ options: {
138
+ type: "string",
139
+ array: true,
140
+ describe: "옵션 설정",
141
+ },
142
+ }))
143
+ .command("run-cordova <platform> <package> [url]", "변경감지중인 플랫폼을 코도바 디바이스에 앱 형태로 띄웁니다.", (cmd) => cmd
144
+ .positional("platform", {
145
+ type: "string",
146
+ describe: "빌드 플랫폼(android,...)",
147
+ demandOption: true,
148
+ })
149
+ .positional("package", {
150
+ type: "string",
151
+ describe: "패키지명",
152
+ demandOption: true,
153
+ })
154
+ .positional("url", {
155
+ type: "string",
156
+ describe: "Webview로 오픈할 URL",
157
+ demandOption: true,
158
+ }))
159
+ .command("commit", "AI를 통해 변경사항에 대한 커밋 메시지를 작성하여, 커밋 및 푸쉬를 수행합니다.")
160
+ .command("postinstall", "설치후 자동실행할 작업")
161
+ .parseAsync());
162
+ if (Boolean(argv.debug)) {
163
+ process.env["SD_DEBUG"] = "true";
164
+ SdLogger.setConfig({
165
+ console: {
166
+ level: SdLoggerSeverity.debug,
167
+ },
168
+ });
169
+ }
170
+ else {
171
+ SdLogger.setConfig({
172
+ dot: true,
173
+ });
174
+ }
175
+ if (argv._[0] === "local-update") {
176
+ await SdCliLocalUpdate.runAsync(argv);
177
+ }
178
+ else if (argv._[0] === "watch") {
179
+ await SdCliProject.watchAsync(argv);
180
+ }
181
+ else if (argv._[0] === "build") {
182
+ await SdCliProject.buildAsync(argv);
183
+ }
184
+ else if (argv._[0] === "publish") {
185
+ await SdCliProject.publishAsync(argv);
186
+ }
187
+ else if (argv._[0] === "run-electron") {
188
+ await SdCliElectron.runAsync(argv);
189
+ }
190
+ else if (argv._[0] === "build-electron-for-dev") {
191
+ await SdCliElectron.buildForDevAsync(argv);
192
+ }
193
+ else if (argv._[0] === "run-cordova") {
194
+ await SdCliCordova.runWebviewOnDeviceAsync(argv);
195
+ }
196
+ else if (argv._[0] === "commit") {
197
+ await SdCliAiCommand.commitAsync();
198
+ }
199
+ else if (argv._[0] === "postinstall") {
200
+ SdCliPostinstall.run();
201
+ }
202
+ else {
203
+ throw new Error(`명령어가 잘못 되었습니다.\n\t${argv._[0]}\n`);
204
+ }
205
+ //# sourceMappingURL=sd-cli-entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sd-cli-entry.js","sourceRoot":"","sources":["../src/sd-cli-entry.ts"],"names":[],"mappings":"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"}
package/dist/sd-cli.js CHANGED
@@ -1,205 +1,55 @@
1
1
  #!/usr/bin/env node
2
- import yargs from "yargs";
3
- import { hideBin } from "yargs/helpers";
4
- import { SdCliProject } from "./entry/sd-cli-project";
5
- import { SdLogger, SdLoggerSeverity } from "@simplysm/sd-core-node";
6
- import { EventEmitter } from "events";
7
- import { SdCliElectron } from "./entry/sd-cli-electron";
8
- import { SdCliLocalUpdate } from "./entry/sd-cli-local-update";
9
- import { SdCliCordova } from "./entry/sd-cli-cordova";
10
- import { SdCliAiCommand } from "./entry/sd-cli-ai-command";
11
- import { SdCliPostinstall } from "./entry/sd-cli-postinstall";
12
- Error.stackTraceLimit = Infinity;
13
- EventEmitter.defaultMaxListeners = 0;
14
- const argv = (await yargs(hideBin(process.argv))
15
- .help("help", "도움말")
16
- .alias("help", "h")
17
- .options({
18
- debug: {
19
- type: "boolean",
20
- describe: "디버그 로그를 표시할 것인지 여부",
21
- default: false,
22
- },
23
- })
24
- .command("local-update", "로컬 라이브러리 업데이트를 수행합니다.", (cmd) => cmd
25
- .version(false)
26
- .hide("help")
27
- .hide("debug")
28
- .options({
29
- config: {
30
- string: true,
31
- describe: "simplysm.js 파일 경로",
32
- },
33
- options: {
34
- string: true,
35
- array: true,
36
- describe: "옵션 설정",
37
- },
38
- }))
39
- .command("watch", "프로젝트의 각 패키지에 대한 변경감지 빌드를 수행합니다.", (cmd) => cmd
40
- .version(false)
41
- .hide("help")
42
- .hide("debug")
43
- .options({
44
- config: {
45
- string: true,
46
- describe: "simplysm.js 파일 경로",
47
- },
48
- options: {
49
- string: true,
50
- array: true,
51
- describe: "옵션 설정",
52
- },
53
- packages: {
54
- string: true,
55
- array: true,
56
- describe: "수행할 패키지 설정",
57
- },
58
- inspects: {
59
- string: true,
60
- array: true,
61
- describe: "크롬 inspect를 수행할 패키지 설정",
62
- },
63
- }))
64
- .command("build", "프로젝트의 각 패키지에 대한 빌드를 수행합니다.", (cmd) => cmd
65
- .version(false)
66
- .hide("help")
67
- .hide("debug")
68
- .options({
69
- config: {
70
- string: true,
71
- describe: "simplysm.js 파일 경로",
72
- },
73
- options: {
74
- string: true,
75
- array: true,
76
- describe: "옵션 설정",
77
- },
78
- packages: {
79
- string: true,
80
- array: true,
81
- describe: "수행할 패키지 설정",
82
- },
83
- }))
84
- .command("publish", "프로젝트의 각 패키지를 배포합니다.", (cmd) => cmd
85
- .version(false)
86
- .hide("help")
87
- .hide("debug")
88
- .options({
89
- noBuild: {
90
- type: "boolean",
91
- describe: "빌드를 하지않고 배포합니다.",
92
- default: false,
93
- },
94
- config: {
95
- type: "string",
96
- describe: "simplysm.js 파일 경로",
97
- },
98
- options: {
99
- type: "string",
100
- array: true,
101
- describe: "옵션 설정",
102
- },
103
- packages: {
104
- type: "string",
105
- array: true,
106
- describe: "수행할 패키지 설정",
107
- },
108
- }))
109
- .command("run-electron <package>", "변경감지중인 플랫폼을 ELECTRON 앱 형태로 띄웁니다.", (cmd) => cmd
110
- .positional("package", {
111
- type: "string",
112
- describe: "패키지명",
113
- demandOption: true,
114
- })
115
- .options({
116
- config: {
117
- type: "string",
118
- describe: "simplysm.js 파일 경로",
119
- },
120
- options: {
121
- type: "string",
122
- array: true,
123
- describe: "옵션 설정",
124
- },
125
- }))
126
- .command("build-electron-for-dev <package>", "변경감지중인 플랫폼을 ELECTRON 앱 형태로 띄웁니다.", (cmd) => cmd
127
- .positional("package", {
128
- type: "string",
129
- describe: "패키지명",
130
- demandOption: true,
131
- })
132
- .options({
133
- config: {
134
- type: "string",
135
- describe: "simplysm.js 파일 경로",
136
- },
137
- options: {
138
- type: "string",
139
- array: true,
140
- describe: "옵션 설정",
141
- },
142
- }))
143
- .command("run-cordova <platform> <package> [url]", "변경감지중인 플랫폼을 코도바 디바이스에 앱 형태로 띄웁니다.", (cmd) => cmd
144
- .positional("platform", {
145
- type: "string",
146
- describe: "빌드 플랫폼(android,...)",
147
- demandOption: true,
148
- })
149
- .positional("package", {
150
- type: "string",
151
- describe: "패키지명",
152
- demandOption: true,
153
- })
154
- .positional("url", {
155
- type: "string",
156
- describe: "Webview로 오픈할 URL",
157
- demandOption: true,
158
- }))
159
- .command("commit", "AI를 통해 변경사항에 대한 커밋 메시지를 작성하여, 커밋 및 푸쉬를 수행합니다.")
160
- .command("postinstall", "설치후 자동실행할 작업")
161
- .parseAsync());
162
- if (Boolean(argv.debug)) {
163
- process.env["SD_DEBUG"] = "true";
164
- SdLogger.setConfig({
165
- console: {
166
- level: SdLoggerSeverity.debug,
167
- },
2
+ // import { spawn } from "node:child_process";
3
+ // import { fileURLToPath } from "node:url";
4
+ // import { dirname, join } from "node:path";
5
+ //
6
+ // const __dirname = dirname(fileURLToPath(import.meta.url));
7
+ // const cliPath = join(__dirname, "../dist/sd-cli.js");
8
+ //
9
+ // spawn("node", ["--import=specifier-resolution-node/register", cliPath, ...process.argv.slice(2)], {
10
+ // stdio: "inherit"
11
+ // });
12
+ import { exec, spawn } from "child_process";
13
+ import { fileURLToPath } from "node:url";
14
+ import os from "os";
15
+ import path from "path";
16
+ const cpuCount = os.cpus().length; // 논리 CPU 수
17
+ const affinityMaskDecimal = Math.pow(2, cpuCount) - 2; // 전체 - 1
18
+ const affinityMask = "0x" + affinityMaskDecimal.toString(16).toUpperCase();
19
+ // console.log(`Logical CPU Count: ${cpuCount}`);
20
+ // console.log(`Affinity Mask (전체 - 1): ${affinityMask}`);
21
+ // CLI 실행
22
+ const cliPath = import.meta.resolve("./sd-cli-entry");
23
+ if (path.extname(cliPath) === ".ts") {
24
+ const pid = process.pid;
25
+ const command = `powershell -Command "$p = Get-Process -Id ${pid}; $p.ProcessorAffinity = ${affinityMask}"`;
26
+ exec(command, (err) => {
27
+ if (err) {
28
+ console.error("Affinity 설정 실패:", err.message);
29
+ }
30
+ else {
31
+ console.log(`Affinity ${affinityMask} 적용됨 (PID: ${pid})`);
32
+ }
168
33
  });
34
+ await import(cliPath);
169
35
  }
170
36
  else {
171
- SdLogger.setConfig({
172
- dot: true,
37
+ const child = spawn("node", ["--import=specifier-resolution-node/register", fileURLToPath(cliPath), ...process.argv.slice(2)]);
38
+ child.on("spawn", () => {
39
+ const pid = child.pid;
40
+ const psCommand = `$p = Get-Process -Id ${pid}; $p.ProcessorAffinity = ${affinityMask}`;
41
+ const command = `powershell -Command "${psCommand}"`;
42
+ exec(command, (err) => {
43
+ if (err) {
44
+ console.error("Failed to set affinity:", err.message);
45
+ }
46
+ else {
47
+ console.log(`Affinity set to ${affinityMask} for PID ${pid}`);
48
+ }
49
+ });
50
+ });
51
+ child.on("exit", (code) => {
52
+ console.log(`CLI exited with code ${code}`);
173
53
  });
174
- }
175
- if (argv._[0] === "local-update") {
176
- await SdCliLocalUpdate.runAsync(argv);
177
- }
178
- else if (argv._[0] === "watch") {
179
- await SdCliProject.watchAsync(argv);
180
- }
181
- else if (argv._[0] === "build") {
182
- await SdCliProject.buildAsync(argv);
183
- }
184
- else if (argv._[0] === "publish") {
185
- await SdCliProject.publishAsync(argv);
186
- }
187
- else if (argv._[0] === "run-electron") {
188
- await SdCliElectron.runAsync(argv);
189
- }
190
- else if (argv._[0] === "build-electron-for-dev") {
191
- await SdCliElectron.buildForDevAsync(argv);
192
- }
193
- else if (argv._[0] === "run-cordova") {
194
- await SdCliCordova.runWebviewOnDeviceAsync(argv);
195
- }
196
- else if (argv._[0] === "commit") {
197
- await SdCliAiCommand.commitAsync();
198
- }
199
- else if (argv._[0] === "postinstall") {
200
- SdCliPostinstall.run();
201
- }
202
- else {
203
- throw new Error(`명령어가 잘못 되었습니다.\n\t${argv._[0]}\n`);
204
54
  }
205
55
  //# sourceMappingURL=sd-cli.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sd-cli.js","sourceRoot":"","sources":["../src/sd-cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sd-cli.js","sourceRoot":"","sources":["../src/sd-cli.ts"],"names":[],"mappings":";AAEA,8CAA8C;AAC9C,4CAA4C;AAC5C,6CAA6C;AAC7C,EAAE;AACF,6DAA6D;AAC7D,wDAAwD;AACxD,EAAE;AACF,sGAAsG;AACtG,qBAAqB;AACrB,MAAM;AAEN,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AAGxB,MAAM,QAAQ,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,CAAC,WAAW;AAC9C,MAAM,mBAAmB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS;AAChE,MAAM,YAAY,GAAG,IAAI,GAAG,mBAAmB,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;AAE3E,iDAAiD;AACjD,0DAA0D;AAE1D,SAAS;AACT,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;AAEtD,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,KAAK,EAAE,CAAC;IACpC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;IACxB,MAAM,OAAO,GAAG,6CAA6C,GAAG,4BAA4B,YAAY,GAAG,CAAC;IAC5G,IAAI,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;QACpB,IAAI,GAAG,EAAE,CAAC;YACR,OAAO,CAAC,KAAK,CAAC,iBAAiB,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;QAChD,CAAC;aACI,CAAC;YACJ,OAAO,CAAC,GAAG,CAAC,YAAY,YAAY,cAAc,GAAG,GAAG,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC,CAAC,CAAC;IACH,MAAM,MAAM,CAAC,OAAO,CAAC,CAAC;AACxB,CAAC;KACI,CAAC;IACJ,MAAM,KAAK,GAAG,KAAK,CACjB,MAAM,EACN,CAAC,6CAA6C,EAAE,aAAa,CAAC,OAAO,CAAC,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAClG,CAAC;IAEF,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;QACrB,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC;QAEtB,MAAM,SAAS,GAAG,wBAAwB,GAAG,4BAA4B,YAAY,EAAE,CAAC;QACxF,MAAM,OAAO,GAAG,wBAAwB,SAAS,GAAG,CAAC;QAErD,IAAI,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;YACpB,IAAI,GAAG,EAAE,CAAC;gBACR,OAAO,CAAC,KAAK,CAAC,yBAAyB,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;YACxD,CAAC;iBACI,CAAC;gBACJ,OAAO,CAAC,GAAG,CAAC,mBAAmB,YAAY,YAAY,GAAG,EAAE,CAAC,CAAC;YAChE,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;QACxB,OAAO,CAAC,GAAG,CAAC,wBAAwB,IAAI,EAAE,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -5,34 +5,45 @@ export class SdCliPerformanceTimer {
5
5
  this._resultMap = new Map();
6
6
  }
7
7
  start(name) {
8
- this._startingMap.set(name, new Date().getTime());
8
+ this._startingMap.set(name, {
9
+ time: new Date().getTime(),
10
+ cpu: process.cpuUsage(),
11
+ });
9
12
  }
10
13
  end(name) {
11
- const val = this._startingMap.get(name);
12
- if (val == null)
13
- throw new Error();
14
- this._resultMap.set(name, new Date().getTime() - val);
14
+ const start = this._startingMap.get(name);
15
+ if (start == null)
16
+ throw new Error(`No start record for '${name}'`);
17
+ const time = new Date().getTime() - start.time;
18
+ const cpuUsage = process.cpuUsage(start.cpu);
19
+ const cpu = (cpuUsage.user + cpuUsage.system) / 1000; // μs -> ms
20
+ this._resultMap.set(name, { time, cpu });
15
21
  this._startingMap.delete(name);
16
22
  }
17
23
  run(name, fn) {
18
24
  const startTime = new Date().getTime();
19
- let res = fn();
20
- if (res instanceof Promise) {
21
- return res.then((realRes) => {
22
- const duration = new Date().getTime() - startTime;
23
- this._resultMap.update(name, (v) => (v ?? 0) + duration);
24
- return realRes;
25
+ const startCpu = process.cpuUsage();
26
+ const finish = (res, start) => {
27
+ const duration = new Date().getTime() - start;
28
+ const cpu = (process.cpuUsage(startCpu).user + process.cpuUsage(startCpu).system) / 1000;
29
+ const prev = this._resultMap.get(name);
30
+ this._resultMap.set(name, {
31
+ time: (prev?.time ?? 0) + duration,
32
+ cpu: (prev?.cpu ?? 0) + cpu,
25
33
  });
34
+ return res;
35
+ };
36
+ const res = fn();
37
+ if (res instanceof Promise) {
38
+ return res.then(realRes => finish(realRes, startTime));
26
39
  }
27
- const duration = new Date().getTime() - startTime;
28
- this._resultMap.update(name, (v) => (v ?? 0) + duration);
29
- return res;
40
+ return finish(res, startTime);
30
41
  }
31
42
  toString() {
32
43
  return `${this._name} 성능 보고서
33
44
  ------------------------------------
34
45
  ${Array.from(this._resultMap.entries())
35
- .map((en) => `${en[0]}: ${en[1].toLocaleString()}ms`)
46
+ .map(([key, val]) => `${key}: ${val.time.toLocaleString()}ms (${val.cpu.toLocaleString()}ms CPU)`)
36
47
  .join("\n")}
37
48
  ------------------------------------`;
38
49
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sd-cli-performance-time.js","sourceRoot":"","sources":["../../src/utils/sd-cli-performance-time.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,qBAAqB;IAIhC,YAAoB,KAAa;QAAb,UAAK,GAAL,KAAK,CAAQ;QAHzB,iBAAY,GAAG,IAAI,GAAG,EAAkB,CAAC;QACzC,eAAU,GAAG,IAAI,GAAG,EAAkB,CAAC;IAEX,CAAC;IAErC,KAAK,CAAC,IAAY;QAChB,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;IACpD,CAAC;IAED,GAAG,CAAC,IAAY;QACd,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,GAAG,IAAI,IAAI;YAAE,MAAM,IAAI,KAAK,EAAE,CAAC;QACnC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,GAAG,CAAC,CAAC;QACtD,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IAED,GAAG,CAAI,IAAY,EAAE,EAAW;QAC9B,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;QACvC,IAAI,GAAG,GAAG,EAAE,EAAE,CAAC;QACf,IAAI,GAAG,YAAY,OAAO,EAAE,CAAC;YAC3B,OAAO,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;gBAC1B,MAAM,QAAQ,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC;gBAClD,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC;gBACzD,OAAO,OAAO,CAAC;YACjB,CAAC,CAAM,CAAC;QACV,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC;QAClD,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC;QACzD,OAAO,GAAG,CAAC;IACb,CAAC;IAED,QAAQ;QACN,OAAO,GAAG,IAAI,CAAC,KAAK;;EAEtB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;aACpC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,IAAI,CAAC;aACpD,IAAI,CAAC,IAAI,CAAC;qCACwB,CAAC;IACpC,CAAC;CACF"}
1
+ {"version":3,"file":"sd-cli-performance-time.js","sourceRoot":"","sources":["../../src/utils/sd-cli-performance-time.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@simplysm/sd-cli",
3
- "version": "12.9.2",
3
+ "version": "12.9.11",
4
4
  "description": "심플리즘 패키지 - CLI",
5
5
  "author": "김석래",
6
6
  "repository": {
@@ -9,7 +9,7 @@
9
9
  "directory": "packages/sd-cli"
10
10
  },
11
11
  "license": "MIT",
12
- "bin": "./bin/sd-cli.js",
12
+ "bin": "./dist/sd-cli.js",
13
13
  "type": "module",
14
14
  "dependencies": {
15
15
  "@angular/build": "^19.2.10",
@@ -17,10 +17,10 @@
17
17
  "@angular/compiler-cli": "^19.2.9",
18
18
  "@anthropic-ai/sdk": "^0.40.1",
19
19
  "@electron/rebuild": "^4.0.1",
20
- "@simplysm/sd-core-common": "12.9.2",
21
- "@simplysm/sd-core-node": "12.9.2",
22
- "@simplysm/sd-service-server": "12.9.2",
23
- "@simplysm/sd-storage": "12.9.2",
20
+ "@simplysm/sd-core-common": "12.9.11",
21
+ "@simplysm/sd-core-node": "12.9.11",
22
+ "@simplysm/sd-service-server": "12.9.11",
23
+ "@simplysm/sd-storage": "12.9.11",
24
24
  "browserslist": "^4.24.5",
25
25
  "cordova": "^12.0.0",
26
26
  "css-has-pseudo": "^7.0.2",
@@ -190,7 +190,7 @@ export class SdCliProject {
190
190
  }
191
191
 
192
192
  logger.debug("배포 시작...");
193
- await pkgPaths.parallelAsync(async (pkgPath) => {
193
+ for (const pkgPath of pkgPaths) {
194
194
  const pkgName = path.basename(pkgPath);
195
195
  const pkgConf = projConf.packages[pkgName];
196
196
  if (pkgConf?.publish == null) return;
@@ -198,7 +198,7 @@ export class SdCliProject {
198
198
  logger.debug(`[${pkgName}] 배포 시작...`);
199
199
  await this._publishPkgAsync(pkgPath, pkgConf.publish);
200
200
  logger.debug(`[${pkgName}] 배포 완료`);
201
- });
201
+ }
202
202
 
203
203
  if (projConf.postPublish && projConf.postPublish.length > 0) {
204
204
  logger.debug("배포후 작업...");
@@ -0,0 +1,232 @@
1
+ #!/usr/bin/env node
2
+
3
+ import yargs from "yargs";
4
+ import { hideBin } from "yargs/helpers";
5
+ import { SdCliProject } from "./entry/sd-cli-project";
6
+ import { SdLogger, SdLoggerSeverity } from "@simplysm/sd-core-node";
7
+ import { EventEmitter } from "events";
8
+ import { SdCliElectron } from "./entry/sd-cli-electron";
9
+ import { SdCliLocalUpdate } from "./entry/sd-cli-local-update";
10
+ import { SdCliCordova } from "./entry/sd-cli-cordova";
11
+ import { SdCliAiCommand } from "./entry/sd-cli-ai-command";
12
+ import { SdCliPostinstall } from "./entry/sd-cli-postinstall";
13
+
14
+ Error.stackTraceLimit = Infinity;
15
+ EventEmitter.defaultMaxListeners = 0;
16
+
17
+ const argv = (await yargs(hideBin(process.argv))
18
+ .help("help", "도움말")
19
+ .alias("help", "h")
20
+ .options({
21
+ debug: {
22
+ type: "boolean",
23
+ describe: "디버그 로그를 표시할 것인지 여부",
24
+ default: false,
25
+ },
26
+ })
27
+ .command("local-update", "로컬 라이브러리 업데이트를 수행합니다.", (cmd) =>
28
+ cmd
29
+ .version(false)
30
+ .hide("help")
31
+ .hide("debug")
32
+ .options({
33
+ config: {
34
+ string: true,
35
+ describe: "simplysm.js 파일 경로",
36
+ },
37
+ options: {
38
+ string: true,
39
+ array: true,
40
+ describe: "옵션 설정",
41
+ },
42
+ }),
43
+ )
44
+ .command("watch", "프로젝트의 각 패키지에 대한 변경감지 빌드를 수행합니다.", (cmd) =>
45
+ cmd
46
+ .version(false)
47
+ .hide("help")
48
+ .hide("debug")
49
+ .options({
50
+ config: {
51
+ string: true,
52
+ describe: "simplysm.js 파일 경로",
53
+ },
54
+ options: {
55
+ string: true,
56
+ array: true,
57
+ describe: "옵션 설정",
58
+ },
59
+ packages: {
60
+ string: true,
61
+ array: true,
62
+ describe: "수행할 패키지 설정",
63
+ },
64
+ inspects: {
65
+ string: true,
66
+ array: true,
67
+ describe: "크롬 inspect를 수행할 패키지 설정",
68
+ },
69
+ }),
70
+ )
71
+ .command("build", "프로젝트의 각 패키지에 대한 빌드를 수행합니다.", (cmd) =>
72
+ cmd
73
+ .version(false)
74
+ .hide("help")
75
+ .hide("debug")
76
+ .options({
77
+ config: {
78
+ string: true,
79
+ describe: "simplysm.js 파일 경로",
80
+ },
81
+ options: {
82
+ string: true,
83
+ array: true,
84
+ describe: "옵션 설정",
85
+ },
86
+ packages: {
87
+ string: true,
88
+ array: true,
89
+ describe: "수행할 패키지 설정",
90
+ },
91
+ }),
92
+ )
93
+ .command("publish", "프로젝트의 각 패키지를 배포합니다.", (cmd) =>
94
+ cmd
95
+ .version(false)
96
+ .hide("help")
97
+ .hide("debug")
98
+ .options({
99
+ noBuild: {
100
+ type: "boolean",
101
+ describe: "빌드를 하지않고 배포합니다.",
102
+ default: false,
103
+ },
104
+ config: {
105
+ type: "string",
106
+ describe: "simplysm.js 파일 경로",
107
+ },
108
+ options: {
109
+ type: "string",
110
+ array: true,
111
+ describe: "옵션 설정",
112
+ },
113
+ packages: {
114
+ type: "string",
115
+ array: true,
116
+ describe: "수행할 패키지 설정",
117
+ },
118
+ }),
119
+ )
120
+ .command("run-electron <package>", "변경감지중인 플랫폼을 ELECTRON 앱 형태로 띄웁니다.", (cmd) =>
121
+ cmd
122
+ .positional("package", {
123
+ type: "string",
124
+ describe: "패키지명",
125
+ demandOption: true,
126
+ })
127
+ .options({
128
+ config: {
129
+ type: "string",
130
+ describe: "simplysm.js 파일 경로",
131
+ },
132
+ options: {
133
+ type: "string",
134
+ array: true,
135
+ describe: "옵션 설정",
136
+ },
137
+ }),
138
+ )
139
+ .command("build-electron-for-dev <package>", "변경감지중인 플랫폼을 ELECTRON 앱 형태로 띄웁니다.", (cmd) =>
140
+ cmd
141
+ .positional("package", {
142
+ type: "string",
143
+ describe: "패키지명",
144
+ demandOption: true,
145
+ })
146
+ .options({
147
+ config: {
148
+ type: "string",
149
+ describe: "simplysm.js 파일 경로",
150
+ },
151
+ options: {
152
+ type: "string",
153
+ array: true,
154
+ describe: "옵션 설정",
155
+ },
156
+ }),
157
+ )
158
+ .command(
159
+ "run-cordova <platform> <package> [url]",
160
+ "변경감지중인 플랫폼을 코도바 디바이스에 앱 형태로 띄웁니다.",
161
+ (cmd) =>
162
+ cmd
163
+ .positional("platform", {
164
+ type: "string",
165
+ describe: "빌드 플랫폼(android,...)",
166
+ demandOption: true,
167
+ })
168
+ .positional("package", {
169
+ type: "string",
170
+ describe: "패키지명",
171
+ demandOption: true,
172
+ })
173
+ .positional("url", {
174
+ type: "string",
175
+ describe: "Webview로 오픈할 URL",
176
+ demandOption: true,
177
+ }),
178
+ )
179
+ .command(
180
+ "commit",
181
+ "AI를 통해 변경사항에 대한 커밋 메시지를 작성하여, 커밋 및 푸쉬를 수행합니다.",
182
+ )
183
+ .command(
184
+ "postinstall",
185
+ "설치후 자동실행할 작업",
186
+ )
187
+ .parseAsync()) as any;
188
+
189
+ if (Boolean(argv.debug)) {
190
+ process.env["SD_DEBUG"] = "true";
191
+ SdLogger.setConfig({
192
+ console: {
193
+ level: SdLoggerSeverity.debug,
194
+ },
195
+ });
196
+ }
197
+ else {
198
+ SdLogger.setConfig({
199
+ dot: true,
200
+ });
201
+ }
202
+
203
+ if (argv._[0] === "local-update") {
204
+ await SdCliLocalUpdate.runAsync(argv);
205
+ }
206
+ else if (argv._[0] === "watch") {
207
+ await SdCliProject.watchAsync(argv);
208
+ }
209
+ else if (argv._[0] === "build") {
210
+ await SdCliProject.buildAsync(argv);
211
+ }
212
+ else if (argv._[0] === "publish") {
213
+ await SdCliProject.publishAsync(argv);
214
+ }
215
+ else if (argv._[0] === "run-electron") {
216
+ await SdCliElectron.runAsync(argv);
217
+ }
218
+ else if (argv._[0] === "build-electron-for-dev") {
219
+ await SdCliElectron.buildForDevAsync(argv);
220
+ }
221
+ else if (argv._[0] === "run-cordova") {
222
+ await SdCliCordova.runWebviewOnDeviceAsync(argv);
223
+ }
224
+ else if (argv._[0] === "commit") {
225
+ await SdCliAiCommand.commitAsync();
226
+ }
227
+ else if (argv._[0] === "postinstall") {
228
+ SdCliPostinstall.run();
229
+ }
230
+ else {
231
+ throw new Error(`명령어가 잘못 되었습니다.\n\t${argv._[0]}\n`);
232
+ }
package/src/sd-cli.ts CHANGED
@@ -1,232 +1,68 @@
1
1
  #!/usr/bin/env node
2
2
 
3
- import yargs from "yargs";
4
- import { hideBin } from "yargs/helpers";
5
- import { SdCliProject } from "./entry/sd-cli-project";
6
- import { SdLogger, SdLoggerSeverity } from "@simplysm/sd-core-node";
7
- import { EventEmitter } from "events";
8
- import { SdCliElectron } from "./entry/sd-cli-electron";
9
- import { SdCliLocalUpdate } from "./entry/sd-cli-local-update";
10
- import { SdCliCordova } from "./entry/sd-cli-cordova";
11
- import { SdCliAiCommand } from "./entry/sd-cli-ai-command";
12
- import { SdCliPostinstall } from "./entry/sd-cli-postinstall";
3
+ // import { spawn } from "node:child_process";
4
+ // import { fileURLToPath } from "node:url";
5
+ // import { dirname, join } from "node:path";
6
+ //
7
+ // const __dirname = dirname(fileURLToPath(import.meta.url));
8
+ // const cliPath = join(__dirname, "../dist/sd-cli.js");
9
+ //
10
+ // spawn("node", ["--import=specifier-resolution-node/register", cliPath, ...process.argv.slice(2)], {
11
+ // stdio: "inherit"
12
+ // });
13
13
 
14
- Error.stackTraceLimit = Infinity;
15
- EventEmitter.defaultMaxListeners = 0;
14
+ import { exec, spawn } from "child_process";
15
+ import { fileURLToPath } from "node:url";
16
+ import os from "os";
17
+ import path from "path";
16
18
 
17
- const argv = (await yargs(hideBin(process.argv))
18
- .help("help", "도움말")
19
- .alias("help", "h")
20
- .options({
21
- debug: {
22
- type: "boolean",
23
- describe: "디버그 로그를 표시할 것인지 여부",
24
- default: false,
25
- },
26
- })
27
- .command("local-update", "로컬 라이브러리 업데이트를 수행합니다.", (cmd) =>
28
- cmd
29
- .version(false)
30
- .hide("help")
31
- .hide("debug")
32
- .options({
33
- config: {
34
- string: true,
35
- describe: "simplysm.js 파일 경로",
36
- },
37
- options: {
38
- string: true,
39
- array: true,
40
- describe: "옵션 설정",
41
- },
42
- }),
43
- )
44
- .command("watch", "프로젝트의 각 패키지에 대한 변경감지 빌드를 수행합니다.", (cmd) =>
45
- cmd
46
- .version(false)
47
- .hide("help")
48
- .hide("debug")
49
- .options({
50
- config: {
51
- string: true,
52
- describe: "simplysm.js 파일 경로",
53
- },
54
- options: {
55
- string: true,
56
- array: true,
57
- describe: "옵션 설정",
58
- },
59
- packages: {
60
- string: true,
61
- array: true,
62
- describe: "수행할 패키지 설정",
63
- },
64
- inspects: {
65
- string: true,
66
- array: true,
67
- describe: "크롬 inspect를 수행할 패키지 설정",
68
- },
69
- }),
70
- )
71
- .command("build", "프로젝트의 각 패키지에 대한 빌드를 수행합니다.", (cmd) =>
72
- cmd
73
- .version(false)
74
- .hide("help")
75
- .hide("debug")
76
- .options({
77
- config: {
78
- string: true,
79
- describe: "simplysm.js 파일 경로",
80
- },
81
- options: {
82
- string: true,
83
- array: true,
84
- describe: "옵션 설정",
85
- },
86
- packages: {
87
- string: true,
88
- array: true,
89
- describe: "수행할 패키지 설정",
90
- },
91
- }),
92
- )
93
- .command("publish", "프로젝트의 각 패키지를 배포합니다.", (cmd) =>
94
- cmd
95
- .version(false)
96
- .hide("help")
97
- .hide("debug")
98
- .options({
99
- noBuild: {
100
- type: "boolean",
101
- describe: "빌드를 하지않고 배포합니다.",
102
- default: false,
103
- },
104
- config: {
105
- type: "string",
106
- describe: "simplysm.js 파일 경로",
107
- },
108
- options: {
109
- type: "string",
110
- array: true,
111
- describe: "옵션 설정",
112
- },
113
- packages: {
114
- type: "string",
115
- array: true,
116
- describe: "수행할 패키지 설정",
117
- },
118
- }),
119
- )
120
- .command("run-electron <package>", "변경감지중인 플랫폼을 ELECTRON 앱 형태로 띄웁니다.", (cmd) =>
121
- cmd
122
- .positional("package", {
123
- type: "string",
124
- describe: "패키지명",
125
- demandOption: true,
126
- })
127
- .options({
128
- config: {
129
- type: "string",
130
- describe: "simplysm.js 파일 경로",
131
- },
132
- options: {
133
- type: "string",
134
- array: true,
135
- describe: "옵션 설정",
136
- },
137
- }),
138
- )
139
- .command("build-electron-for-dev <package>", "변경감지중인 플랫폼을 ELECTRON 앱 형태로 띄웁니다.", (cmd) =>
140
- cmd
141
- .positional("package", {
142
- type: "string",
143
- describe: "패키지명",
144
- demandOption: true,
145
- })
146
- .options({
147
- config: {
148
- type: "string",
149
- describe: "simplysm.js 파일 경로",
150
- },
151
- options: {
152
- type: "string",
153
- array: true,
154
- describe: "옵션 설정",
155
- },
156
- }),
157
- )
158
- .command(
159
- "run-cordova <platform> <package> [url]",
160
- "변경감지중인 플랫폼을 코도바 디바이스에 앱 형태로 띄웁니다.",
161
- (cmd) =>
162
- cmd
163
- .positional("platform", {
164
- type: "string",
165
- describe: "빌드 플랫폼(android,...)",
166
- demandOption: true,
167
- })
168
- .positional("package", {
169
- type: "string",
170
- describe: "패키지명",
171
- demandOption: true,
172
- })
173
- .positional("url", {
174
- type: "string",
175
- describe: "Webview로 오픈할 URL",
176
- demandOption: true,
177
- }),
178
- )
179
- .command(
180
- "commit",
181
- "AI를 통해 변경사항에 대한 커밋 메시지를 작성하여, 커밋 및 푸쉬를 수행합니다.",
182
- )
183
- .command(
184
- "postinstall",
185
- "설치후 자동실행할 작업",
186
- )
187
- .parseAsync()) as any;
188
19
 
189
- if (Boolean(argv.debug)) {
190
- process.env["SD_DEBUG"] = "true";
191
- SdLogger.setConfig({
192
- console: {
193
- level: SdLoggerSeverity.debug,
194
- },
20
+ const cpuCount = os.cpus().length; // 논리 CPU 수
21
+ const affinityMaskDecimal = Math.pow(2, cpuCount) - 2; // 전체 - 1
22
+ const affinityMask = "0x" + affinityMaskDecimal.toString(16).toUpperCase();
23
+
24
+ // console.log(`Logical CPU Count: ${cpuCount}`);
25
+ // console.log(`Affinity Mask (전체 - 1): ${affinityMask}`);
26
+
27
+ // CLI 실행
28
+ const cliPath = import.meta.resolve("./sd-cli-entry");
29
+
30
+ if (path.extname(cliPath) === ".ts") {
31
+ const pid = process.pid;
32
+ const command = `powershell -Command "$p = Get-Process -Id ${pid}; $p.ProcessorAffinity = ${affinityMask}"`;
33
+ exec(command, (err) => {
34
+ if (err) {
35
+ console.error("Affinity 설정 실패:", err.message);
36
+ }
37
+ else {
38
+ console.log(`Affinity ${affinityMask} 적용됨 (PID: ${pid})`);
39
+ }
195
40
  });
41
+ await import(cliPath);
196
42
  }
197
43
  else {
198
- SdLogger.setConfig({
199
- dot: true,
44
+ const child = spawn(
45
+ "node",
46
+ ["--import=specifier-resolution-node/register", fileURLToPath(cliPath), ...process.argv.slice(2)],
47
+ );
48
+
49
+ child.on("spawn", () => {
50
+ const pid = child.pid;
51
+
52
+ const psCommand = `$p = Get-Process -Id ${pid}; $p.ProcessorAffinity = ${affinityMask}`;
53
+ const command = `powershell -Command "${psCommand}"`;
54
+
55
+ exec(command, (err) => {
56
+ if (err) {
57
+ console.error("Failed to set affinity:", err.message);
58
+ }
59
+ else {
60
+ console.log(`Affinity set to ${affinityMask} for PID ${pid}`);
61
+ }
62
+ });
200
63
  });
201
- }
202
64
 
203
- if (argv._[0] === "local-update") {
204
- await SdCliLocalUpdate.runAsync(argv);
205
- }
206
- else if (argv._[0] === "watch") {
207
- await SdCliProject.watchAsync(argv);
208
- }
209
- else if (argv._[0] === "build") {
210
- await SdCliProject.buildAsync(argv);
211
- }
212
- else if (argv._[0] === "publish") {
213
- await SdCliProject.publishAsync(argv);
214
- }
215
- else if (argv._[0] === "run-electron") {
216
- await SdCliElectron.runAsync(argv);
217
- }
218
- else if (argv._[0] === "build-electron-for-dev") {
219
- await SdCliElectron.buildForDevAsync(argv);
220
- }
221
- else if (argv._[0] === "run-cordova") {
222
- await SdCliCordova.runWebviewOnDeviceAsync(argv);
223
- }
224
- else if (argv._[0] === "commit") {
225
- await SdCliAiCommand.commitAsync();
226
- }
227
- else if (argv._[0] === "postinstall") {
228
- SdCliPostinstall.run();
229
- }
230
- else {
231
- throw new Error(`명령어가 잘못 되었습니다.\n\t${argv._[0]}\n`);
232
- }
65
+ child.on("exit", (code) => {
66
+ console.log(`CLI exited with code ${code}`);
67
+ });
68
+ }
@@ -1,42 +1,62 @@
1
1
  export class SdCliPerformanceTimer {
2
- private _startingMap = new Map<string, number>();
3
- private _resultMap = new Map<string, number>();
2
+ private _startingMap = new Map<string, { time: number; cpu: NodeJS.CpuUsage }>();
3
+ private _resultMap = new Map<string, { time: number; cpu: number }>();
4
4
 
5
- constructor(private _name: string) {}
5
+ constructor(private _name: string) {
6
+ }
6
7
 
7
8
  start(name: string) {
8
- this._startingMap.set(name, new Date().getTime());
9
+ this._startingMap.set(name, {
10
+ time: new Date().getTime(),
11
+ cpu: process.cpuUsage(),
12
+ });
9
13
  }
10
14
 
11
15
  end(name: string) {
12
- const val = this._startingMap.get(name);
13
- if (val == null) throw new Error();
14
- this._resultMap.set(name, new Date().getTime() - val);
16
+ const start = this._startingMap.get(name);
17
+ if (start == null) throw new Error(`No start record for '${name}'`);
18
+
19
+ const time = new Date().getTime() - start.time;
20
+ const cpuUsage = process.cpuUsage(start.cpu);
21
+ const cpu = (cpuUsage.user + cpuUsage.system) / 1000; // μs -> ms
22
+
23
+ this._resultMap.set(name, { time, cpu });
15
24
  this._startingMap.delete(name);
16
25
  }
17
26
 
18
27
  run<R>(name: string, fn: () => R): R {
19
28
  const startTime = new Date().getTime();
20
- let res = fn();
29
+ const startCpu = process.cpuUsage();
30
+
31
+ const finish = (res: R, start: number) => {
32
+ const duration = new Date().getTime() - start;
33
+ const cpu = (process.cpuUsage(startCpu).user + process.cpuUsage(startCpu).system) / 1000;
34
+
35
+ const prev = this._resultMap.get(name);
36
+ this._resultMap.set(name, {
37
+ time: (prev?.time ?? 0) + duration,
38
+ cpu: (prev?.cpu ?? 0) + cpu,
39
+ });
40
+
41
+ return res;
42
+ };
43
+
44
+ const res = fn();
21
45
  if (res instanceof Promise) {
22
- return res.then((realRes) => {
23
- const duration = new Date().getTime() - startTime;
24
- this._resultMap.update(name, (v) => (v ?? 0) + duration);
25
- return realRes;
26
- }) as R;
46
+ return res.then(realRes => finish(realRes, startTime)) as R;
27
47
  }
28
48
 
29
- const duration = new Date().getTime() - startTime;
30
- this._resultMap.update(name, (v) => (v ?? 0) + duration);
31
- return res;
49
+ return finish(res, startTime);
32
50
  }
33
51
 
34
52
  toString() {
35
53
  return `${this._name} 성능 보고서
36
54
  ------------------------------------
37
55
  ${Array.from(this._resultMap.entries())
38
- .map((en) => `${en[0]}: ${en[1].toLocaleString()}ms`)
39
- .join("\n")}
56
+ .map(([key, val]) =>
57
+ `${key}: ${val.time.toLocaleString()}ms (${val.cpu.toLocaleString()}ms CPU)`,
58
+ )
59
+ .join("\n")}
40
60
  ------------------------------------`;
41
61
  }
42
62
  }
package/bin/sd-cli.js DELETED
@@ -1,12 +0,0 @@
1
- #!/usr/bin/env node
2
-
3
- import { spawn } from "node:child_process";
4
- import { fileURLToPath } from "node:url";
5
- import { dirname, join } from "node:path";
6
-
7
- const __dirname = dirname(fileURLToPath(import.meta.url));
8
- const cliPath = join(__dirname, "../dist/sd-cli.js");
9
-
10
- spawn("node", ["--import=specifier-resolution-node/register", cliPath, ...process.argv.slice(2)], {
11
- stdio: "inherit"
12
- });