@plugjs/plug 0.0.14 → 0.0.16

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.
Files changed (212) hide show
  1. package/dist/async.cjs +20 -19
  2. package/dist/async.cjs.map +1 -1
  3. package/dist/async.d.ts +9 -9
  4. package/dist/async.mjs +18 -17
  5. package/dist/async.mjs.map +1 -1
  6. package/dist/build.cjs +113 -110
  7. package/dist/build.cjs.map +2 -2
  8. package/dist/build.d.ts +14 -56
  9. package/dist/build.mjs +114 -111
  10. package/dist/build.mjs.map +2 -2
  11. package/dist/files.cjs +2 -16
  12. package/dist/files.cjs.map +1 -1
  13. package/dist/files.d.ts +3 -10
  14. package/dist/files.mjs +3 -17
  15. package/dist/files.mjs.map +1 -1
  16. package/dist/fork.cjs +28 -40
  17. package/dist/fork.cjs.map +1 -1
  18. package/dist/fork.d.ts +6 -27
  19. package/dist/fork.mjs +29 -40
  20. package/dist/fork.mjs.map +1 -1
  21. package/dist/helpers.cjs +27 -61
  22. package/dist/helpers.cjs.map +2 -2
  23. package/dist/helpers.d.ts +29 -31
  24. package/dist/helpers.mjs +27 -62
  25. package/dist/helpers.mjs.map +2 -2
  26. package/dist/index.cjs +15 -2
  27. package/dist/index.cjs.map +1 -1
  28. package/dist/index.d.ts +9 -13
  29. package/dist/index.mjs +7 -2
  30. package/dist/index.mjs.map +1 -1
  31. package/dist/log/colors.cjs +3 -1
  32. package/dist/log/colors.cjs.map +1 -1
  33. package/dist/log/colors.d.ts +2 -2
  34. package/dist/log/colors.mjs +3 -1
  35. package/dist/log/colors.mjs.map +1 -1
  36. package/dist/log/emit.d.ts +1 -1
  37. package/dist/log/logger.cjs +4 -0
  38. package/dist/log/logger.cjs.map +1 -1
  39. package/dist/log/logger.d.ts +4 -1
  40. package/dist/log/logger.mjs +4 -0
  41. package/dist/log/logger.mjs.map +1 -1
  42. package/dist/log/options.d.ts +1 -1
  43. package/dist/log/report.cjs +2 -11
  44. package/dist/log/report.cjs.map +1 -1
  45. package/dist/log/report.d.ts +36 -4
  46. package/dist/log/report.mjs +1 -10
  47. package/dist/log/report.mjs.map +1 -1
  48. package/dist/log.cjs +1 -1
  49. package/dist/log.cjs.map +1 -1
  50. package/dist/log.d.ts +6 -6
  51. package/dist/log.mjs +2 -2
  52. package/dist/log.mjs.map +1 -1
  53. package/dist/pipe.cjs +69 -26
  54. package/dist/pipe.cjs.map +1 -1
  55. package/dist/pipe.d.ts +178 -119
  56. package/dist/pipe.mjs +71 -24
  57. package/dist/pipe.mjs.map +1 -1
  58. package/dist/plugs/copy.cjs +15 -25
  59. package/dist/plugs/copy.cjs.map +2 -2
  60. package/dist/plugs/copy.d.ts +14 -13
  61. package/dist/plugs/copy.mjs +15 -17
  62. package/dist/plugs/copy.mjs.map +2 -2
  63. package/dist/plugs/coverage/analysis.d.ts +2 -2
  64. package/dist/plugs/coverage/report.cjs +1 -1
  65. package/dist/plugs/coverage/report.cjs.map +1 -1
  66. package/dist/plugs/coverage/report.d.ts +3 -3
  67. package/dist/plugs/coverage/report.mjs +1 -1
  68. package/dist/plugs/coverage/report.mjs.map +1 -1
  69. package/dist/plugs/coverage.cjs +20 -26
  70. package/dist/plugs/coverage.cjs.map +1 -1
  71. package/dist/plugs/coverage.d.ts +33 -30
  72. package/dist/plugs/coverage.mjs +21 -19
  73. package/dist/plugs/coverage.mjs.map +1 -1
  74. package/dist/plugs/debug.cjs +12 -36
  75. package/dist/plugs/debug.cjs.map +1 -1
  76. package/dist/plugs/debug.d.ts +4 -11
  77. package/dist/plugs/debug.mjs +30 -21
  78. package/dist/plugs/debug.mjs.map +1 -1
  79. package/dist/plugs/esbuild/fix-extensions.mjs +1 -1
  80. package/dist/plugs/esbuild/fix-extensions.mjs.map +1 -1
  81. package/dist/plugs/esbuild.cjs +14 -25
  82. package/dist/plugs/esbuild.cjs.map +1 -1
  83. package/dist/plugs/esbuild.d.ts +11 -16
  84. package/dist/plugs/esbuild.mjs +14 -17
  85. package/dist/plugs/esbuild.mjs.map +1 -1
  86. package/dist/plugs/eslint/runner.cjs +5 -6
  87. package/dist/plugs/eslint/runner.cjs.map +1 -1
  88. package/dist/plugs/eslint/runner.d.ts +6 -20
  89. package/dist/plugs/eslint/runner.mjs +6 -7
  90. package/dist/plugs/eslint/runner.mjs.map +1 -1
  91. package/dist/{task.cjs → plugs/eslint.cjs} +7 -24
  92. package/dist/plugs/eslint.cjs.map +6 -0
  93. package/dist/plugs/eslint.d.ts +34 -0
  94. package/dist/plugs/eslint.mjs +5 -0
  95. package/dist/plugs/eslint.mjs.map +6 -0
  96. package/dist/plugs/exec.cjs +20 -24
  97. package/dist/plugs/exec.cjs.map +1 -1
  98. package/dist/plugs/exec.d.ts +53 -53
  99. package/dist/plugs/exec.mjs +20 -23
  100. package/dist/plugs/exec.mjs.map +1 -1
  101. package/dist/plugs/filter.cjs +9 -19
  102. package/dist/plugs/filter.cjs.map +1 -1
  103. package/dist/plugs/filter.d.ts +21 -15
  104. package/dist/plugs/filter.mjs +10 -12
  105. package/dist/plugs/filter.mjs.map +1 -1
  106. package/dist/plugs/mocha/reporter.cjs +12 -6
  107. package/dist/plugs/mocha/reporter.cjs.map +1 -1
  108. package/dist/plugs/mocha/reporter.d.ts +0 -2
  109. package/dist/plugs/mocha/reporter.mjs +11 -4
  110. package/dist/plugs/mocha/reporter.mjs.map +1 -1
  111. package/dist/plugs/mocha/runner.cjs +4 -5
  112. package/dist/plugs/mocha/runner.cjs.map +1 -1
  113. package/dist/plugs/mocha/runner.d.ts +5 -31
  114. package/dist/plugs/mocha/runner.mjs +5 -6
  115. package/dist/plugs/mocha/runner.mjs.map +1 -1
  116. package/dist/plugs/mocha.cjs +22 -0
  117. package/dist/plugs/mocha.cjs.map +6 -0
  118. package/dist/plugs/mocha.d.ts +35 -0
  119. package/dist/plugs/mocha.mjs +5 -0
  120. package/dist/plugs/mocha.mjs.map +6 -0
  121. package/dist/plugs/rmf.cjs +4 -32
  122. package/dist/plugs/rmf.cjs.map +1 -1
  123. package/dist/plugs/rmf.d.ts +8 -12
  124. package/dist/plugs/rmf.mjs +25 -20
  125. package/dist/plugs/rmf.mjs.map +1 -1
  126. package/dist/plugs/tsc/compiler.d.ts +1 -1
  127. package/dist/plugs/tsc/options.d.ts +1 -1
  128. package/dist/plugs/tsc/report.d.ts +2 -2
  129. package/dist/plugs/tsc/runner.cjs +12 -11
  130. package/dist/plugs/tsc/runner.cjs.map +1 -1
  131. package/dist/plugs/tsc/runner.d.ts +4 -9
  132. package/dist/plugs/tsc/runner.mjs +12 -11
  133. package/dist/plugs/tsc/runner.mjs.map +1 -1
  134. package/dist/plugs/tsc.cjs +7 -0
  135. package/dist/plugs/tsc.cjs.map +6 -0
  136. package/dist/plugs/tsc.d.ts +36 -0
  137. package/dist/plugs/tsc.mjs +15 -0
  138. package/dist/plugs/tsc.mjs.map +6 -0
  139. package/dist/plugs.cjs +3 -5
  140. package/dist/plugs.cjs.map +1 -1
  141. package/dist/plugs.d.ts +10 -17
  142. package/dist/plugs.mjs +3 -5
  143. package/dist/plugs.mjs.map +1 -1
  144. package/dist/types.cjs +19 -0
  145. package/dist/types.cjs.map +6 -0
  146. package/dist/types.d.ts +71 -0
  147. package/dist/types.mjs +1 -0
  148. package/dist/types.mjs.map +6 -0
  149. package/dist/utils/caller.cjs +8 -11
  150. package/dist/utils/caller.cjs.map +2 -2
  151. package/dist/utils/caller.d.ts +2 -7
  152. package/dist/utils/caller.mjs +8 -11
  153. package/dist/utils/caller.mjs.map +2 -2
  154. package/dist/utils/options.cjs +4 -6
  155. package/dist/utils/options.cjs.map +1 -1
  156. package/dist/utils/options.d.ts +16 -15
  157. package/dist/utils/options.mjs +4 -6
  158. package/dist/utils/options.mjs.map +1 -1
  159. package/dist/utils/walk.d.ts +2 -2
  160. package/extra/cli.mjs +31 -20
  161. package/extra/ts-loader.mjs +6 -5
  162. package/package.json +8 -9
  163. package/src/async.ts +27 -19
  164. package/src/files.ts +6 -30
  165. package/src/fork.ts +35 -76
  166. package/src/helpers.ts +66 -99
  167. package/src/index.ts +10 -15
  168. package/src/log/colors.ts +4 -3
  169. package/src/log/emit.ts +4 -4
  170. package/src/log/logger.ts +12 -4
  171. package/src/log/options.ts +1 -1
  172. package/src/log/report.ts +8 -22
  173. package/src/log/spinner.ts +3 -3
  174. package/src/log.ts +9 -9
  175. package/src/paths.ts +1 -1
  176. package/src/pipe.ts +255 -170
  177. package/src/plugs/copy.ts +40 -31
  178. package/src/plugs/coverage/analysis.ts +4 -4
  179. package/src/plugs/coverage/report.ts +6 -5
  180. package/src/plugs/coverage.ts +64 -53
  181. package/src/plugs/debug.ts +28 -26
  182. package/src/plugs/esbuild/fix-extensions.ts +2 -2
  183. package/src/plugs/esbuild.ts +42 -46
  184. package/src/plugs/eslint/runner.ts +16 -31
  185. package/src/plugs/eslint.ts +42 -0
  186. package/src/plugs/exec.ts +93 -82
  187. package/src/plugs/filter.ts +42 -27
  188. package/src/plugs/mocha/reporter.ts +10 -5
  189. package/src/plugs/mocha/runner.ts +12 -38
  190. package/src/plugs/mocha.ts +41 -0
  191. package/src/plugs/rmf.ts +21 -25
  192. package/src/plugs/tsc/compiler.ts +1 -1
  193. package/src/plugs/tsc/options.ts +2 -2
  194. package/src/plugs/tsc/report.ts +2 -2
  195. package/src/plugs/tsc/runner.ts +24 -30
  196. package/src/plugs/tsc.ts +45 -0
  197. package/src/plugs.ts +10 -25
  198. package/src/types.ts +116 -0
  199. package/src/utils/caller.ts +11 -22
  200. package/src/utils/options.ts +49 -17
  201. package/src/utils/walk.ts +4 -4
  202. package/dist/run.cjs +0 -90
  203. package/dist/run.cjs.map +0 -6
  204. package/dist/run.d.ts +0 -89
  205. package/dist/run.mjs +0 -65
  206. package/dist/run.mjs.map +0 -6
  207. package/dist/task.cjs.map +0 -6
  208. package/dist/task.d.ts +0 -15
  209. package/dist/task.mjs +0 -14
  210. package/dist/task.mjs.map +0 -6
  211. package/src/run.ts +0 -159
  212. package/src/task.ts +0 -26
package/extra/cli.mjs CHANGED
@@ -9,8 +9,11 @@ async function main(options2) {
9
9
  if (tasks.length === 0)
10
10
  tasks.push("default");
11
11
  let build = await import(buildFile);
12
- while (build && !isBuild(build))
12
+ while (build) {
13
+ if (isBuild(build))
14
+ break;
13
15
  build = build.default;
16
+ }
14
17
  if (!isBuild(build)) {
15
18
  console.log("Build file did not export a proper build");
16
19
  console.log();
@@ -22,19 +25,10 @@ async function main(options2) {
22
25
  console.log();
23
26
  process.exit(1);
24
27
  }
25
- for (const task of tasks) {
26
- if (task in build)
27
- continue;
28
- console.log(`Build file does not contain task "${task}"`);
29
- process.exit(1);
30
- }
31
28
  if (listOnly) {
32
29
  console.log("Build file tasks\n- " + Object.keys(build).sort().join("\n- "));
33
30
  } else {
34
- let run;
35
- for (const task of tasks) {
36
- run = await build[task](run);
37
- }
31
+ await build[buildMarker](tasks);
38
32
  }
39
33
  }
40
34
  const sourceMapsEnabled = process.execArgv.indexOf("--enable-source-maps") >= 0;
@@ -64,7 +58,7 @@ if (sourceMapsEnabled && typeScriptEnabled) {
64
58
  const loader = _path.resolve(directory, `ts-loader${extension}`);
65
59
  execArgv.push(`--experimental-loader=${loader}`, "--no-warnings");
66
60
  }
67
- const env = options.forceEsm ? { __TS_LOADER_FORCE_ESM: process.cwd(), ...process.env } : process.env;
61
+ const env = options.force ? { __TS_LOADER_FORCE_TYPE: options.force, ...process.env } : process.env;
68
62
  const child = _childProcess.fork(script, [...process.argv.slice(2)], {
69
63
  stdio: ["inherit", "inherit", "inherit", "ipc"],
70
64
  execArgv,
@@ -89,7 +83,7 @@ if (sourceMapsEnabled && typeScriptEnabled) {
89
83
  const buildMarker = Symbol.for("plugjs:isBuild");
90
84
  const buildFailure = Symbol.for("plugjs:buildFailure");
91
85
  function isBuild(build) {
92
- return build && build[buildMarker] === buildMarker;
86
+ return build && typeof build[buildMarker] === "function";
93
87
  }
94
88
  function isBuildFailure(arg) {
95
89
  return arg && arg[buildFailure] === buildFailure;
@@ -102,7 +96,6 @@ function parseCommandLine() {
102
96
  "strip-dashed": true
103
97
  },
104
98
  alias: {
105
- "force-esm": ["e"],
106
99
  "verbose": ["v"],
107
100
  "quiet": ["q"],
108
101
  "colors": ["c"],
@@ -111,7 +104,7 @@ function parseCommandLine() {
111
104
  "help": ["h"]
112
105
  },
113
106
  string: ["file"],
114
- boolean: ["help", "colors", "list", "force-esm"],
107
+ boolean: ["help", "colors", "list", "force-esm", "force-cjs"],
115
108
  count: ["verbose", "quiet"]
116
109
  });
117
110
  const tasks = [];
@@ -119,6 +112,7 @@ function parseCommandLine() {
119
112
  let colors = void 0;
120
113
  let file = void 0;
121
114
  let forceEsm = false;
115
+ let forceCjs = false;
122
116
  let listOnly = false;
123
117
  let help = false;
124
118
  for (const key in parsed) {
@@ -138,6 +132,9 @@ function parseCommandLine() {
138
132
  case "force-esm":
139
133
  forceEsm = !!parsed[key];
140
134
  break;
135
+ case "force-cjs":
136
+ forceCjs = !!parsed[key];
137
+ break;
141
138
  case "colors":
142
139
  colors = !!parsed[key];
143
140
  break;
@@ -157,16 +154,27 @@ function parseCommandLine() {
157
154
 
158
155
  plugjs [--options] [... tasks]
159
156
 
157
+ TypeScript module format:
158
+
159
+ Normally our TypeScript loader will transpile ".ts" files to the "type"
160
+ specified in "package.json", either "commonjs" (the default) or "module".
161
+
162
+ To force a specific module format we can use one of the following flags:
163
+
164
+ --force-esm Force transpilation of ".ts" files to EcmaScript modules
165
+ --force-cjs Force transpilation of ".ts" files to CommonJS modules
166
+
160
167
  Options:
168
+
161
169
  -v --verbose Increase logging verbosity
162
170
  -q --quiet Decrease logging verbosity
163
171
  -c --colors Force colorful output (use "--no-colors" to force plain text)
164
- -e --force-esm Force our TypeScript loader to interpret ".ts" files as ESM
165
172
  -f --file Specify the build file to use (default "./build.[ts/js/...]")
166
173
  -l --list Only list the tasks defined by the build, nothing more!
167
174
  -h --help Help! You're reading it now!
168
175
 
169
176
  Tasks:
177
+
170
178
  Any other argument will be treated as a task name. If no task names are
171
179
  specified, the "default" task will be executed.
172
180
  `);
@@ -206,7 +214,12 @@ function parseCommandLine() {
206
214
  console.log(`Unable to find build file "./build.[${exts.join("|")}]`);
207
215
  process.exit(1);
208
216
  }
209
- return { buildFile, tasks, forceEsm, listOnly };
217
+ if (forceEsm && forceCjs) {
218
+ console.log('The "--force-cjs" and "--force-esm" flags can not coexist');
219
+ process.exit(1);
220
+ }
221
+ const force = forceEsm ? "module" : forceCjs ? "commonjs" : void 0;
222
+ return { buildFile, tasks, listOnly, force };
210
223
  }
211
224
  function isFile(path) {
212
225
  try {
@@ -216,8 +229,6 @@ function isFile(path) {
216
229
  }
217
230
  }
218
231
  export {
219
- isBuild,
220
- isBuildFailure,
221
232
  parseCommandLine
222
233
  };
223
- //# sourceMappingURL=data:application/json;base64,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
234
+ //# sourceMappingURL=data:application/json;base64,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
@@ -23,10 +23,11 @@ function _throw(type, message, options = {}) {
23
23
  throw error;
24
24
  }
25
25
  const _moduleFormatCache = /* @__PURE__ */ new Map();
26
- if (process.env.__TS_LOADER_FORCE_ESM) {
27
- const dir = process.env.__TS_LOADER_FORCE_ESM;
28
- _log(null, `Forcing ".ts" files from "${dir}" to be interpreted as ESM modules`);
29
- _moduleFormatCache.set(dir, "module");
26
+ if (process.env.__TS_LOADER_FORCE_TYPE) {
27
+ const type = process.env.__TS_LOADER_FORCE_TYPE;
28
+ const dir = process.cwd();
29
+ _log(null, `Forcing ".ts" files from "${dir}" to be interpreted as "${type}"`);
30
+ _moduleFormatCache.set(dir, type);
30
31
  }
31
32
  if (_debug)
32
33
  process.on("exit", () => _log(null, "Format cache", _moduleFormatCache));
@@ -218,4 +219,4 @@ export {
218
219
  load,
219
220
  resolve
220
221
  };
221
- //# sourceMappingURL=data:application/json;base64,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
222
+ //# sourceMappingURL=data:application/json;base64,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
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@plugjs/plug",
3
- "version": "0.0.14",
3
+ "version": "0.0.16",
4
4
  "type": "commonjs",
5
5
  "main": "./dist/index.cjs",
6
6
  "module": "./dist/index.mjs",
@@ -28,17 +28,17 @@
28
28
  "author": "",
29
29
  "license": "ISC",
30
30
  "dependencies": {
31
- "@babel/parser": "^7.18.13",
32
- "@babel/types": "^7.18.13",
31
+ "@babel/parser": "^7.19.0",
32
+ "@babel/types": "^7.19.0",
33
33
  "@plugjs/cov8-html": "^0.0.2",
34
34
  "@types/node": "<17",
35
35
  "diff": "^5.1.0",
36
- "esbuild": "^0.15.5",
37
- "eslint": "^8.22.0",
36
+ "esbuild": "^0.15.7",
37
+ "eslint": "^8.23.1",
38
38
  "mocha": "^10.0.0",
39
39
  "picomatch": "^2.3.1",
40
40
  "source-map": "^0.7.4",
41
- "typescript": "^4.7.4",
41
+ "typescript": "^4.8.3",
42
42
  "yargs-parser": "^21.1.1"
43
43
  },
44
44
  "devDependencies": {
@@ -47,11 +47,10 @@
47
47
  "@types/diff": "^5.0.2",
48
48
  "@types/eslint": "^8.4.6",
49
49
  "@types/mocha": "^9.1.1",
50
- "@types/ms": "^0.7.31",
51
50
  "@types/picomatch": "^2.3.0",
52
51
  "@types/yargs-parser": "^21.0.0",
53
- "@typescript-eslint/eslint-plugin": "^5.34.0",
54
- "@typescript-eslint/parser": "^5.34.0",
52
+ "@typescript-eslint/eslint-plugin": "^5.37.0",
53
+ "@typescript-eslint/parser": "^5.37.0",
55
54
  "chai": "^4.3.6",
56
55
  "eslint-config-google": "^0.14.0"
57
56
  }
package/src/async.ts CHANGED
@@ -1,38 +1,46 @@
1
1
  import { AsyncLocalStorage } from 'node:async_hooks'
2
- import { Run } from './run.js'
2
+ import { assert } from './assert'
3
+ import { Context } from './pipe'
3
4
 
4
5
  /* ========================================================================== *
5
6
  * EXPORTED *
6
7
  * ========================================================================== */
7
8
 
8
9
  /**
9
- * Run the specified `callback` associating the specified {@link Run} and task
10
+ * Run the specified `callback` associating the specified {@link Context} and task
10
11
  * name with the current asynchronous invocation context.
11
12
  */
12
- export function runAsync<T>(run: Run, task: string, callback: () => Promise<T>): Promise<T> {
13
- return storage.run({ run, task }, () => {
14
- tasks.push(task)
15
- return callback().finally(() => {
16
- const index = tasks.lastIndexOf(task)
17
- if (index >= 0) tasks.splice(index, 1)
18
- })
13
+ export function runAsync<T>(
14
+ context: Context,
15
+ taskName: string,
16
+ callback: () => Promise<T>,
17
+ ): Promise<T> {
18
+ return storage.run(context, async () => {
19
+ try {
20
+ tasks.add(taskName)
21
+ return await callback()
22
+ } finally {
23
+ tasks.delete(taskName)
24
+ }
19
25
  })
20
26
  }
21
27
 
22
28
  /**
23
- * Returns the _task name_ associated with the current asynchronous invocation
24
- * context or `undefined`.
29
+ * Returns the {@link Context} associated with the current asynchronous
30
+ * invocation context or `undefined`.
25
31
  */
26
- export function currentTask(): string | undefined {
27
- return storage.getStore()?.task
32
+ export function currentContext(): Context | undefined {
33
+ return storage.getStore()
28
34
  }
29
35
 
30
36
  /**
31
- * Returns the {@link Run} associated with the current asynchronous invocation
32
- * context or `undefined`.
37
+ * Returns the {@link Context} associated with the current asynchronous
38
+ * invocation context and fail if none was found.
33
39
  */
34
- export function currentRun(): Run | undefined {
35
- return storage.getStore()?.run
40
+ export function requireContext(): Context {
41
+ const context = storage.getStore()
42
+ assert(context, 'Unable to retrieve current context')
43
+ return context
36
44
  }
37
45
 
38
46
  /**
@@ -46,5 +54,5 @@ export function runningTasks(): string[] {
46
54
  * INTERNALS *
47
55
  * ========================================================================== */
48
56
 
49
- const storage = new AsyncLocalStorage<{ run: Run, task: string }>()
50
- const tasks: string[] = []
57
+ const storage = new AsyncLocalStorage<Context>()
58
+ const tasks = new Set<string>
package/src/files.ts CHANGED
@@ -1,6 +1,5 @@
1
- import { assert } from './assert.js'
2
- import { AbsolutePath, assertRelativeChildPath, getAbsoluteParent, resolveFile, resolveAbsolutePath } from './paths.js'
3
- import { mkdir, writeFile } from './utils/asyncfs.js'
1
+ import { AbsolutePath, assertRelativeChildPath, getAbsoluteParent, resolveAbsolutePath } from './paths'
2
+ import { mkdir, writeFile } from './utils/asyncfs'
4
3
 
5
4
  /** The {@link FilesBuilder} interface defines a builder for {@link Files}. */
6
5
  export interface FilesBuilder {
@@ -8,20 +7,12 @@ export interface FilesBuilder {
8
7
  readonly directory: AbsolutePath
9
8
 
10
9
  /**
11
- * Push files into the {@link Files} instance being built **checking for
12
- * their existance on disk**.
10
+ * Push files into the {@link Files} instance being built.
13
11
  *
14
- * This _will_ be slow, use {@link FilesBuilder.unchecked} when absolutely
15
- * sure the file already exist.
12
+ * This method will not check that files actually exist on disk.
16
13
  */
17
14
  add(...files: string[]): this
18
15
 
19
- /**
20
- * Push files into the {@link Files} instance being built without checking
21
- * they exist on disk _(use with care!)_.
22
- */
23
- unchecked(...files: string[]): this
24
-
25
16
  /** Merge orther {@link Files} instance to the {@link Files} being built */
26
17
  merge(...files: Files[]): this
27
18
 
@@ -97,21 +88,6 @@ export class Files {
97
88
  add(...files: string[]): FilesBuilder {
98
89
  if (built) throw new Error('FileBuilder "build()" already called')
99
90
 
100
- if (typeof files === 'string') files = [ files ]
101
- for (const file of files) {
102
- const relative = assertRelativeChildPath(instance.directory, file)
103
- const resolved = resolveAbsolutePath(instance.directory, file)
104
-
105
- assert(resolveFile(resolved), `File "${resolved}" does not exist`)
106
- set.add(relative)
107
- }
108
-
109
- return this
110
- },
111
-
112
- unchecked(...files: string[]): FilesBuilder {
113
- if (built) throw new Error('FileBuilder "build()" already called')
114
-
115
91
  if (typeof files === 'string') files = [ files ]
116
92
  for (const file of files) {
117
93
  const relative = assertRelativeChildPath(instance.directory, file)
@@ -126,7 +102,7 @@ export class Files {
126
102
 
127
103
  for (const files of args) {
128
104
  for (const file of files.absolutePaths()) {
129
- this.unchecked(file)
105
+ this.add(file)
130
106
  }
131
107
  }
132
108
 
@@ -140,7 +116,7 @@ export class Files {
140
116
 
141
117
  await mkdir(directory, { recursive: true })
142
118
  await writeFile(absolute, content)
143
- this.unchecked(absolute)
119
+ this.add(absolute)
144
120
 
145
121
  return absolute
146
122
  },
package/src/fork.ts CHANGED
@@ -1,11 +1,10 @@
1
1
  import { fork } from 'node:child_process'
2
- import { assert, failure } from './assert.js'
3
- import { runAsync } from './async.js'
4
- import { Files } from './files.js'
5
- import { $gry, $p, LogOptions, logOptions } from './log.js'
6
- import { AbsolutePath, resolveFile, requireFilename } from './paths.js'
7
- import { install, Plug, PlugName } from './pipe.js'
8
- import { Run, RunImpl } from './run.js'
2
+ import { assert, failure } from './assert'
3
+ import { runAsync } from './async'
4
+ import { Files } from './files'
5
+ import { $gry, $p, LogOptions, logOptions } from './log'
6
+ import { AbsolutePath, requireFilename, resolveFile } from './paths'
7
+ import { Plug, PlugResult, Context } from './pipe'
9
8
 
10
9
  /** Fork data, from parent to child process */
11
10
  export interface ForkData {
@@ -17,8 +16,6 @@ export interface ForkData {
17
16
  taskName: string,
18
17
  /** Build file name */
19
18
  buildFile: AbsolutePath,
20
- /** Build directory */
21
- buildDir: AbsolutePath,
22
19
  /** Files directory */
23
20
  filesDir: AbsolutePath,
24
21
  /** All files to pipe */
@@ -37,67 +34,30 @@ export interface ForkResult {
37
34
  filesList?: AbsolutePath[] | undefined,
38
35
  }
39
36
 
40
- /* ========================================================================== *
41
- * PIPE INSTALLATION *
42
- * ========================================================================== */
43
-
44
- /**
45
- * Install a _forking_ {@link Plug} in the {@link Pipe}, in other words
46
- * execute the plug in a separate process.
47
- *
48
- * As a contract, if the _last non-null_ parameter of the constructor is an
49
- * object and contains the key `coverageDir`, the process will be forked with
50
- * the approptiately resolved `NODE_V8_COVERAGE` environment variable.
51
- *
52
- * Also, forking plugs require some special attention:
53
- *
54
- * * plug functions are not supported, only classes implementing the
55
- * {@link Plug} interface can be used with this.
56
- *
57
- * * the class itself _MUST_ be exported as the _default_ export for the
58
- * `scriptFile` specified below. This is to simplify interoperability between
59
- * CommonJS and ESM modules as we use dynamic `import(...)` statements.
60
- */
61
- export function installForking(
62
- plugName: PlugName,
63
- scriptFile: AbsolutePath,
64
- ): void {
65
- /** Extend out our ForkingPlug below */
66
- const ctor = class extends ForkingPlug {
67
- constructor(...args: any[]) {
68
- super(scriptFile, args)
69
- }
70
- }
71
-
72
- /** Install the plug in */
73
- install(plugName, ctor)
74
- }
75
-
76
37
  /* ========================================================================== *
77
38
  * PARENT PROCESS SIDE OF THE FORKING PLUG IMPLEMENTATION *
78
39
  * ========================================================================== */
79
40
 
80
- export abstract class ForkingPlug implements Plug<Files | undefined> {
41
+ export abstract class ForkingPlug implements Plug<PlugResult> {
81
42
  constructor(
82
43
  private readonly _scriptFile: AbsolutePath,
83
44
  private readonly _arguments: any[],
84
45
  ) {}
85
46
 
86
- pipe(files: Files, run: Run): Promise<Files | undefined> {
47
+ pipe(files: Files, context: Context): Promise<PlugResult> {
87
48
  const message: ForkData = {
88
49
  scriptFile: this._scriptFile,
89
50
  constructorArgs: this._arguments,
90
- taskName: run.taskName,
91
- buildFile: run.buildFile,
92
- buildDir: run.buildDir,
51
+ taskName: context.taskName,
52
+ buildFile: context.buildFile,
93
53
  filesDir: files.directory,
94
54
  filesList: [ ...files.absolutePaths() ],
95
- logOpts: logOptions.fork(run.taskName),
55
+ logOpts: logOptions.fork(context.taskName),
96
56
  }
97
57
 
98
58
  /* Get _this_ filename to spawn */
99
59
  const script = requireFilename(__fileurl)
100
- run.log.debug('About to fork plug from', $p(script))
60
+ context.log.debug('About to fork plug from', $p(script))
101
61
 
102
62
  /* Environment variables */
103
63
  const env = { ...process.env }
@@ -107,8 +67,8 @@ export abstract class ForkingPlug implements Plug<Files | undefined> {
107
67
  if (this._arguments[i] == null) continue // null or undefined... optionals
108
68
  if (typeof this._arguments[i] === 'object') {
109
69
  if (typeof this._arguments[i].coverageDir === 'string') {
110
- const dir = env.NODE_V8_COVERAGE = run.resolve(this._arguments[i].coverageDir)
111
- run.log.debug('Forked process will produce coverage in', $p(dir))
70
+ const dir = env.NODE_V8_COVERAGE = context.resolve(this._arguments[i].coverageDir)
71
+ context.log.debug('Forked process will produce coverage in', $p(dir))
112
72
  }
113
73
  }
114
74
  }
@@ -119,32 +79,32 @@ export abstract class ForkingPlug implements Plug<Files | undefined> {
119
79
  env,
120
80
  })
121
81
 
122
- run.log.info('Running', $p(script), $gry(`(pid=${child.pid})`))
82
+ context.log.info('Running', $p(script), $gry(`(pid=${child.pid})`))
123
83
 
124
84
  /* Return a promise from the child process events */
125
85
  let done = false // this will be fixed up in "finally" below
126
- return new Promise<Files | undefined>((resolve, reject) => {
86
+ return new Promise<PlugResult>((resolve, reject) => {
127
87
  let result: ForkResult | undefined = undefined
128
88
 
129
89
  child.on('error', (error) => {
130
- run.log.error('Child process error', error)
90
+ context.log.error('Child process error', error)
131
91
  return done || reject(failure())
132
92
  })
133
93
 
134
94
  child.on('message', (message: ForkResult) => {
135
- run.log.debug('Message from child process', message)
95
+ context.log.debug('Message from child process', message)
136
96
  result = message
137
97
  })
138
98
 
139
99
  child.on('exit', (code, signal) => {
140
100
  if (signal) {
141
- run.log.error(`Child process exited with signal ${signal}`, $gry(`(pid=${child.pid})`))
101
+ context.log.error(`Child process exited with signal ${signal}`, $gry(`(pid=${child.pid})`))
142
102
  return done || reject(failure())
143
103
  } else if (code !== 0) {
144
- run.log.error(`Child process exited with code ${code}`, $gry(`(pid=${child.pid})`))
104
+ context.log.error(`Child process exited with code ${code}`, $gry(`(pid=${child.pid})`))
145
105
  return done || reject(failure())
146
106
  } else if (! result) {
147
- run.log.error('Child process exited with no result', $gry(`(pid=${child.pid})`))
107
+ context.log.error('Child process exited with no result', $gry(`(pid=${child.pid})`))
148
108
  return done || reject(failure())
149
109
  } else if (result.failed) {
150
110
  // definitely logged on the child side
@@ -153,7 +113,7 @@ export abstract class ForkingPlug implements Plug<Files | undefined> {
153
113
 
154
114
  /* We definitely have a successful result! */
155
115
  return done || resolve(message.filesDir && message.filesList ?
156
- run.files(message.filesDir).unchecked(...message.filesList).build() :
116
+ Files.builder(message.filesDir).add(...message.filesList).build() :
157
117
  undefined)
158
118
  })
159
119
 
@@ -161,16 +121,16 @@ export abstract class ForkingPlug implements Plug<Files | undefined> {
161
121
  try {
162
122
  const result = child.send(message, (error) => {
163
123
  if (error) {
164
- run.log.error('Error sending message to child process (callback failure)', error)
124
+ context.log.error('Error sending message to child process (callback failure)', error)
165
125
  reject(failure())
166
126
  }
167
127
  })
168
128
  if (! result) {
169
- run.log.error('Error sending message to child process (send returned false)')
129
+ context.log.error('Error sending message to child process (send returned false)')
170
130
  reject(failure())
171
131
  }
172
132
  } catch (error) {
173
- run.log.error('Error sending message to child process (exception caught)', error)
133
+ context.log.error('Error sending message to child process (exception caught)', error)
174
134
  reject(failure())
175
135
  }
176
136
  }).finally(() => done = true)
@@ -204,7 +164,6 @@ if ((process.argv[1] === requireFilename(__fileurl)) && (process.send)) {
204
164
  constructorArgs,
205
165
  taskName,
206
166
  buildFile,
207
- buildDir,
208
167
  filesDir,
209
168
  filesList,
210
169
  logOpts,
@@ -213,12 +172,12 @@ if ((process.argv[1] === requireFilename(__fileurl)) && (process.send)) {
213
172
  /* Restore logging options first */
214
173
  Object.assign(logOptions, logOpts)
215
174
 
216
- /* First of all, our Run */
217
- const run = new RunImpl({ buildDir, buildFile, taskName })
218
- run.log.debug('Message from parent process', message)
175
+ /* First of all, our plug context */
176
+ const context = new Context(buildFile, taskName)
177
+ context.log.debug('Message from parent process', message)
219
178
 
220
179
  /* Contextualize this run, and go! */
221
- const result = runAsync(run, taskName, async () => {
180
+ const result = runAsync(context, taskName, async () => {
222
181
  /* Check that we have a proper script file name */
223
182
  assert(resolveFile(scriptFile), `Script file ${$p(scriptFile)} not found`)
224
183
  const script = await import(scriptFile)
@@ -232,11 +191,11 @@ if ((process.argv[1] === requireFilename(__fileurl)) && (process.send)) {
232
191
  `Script ${$p(scriptFile)} does not export a default constructor`)
233
192
 
234
193
  /* Create the Plug instance and our Files instance */
235
- const plug = new Ctor(...constructorArgs) as Plug<Files | undefined>
236
- const files = run.files(filesDir).unchecked(...filesList).build()
194
+ const plug = new Ctor(...constructorArgs) as Plug<PlugResult>
195
+ const files = Files.builder(filesDir).add(...filesList).build()
237
196
 
238
197
  /* Run and return the result */
239
- return plug.pipe(files, run)
198
+ return plug.pipe(files, context)
240
199
  })
241
200
 
242
201
  /* The result promise generates a message back to the parent process */
@@ -248,7 +207,7 @@ if ((process.argv[1] === requireFilename(__fileurl)) && (process.send)) {
248
207
  process.send!(message, (err: Error) => err ? reject(err) : resolve())
249
208
  })
250
209
  }, (error) => {
251
- run.log.error(error)
210
+ context.log.error(error)
252
211
  return new Promise<void>((resolve, reject) => {
253
212
  process.send!({ failed: true }, (err: Error) => err ? reject(err) : resolve())
254
213
  })
@@ -256,10 +215,10 @@ if ((process.argv[1] === requireFilename(__fileurl)) && (process.send)) {
256
215
 
257
216
  /* The promise generated by `process.send()` simply triggers process exit */
258
217
  promise.then(() => {
259
- run.log.debug('Forked plug exiting')
218
+ context.log.debug('Forked plug exiting')
260
219
  process.exit(0)
261
220
  }, (error) => {
262
- run.log.error('Error sending message back to parent process', error)
221
+ context.log.error('Error sending message back to parent process', error)
263
222
  process.exit(1)
264
223
  })
265
224
  })