@plugjs/plug 0.4.35 → 0.5.0

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 (66) hide show
  1. package/dist/build.cjs +12 -5
  2. package/dist/build.cjs.map +1 -1
  3. package/dist/build.d.ts +3 -1
  4. package/dist/build.mjs +12 -6
  5. package/dist/build.mjs.map +1 -1
  6. package/dist/cli.mjs +12 -7
  7. package/dist/cli.mjs.map +2 -2
  8. package/dist/fork.cjs +20 -13
  9. package/dist/fork.cjs.map +1 -1
  10. package/dist/fork.d.ts +1 -0
  11. package/dist/fork.mjs +20 -13
  12. package/dist/fork.mjs.map +1 -1
  13. package/dist/logging/emit.cjs +31 -2
  14. package/dist/logging/emit.cjs.map +2 -2
  15. package/dist/logging/emit.d.ts +14 -0
  16. package/dist/logging/emit.mjs +29 -2
  17. package/dist/logging/emit.mjs.map +2 -2
  18. package/dist/logging/github.cjs +4 -7
  19. package/dist/logging/github.cjs.map +1 -1
  20. package/dist/logging/github.mjs +4 -7
  21. package/dist/logging/github.mjs.map +1 -1
  22. package/dist/logging/logger.cjs +23 -37
  23. package/dist/logging/logger.cjs.map +1 -1
  24. package/dist/logging/logger.d.ts +7 -7
  25. package/dist/logging/logger.mjs +24 -38
  26. package/dist/logging/logger.mjs.map +1 -1
  27. package/dist/logging/options.cjs +30 -29
  28. package/dist/logging/options.cjs.map +1 -1
  29. package/dist/logging/options.d.ts +2 -11
  30. package/dist/logging/options.mjs +30 -29
  31. package/dist/logging/options.mjs.map +1 -1
  32. package/dist/logging.cjs +5 -3
  33. package/dist/logging.cjs.map +1 -1
  34. package/dist/logging.mjs +5 -3
  35. package/dist/logging.mjs.map +1 -1
  36. package/dist/plugs/exports.cjs +3 -5
  37. package/dist/plugs/exports.cjs.map +1 -1
  38. package/dist/plugs/exports.mjs +3 -5
  39. package/dist/plugs/exports.mjs.map +1 -1
  40. package/dist/utils/ansi.cjs +39 -0
  41. package/dist/utils/ansi.cjs.map +6 -0
  42. package/dist/utils/ansi.d.ts +4 -0
  43. package/dist/utils/ansi.mjs +13 -0
  44. package/dist/utils/ansi.mjs.map +6 -0
  45. package/dist/utils/exec.cjs +10 -1
  46. package/dist/utils/exec.cjs.map +1 -1
  47. package/dist/utils/exec.mjs +11 -2
  48. package/dist/utils/exec.mjs.map +1 -1
  49. package/dist/utils.cjs +2 -0
  50. package/dist/utils.cjs.map +1 -1
  51. package/dist/utils.d.ts +1 -0
  52. package/dist/utils.mjs +1 -0
  53. package/dist/utils.mjs.map +1 -1
  54. package/package.json +1 -1
  55. package/src/build.ts +14 -5
  56. package/src/cli.mts +11 -5
  57. package/src/fork.ts +26 -15
  58. package/src/logging/emit.ts +65 -2
  59. package/src/logging/github.ts +4 -11
  60. package/src/logging/logger.ts +25 -43
  61. package/src/logging/options.ts +29 -37
  62. package/src/logging.ts +5 -3
  63. package/src/plugs/exports.ts +3 -4
  64. package/src/utils/ansi.ts +10 -0
  65. package/src/utils/exec.ts +7 -2
  66. package/src/utils.ts +1 -0
@@ -1,5 +1,6 @@
1
1
  // logging/emit.ts
2
2
  import { formatWithOptions } from "node:util";
3
+ import { fail } from "../asserts.mjs";
3
4
  import { $blu, $grn, $gry, $red, $t, $ylw } from "./colors.mjs";
4
5
  import { DEBUG, INFO, NOTICE, TRACE, WARN } from "./levels.mjs";
5
6
  import { logOptions } from "./options.mjs";
@@ -8,13 +9,14 @@ var _output = logOptions.output;
8
9
  var _indentSize = logOptions.indentSize;
9
10
  var _taskLength = logOptions.taskLength;
10
11
  var _lineLength = logOptions.lineLength;
11
- var _inspectOptions = logOptions.inspectOptions;
12
+ var _inspectOptions = { ...logOptions.inspectOptions };
12
13
  logOptions.on("changed", (options) => {
13
14
  _output = options.output;
14
15
  _indentSize = options.indentSize;
15
16
  _taskLength = options.taskLength;
16
17
  _lineLength = options.lineLength;
17
- _inspectOptions = options.inspectOptions;
18
+ _inspectOptions = { ...options.inspectOptions };
19
+ _defaultEmitter = options.format === "fancy" ? emitFancy : options.format === "plain" ? emitPlain : fail(`Invalid log format "${logOptions.format}"`);
18
20
  });
19
21
  var emitFancy = (options, args) => {
20
22
  const { taskName, level, prefix = "", indent = 0 } = options;
@@ -72,8 +74,33 @@ var emitPlain = (options, args) => {
72
74
  `);
73
75
  }
74
76
  };
77
+ var emitForked = (options, args) => {
78
+ if (process.connected && process.send) {
79
+ const { taskName, level, prefix = "", indent = 0 } = options;
80
+ const linePrefix = "".padStart(indent * _indentSize) + prefix;
81
+ const breakLength = _lineLength - _taskLength - linePrefix.length - 20;
82
+ const message = formatWithOptions({ ..._inspectOptions, breakLength }, ...args);
83
+ const lines = message.split("\n").map((line) => `${linePrefix}${line}`);
84
+ process.send({ logLevel: level, taskName, lines });
85
+ } else {
86
+ _defaultEmitter(options, args);
87
+ }
88
+ };
89
+ var _defaultEmitter = logOptions.format === "fancy" ? emitFancy : logOptions.format === "plain" ? emitPlain : fail(`Invalid log format "${logOptions.format}"`);
90
+ var _emitter = _defaultEmitter;
91
+ var wrapper = function emit(options, args) {
92
+ _defaultEmitter(options, args);
93
+ };
94
+ var emit2 = Object.defineProperty(wrapper, "emitter", {
95
+ get: () => _emitter,
96
+ set: (emitter) => {
97
+ _emitter = emitter || _defaultEmitter;
98
+ }
99
+ });
75
100
  export {
101
+ emit2 as emit,
76
102
  emitFancy,
103
+ emitForked,
77
104
  emitPlain
78
105
  };
79
106
  //# sourceMappingURL=emit.mjs.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/logging/emit.ts"],
4
- "mappings": "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",
5
- "names": []
4
+ "mappings": "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",
5
+ "names": ["emit"]
6
6
  }
@@ -25,24 +25,21 @@ __export(github_exports, {
25
25
  module.exports = __toCommonJS(github_exports);
26
26
  var import_node_os = require("node:os");
27
27
  var import_node_util = require("node:util");
28
+ var import_ansi = require("../utils/ansi.cjs");
28
29
  var import_options = require("./options.cjs");
29
- var ansiRegExp = new RegExp([
30
- "[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)",
31
- "(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"
32
- ].join("|"), "g");
33
30
  var _output = import_options.logOptions.output;
34
- var _inspectOptions = import_options.logOptions.inspectOptions;
35
31
  var _githubAnnotations = import_options.logOptions.githubAnnotations;
32
+ var _inspectOptions = { ...import_options.logOptions.inspectOptions, breakLength: Infinity };
36
33
  import_options.logOptions.on("changed", (options) => {
37
34
  _output = options.output;
38
35
  _githubAnnotations = options.githubAnnotations;
39
36
  _inspectOptions = { ...options.inspectOptions, breakLength: Infinity };
40
37
  });
41
38
  function escapeData(data) {
42
- return data.replace(ansiRegExp, "").replace(/%/g, "%25").replace(/\r/g, "%0D").replace(/\n/g, "%0A");
39
+ return (0, import_ansi.stripAnsi)(data).replace(/%/g, "%25").replace(/\r/g, "%0D").replace(/\n/g, "%0A");
43
40
  }
44
41
  function escapeProp(prop) {
45
- return `${prop}`.replace(ansiRegExp, "").replace(/%/g, "%25").replace(/\r/g, "%0D").replace(/\n/g, "%0A").replace(/:/g, "%3A").replace(/,/g, "%2C");
42
+ return (0, import_ansi.stripAnsi)(`${prop}`).replace(/%/g, "%25").replace(/\r/g, "%0D").replace(/\n/g, "%0A").replace(/:/g, "%3A").replace(/,/g, "%2C");
46
43
  }
47
44
  function githubAnnotation(options, ...args) {
48
45
  if (!_githubAnnotations)
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/logging/github.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAAoB;AACpB,uBAAkC;AAElC,qBAA2B;AAK3B,IAAM,aAAa,IAAI,OAAO;AAAA,EAC5B;AAAA,EACA;AACF,EAAE,KAAK,GAAG,GAAG,GAAG;AAGhB,IAAI,UAAU,0BAAW;AACzB,IAAI,kBAAkB,0BAAW;AACjC,IAAI,qBAAqB,0BAAW;AACpC,0BAAW,GAAG,WAAW,CAAC,YAAY;AACpC,YAAU,QAAQ;AAClB,uBAAqB,QAAQ;AAC7B,oBAAkB,EAAE,GAAG,QAAQ,gBAAgB,aAAa,SAAS;AACvE,CAAC;AAGD,SAAS,WAAW,MAAsB;AACxC,SAAO,KACF,QAAQ,YAAY,EAAE,EACtB,QAAQ,MAAM,KAAK,EACnB,QAAQ,OAAO,KAAK,EACpB,QAAQ,OAAO,KAAK;AAC3B;AAEA,SAAS,WAAW,MAA+B;AACjD,SAAO,GAAG,IAAI,GACT,QAAQ,YAAY,EAAE,EACtB,QAAQ,MAAM,KAAK,EACnB,QAAQ,OAAO,KAAK,EACpB,QAAQ,OAAO,KAAK,EACpB,QAAQ,MAAM,KAAK,EACnB,QAAQ,MAAM,KAAK;AAC1B;AAiBO,SAAS,iBAAiB,YAA4D,MAAmB;AAC9G,MAAI,CAAE;AAAoB;AAE1B,MAAI,OAAO,YAAY;AAAU,cAAU,EAAE,MAAM,QAAQ;AAC3D,QAAM,EAAE,MAAM,GAAG,WAAW,IAAI;AAEhC,QAAM,aAAa,OAAO,QAAQ,UAAU,EACvC,OAAO,CAAC,CAAE,KAAK,KAAM,MAAM,CAAC,EAAE,OAAO,MAAM,EAC3C,IAAI,CAAC,CAAE,KAAK,KAAM,MAAM,GAAG,GAAG,IAAI,WAAW,KAAK,CAAC,EAAE,EACrD,KAAK,GAAG;AAEb,QAAM,MAAM,eAAW,oCAAkB,iBAAiB,GAAG,IAAI,CAAC;AAElE,MAAI,YAAY;AACd,YAAQ,MAAM,KAAK,IAAI,IAAI,UAAU,KAAK,GAAG,GAAG,kBAAG,EAAE;AAAA,EACvD,OAAO;AACL,YAAQ,MAAM,KAAK,IAAI,KAAK,GAAG,GAAG,kBAAG,EAAE;AAAA,EACzC;AACF;",
4
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAAoB;AACpB,uBAAkC;AAElC,kBAA0B;AAC1B,qBAA2B;AAK3B,IAAI,UAAU,0BAAW;AACzB,IAAI,qBAAqB,0BAAW;AACpC,IAAI,kBAAkB,EAAE,GAAG,0BAAW,gBAAgB,aAAa,SAAS;AAC5E,0BAAW,GAAG,WAAW,CAAC,YAAY;AACpC,YAAU,QAAQ;AAClB,uBAAqB,QAAQ;AAC7B,oBAAkB,EAAE,GAAG,QAAQ,gBAAgB,aAAa,SAAS;AACvE,CAAC;AAGD,SAAS,WAAW,MAAsB;AACxC,aAAO,uBAAU,IAAI,EAChB,QAAQ,MAAM,KAAK,EACnB,QAAQ,OAAO,KAAK,EACpB,QAAQ,OAAO,KAAK;AAC3B;AAEA,SAAS,WAAW,MAA+B;AACjD,aAAO,uBAAU,GAAG,IAAI,EAAE,EACrB,QAAQ,MAAM,KAAK,EACnB,QAAQ,OAAO,KAAK,EACpB,QAAQ,OAAO,KAAK,EACpB,QAAQ,MAAM,KAAK,EACnB,QAAQ,MAAM,KAAK;AAC1B;AAiBO,SAAS,iBAAiB,YAA4D,MAAmB;AAC9G,MAAI,CAAE;AAAoB;AAE1B,MAAI,OAAO,YAAY;AAAU,cAAU,EAAE,MAAM,QAAQ;AAC3D,QAAM,EAAE,MAAM,GAAG,WAAW,IAAI;AAEhC,QAAM,aAAa,OAAO,QAAQ,UAAU,EACvC,OAAO,CAAC,CAAE,KAAK,KAAM,MAAM,CAAC,EAAE,OAAO,MAAM,EAC3C,IAAI,CAAC,CAAE,KAAK,KAAM,MAAM,GAAG,GAAG,IAAI,WAAW,KAAK,CAAC,EAAE,EACrD,KAAK,GAAG;AAEb,QAAM,MAAM,eAAW,oCAAkB,iBAAiB,GAAG,IAAI,CAAC;AAElE,MAAI,YAAY;AACd,YAAQ,MAAM,KAAK,IAAI,IAAI,UAAU,KAAK,GAAG,GAAG,kBAAG,EAAE;AAAA,EACvD,OAAO;AACL,YAAQ,MAAM,KAAK,IAAI,KAAK,GAAG,GAAG,kBAAG,EAAE;AAAA,EACzC;AACF;",
5
5
  "names": []
6
6
  }
@@ -1,24 +1,21 @@
1
1
  // logging/github.ts
2
2
  import { EOL } from "node:os";
3
3
  import { formatWithOptions } from "node:util";
4
+ import { stripAnsi } from "../utils/ansi.mjs";
4
5
  import { logOptions } from "./options.mjs";
5
- var ansiRegExp = new RegExp([
6
- "[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)",
7
- "(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"
8
- ].join("|"), "g");
9
6
  var _output = logOptions.output;
10
- var _inspectOptions = logOptions.inspectOptions;
11
7
  var _githubAnnotations = logOptions.githubAnnotations;
8
+ var _inspectOptions = { ...logOptions.inspectOptions, breakLength: Infinity };
12
9
  logOptions.on("changed", (options) => {
13
10
  _output = options.output;
14
11
  _githubAnnotations = options.githubAnnotations;
15
12
  _inspectOptions = { ...options.inspectOptions, breakLength: Infinity };
16
13
  });
17
14
  function escapeData(data) {
18
- return data.replace(ansiRegExp, "").replace(/%/g, "%25").replace(/\r/g, "%0D").replace(/\n/g, "%0A");
15
+ return stripAnsi(data).replace(/%/g, "%25").replace(/\r/g, "%0D").replace(/\n/g, "%0A");
19
16
  }
20
17
  function escapeProp(prop) {
21
- return `${prop}`.replace(ansiRegExp, "").replace(/%/g, "%25").replace(/\r/g, "%0D").replace(/\n/g, "%0A").replace(/:/g, "%3A").replace(/,/g, "%2C");
18
+ return stripAnsi(`${prop}`).replace(/%/g, "%25").replace(/\r/g, "%0D").replace(/\n/g, "%0A").replace(/:/g, "%3A").replace(/,/g, "%2C");
22
19
  }
23
20
  function githubAnnotation(options, ...args) {
24
21
  if (!_githubAnnotations)
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/logging/github.ts"],
4
- "mappings": ";AAAA,SAAS,WAAW;AACpB,SAAS,yBAAyB;AAElC,SAAS,kBAAkB;AAK3B,IAAM,aAAa,IAAI,OAAO;AAAA,EAC5B;AAAA,EACA;AACF,EAAE,KAAK,GAAG,GAAG,GAAG;AAGhB,IAAI,UAAU,WAAW;AACzB,IAAI,kBAAkB,WAAW;AACjC,IAAI,qBAAqB,WAAW;AACpC,WAAW,GAAG,WAAW,CAAC,YAAY;AACpC,YAAU,QAAQ;AAClB,uBAAqB,QAAQ;AAC7B,oBAAkB,EAAE,GAAG,QAAQ,gBAAgB,aAAa,SAAS;AACvE,CAAC;AAGD,SAAS,WAAW,MAAsB;AACxC,SAAO,KACF,QAAQ,YAAY,EAAE,EACtB,QAAQ,MAAM,KAAK,EACnB,QAAQ,OAAO,KAAK,EACpB,QAAQ,OAAO,KAAK;AAC3B;AAEA,SAAS,WAAW,MAA+B;AACjD,SAAO,GAAG,IAAI,GACT,QAAQ,YAAY,EAAE,EACtB,QAAQ,MAAM,KAAK,EACnB,QAAQ,OAAO,KAAK,EACpB,QAAQ,OAAO,KAAK,EACpB,QAAQ,MAAM,KAAK,EACnB,QAAQ,MAAM,KAAK;AAC1B;AAiBO,SAAS,iBAAiB,YAA4D,MAAmB;AAC9G,MAAI,CAAE;AAAoB;AAE1B,MAAI,OAAO,YAAY;AAAU,cAAU,EAAE,MAAM,QAAQ;AAC3D,QAAM,EAAE,MAAM,GAAG,WAAW,IAAI;AAEhC,QAAM,aAAa,OAAO,QAAQ,UAAU,EACvC,OAAO,CAAC,CAAE,KAAK,KAAM,MAAM,CAAC,EAAE,OAAO,MAAM,EAC3C,IAAI,CAAC,CAAE,KAAK,KAAM,MAAM,GAAG,GAAG,IAAI,WAAW,KAAK,CAAC,EAAE,EACrD,KAAK,GAAG;AAEb,QAAM,MAAM,WAAW,kBAAkB,iBAAiB,GAAG,IAAI,CAAC;AAElE,MAAI,YAAY;AACd,YAAQ,MAAM,KAAK,IAAI,IAAI,UAAU,KAAK,GAAG,GAAG,GAAG,EAAE;AAAA,EACvD,OAAO;AACL,YAAQ,MAAM,KAAK,IAAI,KAAK,GAAG,GAAG,GAAG,EAAE;AAAA,EACzC;AACF;",
4
+ "mappings": ";AAAA,SAAS,WAAW;AACpB,SAAS,yBAAyB;AAElC,SAAS,iBAAiB;AAC1B,SAAS,kBAAkB;AAK3B,IAAI,UAAU,WAAW;AACzB,IAAI,qBAAqB,WAAW;AACpC,IAAI,kBAAkB,EAAE,GAAG,WAAW,gBAAgB,aAAa,SAAS;AAC5E,WAAW,GAAG,WAAW,CAAC,YAAY;AACpC,YAAU,QAAQ;AAClB,uBAAqB,QAAQ;AAC7B,oBAAkB,EAAE,GAAG,QAAQ,gBAAgB,aAAa,SAAS;AACvE,CAAC;AAGD,SAAS,WAAW,MAAsB;AACxC,SAAO,UAAU,IAAI,EAChB,QAAQ,MAAM,KAAK,EACnB,QAAQ,OAAO,KAAK,EACpB,QAAQ,OAAO,KAAK;AAC3B;AAEA,SAAS,WAAW,MAA+B;AACjD,SAAO,UAAU,GAAG,IAAI,EAAE,EACrB,QAAQ,MAAM,KAAK,EACnB,QAAQ,OAAO,KAAK,EACpB,QAAQ,OAAO,KAAK,EACpB,QAAQ,MAAM,KAAK,EACnB,QAAQ,MAAM,KAAK;AAC1B;AAiBO,SAAS,iBAAiB,YAA4D,MAAmB;AAC9G,MAAI,CAAE;AAAoB;AAE1B,MAAI,OAAO,YAAY;AAAU,cAAU,EAAE,MAAM,QAAQ;AAC3D,QAAM,EAAE,MAAM,GAAG,WAAW,IAAI;AAEhC,QAAM,aAAa,OAAO,QAAQ,UAAU,EACvC,OAAO,CAAC,CAAE,KAAK,KAAM,MAAM,CAAC,EAAE,OAAO,MAAM,EAC3C,IAAI,CAAC,CAAE,KAAK,KAAM,MAAM,GAAG,GAAG,IAAI,WAAW,KAAK,CAAC,EAAE,EACrD,KAAK,GAAG;AAEb,QAAM,MAAM,WAAW,kBAAkB,iBAAiB,GAAG,IAAI,CAAC;AAElE,MAAI,YAAY;AACd,YAAQ,MAAM,KAAK,IAAI,IAAI,UAAU,KAAK,GAAG,GAAG,GAAG,EAAE;AAAA,EACvD,OAAO;AACL,YAAQ,MAAM,KAAK,IAAI,KAAK,GAAG,GAAG,GAAG,EAAE;AAAA,EACzC;AACF;",
5
5
  "names": []
6
6
  }
@@ -26,40 +26,34 @@ __export(logger_exports, {
26
26
  module.exports = __toCommonJS(logger_exports);
27
27
  var import_node_util = require("node:util");
28
28
  var import_asserts = require("../asserts.cjs");
29
+ var import_async = require("../async.cjs");
30
+ var import_ansi = require("../utils/ansi.cjs");
29
31
  var import_colors = require("./colors.cjs");
30
32
  var import_emit = require("./emit.cjs");
31
33
  var import_levels = require("./levels.cjs");
32
34
  var import_options = require("./options.cjs");
33
35
  var import_report = require("./report.cjs");
34
36
  var _level = import_options.logOptions.level;
35
- var _format = import_options.logOptions.format;
36
- var _defaultTaskName = import_options.logOptions.defaultTaskName;
37
- import_options.logOptions.on("changed", ({ defaultTaskName, format, level }) => {
38
- _defaultTaskName = defaultTaskName;
39
- _format = format;
37
+ import_options.logOptions.on("changed", ({ level }) => {
40
38
  _level = level;
41
39
  });
42
- function getLogger(task = _defaultTaskName) {
43
- let logger = _loggers.get(task);
44
- if (!logger) {
45
- const emitter = _format === "fancy" ? import_emit.emitFancy : import_emit.emitPlain;
46
- logger = new LoggerImpl(task, emitter);
47
- _loggers.set(task, logger);
48
- }
49
- return logger;
40
+ function getLogger(task, indent) {
41
+ const context = (0, import_async.currentContext)();
42
+ const taskName = task === void 0 ? context?.taskName || "" : task;
43
+ const indentLevel = indent === void 0 ? context?.log.indent || 0 : 0;
44
+ return new LoggerImpl(taskName, import_emit.emit, indentLevel);
50
45
  }
51
- var _loggers = /* @__PURE__ */ new Map();
52
46
  var _loggedFailures = /* @__PURE__ */ new WeakSet();
53
47
  var LoggerImpl = class {
54
- constructor(_task, _emitter) {
48
+ constructor(_task, _emitter, indent) {
55
49
  this._task = _task;
56
50
  this._emitter = _emitter;
51
+ this.indent = indent;
57
52
  }
58
53
  _stack = [];
59
- _level = _level;
60
- _indent = 0;
61
- _emit(level, args) {
62
- if (this._level > level)
54
+ level = _level;
55
+ _emit(level, args, taskName = this._task) {
56
+ if (this.level > level)
63
57
  return;
64
58
  const params = args.filter((arg) => {
65
59
  if (arg instanceof import_asserts.BuildFailure) {
@@ -79,7 +73,7 @@ var LoggerImpl = class {
79
73
  });
80
74
  if (params.length === 0)
81
75
  return;
82
- const options = { level, taskName: this._task, indent: this._indent };
76
+ const options = { level, taskName, indent: this.indent };
83
77
  if (this._stack.length) {
84
78
  for (const { message, ...extras } of this._stack) {
85
79
  this._emitter({ ...options, ...extras }, [message]);
@@ -88,12 +82,6 @@ var LoggerImpl = class {
88
82
  }
89
83
  this._emitter(options, params);
90
84
  }
91
- get level() {
92
- return this._level;
93
- }
94
- set level(level) {
95
- this._level = level;
96
- }
97
85
  trace(...args) {
98
86
  this._emit(import_levels.TRACE, args);
99
87
  }
@@ -119,15 +107,15 @@ var LoggerImpl = class {
119
107
  enter(...args) {
120
108
  if (args.length) {
121
109
  const [level, message] = args;
122
- this._stack.push({ level, message, indent: this._indent });
110
+ this._stack.push({ level, message, indent: this.indent });
123
111
  }
124
- this._indent++;
112
+ this.indent++;
125
113
  }
126
114
  leave(...args) {
127
115
  this._stack.pop();
128
- this._indent--;
129
- if (this._indent < 0)
130
- this._indent = 0;
116
+ this.indent--;
117
+ if (this.indent < 0)
118
+ this.indent = 0;
131
119
  if (args.length) {
132
120
  const [level, message] = args;
133
121
  this._emit(level, [message]);
@@ -142,15 +130,13 @@ var LoggerImpl = class {
142
130
  this._stack.splice(0);
143
131
  }
144
132
  let { indent = 0, prefix = "" } = options;
145
- prefix = this._indent ? (0, import_colors.$gry)("| ") + prefix : prefix;
146
- indent += this._indent;
133
+ prefix = this.indent ? (0, import_colors.$gry)("| ") + prefix : prefix;
134
+ indent += this.indent;
147
135
  this._emitter({ ...options, indent, prefix }, args);
148
136
  };
149
137
  return new import_report.ReportImpl(title, this._task, emitter);
150
138
  }
151
139
  };
152
- var ansiPattern = "[\\u001b\\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]";
153
- var ansiRegExp = new RegExp(ansiPattern, "g");
154
140
  var TestLogger = class extends LoggerImpl {
155
141
  _lines = [];
156
142
  constructor() {
@@ -158,10 +144,10 @@ var TestLogger = class extends LoggerImpl {
158
144
  const { prefix = "", indent = 0 } = options;
159
145
  const linePrefix = "".padStart(indent * 2) + prefix;
160
146
  (0, import_node_util.formatWithOptions)({ colors: false, breakLength: 120 }, ...args).split("\n").forEach((line) => {
161
- const stripped = line.replaceAll(ansiRegExp, "");
147
+ const stripped = (0, import_ansi.stripAnsi)(line);
162
148
  this._lines.push(`${linePrefix}${stripped}`);
163
149
  });
164
- });
150
+ }, 0);
165
151
  }
166
152
  /** Return the _current_ buffer for this instance */
167
153
  get buffer() {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/logging/logger.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
@@ -22,6 +22,8 @@ export interface Log {
22
22
  export interface Logger extends Log {
23
23
  /** The current level for logging. */
24
24
  level: LogLevel;
25
+ /** The current indent level for logging. */
26
+ indent: number;
25
27
  /** Enter a sub-level of logging, increasing indent */
26
28
  enter(): void;
27
29
  /** Enter a sub-level of logging, increasing indent */
@@ -34,18 +36,16 @@ export interface Logger extends Log {
34
36
  report(title: string): Report;
35
37
  }
36
38
  /** Return a {@link Logger} associated with the specified task name. */
37
- export declare function getLogger(task?: string): Logger;
39
+ export declare function getLogger(task?: string, indent?: number): Logger;
38
40
  /** Default implementation of the {@link Logger} interface. */
39
41
  declare class LoggerImpl implements Logger {
40
42
  private readonly _task;
41
43
  private readonly _emitter;
44
+ indent: number;
42
45
  private readonly _stack;
43
- private _level;
44
- private _indent;
45
- constructor(_task: string, _emitter: LogEmitter);
46
+ level: LogLevel;
47
+ constructor(_task: string, _emitter: LogEmitter, indent: number);
46
48
  private _emit;
47
- get level(): LogLevel;
48
- set level(level: LogLevel);
49
49
  trace(...args: [any, ...any]): void;
50
50
  debug(...args: [any, ...any]): void;
51
51
  info(...args: [any, ...any]): void;
@@ -59,7 +59,7 @@ declare class LoggerImpl implements Logger {
59
59
  leave(level: LogLevel, message: string): void;
60
60
  report(title: string): Report;
61
61
  }
62
- /** A test logger, writing to a buffer always _without_ colors */
62
+ /** A test logger, writing to a buffer always _without_ colors/indent */
63
63
  export declare class TestLogger extends LoggerImpl {
64
64
  private _lines;
65
65
  constructor();
@@ -1,40 +1,34 @@
1
1
  // logging/logger.ts
2
2
  import { formatWithOptions } from "node:util";
3
3
  import { BuildFailure } from "../asserts.mjs";
4
+ import { currentContext } from "../async.mjs";
5
+ import { stripAnsi } from "../utils/ansi.mjs";
4
6
  import { $gry } from "./colors.mjs";
5
- import { emitFancy, emitPlain } from "./emit.mjs";
7
+ import { emit } from "./emit.mjs";
6
8
  import { DEBUG, ERROR, INFO, NOTICE, TRACE, WARN } from "./levels.mjs";
7
9
  import { logOptions } from "./options.mjs";
8
10
  import { ReportImpl } from "./report.mjs";
9
11
  var _level = logOptions.level;
10
- var _format = logOptions.format;
11
- var _defaultTaskName = logOptions.defaultTaskName;
12
- logOptions.on("changed", ({ defaultTaskName, format, level }) => {
13
- _defaultTaskName = defaultTaskName;
14
- _format = format;
12
+ logOptions.on("changed", ({ level }) => {
15
13
  _level = level;
16
14
  });
17
- function getLogger(task = _defaultTaskName) {
18
- let logger = _loggers.get(task);
19
- if (!logger) {
20
- const emitter = _format === "fancy" ? emitFancy : emitPlain;
21
- logger = new LoggerImpl(task, emitter);
22
- _loggers.set(task, logger);
23
- }
24
- return logger;
15
+ function getLogger(task, indent) {
16
+ const context = currentContext();
17
+ const taskName = task === void 0 ? context?.taskName || "" : task;
18
+ const indentLevel = indent === void 0 ? context?.log.indent || 0 : 0;
19
+ return new LoggerImpl(taskName, emit, indentLevel);
25
20
  }
26
- var _loggers = /* @__PURE__ */ new Map();
27
21
  var _loggedFailures = /* @__PURE__ */ new WeakSet();
28
22
  var LoggerImpl = class {
29
- constructor(_task, _emitter) {
23
+ constructor(_task, _emitter, indent) {
30
24
  this._task = _task;
31
25
  this._emitter = _emitter;
26
+ this.indent = indent;
32
27
  }
33
28
  _stack = [];
34
- _level = _level;
35
- _indent = 0;
36
- _emit(level, args) {
37
- if (this._level > level)
29
+ level = _level;
30
+ _emit(level, args, taskName = this._task) {
31
+ if (this.level > level)
38
32
  return;
39
33
  const params = args.filter((arg) => {
40
34
  if (arg instanceof BuildFailure) {
@@ -54,7 +48,7 @@ var LoggerImpl = class {
54
48
  });
55
49
  if (params.length === 0)
56
50
  return;
57
- const options = { level, taskName: this._task, indent: this._indent };
51
+ const options = { level, taskName, indent: this.indent };
58
52
  if (this._stack.length) {
59
53
  for (const { message, ...extras } of this._stack) {
60
54
  this._emitter({ ...options, ...extras }, [message]);
@@ -63,12 +57,6 @@ var LoggerImpl = class {
63
57
  }
64
58
  this._emitter(options, params);
65
59
  }
66
- get level() {
67
- return this._level;
68
- }
69
- set level(level) {
70
- this._level = level;
71
- }
72
60
  trace(...args) {
73
61
  this._emit(TRACE, args);
74
62
  }
@@ -94,15 +82,15 @@ var LoggerImpl = class {
94
82
  enter(...args) {
95
83
  if (args.length) {
96
84
  const [level, message] = args;
97
- this._stack.push({ level, message, indent: this._indent });
85
+ this._stack.push({ level, message, indent: this.indent });
98
86
  }
99
- this._indent++;
87
+ this.indent++;
100
88
  }
101
89
  leave(...args) {
102
90
  this._stack.pop();
103
- this._indent--;
104
- if (this._indent < 0)
105
- this._indent = 0;
91
+ this.indent--;
92
+ if (this.indent < 0)
93
+ this.indent = 0;
106
94
  if (args.length) {
107
95
  const [level, message] = args;
108
96
  this._emit(level, [message]);
@@ -117,15 +105,13 @@ var LoggerImpl = class {
117
105
  this._stack.splice(0);
118
106
  }
119
107
  let { indent = 0, prefix = "" } = options;
120
- prefix = this._indent ? $gry("| ") + prefix : prefix;
121
- indent += this._indent;
108
+ prefix = this.indent ? $gry("| ") + prefix : prefix;
109
+ indent += this.indent;
122
110
  this._emitter({ ...options, indent, prefix }, args);
123
111
  };
124
112
  return new ReportImpl(title, this._task, emitter);
125
113
  }
126
114
  };
127
- var ansiPattern = "[\\u001b\\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]";
128
- var ansiRegExp = new RegExp(ansiPattern, "g");
129
115
  var TestLogger = class extends LoggerImpl {
130
116
  _lines = [];
131
117
  constructor() {
@@ -133,10 +119,10 @@ var TestLogger = class extends LoggerImpl {
133
119
  const { prefix = "", indent = 0 } = options;
134
120
  const linePrefix = "".padStart(indent * 2) + prefix;
135
121
  formatWithOptions({ colors: false, breakLength: 120 }, ...args).split("\n").forEach((line) => {
136
- const stripped = line.replaceAll(ansiRegExp, "");
122
+ const stripped = stripAnsi(line);
137
123
  this._lines.push(`${linePrefix}${stripped}`);
138
124
  });
139
- });
125
+ }, 0);
140
126
  }
141
127
  /** Return the _current_ buffer for this instance */
142
128
  get buffer() {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/logging/logger.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
@@ -24,7 +24,6 @@ __export(options_exports, {
24
24
  });
25
25
  module.exports = __toCommonJS(options_exports);
26
26
  var import_node_events = require("node:events");
27
- var import_node_net = require("node:net");
28
27
  var import_singleton = require("../utils/singleton.cjs");
29
28
  var import_levels = require("./levels.cjs");
30
29
  var LogOptionsImpl = class extends import_node_events.EventEmitter {
@@ -44,7 +43,6 @@ var LogOptionsImpl = class extends import_node_events.EventEmitter {
44
43
  _githubAnnotations = false;
45
44
  // ultimately set by the constructor
46
45
  _inspectOptions = {};
47
- _defaultTaskName = "";
48
46
  _taskLength = 0;
49
47
  _indentSize = 2;
50
48
  constructor() {
@@ -64,30 +62,25 @@ var LogOptionsImpl = class extends import_node_events.EventEmitter {
64
62
  this._format = "plain";
65
63
  this._spinner = false;
66
64
  }
67
- const { fd, ...options } = JSON.parse(process.env.__LOG_OPTIONS || "{}");
68
- if (fd) {
69
- const output = new import_node_net.Socket({ fd, readable: false, writable: true }).unref();
70
- process.on("beforeExit", () => output.end());
71
- this._output = output;
72
- }
65
+ const options = JSON.parse(process.env.__LOG_OPTIONS || "{}");
73
66
  Object.assign(this, options);
74
67
  }
75
68
  _notifyListeners() {
76
69
  super.emit("changed", this);
77
70
  }
78
- forkEnv(taskName, fd) {
71
+ forkEnv(taskName) {
79
72
  return {
80
73
  __LOG_OPTIONS: JSON.stringify({
81
74
  level: this._level,
82
75
  colors: this._colors,
76
+ format: this._format,
83
77
  lineLength: this._lineLength,
84
78
  taskLength: this._taskLength,
79
+ showSources: this._showSources,
85
80
  githubAnnotations: this.githubAnnotations,
86
- defaultTaskName: taskName || this._defaultTaskName,
87
- spinner: false,
81
+ indentSize: this.indentSize,
82
+ spinner: false
88
83
  // forked spinner is always false
89
- fd
90
- // file descriptor for logs
91
84
  })
92
85
  };
93
86
  }
@@ -115,6 +108,7 @@ var LogOptionsImpl = class extends import_node_events.EventEmitter {
115
108
  set colors(color) {
116
109
  this._colors = color;
117
110
  this._colorsSet = true;
111
+ this._inspectOptions.colors = color;
118
112
  this._notifyListeners();
119
113
  }
120
114
  get format() {
@@ -162,13 +156,6 @@ var LogOptionsImpl = class extends import_node_events.EventEmitter {
162
156
  this._showSources = showSources;
163
157
  this._notifyListeners();
164
158
  }
165
- get defaultTaskName() {
166
- return this._defaultTaskName;
167
- }
168
- set defaultTaskName(defaultTaskName) {
169
- this._defaultTaskName = defaultTaskName;
170
- this._notifyListeners();
171
- }
172
159
  get githubAnnotations() {
173
160
  return this._githubAnnotations;
174
161
  }
@@ -177,15 +164,29 @@ var LogOptionsImpl = class extends import_node_events.EventEmitter {
177
164
  this._notifyListeners();
178
165
  }
179
166
  get inspectOptions() {
180
- return {
181
- colors: this._colors,
182
- breakLength: this._lineLength,
183
- ...this._inspectOptions
184
- };
185
- }
186
- setInspectOption(key, value) {
187
- this._inspectOptions[key] = value;
188
- this._notifyListeners();
167
+ return new Proxy(this._inspectOptions, {
168
+ get: (target, prop) => {
169
+ if (prop === "colors")
170
+ return this.colors;
171
+ if (prop === "breakLength")
172
+ return this._lineLength;
173
+ return target[prop];
174
+ },
175
+ set: (target, prop, value) => {
176
+ if (prop === "colors") {
177
+ this.colors = !!value;
178
+ } else if (prop === "breakLength") {
179
+ const length = parseInt(value);
180
+ if (isNaN(length))
181
+ return false;
182
+ this.lineLength = length;
183
+ } else {
184
+ target[prop] = value;
185
+ }
186
+ this._notifyListeners();
187
+ return true;
188
+ }
189
+ });
189
190
  }
190
191
  };
191
192
  var optionsKey = Symbol.for("plugjs:plug:types:LogOptions");
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/logging/options.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }