@plugjs/plug 0.2.2 → 0.2.3
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/dist/async.cjs +20 -2
- package/dist/async.cjs.map +2 -2
- package/dist/async.mjs +20 -2
- package/dist/async.mjs.map +2 -2
- package/dist/fork.cjs +3 -6
- package/dist/fork.cjs.map +1 -1
- package/dist/fork.d.ts +0 -3
- package/dist/fork.mjs +3 -6
- package/dist/fork.mjs.map +1 -1
- package/dist/logging/options.cjs +20 -9
- package/dist/logging/options.cjs.map +1 -1
- package/dist/logging/options.d.ts +2 -2
- package/dist/logging/options.mjs +20 -9
- package/dist/logging/options.mjs.map +1 -1
- package/dist/utils/exec.cjs +2 -2
- package/dist/utils/exec.cjs.map +1 -1
- package/dist/utils/exec.mjs +2 -2
- package/dist/utils/exec.mjs.map +1 -1
- package/package.json +1 -1
- package/src/async.ts +30 -3
- package/src/fork.ts +1 -9
- package/src/logging/options.ts +25 -11
- package/src/utils/exec.ts +2 -2
package/dist/async.cjs
CHANGED
|
@@ -49,8 +49,26 @@ function requireContext() {
|
|
|
49
49
|
function runningTasks() {
|
|
50
50
|
return [...tasks].sort();
|
|
51
51
|
}
|
|
52
|
-
var
|
|
53
|
-
var
|
|
52
|
+
var storageKey = Symbol.for("plugjs.plug.async.storage");
|
|
53
|
+
var tasksKey = Symbol.for("plugjs.plug.async.tasks");
|
|
54
|
+
function getStorage() {
|
|
55
|
+
let storage2 = globalThis[storageKey];
|
|
56
|
+
if (!storage2) {
|
|
57
|
+
storage2 = new import_node_async_hooks.AsyncLocalStorage();
|
|
58
|
+
globalThis[storageKey] = storage2;
|
|
59
|
+
}
|
|
60
|
+
return storage2;
|
|
61
|
+
}
|
|
62
|
+
function getTasks() {
|
|
63
|
+
let tasks2 = globalThis[tasksKey];
|
|
64
|
+
if (!tasks2) {
|
|
65
|
+
tasks2 = /* @__PURE__ */ new Set();
|
|
66
|
+
globalThis[tasksKey] = tasks2;
|
|
67
|
+
}
|
|
68
|
+
return tasks2;
|
|
69
|
+
}
|
|
70
|
+
var storage = getStorage();
|
|
71
|
+
var tasks = getTasks();
|
|
54
72
|
// Annotate the CommonJS export names for ESM import in node:
|
|
55
73
|
0 && (module.exports = {
|
|
56
74
|
currentContext,
|
package/dist/async.cjs.map
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/async.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,8BAAkC;AAElC,qBAAuB;
|
|
5
|
-
"names": []
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,8BAAkC;AAElC,qBAAuB;AAYhB,SAAS,SACZ,SACA,UACA,UACU;AACZ,SAAO,QAAQ,IAAI,SAAS,YAAY;AACtC,QAAI;AACF,YAAM,IAAI,QAAQ;AAClB,aAAO,MAAM,SAAS;AAAA,IACxB,UAAE;AACA,YAAM,OAAO,QAAQ;AAAA,IACvB;AAAA,EACF,CAAC;AACH;AAMO,SAAS,iBAAsC;AACpD,SAAO,QAAQ,SAAS;AAC1B;AAMO,SAAS,iBAA0B;AACxC,QAAM,UAAU,QAAQ,SAAS;AACjC,6BAAO,SAAS,oCAAoC;AACpD,SAAO;AACT;AAKO,SAAS,eAAyB;AACvC,SAAO,CAAE,GAAG,KAAM,EAAE,KAAK;AAC3B;AAaA,IAAM,aAAa,OAAO,IAAI,2BAA2B;AACzD,IAAM,WAAW,OAAO,IAAI,yBAAyB;AAErD,SAAS,aAAyC;AAChD,MAAIA,WAA6C,WAAY,UAAU;AACvE,MAAI,CAAEA,UAAS;AACb,IAAAA,WAAU,IAAI,0CAA2B;AACxC,IAAO,WAAY,UAAU,IAAIA;AAAA,EACpC;AACA,SAAOA;AACT;AAEA,SAAS,WAAwB;AAC/B,MAAIC,SAA4B,WAAY,QAAQ;AACpD,MAAI,CAAEA,QAAO;AACX,IAAAA,SAAQ,oBAAI;AACX,IAAO,WAAY,QAAQ,IAAIA;AAAA,EAClC;AACA,SAAOA;AACT;AAEA,IAAM,UAAU,WAAW;AAC3B,IAAM,QAAQ,SAAS;",
|
|
5
|
+
"names": ["storage", "tasks"]
|
|
6
6
|
}
|
package/dist/async.mjs
CHANGED
|
@@ -22,8 +22,26 @@ function requireContext() {
|
|
|
22
22
|
function runningTasks() {
|
|
23
23
|
return [...tasks].sort();
|
|
24
24
|
}
|
|
25
|
-
var
|
|
26
|
-
var
|
|
25
|
+
var storageKey = Symbol.for("plugjs.plug.async.storage");
|
|
26
|
+
var tasksKey = Symbol.for("plugjs.plug.async.tasks");
|
|
27
|
+
function getStorage() {
|
|
28
|
+
let storage2 = globalThis[storageKey];
|
|
29
|
+
if (!storage2) {
|
|
30
|
+
storage2 = new AsyncLocalStorage();
|
|
31
|
+
globalThis[storageKey] = storage2;
|
|
32
|
+
}
|
|
33
|
+
return storage2;
|
|
34
|
+
}
|
|
35
|
+
function getTasks() {
|
|
36
|
+
let tasks2 = globalThis[tasksKey];
|
|
37
|
+
if (!tasks2) {
|
|
38
|
+
tasks2 = /* @__PURE__ */ new Set();
|
|
39
|
+
globalThis[tasksKey] = tasks2;
|
|
40
|
+
}
|
|
41
|
+
return tasks2;
|
|
42
|
+
}
|
|
43
|
+
var storage = getStorage();
|
|
44
|
+
var tasks = getTasks();
|
|
27
45
|
export {
|
|
28
46
|
currentContext,
|
|
29
47
|
requireContext,
|
package/dist/async.mjs.map
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/async.ts"],
|
|
4
|
-
"mappings": ";AAAA,SAAS,yBAAyB;AAElC,SAAS,cAAc;
|
|
5
|
-
"names": []
|
|
4
|
+
"mappings": ";AAAA,SAAS,yBAAyB;AAElC,SAAS,cAAc;AAYhB,SAAS,SACZ,SACA,UACA,UACU;AACZ,SAAO,QAAQ,IAAI,SAAS,YAAY;AACtC,QAAI;AACF,YAAM,IAAI,QAAQ;AAClB,aAAO,MAAM,SAAS;AAAA,IACxB,UAAE;AACA,YAAM,OAAO,QAAQ;AAAA,IACvB;AAAA,EACF,CAAC;AACH;AAMO,SAAS,iBAAsC;AACpD,SAAO,QAAQ,SAAS;AAC1B;AAMO,SAAS,iBAA0B;AACxC,QAAM,UAAU,QAAQ,SAAS;AACjC,SAAO,SAAS,oCAAoC;AACpD,SAAO;AACT;AAKO,SAAS,eAAyB;AACvC,SAAO,CAAE,GAAG,KAAM,EAAE,KAAK;AAC3B;AAaA,IAAM,aAAa,OAAO,IAAI,2BAA2B;AACzD,IAAM,WAAW,OAAO,IAAI,yBAAyB;AAErD,SAAS,aAAyC;AAChD,MAAIA,WAA6C,WAAY,UAAU;AACvE,MAAI,CAAEA,UAAS;AACb,IAAAA,WAAU,IAAI,kBAA2B;AACxC,IAAO,WAAY,UAAU,IAAIA;AAAA,EACpC;AACA,SAAOA;AACT;AAEA,SAAS,WAAwB;AAC/B,MAAIC,SAA4B,WAAY,QAAQ;AACpD,MAAI,CAAEA,QAAO;AACX,IAAAA,SAAQ,oBAAI;AACX,IAAO,WAAY,QAAQ,IAAIA;AAAA,EAClC;AACA,SAAOA;AACT;AAEA,IAAM,UAAU,WAAW;AAC3B,IAAM,QAAQ,SAAS;",
|
|
5
|
+
"names": ["storage", "tasks"]
|
|
6
6
|
}
|
package/dist/fork.cjs
CHANGED
|
@@ -45,12 +45,11 @@ var ForkingPlug = class {
|
|
|
45
45
|
taskName: context.taskName,
|
|
46
46
|
buildFile: context.buildFile,
|
|
47
47
|
filesDir: files.directory,
|
|
48
|
-
filesList: [...files.absolutePaths()]
|
|
49
|
-
logOpts: import_logging.logOptions.fork(context.taskName)
|
|
48
|
+
filesList: [...files.absolutePaths()]
|
|
50
49
|
};
|
|
51
50
|
const script = (0, import_paths.requireFilename)(__filename);
|
|
52
51
|
context.log.debug("About to fork plug from", (0, import_logging.$p)(script));
|
|
53
|
-
const env = { ...process.env };
|
|
52
|
+
const env = { ...process.env, ...import_logging.logOptions.forkEnv(context.taskName) };
|
|
54
53
|
for (let i = this._arguments.length - 1; i >= 0; i--) {
|
|
55
54
|
if (this._arguments[i] == null)
|
|
56
55
|
continue;
|
|
@@ -124,10 +123,8 @@ if (process.argv[1] === (0, import_paths.requireFilename)(__filename) && process
|
|
|
124
123
|
taskName,
|
|
125
124
|
buildFile,
|
|
126
125
|
filesDir,
|
|
127
|
-
filesList
|
|
128
|
-
logOpts
|
|
126
|
+
filesList
|
|
129
127
|
} = message;
|
|
130
|
-
Object.assign(import_logging.logOptions, logOpts);
|
|
131
128
|
const context = new import_pipe.Context(buildFile, taskName);
|
|
132
129
|
context.log.debug("Message from parent process", message);
|
|
133
130
|
const result = (0, import_async.runAsync)(context, taskName, async () => {
|
package/dist/fork.cjs.map
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/fork.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,gCAAqB;AAErB,qBAAqC;AACrC,mBAAyB;AACzB,mBAAsB;AACtB,qBAAqC;AACrC,mBAA6C;AAC7C,kBAAiC;
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["result", "message"]
|
|
6
6
|
}
|
package/dist/fork.d.ts
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { Files } from './files';
|
|
2
2
|
import { Context } from './pipe';
|
|
3
|
-
import type { LogOptions } from './logging';
|
|
4
3
|
import type { AbsolutePath } from './paths';
|
|
5
4
|
import type { Plug, PlugName, PlugResult } from './pipe';
|
|
6
5
|
/** Fork data, from parent to child process */
|
|
@@ -19,8 +18,6 @@ export interface ForkData {
|
|
|
19
18
|
filesDir: AbsolutePath;
|
|
20
19
|
/** All files to pipe */
|
|
21
20
|
filesList: AbsolutePath[];
|
|
22
|
-
/** Options for our logger in the child process */
|
|
23
|
-
logOpts: Partial<LogOptions>;
|
|
24
21
|
}
|
|
25
22
|
/** Fork result, from child to parent process */
|
|
26
23
|
export interface ForkResult {
|
package/dist/fork.mjs
CHANGED
|
@@ -20,12 +20,11 @@ var ForkingPlug = class {
|
|
|
20
20
|
taskName: context.taskName,
|
|
21
21
|
buildFile: context.buildFile,
|
|
22
22
|
filesDir: files.directory,
|
|
23
|
-
filesList: [...files.absolutePaths()]
|
|
24
|
-
logOpts: logOptions.fork(context.taskName)
|
|
23
|
+
filesList: [...files.absolutePaths()]
|
|
25
24
|
};
|
|
26
25
|
const script = requireFilename(import.meta.url);
|
|
27
26
|
context.log.debug("About to fork plug from", $p(script));
|
|
28
|
-
const env = { ...process.env };
|
|
27
|
+
const env = { ...process.env, ...logOptions.forkEnv(context.taskName) };
|
|
29
28
|
for (let i = this._arguments.length - 1; i >= 0; i--) {
|
|
30
29
|
if (this._arguments[i] == null)
|
|
31
30
|
continue;
|
|
@@ -99,10 +98,8 @@ if (process.argv[1] === requireFilename(import.meta.url) && process.send) {
|
|
|
99
98
|
taskName,
|
|
100
99
|
buildFile,
|
|
101
100
|
filesDir,
|
|
102
|
-
filesList
|
|
103
|
-
logOpts
|
|
101
|
+
filesList
|
|
104
102
|
} = message;
|
|
105
|
-
Object.assign(logOptions, logOpts);
|
|
106
103
|
const context = new Context(buildFile, taskName);
|
|
107
104
|
context.log.debug("Message from parent process", message);
|
|
108
105
|
const result = runAsync(context, taskName, async () => {
|
package/dist/fork.mjs.map
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/fork.ts"],
|
|
4
|
-
"mappings": ";AAAA,SAAS,YAAY;AAErB,SAAS,QAAQ,oBAAoB;AACrC,SAAS,gBAAgB;AACzB,SAAS,aAAa;AACtB,SAAS,MAAM,IAAI,kBAAkB;AACrC,SAAS,iBAAiB,mBAAmB;AAC7C,SAAS,SAAS,eAAe;
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["result", "message"]
|
|
6
6
|
}
|
package/dist/logging/options.cjs
CHANGED
|
@@ -58,15 +58,17 @@ var LogOptionsImpl = class extends import_node_events.EventEmitter {
|
|
|
58
58
|
_notifyListeners() {
|
|
59
59
|
super.emit("changed", this);
|
|
60
60
|
}
|
|
61
|
-
|
|
61
|
+
forkEnv(taskName) {
|
|
62
62
|
return {
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
63
|
+
__LOG_OPTIONS: JSON.stringify({
|
|
64
|
+
level: this._level,
|
|
65
|
+
colors: this._colors,
|
|
66
|
+
lineLength: this._lineLength,
|
|
67
|
+
taskLength: this._taskLength,
|
|
68
|
+
defaultTaskName: taskName || this._defaultTaskName,
|
|
69
|
+
spinner: false
|
|
70
|
+
// forked spinner is always false
|
|
71
|
+
})
|
|
70
72
|
};
|
|
71
73
|
}
|
|
72
74
|
get output() {
|
|
@@ -152,7 +154,16 @@ var LogOptionsImpl = class extends import_node_events.EventEmitter {
|
|
|
152
154
|
this._notifyListeners();
|
|
153
155
|
}
|
|
154
156
|
};
|
|
155
|
-
var
|
|
157
|
+
var optionsKey = Symbol.for("plugjs.plug.logging.logOptions");
|
|
158
|
+
function getLogOptions() {
|
|
159
|
+
let options = globalThis[optionsKey];
|
|
160
|
+
if (!options) {
|
|
161
|
+
options = new LogOptionsImpl();
|
|
162
|
+
globalThis[optionsKey] = options;
|
|
163
|
+
}
|
|
164
|
+
return options;
|
|
165
|
+
}
|
|
166
|
+
var logOptions = getLogOptions();
|
|
156
167
|
// Annotate the CommonJS export names for ESM import in node:
|
|
157
168
|
0 && (module.exports = {
|
|
158
169
|
logOptions
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/logging/options.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,yBAA6B;AAE7B,oBAAuC;
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -33,8 +33,8 @@ export interface LogOptions {
|
|
|
33
33
|
once(eventName: 'changed', listener: (logOptions: this) => void): this;
|
|
34
34
|
/** Remove an event listener for the specified event. */
|
|
35
35
|
off(eventName: 'changed', listener: (logOptions: this) => void): this;
|
|
36
|
-
/**
|
|
37
|
-
|
|
36
|
+
/** Return a record of environment variables for forking. */
|
|
37
|
+
forkEnv(taskName?: string): Record<string, string>;
|
|
38
38
|
}
|
|
39
39
|
/** Shared instance of our {@link LogOptions}. */
|
|
40
40
|
export declare const logOptions: LogOptions;
|
package/dist/logging/options.mjs
CHANGED
|
@@ -34,15 +34,17 @@ var LogOptionsImpl = class extends EventEmitter {
|
|
|
34
34
|
_notifyListeners() {
|
|
35
35
|
super.emit("changed", this);
|
|
36
36
|
}
|
|
37
|
-
|
|
37
|
+
forkEnv(taskName) {
|
|
38
38
|
return {
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
39
|
+
__LOG_OPTIONS: JSON.stringify({
|
|
40
|
+
level: this._level,
|
|
41
|
+
colors: this._colors,
|
|
42
|
+
lineLength: this._lineLength,
|
|
43
|
+
taskLength: this._taskLength,
|
|
44
|
+
defaultTaskName: taskName || this._defaultTaskName,
|
|
45
|
+
spinner: false
|
|
46
|
+
// forked spinner is always false
|
|
47
|
+
})
|
|
46
48
|
};
|
|
47
49
|
}
|
|
48
50
|
get output() {
|
|
@@ -128,7 +130,16 @@ var LogOptionsImpl = class extends EventEmitter {
|
|
|
128
130
|
this._notifyListeners();
|
|
129
131
|
}
|
|
130
132
|
};
|
|
131
|
-
var
|
|
133
|
+
var optionsKey = Symbol.for("plugjs.plug.logging.logOptions");
|
|
134
|
+
function getLogOptions() {
|
|
135
|
+
let options = globalThis[optionsKey];
|
|
136
|
+
if (!options) {
|
|
137
|
+
options = new LogOptionsImpl();
|
|
138
|
+
globalThis[optionsKey] = options;
|
|
139
|
+
}
|
|
140
|
+
return options;
|
|
141
|
+
}
|
|
142
|
+
var logOptions = getLogOptions();
|
|
132
143
|
export {
|
|
133
144
|
logOptions
|
|
134
145
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/logging/options.ts"],
|
|
4
|
-
"mappings": ";AAAA,SAAS,oBAAoB;AAE7B,SAAS,gBAAgB,cAAc;
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
package/dist/utils/exec.cjs
CHANGED
|
@@ -67,8 +67,8 @@ async function execChild(cmd, args, options = {}, context) {
|
|
|
67
67
|
if (extraPath)
|
|
68
68
|
childPaths.push(extraPath);
|
|
69
69
|
const PATH = childPaths.join(import_node_path.default.delimiter);
|
|
70
|
-
const
|
|
71
|
-
const childEnv = { ...process.env, ...env,
|
|
70
|
+
const logForkEnv = import_logging.logOptions.forkEnv(context.taskName);
|
|
71
|
+
const childEnv = { ...process.env, ...env, ...logForkEnv, PATH };
|
|
72
72
|
if (coverageDir)
|
|
73
73
|
childEnv.NODE_V8_COVERAGE = context.resolve(coverageDir);
|
|
74
74
|
const childOptions = {
|
package/dist/utils/exec.cjs.map
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/utils/exec.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAAiB;AACjB,2BAAsB;AACtB,gCAA2D;AAE3D,qBAAqC;AACrC,qBAA+B;AAC/B,mBAA6D;AAoB7D,eAAsB,UAClB,KACA,MACA,UAA4B,CAAC,GAC7B,SACa;AACf,QAAM;AAAA,IACJ,MAAM,CAAC;AAAA;AAAA,IACP,OAAO;AAAA;AAAA,IACP,QAAQ;AAAA;AAAA,IACR,MAAM;AAAA;AAAA,IACN;AAAA;AAAA,IACA,GAAG;AAAA,EACL,IAAI;AAEJ,QAAM,WAAW,MAAM,QAAQ,QAAQ,GAAG,QAAI,yCAA2B;AACzE,iCAAO,+BAAiB,QAAQ,GAAG,iCAA6B,mBAAG,QAAQ,kBAAkB;AAG7F,6BAAO,EAAE,QAAQ,QAAQ,4CAA4C;AAGrE,QAAM,aAA6B,CAAC;AAGpC,QAAM,eAAe,QAAQ,QAAQ,iBAAiB,MAAM;AAC5D,UAAI,+BAAiB,YAAY;AAAG,eAAW,KAAK,YAAY;AAGhE,QAAM,gBAAgB,QAAQ,QAAQ,kBAAkB,MAAM;AAC9D,UAAI,+BAAiB,aAAa;AAAG,eAAW,KAAK,aAAa;AAGlE,QAAM,YAAY,IAAI,QAAQ,QAAQ,IAAI;AAC1C,MAAI;AAAW,eAAW,KAAK,SAAS;AAGxC,QAAM,OAAO,WAAW,KAAK,iBAAAA,QAAK,SAAS;AAC3C,QAAM,
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAAiB;AACjB,2BAAsB;AACtB,gCAA2D;AAE3D,qBAAqC;AACrC,qBAA+B;AAC/B,mBAA6D;AAoB7D,eAAsB,UAClB,KACA,MACA,UAA4B,CAAC,GAC7B,SACa;AACf,QAAM;AAAA,IACJ,MAAM,CAAC;AAAA;AAAA,IACP,OAAO;AAAA;AAAA,IACP,QAAQ;AAAA;AAAA,IACR,MAAM;AAAA;AAAA,IACN;AAAA;AAAA,IACA,GAAG;AAAA,EACL,IAAI;AAEJ,QAAM,WAAW,MAAM,QAAQ,QAAQ,GAAG,QAAI,yCAA2B;AACzE,iCAAO,+BAAiB,QAAQ,GAAG,iCAA6B,mBAAG,QAAQ,kBAAkB;AAG7F,6BAAO,EAAE,QAAQ,QAAQ,4CAA4C;AAGrE,QAAM,aAA6B,CAAC;AAGpC,QAAM,eAAe,QAAQ,QAAQ,iBAAiB,MAAM;AAC5D,UAAI,+BAAiB,YAAY;AAAG,eAAW,KAAK,YAAY;AAGhE,QAAM,gBAAgB,QAAQ,QAAQ,kBAAkB,MAAM;AAC9D,UAAI,+BAAiB,aAAa;AAAG,eAAW,KAAK,aAAa;AAGlE,QAAM,YAAY,IAAI,QAAQ,QAAQ,IAAI;AAC1C,MAAI;AAAW,eAAW,KAAK,SAAS;AAGxC,QAAM,OAAO,WAAW,KAAK,iBAAAA,QAAK,SAAS;AAC3C,QAAM,aAAa,0BAAW,QAAQ,QAAQ,QAAQ;AACtD,QAAM,WAAmC,EAAE,GAAG,QAAQ,KAAK,GAAG,KAAK,GAAG,YAAY,KAAK;AAGvF,MAAI;AAAa,aAAS,mBAAmB,QAAQ,QAAQ,WAAW;AAGxE,QAAM,eAA6B;AAAA,IACjC,GAAG;AAAA,IACH,OAAO,CAAE,UAAU,QAAQ,MAAO;AAAA,IAClC,KAAK;AAAA,IACL,KAAK;AAAA,IACL;AAAA,EACF;AAGA,MAAI;AAAM,iBAAa,QAAQ,CAAE,UAAU,QAAQ,QAAQ,KAAM;AAGjE,UAAQ,IAAI,KAAK,aAAa,CAAE,KAAK,GAAG,IAAK,CAAC;AAC9C,UAAQ,IAAI,KAAK,qBAAqB,YAAY;AAClD,QAAM,QAAQ,WACZ,0BAAAC,MAAY,KAAK,MAAM,YAAY,QACnC,0BAAAC,OAAa,KAAK,MAAM,YAAY;AAGtC,MAAI,MAAM,QAAQ;AAChB,UAAM,MAAM,qBAAAC,QAAU,gBAAgB,MAAM,MAAM;AAClD,QAAI,GAAG,QAAQ,CAAC,SAAS,OAAO,QAAQ,IAAI,OAAO,IAAI,IAAI,QAAQ,IAAI,OAAO,MAAQ,CAAC;AAAA,EACzF;AAGA,MAAI,MAAM,QAAQ;AAChB,UAAM,MAAM,qBAAAA,QAAU,gBAAgB,MAAM,MAAM;AAClD,QAAI,GAAG,QAAQ,CAAC,SAAS,OAAO,QAAQ,IAAI,KAAK,IAAI,IAAI,QAAQ,IAAI,KAAK,MAAQ,CAAC;AAAA,EACrF;AAGA,SAAO,IAAI,QAAc,CAAC,SAAS,WAAW;AAC5C,UAAM,GAAG,SAAS,CAAC,UAAU,OAAO,KAAK,CAAC;AAC1C,UAAM,GAAG,QAAQ,CAAC,MAAM,WAAW;AACjC,UAAI,SAAS;AAAG,eAAO,QAAQ;AAC/B,UAAI;AAAQ,eAAO,OAAO,4BAAa,YAAY,oCAAoC,QAAQ,CAAC;AAChG,UAAI;AAAM,eAAO,OAAO,4BAAa,YAAY,kCAAkC,MAAM,CAAC;AAC1F,aAAO,4BAAa,YAAY,4CAA4C,CAAC;AAAA,IAC/E,CAAC;AAAA,EACH,CAAC;AACH;",
|
|
5
5
|
"names": ["path", "forkProcess", "spawnProcess", "reaadline"]
|
|
6
6
|
}
|
package/dist/utils/exec.mjs
CHANGED
|
@@ -33,8 +33,8 @@ async function execChild(cmd, args, options = {}, context) {
|
|
|
33
33
|
if (extraPath)
|
|
34
34
|
childPaths.push(extraPath);
|
|
35
35
|
const PATH = childPaths.join(path.delimiter);
|
|
36
|
-
const
|
|
37
|
-
const childEnv = { ...process.env, ...env,
|
|
36
|
+
const logForkEnv = logOptions.forkEnv(context.taskName);
|
|
37
|
+
const childEnv = { ...process.env, ...env, ...logForkEnv, PATH };
|
|
38
38
|
if (coverageDir)
|
|
39
39
|
childEnv.NODE_V8_COVERAGE = context.resolve(coverageDir);
|
|
40
40
|
const childOptions = {
|
package/dist/utils/exec.mjs.map
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/utils/exec.ts"],
|
|
4
|
-
"mappings": ";AAAA,OAAO,UAAU;AACjB,OAAO,eAAe;AACtB,SAAS,QAAQ,aAAa,SAAS,oBAAoB;AAE3D,SAAS,QAAQ,oBAAoB;AACrC,SAAS,IAAI,kBAAkB;AAC/B,SAAS,4BAA4B,wBAAwB;AAoB7D,eAAsB,UAClB,KACA,MACA,UAA4B,CAAC,GAC7B,SACa;AACf,QAAM;AAAA,IACJ,MAAM,CAAC;AAAA;AAAA,IACP,OAAO;AAAA;AAAA,IACP,QAAQ;AAAA;AAAA,IACR,MAAM;AAAA;AAAA,IACN;AAAA;AAAA,IACA,GAAG;AAAA,EACL,IAAI;AAEJ,QAAM,WAAW,MAAM,QAAQ,QAAQ,GAAG,IAAI,2BAA2B;AACzE,SAAO,iBAAiB,QAAQ,GAAG,6BAA6B,GAAG,QAAQ,kBAAkB;AAG7F,SAAO,EAAE,QAAQ,QAAQ,4CAA4C;AAGrE,QAAM,aAA6B,CAAC;AAGpC,QAAM,eAAe,QAAQ,QAAQ,iBAAiB,MAAM;AAC5D,MAAI,iBAAiB,YAAY;AAAG,eAAW,KAAK,YAAY;AAGhE,QAAM,gBAAgB,QAAQ,QAAQ,kBAAkB,MAAM;AAC9D,MAAI,iBAAiB,aAAa;AAAG,eAAW,KAAK,aAAa;AAGlE,QAAM,YAAY,IAAI,QAAQ,QAAQ,IAAI;AAC1C,MAAI;AAAW,eAAW,KAAK,SAAS;AAGxC,QAAM,OAAO,WAAW,KAAK,KAAK,SAAS;AAC3C,QAAM,
|
|
4
|
+
"mappings": ";AAAA,OAAO,UAAU;AACjB,OAAO,eAAe;AACtB,SAAS,QAAQ,aAAa,SAAS,oBAAoB;AAE3D,SAAS,QAAQ,oBAAoB;AACrC,SAAS,IAAI,kBAAkB;AAC/B,SAAS,4BAA4B,wBAAwB;AAoB7D,eAAsB,UAClB,KACA,MACA,UAA4B,CAAC,GAC7B,SACa;AACf,QAAM;AAAA,IACJ,MAAM,CAAC;AAAA;AAAA,IACP,OAAO;AAAA;AAAA,IACP,QAAQ;AAAA;AAAA,IACR,MAAM;AAAA;AAAA,IACN;AAAA;AAAA,IACA,GAAG;AAAA,EACL,IAAI;AAEJ,QAAM,WAAW,MAAM,QAAQ,QAAQ,GAAG,IAAI,2BAA2B;AACzE,SAAO,iBAAiB,QAAQ,GAAG,6BAA6B,GAAG,QAAQ,kBAAkB;AAG7F,SAAO,EAAE,QAAQ,QAAQ,4CAA4C;AAGrE,QAAM,aAA6B,CAAC;AAGpC,QAAM,eAAe,QAAQ,QAAQ,iBAAiB,MAAM;AAC5D,MAAI,iBAAiB,YAAY;AAAG,eAAW,KAAK,YAAY;AAGhE,QAAM,gBAAgB,QAAQ,QAAQ,kBAAkB,MAAM;AAC9D,MAAI,iBAAiB,aAAa;AAAG,eAAW,KAAK,aAAa;AAGlE,QAAM,YAAY,IAAI,QAAQ,QAAQ,IAAI;AAC1C,MAAI;AAAW,eAAW,KAAK,SAAS;AAGxC,QAAM,OAAO,WAAW,KAAK,KAAK,SAAS;AAC3C,QAAM,aAAa,WAAW,QAAQ,QAAQ,QAAQ;AACtD,QAAM,WAAmC,EAAE,GAAG,QAAQ,KAAK,GAAG,KAAK,GAAG,YAAY,KAAK;AAGvF,MAAI;AAAa,aAAS,mBAAmB,QAAQ,QAAQ,WAAW;AAGxE,QAAM,eAA6B;AAAA,IACjC,GAAG;AAAA,IACH,OAAO,CAAE,UAAU,QAAQ,MAAO;AAAA,IAClC,KAAK;AAAA,IACL,KAAK;AAAA,IACL;AAAA,EACF;AAGA,MAAI;AAAM,iBAAa,QAAQ,CAAE,UAAU,QAAQ,QAAQ,KAAM;AAGjE,UAAQ,IAAI,KAAK,aAAa,CAAE,KAAK,GAAG,IAAK,CAAC;AAC9C,UAAQ,IAAI,KAAK,qBAAqB,YAAY;AAClD,QAAM,QAAQ,OACZ,YAAY,KAAK,MAAM,YAAY,IACnC,aAAa,KAAK,MAAM,YAAY;AAGtC,MAAI,MAAM,QAAQ;AAChB,UAAM,MAAM,UAAU,gBAAgB,MAAM,MAAM;AAClD,QAAI,GAAG,QAAQ,CAAC,SAAS,OAAO,QAAQ,IAAI,OAAO,IAAI,IAAI,QAAQ,IAAI,OAAO,MAAQ,CAAC;AAAA,EACzF;AAGA,MAAI,MAAM,QAAQ;AAChB,UAAM,MAAM,UAAU,gBAAgB,MAAM,MAAM;AAClD,QAAI,GAAG,QAAQ,CAAC,SAAS,OAAO,QAAQ,IAAI,KAAK,IAAI,IAAI,QAAQ,IAAI,KAAK,MAAQ,CAAC;AAAA,EACrF;AAGA,SAAO,IAAI,QAAc,CAAC,SAAS,WAAW;AAC5C,UAAM,GAAG,SAAS,CAAC,UAAU,OAAO,KAAK,CAAC;AAC1C,UAAM,GAAG,QAAQ,CAAC,MAAM,WAAW;AACjC,UAAI,SAAS;AAAG,eAAO,QAAQ;AAC/B,UAAI;AAAQ,eAAO,OAAO,aAAa,YAAY,oCAAoC,QAAQ,CAAC;AAChG,UAAI;AAAM,eAAO,OAAO,aAAa,YAAY,kCAAkC,MAAM,CAAC;AAC1F,aAAO,aAAa,YAAY,4CAA4C,CAAC;AAAA,IAC/E,CAAC;AAAA,EACH,CAAC;AACH;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
package/package.json
CHANGED
package/src/async.ts
CHANGED
|
@@ -4,7 +4,6 @@ import { assert } from './asserts'
|
|
|
4
4
|
|
|
5
5
|
import type { Context } from './pipe'
|
|
6
6
|
|
|
7
|
-
|
|
8
7
|
/* ========================================================================== *
|
|
9
8
|
* EXPORTED *
|
|
10
9
|
* ========================================================================== */
|
|
@@ -57,5 +56,33 @@ export function runningTasks(): string[] {
|
|
|
57
56
|
* INTERNALS *
|
|
58
57
|
* ========================================================================== */
|
|
59
58
|
|
|
60
|
-
|
|
61
|
-
|
|
59
|
+
/*
|
|
60
|
+
* Storage and task names must be unique _per process_. We might get called
|
|
61
|
+
* from two (or three) different versions of this file: the .cjs transpiled one,
|
|
62
|
+
* the .mjs transpiled one (or the .ts dynamically transpiled by ts-loader).
|
|
63
|
+
* In all these cases, we must return the _same_ object, so we store those as
|
|
64
|
+
* a global variables associated with a couple of global symbols
|
|
65
|
+
*/
|
|
66
|
+
const storageKey = Symbol.for('plugjs.plug.async.storage')
|
|
67
|
+
const tasksKey = Symbol.for('plugjs.plug.async.tasks')
|
|
68
|
+
|
|
69
|
+
function getStorage(): AsyncLocalStorage<Context> {
|
|
70
|
+
let storage: AsyncLocalStorage<Context> = (<any> globalThis)[storageKey]
|
|
71
|
+
if (! storage) {
|
|
72
|
+
storage = new AsyncLocalStorage<Context>()
|
|
73
|
+
;(<any> globalThis)[storageKey] = storage
|
|
74
|
+
}
|
|
75
|
+
return storage
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
function getTasks(): Set<string> {
|
|
79
|
+
let tasks: Set<string> = (<any> globalThis)[tasksKey]
|
|
80
|
+
if (! tasks) {
|
|
81
|
+
tasks = new Set<string>
|
|
82
|
+
;(<any> globalThis)[tasksKey] = tasks
|
|
83
|
+
}
|
|
84
|
+
return tasks
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
const storage = getStorage()
|
|
88
|
+
const tasks = getTasks()
|
package/src/fork.ts
CHANGED
|
@@ -7,7 +7,6 @@ import { $gry, $p, logOptions } from './logging'
|
|
|
7
7
|
import { requireFilename, resolveFile } from './paths'
|
|
8
8
|
import { Context, install } from './pipe'
|
|
9
9
|
|
|
10
|
-
import type { LogOptions } from './logging'
|
|
11
10
|
import type { AbsolutePath } from './paths'
|
|
12
11
|
import type { Plug, PlugName, PlugResult } from './pipe'
|
|
13
12
|
|
|
@@ -27,8 +26,6 @@ export interface ForkData {
|
|
|
27
26
|
filesDir: AbsolutePath,
|
|
28
27
|
/** All files to pipe */
|
|
29
28
|
filesList: AbsolutePath[],
|
|
30
|
-
/** Options for our logger in the child process */
|
|
31
|
-
logOpts: Partial<LogOptions>,
|
|
32
29
|
}
|
|
33
30
|
|
|
34
31
|
/** Fork result, from child to parent process */
|
|
@@ -61,7 +58,6 @@ export abstract class ForkingPlug implements Plug<PlugResult> {
|
|
|
61
58
|
buildFile: context.buildFile,
|
|
62
59
|
filesDir: files.directory,
|
|
63
60
|
filesList: [ ...files.absolutePaths() ],
|
|
64
|
-
logOpts: logOptions.fork(context.taskName),
|
|
65
61
|
}
|
|
66
62
|
|
|
67
63
|
/* Get _this_ filename to spawn */
|
|
@@ -69,7 +65,7 @@ export abstract class ForkingPlug implements Plug<PlugResult> {
|
|
|
69
65
|
context.log.debug('About to fork plug from', $p(script))
|
|
70
66
|
|
|
71
67
|
/* Environment variables */
|
|
72
|
-
const env = { ...process.env }
|
|
68
|
+
const env = { ...process.env, ...logOptions.forkEnv(context.taskName) }
|
|
73
69
|
|
|
74
70
|
/* Check our args (reversed) to see if the last specifies `coverageDir` */
|
|
75
71
|
for (let i = this._arguments.length - 1; i >= 0; i --) {
|
|
@@ -176,12 +172,8 @@ if ((process.argv[1] === requireFilename(__fileurl)) && (process.send)) {
|
|
|
176
172
|
buildFile,
|
|
177
173
|
filesDir,
|
|
178
174
|
filesList,
|
|
179
|
-
logOpts,
|
|
180
175
|
} = message
|
|
181
176
|
|
|
182
|
-
/* Restore logging options first */
|
|
183
|
-
Object.assign(logOptions, logOpts)
|
|
184
|
-
|
|
185
177
|
/* First of all, our plug context */
|
|
186
178
|
const context = new Context(buildFile, taskName)
|
|
187
179
|
context.log.debug('Message from parent process', message)
|
package/src/logging/options.ts
CHANGED
|
@@ -8,7 +8,6 @@ import type { LogLevel, LogLevelString } from './levels'
|
|
|
8
8
|
|
|
9
9
|
/* ========================================================================== */
|
|
10
10
|
|
|
11
|
-
|
|
12
11
|
/** Options for our {@link Logger} instances */
|
|
13
12
|
export interface LogOptions {
|
|
14
13
|
/** The current output. */
|
|
@@ -42,8 +41,8 @@ export interface LogOptions {
|
|
|
42
41
|
/** Remove an event listener for the specified event. */
|
|
43
42
|
off(eventName: 'changed', listener: (logOptions: this) => void): this;
|
|
44
43
|
|
|
45
|
-
/**
|
|
46
|
-
|
|
44
|
+
/** Return a record of environment variables for forking. */
|
|
45
|
+
forkEnv(taskName?: string): Record<string, string>
|
|
47
46
|
}
|
|
48
47
|
|
|
49
48
|
/* ========================================================================== *
|
|
@@ -91,14 +90,16 @@ class LogOptionsImpl extends EventEmitter implements LogOptions {
|
|
|
91
90
|
super.emit('changed', this)
|
|
92
91
|
}
|
|
93
92
|
|
|
94
|
-
|
|
93
|
+
forkEnv(taskName?: string): Record<string, string> {
|
|
95
94
|
return {
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
95
|
+
__LOG_OPTIONS: JSON.stringify({
|
|
96
|
+
level: this._level,
|
|
97
|
+
colors: this._colors,
|
|
98
|
+
lineLength: this._lineLength,
|
|
99
|
+
taskLength: this._taskLength,
|
|
100
|
+
defaultTaskName: taskName || this._defaultTaskName,
|
|
101
|
+
spinner: false, // forked spinner is always false
|
|
102
|
+
}),
|
|
102
103
|
}
|
|
103
104
|
}
|
|
104
105
|
|
|
@@ -202,5 +203,18 @@ class LogOptionsImpl extends EventEmitter implements LogOptions {
|
|
|
202
203
|
}
|
|
203
204
|
}
|
|
204
205
|
|
|
206
|
+
/* Unique symbol to share `LogOptions` per process */
|
|
207
|
+
const optionsKey = Symbol.for('plugjs.plug.logging.logOptions')
|
|
208
|
+
|
|
209
|
+
/** Get the shared _per process_ instance of our {@link LogOptions}. */
|
|
210
|
+
function getLogOptions(): LogOptions {
|
|
211
|
+
let options: LogOptions = (<any> globalThis)[optionsKey]
|
|
212
|
+
if (! options) {
|
|
213
|
+
options = new LogOptionsImpl()
|
|
214
|
+
;(<any> globalThis)[optionsKey] = options
|
|
215
|
+
}
|
|
216
|
+
return options
|
|
217
|
+
}
|
|
218
|
+
|
|
205
219
|
/** Shared instance of our {@link LogOptions}. */
|
|
206
|
-
export const logOptions
|
|
220
|
+
export const logOptions = getLogOptions()
|
package/src/utils/exec.ts
CHANGED
|
@@ -62,8 +62,8 @@ export async function execChild(
|
|
|
62
62
|
|
|
63
63
|
// Build our environment variables record
|
|
64
64
|
const PATH = childPaths.join(path.delimiter)
|
|
65
|
-
const
|
|
66
|
-
const childEnv: Record<string, string> = { ...process.env, ...env,
|
|
65
|
+
const logForkEnv = logOptions.forkEnv(context.taskName)
|
|
66
|
+
const childEnv: Record<string, string> = { ...process.env, ...env, ...logForkEnv, PATH }
|
|
67
67
|
|
|
68
68
|
// Instrument coverage directory if needed
|
|
69
69
|
if (coverageDir) childEnv.NODE_V8_COVERAGE = context.resolve(coverageDir)
|