@simplysm/core-node 14.0.10 → 14.0.12

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/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # @simplysm/core-node
2
2
 
3
- Node.js-specific core utilities for the Simplysm framework. Provides enhanced file system operations, path utilities, file watching, and a type-safe worker thread abstraction.
3
+ Node.js-specific core utilities for the Simplysm framework. Provides enhanced file system operations, child process execution, path utilities, file watching, and a type-safe worker thread abstraction.
4
4
 
5
5
  ## Installation
6
6
 
@@ -48,18 +48,37 @@ Namespace `fsx` -- Enhanced file system functions (sync and async pairs).
48
48
 
49
49
  > See [docs/fsx.md](./docs/fsx.md) for details.
50
50
 
51
+ ### Utilities / cpx
52
+
53
+ Namespace `cpx` -- Child process execution utilities.
54
+
55
+ | API | Type | Description |
56
+ |-----|------|-------------|
57
+ | `ExecOptions` | interface | Options for `exec` |
58
+ | `ExecSyncOptions` | type | Options for `execSync` (same as `ExecOptions` without `reject`) |
59
+ | `ExecResult` | interface | Result of a child process execution |
60
+ | `ExecProcess` | class | `PromiseLike<ExecResult>` wrapper with `kill()` support |
61
+ | `exec` | function | Spawn a child process (async, returns `ExecProcess`) |
62
+ | `execSync` | function | Spawn a child process (sync) |
63
+ | `codePageToEncoding` | function | Convert Windows code page number to encoding name |
64
+ | `getSystemEncoding` | function | Detect system console encoding (cached) |
65
+ | `resetEncodingCache` | function | Clear the cached system encoding |
66
+ | `decodeBytes` | function | Decode `Uint8Array` output with system encoding fallback |
67
+
68
+ > See [docs/cpx.md](./docs/cpx.md) for details.
69
+
51
70
  ### Utilities / pathx
52
71
 
53
72
  Namespace `pathx` -- Path manipulation utilities.
54
73
 
55
74
  | API | Type | Description |
56
75
  |-----|------|-------------|
57
- | `NormPath` | type | Branded string type for normalized paths |
76
+ | `PosixPath` | type | Branded string type for POSIX-style paths |
58
77
  | `posix` | function | Convert path to POSIX style (backslash to slash) |
78
+ | `posixResolve` | function | Resolve to absolute path and convert to POSIX style |
59
79
  | `changeFileDirectory` | function | Change a file's parent directory |
60
80
  | `basenameWithoutExt` | function | Get filename without extension |
61
81
  | `isChildPath` | function | Check if a path is a child of another |
62
- | `norm` | function | Normalize and resolve path to `NormPath` |
63
82
  | `filterByTargets` | function | Filter file paths by target directory prefixes |
64
83
 
65
84
  > See [docs/pathx.md](./docs/pathx.md) for details.
@@ -110,15 +129,32 @@ await fsx.copy("/src", "/dest", (p) => !p.endsWith(".tmp"));
110
129
  const tsFiles = await fsx.glob("/project/src/**/*.ts");
111
130
  ```
112
131
 
132
+ ### Child process execution
133
+
134
+ ```typescript
135
+ import { cpx } from "@simplysm/core-node";
136
+
137
+ // Await result
138
+ const result = await cpx.exec("git", ["status"], { cwd: "/project" });
139
+ // result: { stdout, stderr, exitCode }
140
+
141
+ // Kill a running process
142
+ const proc = cpx.exec("long-running-cmd", []);
143
+ proc.kill();
144
+
145
+ // Inherit stdio, don't reject on non-zero exit
146
+ await cpx.exec("make", ["build"], { stdio: "inherit", reject: false });
147
+ ```
148
+
113
149
  ### Path utilities
114
150
 
115
151
  ```typescript
116
152
  import { pathx } from "@simplysm/core-node";
117
153
 
118
154
  const p = pathx.posix("C:\\Users\\test"); // "C:/Users/test"
155
+ const abs = pathx.posixResolve("./relative"); // absolute PosixPath
119
156
  const name = pathx.basenameWithoutExt("file.spec.ts"); // "file.spec"
120
157
  const isChild = pathx.isChildPath("/a/b/c", "/a/b"); // true
121
- const norm = pathx.norm("/some/path"); // NormPath
122
158
  ```
123
159
 
124
160
  ### File watcher
@@ -38,6 +38,8 @@ export interface FsWatcherChangeInfo {
38
38
  * await watcher.close();
39
39
  */
40
40
  export declare class FsWatcher {
41
+ private static readonly _MAX_RETRIES;
42
+ private static readonly _RETRY_DELAY_MS;
41
43
  /**
42
44
  * 파일 감시를 시작한다 (비동기).
43
45
  * ready 이벤트가 발생할 때까지 대기한다.
@@ -46,12 +48,34 @@ export declare class FsWatcher {
46
48
  * @param options - chokidar 옵션
47
49
  */
48
50
  static watch(paths: string[], options?: chokidar.ChokidarOptions): Promise<FsWatcher>;
49
- private readonly _watcher;
51
+ private _watcher;
52
+ private readonly _paths;
53
+ private readonly _options;
50
54
  private readonly _ignoreInitial;
51
55
  private readonly _debounceQueues;
52
56
  private readonly _globMatchers;
57
+ private readonly _allHandlers;
58
+ private readonly _creationStack;
59
+ private _retryCount;
60
+ private _isRecovering;
53
61
  private readonly _logger;
54
62
  private constructor();
63
+ /**
64
+ * 저장된 paths와 options로 chokidar watcher를 생성한다.
65
+ * glob 패턴에서 base 디렉토리를 추출하고 globMatchers를 재구성한다.
66
+ */
67
+ private _buildChokidarWatcher;
68
+ /**
69
+ * chokidar watcher에 에러 핸들러를 등록한다.
70
+ * EPERM 에러 감지 시 자동 복구를 시도한다.
71
+ */
72
+ private _setupErrorHandler;
73
+ /**
74
+ * EPERM 에러 발생 시 watcher를 재생성한다.
75
+ * 최대 _MAX_RETRIES회까지 _RETRY_DELAY_MS 간격으로 재시도한다.
76
+ * 성공 시 재시도 카운터를 초기화한다.
77
+ */
78
+ private _handleEperm;
55
79
  /**
56
80
  * 파일 변경 이벤트 핸들러를 등록한다.
57
81
  * 지정된 지연 시간 동안 이벤트를 수집하여 콜백을 한 번 호출한다.
@@ -1 +1 @@
1
- {"version":3,"file":"fs-watcher.d.ts","sourceRoot":"","sources":["../../src/features/fs-watcher.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,QAAQ,MAAM,UAAU,CAAC;AAKrC,OAAO,EAAE,KAAK,SAAS,EAAS,MAAM,eAAe,CAAC;AAyBtD;;GAEG;AACH,QAAA,MAAM,iBAAiB,6DAA8D,CAAC;AAEtF;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEhE;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,gBAAgB;IAChB,KAAK,EAAE,cAAc,CAAC;IACtB,4BAA4B;IAC5B,IAAI,EAAE,SAAS,CAAC;CACjB;AAMD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,SAAS;IACpB;;;;;;OAMG;WACU,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,QAAQ,CAAC,eAAe,GAAG,OAAO,CAAC,SAAS,CAAC;IAqB3F,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAqB;IAC9C,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAiB;IAChD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAuB;IACvD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAmB;IAEjD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAoC;IAE5D,OAAO;IA6BP;;;;;;OAMG;IACH,QAAQ,CACN,GAAG,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,EACvB,EAAE,EAAE,CAAC,WAAW,EAAE,mBAAmB,EAAE,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,GAC/D,IAAI;IA2EP;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAO7B"}
1
+ {"version":3,"file":"fs-watcher.d.ts","sourceRoot":"","sources":["../../src/features/fs-watcher.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,QAAQ,MAAM,UAAU,CAAC;AAKrC,OAAO,EAAE,KAAK,SAAS,EAAS,MAAM,eAAe,CAAC;AAyBtD;;GAEG;AACH,QAAA,MAAM,iBAAiB,6DAA8D,CAAC;AAEtF;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEhE;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,gBAAgB;IAChB,KAAK,EAAE,cAAc,CAAC;IACtB,4BAA4B;IAC5B,IAAI,EAAE,SAAS,CAAC;CACjB;AAMD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,SAAS;IACpB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAK;IACzC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAQ;IAE/C;;;;;;OAMG;WACU,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,QAAQ,CAAC,eAAe,GAAG,OAAO,CAAC,SAAS,CAAC;IAqB3F,OAAO,CAAC,QAAQ,CAAqB;IACrC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAW;IAClC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA2B;IACpD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAiB;IAChD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAuB;IACvD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAmB;IACjD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAoD;IACjF,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IACxC,OAAO,CAAC,WAAW,CAAK;IACxB,OAAO,CAAC,aAAa,CAAS;IAE9B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAoC;IAE5D,OAAO;IAYP;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAwB7B;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAkB1B;;;;OAIG;YACW,YAAY;IA0D1B;;;;;;OAMG;IACH,QAAQ,CACN,GAAG,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,EACvB,EAAE,EAAE,CAAC,WAAW,EAAE,mBAAmB,EAAE,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,GAC/D,IAAI;IAiFP;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAO7B"}
@@ -50,6 +50,8 @@ const FS_WATCHER_EVENTS = ["add", "addDir", "change", "unlink", "unlinkDir"];
50
50
  * await watcher.close();
51
51
  */
52
52
  export class FsWatcher {
53
+ static _MAX_RETRIES = 3;
54
+ static _RETRY_DELAY_MS = 1000;
53
55
  /**
54
56
  * 파일 감시를 시작한다 (비동기).
55
57
  * ready 이벤트가 발생할 때까지 대기한다.
@@ -73,13 +75,33 @@ export class FsWatcher {
73
75
  });
74
76
  }
75
77
  _watcher;
78
+ _paths;
79
+ _options;
76
80
  _ignoreInitial = true;
77
81
  _debounceQueues = [];
78
82
  _globMatchers = [];
83
+ _allHandlers = [];
84
+ _creationStack;
85
+ _retryCount = 0;
86
+ _isRecovering = false;
79
87
  _logger = consola.withTag("sd-fs-watcher");
80
88
  constructor(paths, options) {
89
+ // 생성 시점의 스택트레이스를 저장 (에러 발생 시 호출부 추적용)
90
+ this._creationStack = new Error().stack ?? "";
91
+ this._paths = [...paths];
92
+ this._options = { ...options };
93
+ this._watcher = this._buildChokidarWatcher();
94
+ this._ignoreInitial = options?.ignoreInitial ?? this._ignoreInitial;
95
+ this._setupErrorHandler();
96
+ }
97
+ /**
98
+ * 저장된 paths와 options로 chokidar watcher를 생성한다.
99
+ * glob 패턴에서 base 디렉토리를 추출하고 globMatchers를 재구성한다.
100
+ */
101
+ _buildChokidarWatcher() {
81
102
  const watchPaths = [];
82
- for (const p of paths) {
103
+ this._globMatchers.length = 0;
104
+ for (const p of this._paths) {
83
105
  const posixPath = posix(p);
84
106
  if (GLOB_CHARS_RE.test(posixPath)) {
85
107
  this._globMatchers.push(new Minimatch(posixPath, { dot: true }));
@@ -91,17 +113,79 @@ export class FsWatcher {
91
113
  }
92
114
  // 중복 경로 제거
93
115
  const uniquePaths = [...new Set(watchPaths)];
94
- this._watcher = chokidar.watch(uniquePaths, {
116
+ return chokidar.watch(uniquePaths, {
95
117
  persistent: true,
96
- ...options,
118
+ ...this._options,
97
119
  ignoreInitial: true,
98
120
  });
99
- this._ignoreInitial = options?.ignoreInitial ?? this._ignoreInitial;
100
- // 감시 중 발생하는 오류를 로깅
121
+ }
122
+ /**
123
+ * chokidar watcher에 에러 핸들러를 등록한다.
124
+ * EPERM 에러 감지 시 자동 복구를 시도한다.
125
+ */
126
+ _setupErrorHandler() {
101
127
  this._watcher.on("error", (err) => {
102
- this._logger.error("FsWatcher 오류:", err);
128
+ const errDetail = err instanceof Error ? (err.stack ?? err.message) : String(err);
129
+ this._logger.error(`FsWatcher 오류: ${errDetail}\n---- creation stack ----\n${this._creationStack}`);
130
+ if (err instanceof Error &&
131
+ "code" in err &&
132
+ err.code === "EPERM" &&
133
+ !this._isRecovering) {
134
+ void this._handleEperm();
135
+ }
103
136
  });
104
137
  }
138
+ /**
139
+ * EPERM 에러 발생 시 watcher를 재생성한다.
140
+ * 최대 _MAX_RETRIES회까지 _RETRY_DELAY_MS 간격으로 재시도한다.
141
+ * 성공 시 재시도 카운터를 초기화한다.
142
+ */
143
+ async _handleEperm() {
144
+ if (this._isRecovering)
145
+ return;
146
+ this._isRecovering = true;
147
+ while (this._retryCount < FsWatcher._MAX_RETRIES) {
148
+ this._retryCount++;
149
+ this._logger.warn(`EPERM 감지 — ${this._retryCount}/${FsWatcher._MAX_RETRIES} watcher 재시작 시도...`);
150
+ try {
151
+ try {
152
+ await this._watcher.close();
153
+ }
154
+ catch {
155
+ // close 실패 무시
156
+ }
157
+ await new Promise((resolve) => setTimeout(resolve, FsWatcher._RETRY_DELAY_MS));
158
+ this._watcher = this._buildChokidarWatcher();
159
+ this._setupErrorHandler();
160
+ for (const handler of this._allHandlers) {
161
+ this._watcher.on("all", handler);
162
+ }
163
+ await new Promise((resolve, reject) => {
164
+ const onReady = () => {
165
+ this._watcher.removeListener("error", onError);
166
+ resolve();
167
+ };
168
+ const onError = (e) => {
169
+ this._watcher.removeListener("ready", onReady);
170
+ reject(e);
171
+ };
172
+ this._watcher.once("ready", onReady);
173
+ this._watcher.once("error", onError);
174
+ });
175
+ // 성공 — 카운터 초기화 후 복구 완료
176
+ this._retryCount = 0;
177
+ this._isRecovering = false;
178
+ this._logger.success("watcher 재시작 완료");
179
+ return;
180
+ }
181
+ catch (err) {
182
+ const errDetail = err instanceof Error ? err.message : String(err);
183
+ this._logger.error(`watcher 재시작 실패 (${this._retryCount}/${FsWatcher._MAX_RETRIES}): ${errDetail}`);
184
+ }
185
+ }
186
+ this._logger.error(`EPERM 재시도 최대 횟수(${FsWatcher._MAX_RETRIES}회) 초과 — 재시도 중단`);
187
+ this._isRecovering = false;
188
+ }
105
189
  /**
106
190
  * 파일 변경 이벤트 핸들러를 등록한다.
107
191
  * 지정된 지연 시간 동안 이벤트를 수집하여 콜백을 한 번 호출한다.
@@ -119,7 +203,7 @@ export class FsWatcher {
119
203
  await cb([]);
120
204
  });
121
205
  }
122
- this._watcher.on("all", (event, filePath) => {
206
+ const handler = (event, filePath) => {
123
207
  // 지원되는 이벤트만 처리
124
208
  if (!FS_WATCHER_EVENTS.includes(event))
125
209
  return;
@@ -150,10 +234,14 @@ export class FsWatcher {
150
234
  // add 후 unlink → 변경 없음 (삭제)
151
235
  changeInfoMap.delete(filePath);
152
236
  }
153
- else if (prevEvent === "unlink" && (event === "add" || event === "change")) {
154
- // unlink 후 add/change → add (파일 재생성)
237
+ else if (prevEvent === "unlink" && event === "add") {
238
+ // unlink 후 add → add (파일 재생성)
155
239
  changeInfoMap.set(filePath, "add");
156
240
  }
241
+ else if (prevEvent === "unlink" && event === "change") {
242
+ // unlink 후 change → change (이전 사이클에서 이미 존재하던 파일이 삭제 후 수정된 경우)
243
+ changeInfoMap.set(filePath, "change");
244
+ }
157
245
  else if (prevEvent === "unlinkDir" && event === "addDir") {
158
246
  // unlinkDir 후 addDir → addDir (디렉토리 재생성)
159
247
  changeInfoMap.set(filePath, "addDir");
@@ -172,7 +260,9 @@ export class FsWatcher {
172
260
  }));
173
261
  await cb(changeInfos);
174
262
  });
175
- });
263
+ };
264
+ this._allHandlers.push(handler);
265
+ this._watcher.on("all", handler);
176
266
  return this;
177
267
  }
178
268
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"fs-watcher.js","sourceRoot":"","sources":["../../src/features/fs-watcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fs-watcher.js","sourceRoot":"","sources":["../../src/features/fs-watcher.ts"],"names":[],"mappings":"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"}
@@ -1,30 +1,30 @@
1
- import type { ChildProcess } from "child_process";
1
+ import type { ChildProcess, SpawnOptions, SpawnSyncOptions } from "child_process";
2
2
  export declare function codePageToEncoding(codePage: number): string;
3
3
  export declare function resetEncodingCache(): void;
4
4
  export declare function getSystemEncoding(): string;
5
- export interface ExecOptions {
6
- cwd?: string;
7
- env?: Record<string, string>;
8
- stdio?: "pipe" | "inherit";
9
- shell?: boolean;
10
- reject?: boolean;
11
- }
12
- export type ExecSyncOptions = Omit<ExecOptions, "reject">;
13
- export interface ExecResult {
5
+ export interface SpawnResult {
14
6
  stdout: string;
15
7
  stderr: string;
16
8
  exitCode: number;
17
9
  }
10
+ export declare function resolveStdioPipe(stdio: SpawnOptions["stdio"]): {
11
+ stdout: boolean;
12
+ stderr: boolean;
13
+ };
18
14
  export declare function decodeBytes(raw: Uint8Array, systemEncoding?: string): string;
19
- export declare class ExecProcess implements PromiseLike<ExecResult> {
15
+ export declare class SpawnProcess implements PromiseLike<SpawnResult> {
20
16
  private readonly _process;
21
17
  private readonly _promise;
22
- constructor(cp: ChildProcess, promise: Promise<ExecResult>);
18
+ constructor(cp: ChildProcess, promise: Promise<SpawnResult>);
23
19
  get pid(): number | undefined;
24
- then<TResult1 = ExecResult, TResult2 = never>(onfulfilled?: ((value: ExecResult) => TResult1 | PromiseLike<TResult1>) | null, onrejected?: ((reason: unknown) => TResult2 | PromiseLike<TResult2>) | null): Promise<TResult1 | TResult2>;
25
- catch<TResult = never>(onrejected?: ((reason: unknown) => TResult | PromiseLike<TResult>) | null): Promise<ExecResult | TResult>;
20
+ then<TResult1 = SpawnResult, TResult2 = never>(onfulfilled?: ((value: SpawnResult) => TResult1 | PromiseLike<TResult1>) | null, onrejected?: ((reason: unknown) => TResult2 | PromiseLike<TResult2>) | null): Promise<TResult1 | TResult2>;
21
+ catch<TResult = never>(onrejected?: ((reason: unknown) => TResult | PromiseLike<TResult>) | null): Promise<SpawnResult | TResult>;
26
22
  kill(signal?: NodeJS.Signals | number): boolean;
27
23
  }
28
- export declare function exec(cmd: string, args: string[], options?: ExecOptions): ExecProcess;
29
- export declare function execSync(cmd: string, args: string[], options?: ExecSyncOptions): ExecResult;
24
+ export declare function spawn(cmd: string, args: string[], options?: SpawnOptions & {
25
+ reject?: boolean;
26
+ }): SpawnProcess;
27
+ export declare function spawnSync(cmd: string, args: string[], options?: SpawnSyncOptions & {
28
+ reject?: boolean;
29
+ }): SpawnResult;
30
30
  //# sourceMappingURL=cp.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"cp.d.ts","sourceRoot":"","sources":["../../src/utils/cp.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAkBlD,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAE3D;AAED,wBAAgB,kBAAkB,IAAI,IAAI,CAEzC;AAED,wBAAgB,iBAAiB,IAAI,MAAM,CA2B1C;AAID,MAAM,WAAW,WAAW;IAC1B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,MAAM,eAAe,GAAG,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;AAE1D,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB;AAMD,wBAAgB,WAAW,CAAC,GAAG,EAAE,UAAU,EAAE,cAAc,CAAC,EAAE,MAAM,GAAG,MAAM,CAY5E;AAMD,qBAAa,WAAY,YAAW,WAAW,CAAC,UAAU,CAAC;IACzD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAe;IACxC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAsB;gBAEnC,EAAE,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC;IAK1D,IAAI,GAAG,IAAI,MAAM,GAAG,SAAS,CAE5B;IAED,IAAI,CAAC,QAAQ,GAAG,UAAU,EAAE,QAAQ,GAAG,KAAK,EAC1C,WAAW,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,UAAU,KAAK,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC,GAAG,IAAI,EAC9E,UAAU,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,OAAO,KAAK,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC,GAAG,IAAI,GAC1E,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAI/B,KAAK,CAAC,OAAO,GAAG,KAAK,EACnB,UAAU,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,OAAO,KAAK,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC,GAAG,IAAI,GACxE,OAAO,CAAC,UAAU,GAAG,OAAO,CAAC;IAIhC,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,OAAO,GAAG,MAAM,GAAG,OAAO;CAGhD;AAMD,wBAAgB,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,WAAW,CAiDpF;AAED,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,UAAU,CAkB3F"}
1
+ {"version":3,"file":"cp.d.ts","sourceRoot":"","sources":["../../src/utils/cp.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAkBlF,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAE3D;AAED,wBAAgB,kBAAkB,IAAI,IAAI,CAEzC;AAED,wBAAgB,iBAAiB,IAAI,MAAM,CA2B1C;AAID,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB;AAMD,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC,GAC3B;IAAE,MAAM,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,OAAO,CAAA;CAAE,CAMtC;AAMD,wBAAgB,WAAW,CAAC,GAAG,EAAE,UAAU,EAAE,cAAc,CAAC,EAAE,MAAM,GAAG,MAAM,CAY5E;AAMD,qBAAa,YAAa,YAAW,WAAW,CAAC,WAAW,CAAC;IAC3D,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAe;IACxC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAuB;gBAEpC,EAAE,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC;IAK3D,IAAI,GAAG,IAAI,MAAM,GAAG,SAAS,CAE5B;IAED,IAAI,CAAC,QAAQ,GAAG,WAAW,EAAE,QAAQ,GAAG,KAAK,EAC3C,WAAW,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,WAAW,KAAK,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC,GAAG,IAAI,EAC/E,UAAU,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,OAAO,KAAK,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC,GAAG,IAAI,GAC1E,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAI/B,KAAK,CAAC,OAAO,GAAG,KAAK,EACnB,UAAU,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,OAAO,KAAK,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC,GAAG,IAAI,GACxE,OAAO,CAAC,WAAW,GAAG,OAAO,CAAC;IAIjC,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,OAAO,GAAG,MAAM,GAAG,OAAO;CAGhD;AAMD,wBAAgB,KAAK,CACnB,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,CAAC,EAAE,YAAY,GAAG;IAAE,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,GAC5C,YAAY,CAqCd;AAED,wBAAgB,SAAS,CACvB,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,CAAC,EAAE,gBAAgB,GAAG;IAAE,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,GAChD,WAAW,CAoBb"}
package/dist/utils/cp.js CHANGED
@@ -49,6 +49,15 @@ export function getSystemEncoding() {
49
49
  return _cachedEncoding;
50
50
  }
51
51
  //#endregion
52
+ //#region resolveStdioPipe
53
+ export function resolveStdioPipe(stdio) {
54
+ if (Array.isArray(stdio)) {
55
+ return { stdout: stdio[1] === "pipe", stderr: stdio[2] === "pipe" };
56
+ }
57
+ const isPipe = stdio === "pipe" || stdio == null;
58
+ return { stdout: isPipe, stderr: isPipe };
59
+ }
60
+ //#endregion
52
61
  //#region decodeBytes
53
62
  export function decodeBytes(raw, systemEncoding) {
54
63
  const encoding = systemEncoding ?? getSystemEncoding();
@@ -63,8 +72,8 @@ export function decodeBytes(raw, systemEncoding) {
63
72
  }
64
73
  }
65
74
  //#endregion
66
- //#region ExecProcess
67
- export class ExecProcess {
75
+ //#region SpawnProcess
76
+ export class SpawnProcess {
68
77
  _process;
69
78
  _promise;
70
79
  constructor(cp, promise) {
@@ -85,65 +94,53 @@ export class ExecProcess {
85
94
  }
86
95
  }
87
96
  //#endregion
88
- //#region exec / execSync
89
- export function exec(cmd, args, options) {
90
- const isInherit = options?.stdio === "inherit";
91
- const cp = cpSpawn(cmd, args, {
92
- cwd: options?.cwd,
93
- env: options?.env != null ? { ...process.env, ...options.env } : undefined,
94
- stdio: isInherit ? "inherit" : "pipe",
95
- shell: options?.shell ?? false,
96
- });
97
+ //#region spawn / spawnSync
98
+ export function spawn(cmd, args, options) {
99
+ const opts = { stdio: "pipe", ...options, env: { ...process.env, ...options?.env } };
100
+ const cp = cpSpawn(cmd, args, opts);
101
+ const { stdout: stdoutIsPipe, stderr: stderrIsPipe } = resolveStdioPipe(opts.stdio);
97
102
  const promise = new Promise((resolve, reject) => {
98
103
  cp.on("error", (err) => {
99
- reject(Object.assign(err, { stdout: "", stderr: "", exitCode: 1 }));
104
+ reject(err);
100
105
  });
101
- if (isInherit) {
102
- cp.on("close", (code, signal) => {
103
- const exitCode = code ?? (signal != null ? 1 : 0);
104
- const result = { stdout: "", stderr: "", exitCode };
105
- if (exitCode !== 0 && options.reject !== false) {
106
- reject(Object.assign(new Error(`Command failed: ${cmd} ${args.join(" ")}`), result));
107
- }
108
- else {
109
- resolve(result);
110
- }
111
- });
112
- return;
113
- }
114
106
  const stdoutChunks = [];
115
107
  const stderrChunks = [];
116
- cp.stdout.on("data", (chunk) => stdoutChunks.push(chunk));
117
- cp.stderr.on("data", (chunk) => stderrChunks.push(chunk));
108
+ if (stdoutIsPipe) {
109
+ cp.stdout.on("data", (chunk) => stdoutChunks.push(chunk));
110
+ }
111
+ if (stderrIsPipe) {
112
+ cp.stderr.on("data", (chunk) => stderrChunks.push(chunk));
113
+ }
118
114
  cp.on("close", (code, signal) => {
119
115
  const exitCode = code ?? (signal != null ? 1 : 0);
120
- const stdout = decodeBytes(bytes.concat(stdoutChunks));
121
- const stderr = decodeBytes(bytes.concat(stderrChunks));
116
+ const stdout = stdoutIsPipe ? decodeBytes(bytes.concat(stdoutChunks)) : "";
117
+ const stderr = stderrIsPipe ? decodeBytes(bytes.concat(stderrChunks)) : "";
122
118
  const result = { stdout, stderr, exitCode };
123
119
  if (exitCode !== 0 && options?.reject !== false) {
124
- reject(Object.assign(new Error(`Command failed: ${cmd} ${args.join(" ")}`), result));
120
+ reject(new Error(`Command failed: ${cmd} ${args.join(" ")}`));
125
121
  }
126
122
  else {
127
123
  resolve(result);
128
124
  }
129
125
  });
130
126
  });
131
- return new ExecProcess(cp, promise);
127
+ return new SpawnProcess(cp, promise);
132
128
  }
133
- export function execSync(cmd, args, options) {
134
- const isInherit = options?.stdio === "inherit";
135
- const result = cpSpawnSync(cmd, args, {
136
- cwd: options?.cwd,
137
- env: options?.env != null ? { ...process.env, ...options.env } : undefined,
138
- stdio: isInherit ? "inherit" : "pipe",
139
- shell: options?.shell ?? false,
140
- });
141
- if (isInherit) {
142
- return { stdout: "", stderr: "", exitCode: result.status ?? 0 };
129
+ export function spawnSync(cmd, args, options) {
130
+ const opts = {
131
+ stdio: "pipe",
132
+ ...options,
133
+ env: { ...process.env, ...options?.env },
134
+ };
135
+ const result = cpSpawnSync(cmd, args, opts);
136
+ const { stdout: stdoutIsPipe, stderr: stderrIsPipe } = resolveStdioPipe(opts.stdio);
137
+ const stdout = stdoutIsPipe ? decodeBytes(result.stdout) : "";
138
+ const stderr = stderrIsPipe ? decodeBytes(result.stderr) : "";
139
+ const exitCode = result.status ?? 0;
140
+ if (exitCode !== 0 && options?.reject !== false) {
141
+ throw new Error(`Command failed: ${cmd} ${args.join(" ")}`);
143
142
  }
144
- const stdout = decodeBytes(result.stdout);
145
- const stderr = decodeBytes(result.stderr);
146
- return { stdout, stderr, exitCode: result.status ?? 0 };
143
+ return { stdout, stderr, exitCode };
147
144
  }
148
145
  //#endregion
149
146
  //# sourceMappingURL=cp.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cp.js","sourceRoot":"","sources":["../../src/utils/cp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cp.js","sourceRoot":"","sources":["../../src/utils/cp.ts"],"names":[],"mappings":"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"}
@@ -74,15 +74,15 @@ export declare function readSync(targetPath: string): string;
74
74
  */
75
75
  export declare function read(targetPath: string): Promise<string>;
76
76
  /**
77
- * 파일을 Buffer로 읽는다.
77
+ * 파일을 Uint8Array로 읽는다.
78
78
  * @param targetPath - 읽을 파일 경로
79
79
  */
80
- export declare function readBufferSync(targetPath: string): Buffer;
80
+ export declare function readBytesSync(targetPath: string): Uint8Array;
81
81
  /**
82
- * 파일을 Buffer로 읽는다 (비동기).
82
+ * 파일을 Uint8Array로 읽는다 (비동기).
83
83
  * @param targetPath - 읽을 파일 경로
84
84
  */
85
- export declare function readBuffer(targetPath: string): Promise<Buffer>;
85
+ export declare function readBytes(targetPath: string): Promise<Uint8Array>;
86
86
  /**
87
87
  * JSON 파일을 읽는다 (JsonConvert 사용).
88
88
  * @param targetPath - 읽을 JSON 파일 경로
@@ -1 +1 @@
1
- {"version":3,"file":"fs.d.ts","sourceRoot":"","sources":["../../src/utils/fs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fs.d.ts","sourceRoot":"","sources":["../../src/utils/fs.ts"],"names":[],"mappings":"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"}