@appium/docutils 2.2.2 → 2.3.1

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 (48) hide show
  1. package/build/lib/builder/deploy.d.ts +5 -5
  2. package/build/lib/builder/deploy.d.ts.map +1 -1
  3. package/build/lib/builder/deploy.js +41 -42
  4. package/build/lib/builder/deploy.js.map +1 -1
  5. package/build/lib/builder/site.d.ts +5 -5
  6. package/build/lib/builder/site.d.ts.map +1 -1
  7. package/build/lib/builder/site.js +23 -24
  8. package/build/lib/builder/site.js.map +1 -1
  9. package/build/lib/cli/check.d.ts.map +1 -1
  10. package/build/lib/cli/check.js +10 -10
  11. package/build/lib/cli/check.js.map +1 -1
  12. package/build/lib/cli/index.d.ts +4 -0
  13. package/build/lib/cli/index.d.ts.map +1 -1
  14. package/build/lib/cli/index.js +4 -0
  15. package/build/lib/cli/index.js.map +1 -1
  16. package/build/lib/fs.d.ts.map +1 -1
  17. package/build/lib/fs.js.map +1 -1
  18. package/build/lib/init.d.ts +12 -12
  19. package/build/lib/init.d.ts.map +1 -1
  20. package/build/lib/init.js.map +1 -1
  21. package/build/lib/logger.d.ts +5 -0
  22. package/build/lib/logger.d.ts.map +1 -1
  23. package/build/lib/logger.js +5 -0
  24. package/build/lib/logger.js.map +1 -1
  25. package/build/lib/scaffold.d.ts +10 -10
  26. package/build/lib/scaffold.d.ts.map +1 -1
  27. package/build/lib/scaffold.js +10 -10
  28. package/build/lib/scaffold.js.map +1 -1
  29. package/build/lib/util.d.ts +6 -1
  30. package/build/lib/util.d.ts.map +1 -1
  31. package/build/lib/util.js +15 -0
  32. package/build/lib/util.js.map +1 -1
  33. package/build/lib/validate.d.ts +42 -45
  34. package/build/lib/validate.d.ts.map +1 -1
  35. package/build/lib/validate.js +20 -20
  36. package/build/lib/validate.js.map +1 -1
  37. package/lib/builder/deploy.ts +121 -122
  38. package/lib/builder/site.ts +69 -70
  39. package/lib/cli/check.ts +13 -13
  40. package/lib/cli/index.ts +4 -0
  41. package/lib/fs.ts +2 -2
  42. package/lib/init.ts +54 -54
  43. package/lib/logger.ts +5 -0
  44. package/lib/scaffold.ts +94 -94
  45. package/lib/util.ts +20 -1
  46. package/lib/validate.ts +47 -51
  47. package/package.json +8 -8
  48. package/requirements.txt +3 -3
@@ -4,6 +4,7 @@
4
4
  */
5
5
  import _ from 'lodash';
6
6
  import type { SpawnOptions } from 'node:child_process';
7
+ import type { TeenProcessExecOptions } from 'teen_process';
7
8
  /**
8
9
  * Computes a relative path, prepending `./`
9
10
  */
@@ -38,6 +39,7 @@ export declare const isStringArray: (value: any) => value is string[];
38
39
  * to `false`, so they will only be added to the array if the value is `true`.
39
40
  */
40
41
  export declare const argify: (obj: Record<string, string | number | boolean | undefined>) => string[];
42
+ export type SpawnBackgroundProcessOpts = Omit<SpawnOptions, 'stdio'>;
41
43
  /**
42
44
  * Spawns a long-running "background" child process. This is expected to only return control to the
43
45
  * parent process in the case of a nonzero exit code from the child process.
@@ -49,5 +51,8 @@ export declare const argify: (obj: Record<string, string | number | boolean | un
49
51
  * `teen_process` basically does not respect `{stdio: 'inherit'}`.
50
52
  */
51
53
  export declare function spawnBackgroundProcess(command: string, args: string[], opts: SpawnOptions): Promise<void>;
52
- export type SpawnBackgroundProcessOpts = Omit<SpawnOptions, 'stdio'>;
54
+ /**
55
+ * Wraps {@linkcode exec} with error handling that appends stderr to the thrown error message.
56
+ */
57
+ export declare function execWithErrorHandling(cmd: string, args?: string[], opts?: TeenProcessExecOptions): Promise<import("teen_process").TeenProcessExecResult<string>>;
53
58
  //# sourceMappingURL=util.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../lib/util.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,CAAC,MAAM,QAAQ,CAAC;AACvB,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,oBAAoB,CAAC;AAIrD;;GAEG;AACH,eAAO,MAAM,QAAQ,4CAEpB,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,EAAE,EAAE,MAAM,gBAQnC;yBARe,SAAS;;;AAWzB;;GAEG;AACH,MAAM,MAAM,aAAa,CACvB,CAAC,SAAS,SAAS,GAAG,EAAE,EACxB,CAAC,SAAS,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,EAAE,CAAC,EAAE,WAAW,CAAC,IAC1D;KAAE,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAC,CAAC;AAEzD;;;;GAIG;AACH,eAAO,MAAM,aAAa,EAAgE,CACxF,KAAK,EAAE,GAAG,KACP,KAAK,IAAI,MAAM,EAAE,CAAC;AAEvB;;;;;GAKG;AACH,eAAO,MAAM,MAAM,EAAE,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC,KAAK,MAAM,EAaxF,CAAC;AAEJ;;;;;;;;;GASG;AACH,wBAAsB,sBAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,YAAY,iBAY/F;AAED,MAAM,MAAM,0BAA0B,GAAG,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC"}
1
+ {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../lib/util.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,CAAC,MAAM,QAAQ,CAAC;AACvB,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,oBAAoB,CAAC;AAGrD,OAAO,KAAK,EAAY,sBAAsB,EAAC,MAAM,cAAc,CAAC;AAGpE;;GAEG;AACH,eAAO,MAAM,QAAQ,4CAEpB,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,EAAE,EAAE,MAAM,gBAQnC;yBARe,SAAS;;;AAWzB;;GAEG;AACH,MAAM,MAAM,aAAa,CACvB,CAAC,SAAS,SAAS,GAAG,EAAE,EACxB,CAAC,SAAS,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,EAAE,CAAC,EAAE,WAAW,CAAC,IAC1D;KAAE,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAC,CAAC;AAEzD;;;;GAIG;AACH,eAAO,MAAM,aAAa,EAAgE,CACxF,KAAK,EAAE,GAAG,KACP,KAAK,IAAI,MAAM,EAAE,CAAC;AAEvB;;;;;GAKG;AACH,eAAO,MAAM,MAAM,EAAE,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC,KAAK,MAAM,EAaxF,CAAC;AAEJ,MAAM,MAAM,0BAA0B,GAAG,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;AAErE;;;;;;;;;GASG;AACH,wBAAsB,sBAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,YAAY,iBAY/F;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,MAAM,EAAE,EACf,IAAI,CAAC,EAAE,sBAAsB,iEAS9B"}
package/build/lib/util.js CHANGED
@@ -10,9 +10,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
10
10
  exports.argify = exports.isStringArray = exports.relative = void 0;
11
11
  exports.stopwatch = stopwatch;
12
12
  exports.spawnBackgroundProcess = spawnBackgroundProcess;
13
+ exports.execWithErrorHandling = execWithErrorHandling;
13
14
  const lodash_1 = __importDefault(require("lodash"));
14
15
  const node_child_process_1 = require("node:child_process");
15
16
  const node_path_1 = __importDefault(require("node:path"));
17
+ const teen_process_1 = require("teen_process");
16
18
  /**
17
19
  * Computes a relative path, prepending `./`
18
20
  */
@@ -78,4 +80,17 @@ async function spawnBackgroundProcess(command, args, opts) {
78
80
  });
79
81
  });
80
82
  }
83
+ /**
84
+ * Wraps {@linkcode exec} with error handling that appends stderr to the thrown error message.
85
+ */
86
+ async function execWithErrorHandling(cmd, args, opts) {
87
+ try {
88
+ return await (0, teen_process_1.exec)(cmd, args, opts);
89
+ }
90
+ catch (err) {
91
+ const execErr = err;
92
+ execErr.message = execErr.stderr ? `${execErr.message}\nCommand error:\n${execErr.stderr}` : execErr.message;
93
+ throw execErr;
94
+ }
95
+ }
81
96
  //# sourceMappingURL=util.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../../lib/util.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;AAqBH,8BAQC;AAmDD,wDAYC;AA1FD,oDAAuB;AAEvB,2DAAyC;AACzC,0DAA6B;AAE7B;;GAEG;AACU,QAAA,QAAQ,GAAG,gBAAC,CAAC,KAAK,CAC7B,CAAC,IAAY,EAAE,EAAU,EAAU,EAAE,CAAC,IAAI,mBAAI,CAAC,GAAG,GAAG,mBAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAC/E,CAAC;AAEF;;;;;;GAMG;AACH,SAAgB,SAAS,CAAC,EAAU;IAClC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACzB,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IAC/B,OAAO,GAAG,EAAE;QACV,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;QAC3D,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC3B,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;AACJ,CAAC;AACD,SAAS,CAAC,KAAK,GAAG,IAAI,GAAG,EAAkB,CAAC;AAU5C;;;;GAIG;AACU,QAAA,aAAa,GAAG,gBAAC,CAAC,SAAS,CAAC,gBAAC,CAAC,OAAO,EAAE,gBAAC,CAAC,OAAO,CAAC,gBAAC,CAAC,KAAK,EAAE,gBAAC,EAAE,gBAAC,CAAC,QAAQ,CAAC,CAE/D,CAAC;AAEvB;;;;;GAKG;AACU,QAAA,MAAM,GACjB,gBAAC,CAAC,IAAI,CACJ,gBAAC,CAAC,OAAO,EACT,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;IACxB,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QACnB,OAAO,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC;IACtB,CAAC;SAAM,IAAI,KAAK,KAAK,KAAK,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QAClD,OAAO;IACT,CAAC;IACD,OAAO,CAAC,KAAK,GAAG,EAAE,EAAE,KAAK,CAAC,CAAC;AAC7B,CAAC,CAAC,EACJ,gBAAC,CAAC,OAAO,CACV,CAAC;AAEJ;;;;;;;;;GASG;AACI,KAAK,UAAU,sBAAsB,CAAC,OAAe,EAAE,IAAc,EAAE,IAAkB;IAC9F,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC3C,IAAA,0BAAK,EAAC,OAAO,EAAE,IAAI,EAAE,EAAC,GAAG,IAAI,EAAE,KAAK,EAAE,SAAS,EAAC,CAAC;aAC9C,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC;aACnB,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;YACpB,wBAAwB;YACxB,IAAI,IAAI,EAAE,CAAC;gBACT,OAAO,MAAM,CAAC,IAAI,KAAK,CAAC,GAAG,OAAO,qBAAqB,IAAI,EAAE,CAAC,CAAC,CAAC;YAClE,CAAC;YACD,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../lib/util.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,28 @@ import type { PipPackage } from './model';
11
11
  * The "kinds" of validation which were requested to be performed
12
12
  */
13
13
  export type ValidationKind = typeof NAME_PYTHON | typeof NAME_MKDOCS;
14
+ export interface DocutilsValidatorOpts {
15
+ /**
16
+ * Current working directory
17
+ */
18
+ cwd?: string;
19
+ /**
20
+ * Path to `mkdocs.yml`
21
+ */
22
+ mkdocsYml?: string;
23
+ /**
24
+ * If `true`, run Python validation
25
+ */
26
+ python?: boolean;
27
+ /**
28
+ * Path to `python` executable
29
+ */
30
+ pythonPath?: string;
31
+ /**
32
+ * If `true`, run MkDocs validation
33
+ */
34
+ mkdocs?: boolean;
35
+ }
14
36
  /**
15
37
  * This class is designed to run _all_ validation checks (as requested by the user), and emit events for
16
38
  * each failure encountered.
@@ -21,6 +43,26 @@ export type ValidationKind = typeof NAME_PYTHON | typeof NAME_MKDOCS;
21
43
  * @todo Use [`strict-event-emitter-types`](https://npm.im/strict-event-emitter-types)
22
44
  */
23
45
  export declare class DocutilsValidator extends EventEmitter {
46
+ /**
47
+ * Emitted when validation begins with a list of validation kinds to be performed
48
+ * @event
49
+ */
50
+ static readonly BEGIN = "begin";
51
+ /**
52
+ * Emitted when validation ends with an error count
53
+ * @event
54
+ */
55
+ static readonly END = "end";
56
+ /**
57
+ * Emitted when a validation fails, with the associated {@linkcode DocutilsError}
58
+ * @event
59
+ */
60
+ static readonly FAILURE = "fail";
61
+ /**
62
+ * Emitted when a validation succeeds
63
+ * @event
64
+ */
65
+ static readonly SUCCESS = "ok";
24
66
  /**
25
67
  * Current working directory. Defaults to `process.cwd()`
26
68
  * @todo This cannot yet be overridden by user
@@ -47,26 +89,6 @@ export declare class DocutilsValidator extends EventEmitter {
47
89
  * Path to `mkdocs.yml`. If not provided, will be lazily resolved.
48
90
  */
49
91
  protected mkDocsYmlPath?: string;
50
- /**
51
- * Emitted when validation begins with a list of validation kinds to be performed
52
- * @event
53
- */
54
- static readonly BEGIN = "begin";
55
- /**
56
- * Emitted when validation ends with an error count
57
- * @event
58
- */
59
- static readonly END = "end";
60
- /**
61
- * Emitted when a validation fails, with the associated {@linkcode DocutilsError}
62
- * @event
63
- */
64
- static readonly FAILURE = "fail";
65
- /**
66
- * Emitted when a validation succeeds
67
- * @event
68
- */
69
- static readonly SUCCESS = "ok";
70
92
  private requirementsTxt;
71
93
  /**
72
94
  * Creates a listener to track errors emitted
@@ -121,29 +143,4 @@ export declare class DocutilsValidator extends EventEmitter {
121
143
  */
122
144
  protected validatePythonVersion(): Promise<void>;
123
145
  }
124
- /**
125
- * Options for {@linkcode DocutilsValidator} constructor
126
- */
127
- export interface DocutilsValidatorOpts {
128
- /**
129
- * Current working directory
130
- */
131
- cwd?: string;
132
- /**
133
- * Path to `mkdocs.yml`
134
- */
135
- mkdocsYml?: string;
136
- /**
137
- * If `true`, run Python validation
138
- */
139
- python?: boolean;
140
- /**
141
- * Path to `python` executable
142
- */
143
- pythonPath?: string;
144
- /**
145
- * If `true`, run MkDocs validation
146
- */
147
- mkdocs?: boolean;
148
- }
149
146
  //# sourceMappingURL=validate.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../lib/validate.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAC,YAAY,EAAC,MAAM,aAAa,CAAC;AAEzC,OAAO,EAIL,WAAW,EAGX,WAAW,EAGZ,MAAM,aAAa,CAAC;AACrB,OAAO,EAAC,aAAa,EAAC,MAAM,SAAS,CAAC;AAGtC,OAAO,KAAK,EAAY,UAAU,EAAC,MAAM,SAAS,CAAC;AAcnD;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,OAAO,WAAW,GAAG,OAAO,WAAW,CAAC;AAErE;;;;;;;;GAQG;AACH,qBAAa,iBAAkB,SAAQ,YAAY;IACjD;;;OAGG;IACH,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAE/B;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAEvC;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,WAAW,sBAA6B;IAE3D;;;;;;;OAOG;IACH,SAAS,CAAC,aAAa,6BAAoC;IAE3D;;OAEG;IACH,SAAS,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAEjC;;;OAGG;IACH,gBAAuB,KAAK,WAAW;IAEvC;;;OAGG;IACH,gBAAuB,GAAG,SAAS;IAEnC;;;OAGG;IACH,gBAAuB,OAAO,UAAU;IAExC;;;OAGG;IACH,gBAAuB,OAAO,QAAQ;IAEtC,OAAO,CAAC,eAAe,CAA2B;IAElD;;OAEG;gBACS,IAAI,GAAE,qBAA0B;IAoB5C;;OAEG;IACU,QAAQ;IAoBrB;;;;;OAKG;IACH,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,GAAG,MAAM;IAO1C;;;OAGG;IACH,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM;IAI5B;;;;;OAKG;cACa,oBAAoB,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;IAuB7D;;OAEG;IACH,SAAS,CAAC,KAAK;IAIf;;OAEG;cACa,cAAc;IAuC9B;;;;OAIG;cACa,oBAAoB;IA8BpC;;;;;OAKG;cACa,kBAAkB;IA4ElC;;OAEG;cACa,qBAAqB;CAkBtC;AAED;;GAEG;AAEH,MAAM,WAAW,qBAAqB;IACpC;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB"}
1
+ {"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../lib/validate.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAC,YAAY,EAAC,MAAM,aAAa,CAAC;AAEzC,OAAO,EAIL,WAAW,EAGX,WAAW,EAGZ,MAAM,aAAa,CAAC;AACrB,OAAO,EAAC,aAAa,EAAC,MAAM,SAAS,CAAC;AAGtC,OAAO,KAAK,EAAY,UAAU,EAAC,MAAM,SAAS,CAAC;AAcnD;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,OAAO,WAAW,GAAG,OAAO,WAAW,CAAC;AAErE,MAAM,WAAW,qBAAqB;IACpC;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;;;;;;;GAQG;AACH,qBAAa,iBAAkB,SAAQ,YAAY;IACjD;;;OAGG;IACH,gBAAuB,KAAK,WAAW;IAEvC;;;OAGG;IACH,gBAAuB,GAAG,SAAS;IAEnC;;;OAGG;IACH,gBAAuB,OAAO,UAAU;IAExC;;;OAGG;IACH,gBAAuB,OAAO,QAAQ;IAEtC;;;OAGG;IACH,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAE/B;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAEvC;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,WAAW,sBAA6B;IAE3D;;;;;;;OAOG;IACH,SAAS,CAAC,aAAa,6BAAoC;IAE3D;;OAEG;IACH,SAAS,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAEjC,OAAO,CAAC,eAAe,CAA2B;IAElD;;OAEG;gBACS,IAAI,GAAE,qBAA0B;IAoB5C;;OAEG;IACU,QAAQ;IAoBrB;;;;;OAKG;IACH,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,GAAG,MAAM;IAO1C;;;OAGG;IACH,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM;IAI5B;;;;;OAKG;cACa,oBAAoB,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;IAuB7D;;OAEG;IACH,SAAS,CAAC,KAAK;IAIf;;OAEG;cACa,cAAc;IAuC9B;;;;OAIG;cACa,oBAAoB;IA8BpC;;;;;OAKG;cACa,kBAAkB;IA4ElC;;OAEG;cACa,qBAAqB;CAkBtC"}
@@ -36,6 +36,26 @@ const log = (0, logger_1.getLogger)('validate');
36
36
  * @todo Use [`strict-event-emitter-types`](https://npm.im/strict-event-emitter-types)
37
37
  */
38
38
  class DocutilsValidator extends node_events_1.EventEmitter {
39
+ /**
40
+ * Emitted when validation begins with a list of validation kinds to be performed
41
+ * @event
42
+ */
43
+ static BEGIN = 'begin';
44
+ /**
45
+ * Emitted when validation ends with an error count
46
+ * @event
47
+ */
48
+ static END = 'end';
49
+ /**
50
+ * Emitted when a validation fails, with the associated {@linkcode DocutilsError}
51
+ * @event
52
+ */
53
+ static FAILURE = 'fail';
54
+ /**
55
+ * Emitted when a validation succeeds
56
+ * @event
57
+ */
58
+ static SUCCESS = 'ok';
39
59
  /**
40
60
  * Current working directory. Defaults to `process.cwd()`
41
61
  * @todo This cannot yet be overridden by user
@@ -62,26 +82,6 @@ class DocutilsValidator extends node_events_1.EventEmitter {
62
82
  * Path to `mkdocs.yml`. If not provided, will be lazily resolved.
63
83
  */
64
84
  mkDocsYmlPath;
65
- /**
66
- * Emitted when validation begins with a list of validation kinds to be performed
67
- * @event
68
- */
69
- static BEGIN = 'begin';
70
- /**
71
- * Emitted when validation ends with an error count
72
- * @event
73
- */
74
- static END = 'end';
75
- /**
76
- * Emitted when a validation fails, with the associated {@linkcode DocutilsError}
77
- * @event
78
- */
79
- static FAILURE = 'fail';
80
- /**
81
- * Emitted when a validation succeeds
82
- * @event
83
- */
84
- static SUCCESS = 'ok';
85
85
  requirementsTxt;
86
86
  /**
87
87
  * Creates a listener to track errors emitted
@@ -1 +1 @@
1
- {"version":3,"file":"validate.js","sourceRoot":"","sources":["../../lib/validate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validate.js","sourceRoot":"","sources":["../../lib/validate.ts"],"names":[],"mappings":"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"}
@@ -7,7 +7,6 @@
7
7
  import _ from 'lodash';
8
8
  import path from 'node:path';
9
9
  import type {TeenProcessExecOptions} from 'teen_process';
10
- import {exec} from 'teen_process';
11
10
  import {
12
11
  DEFAULT_DEPLOY_ALIAS_TYPE,
13
12
  DEFAULT_DEPLOY_BRANCH,
@@ -22,59 +21,91 @@ import {DocutilsError} from '../error';
22
21
  import {findMike, findMkDocsYml, isMkDocsInstalled, readPackageJson, requirePython} from '../fs';
23
22
  import {getLogger} from '../logger';
24
23
  import type {SpawnBackgroundProcessOpts} from '../util';
25
- import {argify, spawnBackgroundProcess, stopwatch} from '../util';
24
+ import {argify, execWithErrorHandling, spawnBackgroundProcess, stopwatch} from '../util';
26
25
 
27
26
  const log = getLogger('builder:deploy');
28
27
 
29
28
  /**
30
- * Runs `mike serve`
31
- * @param mikePath Path to `mike` executable
32
- * @param args Extra args to `mike build`
33
- * @param opts Extra options for `teen_process.Subprocess.start`
29
+ * Options for {@linkcode deploy}.
34
30
  */
35
- async function doServe(
36
- mikePath: string,
37
- args: string[] = [],
38
- opts: SpawnBackgroundProcessOpts = {},
39
- ) {
40
- const finalArgs = ['serve', ...args];
41
- log.debug('Executing %s via: %s %O', NAME_MIKE, mikePath, finalArgs);
42
- return spawnBackgroundProcess(mikePath, finalArgs, opts);
43
- }
31
+ export interface DeployOpts {
32
+ /**
33
+ * Path to `mike.yml`
34
+ */
35
+ mkdocsYml?: string;
44
36
 
45
- /**
46
- * Runs `mike build`
47
- * @param mikePath Path to `mike` executable
48
- * @param args Extra args to `mike build`
49
- * @param opts Extra options to `teen_process.exec`
50
- */
51
- async function doDeploy(mikePath: string, args: string[] = [], opts: TeenProcessExecOptions = {}) {
52
- const finalArgs = ['deploy', ...args];
53
- log.debug('Executing %s via: %s %O', NAME_MIKE, mikePath, finalArgs);
54
- return await exec(mikePath, finalArgs, opts);
55
- }
37
+ /**
38
+ * Current working directory
39
+ * @defaultValue `process.cwd()`
40
+ */
41
+ cwd?: string;
56
42
 
57
- /**
58
- * Derives a deployment version from `package.json`
59
- * @param packageJsonPath Path to `package.json` if known
60
- * @param cwd Current working directory
61
- */
62
- async function findDeployVersion(packageJsonPath?: string, cwd = process.cwd()): Promise<string> {
63
- const {pkg} = await readPackageJson(packageJsonPath ? path.dirname(packageJsonPath) : cwd, true);
64
- const version = pkg.version;
65
- if (!version) {
66
- throw new DocutilsError(
67
- 'No "version" field found in package.json; please add one or specify a version to deploy',
68
- );
69
- }
43
+ /**
44
+ * Path to `package.json`
45
+ *
46
+ * Used to find `mike.yml` if unspecified.
47
+ */
48
+ packageJson?: string;
70
49
 
71
- // return MAJOR.MINOR as the version by default, if that is a thing we can extract, otherwise
72
- // just return the version as is
73
- const versionParts = version.split('.');
74
- if (versionParts.length === 1) {
75
- return version;
76
- }
77
- return `${versionParts[0]}.${versionParts[1]}`;
50
+ /**
51
+ * If `true`, run `mike serve` instead of `mike build`
52
+ */
53
+ serve?: boolean;
54
+
55
+ /**
56
+ * If `true`, push `branch` to `remote`
57
+ */
58
+ push?: boolean;
59
+ /**
60
+ * Branch to commit to
61
+ * @defaultValue gh-pages
62
+ */
63
+ branch?: string;
64
+ /**
65
+ * Remote to push to
66
+ * @defaultValue origin
67
+ */
68
+ remote?: string;
69
+ /**
70
+ * Subdirectory within `branch` to deploy to
71
+ */
72
+ deployPrefix?: string;
73
+ /**
74
+ * Commit message
75
+ */
76
+ message?: string;
77
+ /**
78
+ * Version (dir) to deploy build to
79
+ */
80
+ deployVersion?: string;
81
+ /**
82
+ * Alias for the build (e.g., `latest`); triggers alias update
83
+ */
84
+ alias?: string;
85
+ /**
86
+ * The approach for creating build alias (`symlink`, `redirect` or `copy`)
87
+ */
88
+ aliasType?: string;
89
+ /**
90
+ * Port to serve on
91
+ * @defaultValue 8000
92
+ */
93
+ port?: number;
94
+ /**
95
+ * Host to serve on
96
+ * @defaultValue localhost
97
+ */
98
+ host?: string;
99
+
100
+ /**
101
+ * Extra options for {@linkcode teen_process.exec}
102
+ */
103
+ execOpts?: TeenProcessExecOptions;
104
+
105
+ /**
106
+ * Extra options for {@linkcode spawnBackgroundProcess}
107
+ */
108
+ serveOpts?: SpawnBackgroundProcessOpts;
78
109
  }
79
110
 
80
111
  /**
@@ -166,84 +197,52 @@ export async function deploy({
166
197
  }
167
198
 
168
199
  /**
169
- * Options for {@linkcode deploy}.
200
+ * Runs `mike serve`
201
+ * @param mikePath Path to `mike` executable
202
+ * @param args Extra args to `mike build`
203
+ * @param opts Extra options for `teen_process.Subprocess.start`
170
204
  */
171
- export interface DeployOpts {
172
- /**
173
- * Path to `mike.yml`
174
- */
175
- mkdocsYml?: string;
176
-
177
- /**
178
- * Current working directory
179
- * @defaultValue `process.cwd()`
180
- */
181
- cwd?: string;
182
-
183
- /**
184
- * Path to `package.json`
185
- *
186
- * Used to find `mike.yml` if unspecified.
187
- */
188
- packageJson?: string;
189
-
190
- /**
191
- * If `true`, run `mike serve` instead of `mike build`
192
- */
193
- serve?: boolean;
205
+ async function doServe(
206
+ mikePath: string,
207
+ args: string[] = [],
208
+ opts: SpawnBackgroundProcessOpts = {},
209
+ ) {
210
+ const finalArgs = ['serve', ...args];
211
+ log.debug('Executing %s via: %s %O', NAME_MIKE, mikePath, finalArgs);
212
+ return spawnBackgroundProcess(mikePath, finalArgs, opts);
213
+ }
194
214
 
195
- /**
196
- * If `true`, push `branch` to `remote`
197
- */
198
- push?: boolean;
199
- /**
200
- * Branch to commit to
201
- * @defaultValue gh-pages
202
- */
203
- branch?: string;
204
- /**
205
- * Remote to push to
206
- * @defaultValue origin
207
- */
208
- remote?: string;
209
- /**
210
- * Subdirectory within `branch` to deploy to
211
- */
212
- deployPrefix?: string;
213
- /**
214
- * Commit message
215
- */
216
- message?: string;
217
- /**
218
- * Version (dir) to deploy build to
219
- */
220
- deployVersion?: string;
221
- /**
222
- * Alias for the build (e.g., `latest`); triggers alias update
223
- */
224
- alias?: string;
225
- /**
226
- * The approach for creating build alias (`symlink`, `redirect` or `copy`)
227
- */
228
- aliasType?: string;
229
- /**
230
- * Port to serve on
231
- * @defaultValue 8000
232
- */
233
- port?: number;
234
- /**
235
- * Host to serve on
236
- * @defaultValue localhost
237
- */
238
- host?: string;
215
+ /**
216
+ * Runs `mike build`
217
+ * @param mikePath Path to `mike` executable
218
+ * @param args Extra args to `mike build`
219
+ * @param opts Extra options to `teen_process.exec`
220
+ */
221
+ async function doDeploy(mikePath: string, args: string[] = [], opts: TeenProcessExecOptions = {}) {
222
+ const finalArgs = ['deploy', ...args];
223
+ log.debug('Executing %s via: %s %O', NAME_MIKE, mikePath, finalArgs);
224
+ return await execWithErrorHandling(mikePath, finalArgs, opts);
225
+ }
239
226
 
240
- /**
241
- * Extra options for {@linkcode teen_process.exec}
242
- */
243
- execOpts?: TeenProcessExecOptions;
227
+ /**
228
+ * Derives a deployment version from `package.json`
229
+ * @param packageJsonPath Path to `package.json` if known
230
+ * @param cwd Current working directory
231
+ */
232
+ async function findDeployVersion(packageJsonPath?: string, cwd = process.cwd()): Promise<string> {
233
+ const {pkg} = await readPackageJson(packageJsonPath ? path.dirname(packageJsonPath) : cwd, true);
234
+ const version = pkg.version;
235
+ if (!version) {
236
+ throw new DocutilsError(
237
+ 'No "version" field found in package.json; please add one or specify a version to deploy',
238
+ );
239
+ }
244
240
 
245
- /**
246
- * Extra options for {@linkcode spawnBackgroundProcess}
247
- */
248
- serveOpts?: SpawnBackgroundProcessOpts;
241
+ // return MAJOR.MINOR as the version by default, if that is a thing we can extract, otherwise
242
+ // just return the version as is
243
+ const versionParts = version.split('.');
244
+ if (versionParts.length === 1) {
245
+ return version;
246
+ }
247
+ return `${versionParts[0]}.${versionParts[1]}`;
249
248
  }