xcodebuild-axi 0.1.9 → 0.1.11

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.
@@ -18,11 +18,28 @@ function xcresulttool(args, path) {
18
18
  ]);
19
19
  }
20
20
  return new Promise((resolvePromise, rejectPromise) => {
21
- execFile("xcrun", ["xcresulttool", ...args, "--path", path, "--compact"], { maxBuffer: MAX_BUFFER_BYTES, encoding: "utf-8" }, (error, stdout) => {
21
+ execFile("xcrun", ["xcresulttool", ...args, "--path", path, "--compact"], { maxBuffer: MAX_BUFFER_BYTES, encoding: "utf-8" }, (error, stdout, stderr) => {
22
22
  if (error && stdout.trim().length === 0) {
23
- rejectPromise(new AxiError(`Could not read result bundle at ${path}`, "RESULT_NOT_FOUND", [
24
- "The bundle may be from an incompatible Xcode version, or still being written",
25
- ]));
23
+ // xcresulttool explains itself on stderr -- "No console log
24
+ // available", "Info.plist does not exist" -- and those answers are
25
+ // more specific than anything inferable from the exit code.
26
+ const reason = stderr
27
+ .split("\n")
28
+ .map((line) => line.trim())
29
+ .find((line) => line.startsWith("Error:"));
30
+ rejectPromise(new AxiError(reason?.replace(/^Error:\s*/, "") ??
31
+ `Could not read result bundle at ${path}`, "RESULT_NOT_FOUND",
32
+ // Only guess when xcresulttool did not say. "No console log
33
+ // available" is a complete answer, and following it with
34
+ // "the bundle may be from an incompatible Xcode" sends the
35
+ // reader after a problem that is not there.
36
+ reason
37
+ ? [
38
+ "Run `xcodebuild-axi result <path> --available` to see what this bundle holds",
39
+ ]
40
+ : [
41
+ "The bundle may be from an incompatible Xcode version, or still being written",
42
+ ]));
26
43
  return;
27
44
  }
28
45
  try {
@@ -78,9 +95,176 @@ export function failureLocation(details) {
78
95
  walk(run, 0);
79
96
  return best ? { file: best.file, line: best.line } : { file: "", line: "" };
80
97
  }
98
+ /** Every test the run knows about, as the tree Xcode groups them into. */
99
+ export function readTests(path) {
100
+ return xcresulttool(["get", "test-results", "tests"], path);
101
+ }
102
+ /**
103
+ * What one test actually did, step by step.
104
+ *
105
+ * The summary says a test failed and `test-details` says where; this is the
106
+ * trail of what it had done by then, which is the only thing that explains a
107
+ * UI test that failed three screens into a flow.
108
+ */
109
+ export function readActivities(path, testIdentifier) {
110
+ return xcresulttool(["get", "test-results", "activities", "--test-id", testIdentifier], path);
111
+ }
112
+ /** Xcode's own diagnosis of a run: what failed together, and what was slow. */
113
+ export function readInsights(path) {
114
+ return xcresulttool(["get", "test-results", "insights"], path);
115
+ }
116
+ /** What a performance test measured, and what it measured last time. */
117
+ export function readMetrics(path, testIdentifier) {
118
+ return xcresulttool([
119
+ "get",
120
+ "test-results",
121
+ "metrics",
122
+ ...(testIdentifier ? ["--test-id", testIdentifier] : []),
123
+ ], path);
124
+ }
125
+ /**
126
+ * What the bundle actually holds.
127
+ *
128
+ * Worth one subprocess because the alternative is finding out by asking for
129
+ * coverage and reading the failure — an error that looks like a broken tool
130
+ * rather than like an answer.
131
+ */
132
+ export function readContentAvailability(path) {
133
+ return xcresulttool(["get", "content-availability"], path);
134
+ }
135
+ /** The build, action or console log, as the timed tree the bundle stores. */
136
+ export function readLog(path, type) {
137
+ return xcresulttool(["get", "log", "--type", type], path);
138
+ }
139
+ /** The bundle's own metadata — when it was written, and in what format. */
140
+ export function readBundleMetadata(path) {
141
+ return xcresulttool(["metadata", "get"], path);
142
+ }
81
143
  export function readBuildResults(path) {
82
144
  return xcresulttool(["get", "build-results"], path);
83
145
  }
146
+ /** What an `xcresulttool export` can be asked for. */
147
+ export const EXPORT_KINDS = [
148
+ "attachments",
149
+ "diagnostics",
150
+ "metrics",
151
+ "evaluations",
152
+ ];
153
+ /**
154
+ * Write part of a bundle out to a directory.
155
+ *
156
+ * Unlike every other read here this one produces files rather than JSON, and
157
+ * it narrates: exporting attachments from a 40-test run prints "Skipped export
158
+ * for <test>: no matching attachments" once per test, which is the answer
159
+ * nobody asked for repeated forty times. The prose is dropped and the caller
160
+ * reports what actually landed on disk instead.
161
+ */
162
+ export function exportBundle(request) {
163
+ if (!existsSync(request.path)) {
164
+ throw new AxiError(`No result bundle at ${request.path}`, "RESULT_NOT_FOUND", [
165
+ "Run `xcodebuild-axi build` or `test` first — each prints the bundle path it wrote",
166
+ ]);
167
+ }
168
+ const args = [
169
+ "xcresulttool",
170
+ "export",
171
+ request.kind,
172
+ "--path",
173
+ request.path,
174
+ "--output-path",
175
+ request.outputPath,
176
+ ...(request.testId ? ["--test-id", request.testId] : []),
177
+ ...(request.filter ? ["--filter", request.filter] : []),
178
+ ...(request.onlyFailures ? ["--only-failures"] : []),
179
+ ];
180
+ return new Promise((resolvePromise, rejectPromise) => {
181
+ execFile("xcrun", args, { maxBuffer: MAX_BUFFER_BYTES, encoding: "utf-8" }, (error, stdout, stderr) => {
182
+ if (!error) {
183
+ resolvePromise();
184
+ return;
185
+ }
186
+ // The refusal lands on either stream depending on the subcommand --
187
+ // a bad --test-id is printed on stdout and still exits 1.
188
+ rejectPromise(new AxiError(exportComplaint(`${stdout}\n${stderr}`) ??
189
+ `xcresulttool could not export ${request.kind} from ${request.path}`, "RESULT_NOT_FOUND", [
190
+ "Run `xcodebuild-axi result <path> --available` to see what this bundle holds",
191
+ ]));
192
+ });
193
+ });
194
+ }
195
+ function exportComplaint(output) {
196
+ const reason = output
197
+ .split("\n")
198
+ .map((line) => line.trim())
199
+ .find((line) => line.startsWith("Error:"));
200
+ return reason?.replace(/^Error:\s*/, "");
201
+ }
202
+ /**
203
+ * One run measured against another.
204
+ *
205
+ * Not routed through `xcresulttool()` because `compare` takes the bundle as a
206
+ * positional rather than as `--path`, and rejects `--compact` outright. It
207
+ * also answers a bare `null` rather than an error when the two bundles have
208
+ * nothing comparable in them — a build bundle against a test one — which is an
209
+ * answer the caller has to be able to tell apart from a clean comparison.
210
+ */
211
+ export function readComparison(path, baselinePath) {
212
+ for (const [label, candidate] of [
213
+ ["", path],
214
+ ["baseline ", baselinePath],
215
+ ]) {
216
+ if (!existsSync(candidate)) {
217
+ throw new AxiError(`No ${label}result bundle at ${candidate}`, "RESULT_NOT_FOUND", [
218
+ "Run `xcodebuild-axi build` or `test` first — each prints the bundle path it wrote",
219
+ ]);
220
+ }
221
+ }
222
+ return new Promise((resolvePromise, rejectPromise) => {
223
+ execFile("xcrun", ["xcresulttool", "compare", path, "--baseline-path", baselinePath], { maxBuffer: MAX_BUFFER_BYTES, encoding: "utf-8" }, (error, stdout, stderr) => {
224
+ const complaint = exportComplaint(`${stdout}\n${stderr}`);
225
+ // `compare` prints its refusals and still exits 0, so the exit code is
226
+ // not the signal here; the `Error:` line is.
227
+ if (error || complaint) {
228
+ rejectPromise(new AxiError(complaint ?? `Could not compare ${path} to ${baselinePath}`, "RESULT_NOT_FOUND", [
229
+ "Run `xcodebuild-axi result <path> --available` on each bundle to see what they hold",
230
+ ]));
231
+ return;
232
+ }
233
+ try {
234
+ resolvePromise(JSON.parse(stdout));
235
+ }
236
+ catch {
237
+ rejectPromise(new AxiError(`Comparing ${path} to ${baselinePath} produced unreadable output`, "RESULT_NOT_FOUND"));
238
+ }
239
+ });
240
+ });
241
+ }
242
+ /**
243
+ * Combine bundles into one, which is how a sharded test run gets a single
244
+ * verdict. Writes a bundle rather than printing one, so the caller reports the
245
+ * path and then reads it back like any other.
246
+ */
247
+ export function mergeBundles(paths, outputPath) {
248
+ for (const path of paths) {
249
+ if (!existsSync(path)) {
250
+ throw new AxiError(`No result bundle at ${path}`, "RESULT_NOT_FOUND", [
251
+ "Run `xcodebuild-axi build` or `test` first — each prints the bundle path it wrote",
252
+ ]);
253
+ }
254
+ }
255
+ return new Promise((resolvePromise, rejectPromise) => {
256
+ execFile("xcrun", ["xcresulttool", "merge", ...paths, "--output-path", outputPath], { maxBuffer: MAX_BUFFER_BYTES, encoding: "utf-8" }, (error, stdout, stderr) => {
257
+ const complaint = exportComplaint(`${stdout}\n${stderr}`);
258
+ if (error || complaint) {
259
+ rejectPromise(new AxiError(complaint ?? `Could not merge ${paths.length} result bundles`, "RESULT_NOT_FOUND", [
260
+ "Bundles written by different Xcode versions cannot be merged into one",
261
+ ]));
262
+ return;
263
+ }
264
+ resolvePromise();
265
+ });
266
+ });
267
+ }
84
268
  /**
85
269
  * Pull `file`, `line` and `col` out of a diagnostic's sourceURL.
86
270
  *
@@ -1 +1 @@
1
- {"version":3,"file":"xcresult.js","sourceRoot":"","sources":["../../src/xcresult.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"xcresult.js","sourceRoot":"","sources":["../../src/xcresult.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC;;;;;;;GAOG;AAEH,MAAM,gBAAgB,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;AAuK1C,SAAS,YAAY,CAAI,IAAc,EAAE,IAAY;IACnD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QACtB,MAAM,IAAI,QAAQ,CAAC,uBAAuB,IAAI,EAAE,EAAE,kBAAkB,EAAE;YACpE,mFAAmF;SACpF,CAAC,CAAC;IACL,CAAC;IACD,OAAO,IAAI,OAAO,CAAC,CAAC,cAAc,EAAE,aAAa,EAAE,EAAE;QACnD,QAAQ,CACN,OAAO,EACP,CAAC,cAAc,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,CAAC,EACtD,EAAE,SAAS,EAAE,gBAAgB,EAAE,QAAQ,EAAE,OAAO,EAAE,EAClD,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE;YACxB,IAAI,KAAK,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACxC,4DAA4D;gBAC5D,mEAAmE;gBACnE,4DAA4D;gBAC5D,MAAM,MAAM,GAAG,MAAM;qBAClB,KAAK,CAAC,IAAI,CAAC;qBACX,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;qBAC1B,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC;gBAC7C,aAAa,CACX,IAAI,QAAQ,CACV,MAAM,EAAE,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC;oBAC/B,mCAAmC,IAAI,EAAE,EAC3C,kBAAkB;gBAClB,4DAA4D;gBAC5D,yDAAyD;gBACzD,2DAA2D;gBAC3D,4CAA4C;gBAC5C,MAAM;oBACJ,CAAC,CAAC;wBACE,8EAA8E;qBAC/E;oBACH,CAAC,CAAC;wBACE,8EAA8E;qBAC/E,CACN,CACF,CAAC;gBACF,OAAO;YACT,CAAC;YACD,IAAI,CAAC;gBACH,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAM,CAAC,CAAC;YAC1C,CAAC;YAAC,MAAM,CAAC;gBACP,aAAa,CACX,IAAI,QAAQ,CACV,oBAAoB,IAAI,6BAA6B,EACrD,kBAAkB,CACnB,CACF,CAAC;YACJ,CAAC;QACH,CAAC,CACF,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,OAAO,YAAY,CAAc,CAAC,KAAK,EAAE,cAAc,EAAE,SAAS,CAAC,EAAE,IAAI,CAAC,CAAC;AAC7E,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,eAAe,CAC7B,IAAY,EACZ,cAAsB;IAEtB,OAAO,YAAY,CACjB,CAAC,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,WAAW,EAAE,cAAc,CAAC,EACpE,IAAI,CACL,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,eAAe,CAAC,OAAoB;IAIlD,IAAI,IAAoE,CAAC;IAEzE,MAAM,IAAI,GAAG,CAAC,IAAc,EAAE,KAAa,EAAQ,EAAE;QACnD,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC;QACrC,IAAI,QAAQ,EAAE,QAAQ,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACtE,IAAI,GAAG;gBACL,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC;gBACnC,IAAI,EAAE,QAAQ,CAAC,UAAU,IAAI,EAAE;gBAC/B,KAAK;aACN,CAAC;QACJ,CAAC;QACD,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,QAAQ,IAAI,EAAE;YAAE,IAAI,CAAC,KAAK,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;IAClE,CAAC,CAAC;IAEF,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,QAAQ,IAAI,EAAE;QAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;IACvD,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;AAC9E,CAAC;AAED,0EAA0E;AAC1E,MAAM,UAAU,SAAS,CAAC,IAAY;IACpC,OAAO,YAAY,CAAW,CAAC,KAAK,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,CAAC;AACxE,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAC5B,IAAY,EACZ,cAAsB;IAEtB,OAAO,YAAY,CACjB,CAAC,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,WAAW,EAAE,cAAc,CAAC,EAClE,IAAI,CACL,CAAC;AACJ,CAAC;AAED,+EAA+E;AAC/E,MAAM,UAAU,YAAY,CAAC,IAAY;IACvC,OAAO,YAAY,CAAe,CAAC,KAAK,EAAE,cAAc,EAAE,UAAU,CAAC,EAAE,IAAI,CAAC,CAAC;AAC/E,CAAC;AAED,wEAAwE;AACxE,MAAM,UAAU,WAAW,CACzB,IAAY,EACZ,cAAuB;IAEvB,OAAO,YAAY,CACjB;QACE,KAAK;QACL,cAAc;QACd,SAAS;QACT,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;KACzD,EACD,IAAI,CACL,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,uBAAuB,CACrC,IAAY;IAEZ,OAAO,YAAY,CACjB,CAAC,KAAK,EAAE,sBAAsB,CAAC,EAC/B,IAAI,CACL,CAAC;AACJ,CAAC;AAED,6EAA6E;AAC7E,MAAM,UAAU,OAAO,CAAC,IAAY,EAAE,IAAY;IAChD,OAAO,YAAY,CAAa,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;AACxE,CAAC;AAED,2EAA2E;AAC3E,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,OAAO,YAAY,CAAiB,CAAC,UAAU,EAAE,KAAK,CAAC,EAAE,IAAI,CAAC,CAAC;AACjE,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,IAAY;IAC3C,OAAO,YAAY,CAAe,CAAC,KAAK,EAAE,eAAe,CAAC,EAAE,IAAI,CAAC,CAAC;AACpE,CAAC;AAsDD,sDAAsD;AACtD,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,aAAa;IACb,aAAa;IACb,SAAS;IACT,aAAa;CACL,CAAC;AAiCX;;;;;;;;GAQG;AACH,MAAM,UAAU,YAAY,CAAC,OAAsB;IACjD,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,QAAQ,CAChB,uBAAuB,OAAO,CAAC,IAAI,EAAE,EACrC,kBAAkB,EAClB;YACE,mFAAmF;SACpF,CACF,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,GAAG;QACX,cAAc;QACd,QAAQ;QACR,OAAO,CAAC,IAAI;QACZ,QAAQ;QACR,OAAO,CAAC,IAAI;QACZ,eAAe;QACf,OAAO,CAAC,UAAU;QAClB,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACxD,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACvD,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;KACrD,CAAC;IAEF,OAAO,IAAI,OAAO,CAAC,CAAC,cAAc,EAAE,aAAa,EAAE,EAAE;QACnD,QAAQ,CACN,OAAO,EACP,IAAI,EACJ,EAAE,SAAS,EAAE,gBAAgB,EAAE,QAAQ,EAAE,OAAO,EAAE,EAClD,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE;YACxB,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,cAAc,EAAE,CAAC;gBACjB,OAAO;YACT,CAAC;YACD,oEAAoE;YACpE,0DAA0D;YAC1D,aAAa,CACX,IAAI,QAAQ,CACV,eAAe,CAAC,GAAG,MAAM,KAAK,MAAM,EAAE,CAAC;gBACrC,iCAAiC,OAAO,CAAC,IAAI,SAAS,OAAO,CAAC,IAAI,EAAE,EACtE,kBAAkB,EAClB;gBACE,8EAA8E;aAC/E,CACF,CACF,CAAC;QACJ,CAAC,CACF,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,eAAe,CAAC,MAAc;IACrC,MAAM,MAAM,GAAG,MAAM;SAClB,KAAK,CAAC,IAAI,CAAC;SACX,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;SAC1B,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC7C,OAAO,MAAM,EAAE,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;AAC3C,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,cAAc,CAC5B,IAAY,EACZ,YAAoB;IAEpB,KAAK,MAAM,CAAC,KAAK,EAAE,SAAS,CAAC,IAAI;QAC/B,CAAC,EAAE,EAAE,IAAI,CAAC;QACV,CAAC,WAAW,EAAE,YAAY,CAAC;KACnB,EAAE,CAAC;QACX,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC3B,MAAM,IAAI,QAAQ,CAChB,MAAM,KAAK,oBAAoB,SAAS,EAAE,EAC1C,kBAAkB,EAClB;gBACE,mFAAmF;aACpF,CACF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,IAAI,OAAO,CAAC,CAAC,cAAc,EAAE,aAAa,EAAE,EAAE;QACnD,QAAQ,CACN,OAAO,EACP,CAAC,cAAc,EAAE,SAAS,EAAE,IAAI,EAAE,iBAAiB,EAAE,YAAY,CAAC,EAClE,EAAE,SAAS,EAAE,gBAAgB,EAAE,QAAQ,EAAE,OAAO,EAAE,EAClD,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE;YACxB,MAAM,SAAS,GAAG,eAAe,CAAC,GAAG,MAAM,KAAK,MAAM,EAAE,CAAC,CAAC;YAC1D,uEAAuE;YACvE,6CAA6C;YAC7C,IAAI,KAAK,IAAI,SAAS,EAAE,CAAC;gBACvB,aAAa,CACX,IAAI,QAAQ,CACV,SAAS,IAAI,qBAAqB,IAAI,OAAO,YAAY,EAAE,EAC3D,kBAAkB,EAClB;oBACE,qFAAqF;iBACtF,CACF,CACF,CAAC;gBACF,OAAO;YACT,CAAC;YACD,IAAI,CAAC;gBACH,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAwB,CAAC,CAAC;YAC5D,CAAC;YAAC,MAAM,CAAC;gBACP,aAAa,CACX,IAAI,QAAQ,CACV,aAAa,IAAI,OAAO,YAAY,6BAA6B,EACjE,kBAAkB,CACnB,CACF,CAAC;YACJ,CAAC;QACH,CAAC,CACF,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAC1B,KAAe,EACf,UAAkB;IAElB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACtB,MAAM,IAAI,QAAQ,CAAC,uBAAuB,IAAI,EAAE,EAAE,kBAAkB,EAAE;gBACpE,mFAAmF;aACpF,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO,IAAI,OAAO,CAAC,CAAC,cAAc,EAAE,aAAa,EAAE,EAAE;QACnD,QAAQ,CACN,OAAO,EACP,CAAC,cAAc,EAAE,OAAO,EAAE,GAAG,KAAK,EAAE,eAAe,EAAE,UAAU,CAAC,EAChE,EAAE,SAAS,EAAE,gBAAgB,EAAE,QAAQ,EAAE,OAAO,EAAE,EAClD,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE;YACxB,MAAM,SAAS,GAAG,eAAe,CAAC,GAAG,MAAM,KAAK,MAAM,EAAE,CAAC,CAAC;YAC1D,IAAI,KAAK,IAAI,SAAS,EAAE,CAAC;gBACvB,aAAa,CACX,IAAI,QAAQ,CACV,SAAS,IAAI,mBAAmB,KAAK,CAAC,MAAM,iBAAiB,EAC7D,kBAAkB,EAClB;oBACE,uEAAuE;iBACxE,CACF,CACF,CAAC;gBACF,OAAO;YACT,CAAC;YACD,cAAc,EAAE,CAAC;QACnB,CAAC,CACF,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,cAAc,CAAC,SAA6B;IAK1D,IAAI,CAAC,SAAS;QAAE,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC;IAEvD,MAAM,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACzC,MAAM,OAAO,GAAG,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;IAC7E,MAAM,QAAQ,GAAG,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;IAExE,IAAI,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC;QACtC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC;QACjC,CAAC,CAAC,OAAO,CAAC;IACZ,IAAI,CAAC;QACH,IAAI,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAAC,MAAM,CAAC;QACP,qEAAqE;IACvE,CAAC;IACD,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,QAAQ,CAAC,CAAC;IAC7C,MAAM,IAAI,GAAG,iBAAiB,CAAC,MAAM,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,CAAC;IACjE,MAAM,GAAG,GAAG,iBAAiB,CAAC,MAAM,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC,CAAC;IAElE,OAAO,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC;AAC/C,CAAC;AAED,SAAS,iBAAiB,CAAC,GAAkB;IAC3C,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,EAAE,CAAC;IAC5B,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IAC3B,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACnD,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,UAAU,CAAC,IAAY,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE;IAC1D,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IACvC,MAAM,UAAU,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IACtC,MAAM,GAAG,GAAG,QAAQ,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,UAAU,CAAC,CAAC;IACpD,OAAO,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC;AACjD,CAAC;AAED,SAAS,YAAY,CAAC,IAAY;IAChC,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAC7E,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CAAC,MAA8B;IAC1D,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,MAAM,GAAG,GAAiB,EAAE,CAAC;IAE7B,KAAK,MAAM,KAAK,IAAI,MAAM,IAAI,EAAE,EAAE,CAAC;QACjC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,cAAc,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAC5D,MAAM,OAAO,GAAG,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;QAClE,MAAM,GAAG,GAAG,GAAG,IAAI,IAAI,IAAI,IAAI,GAAG,IAAI,OAAO,EAAE,CAAC;QAChD,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,SAAS;QAC5B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACd,GAAG,CAAC,IAAI,CAAC;YACP,IAAI;YACJ,IAAI;YACJ,GAAG;YACH,IAAI,EAAE,cAAc,CAAC,KAAK,CAAC,SAAS,CAAC;YACrC,OAAO;SACR,CAAC,CAAC;IACL,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAED,4DAA4D;AAC5D,SAAS,cAAc,CAAC,SAA6B;IACnD,IAAI,CAAC,SAAS;QAAE,OAAO,OAAO,CAAC;IAC/B,MAAM,KAAK,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC;IACtC,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC;QAAE,OAAO,OAAO,CAAC;IAC5C,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC;QAAE,OAAO,OAAO,CAAC;IAC5E,IAAI,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAAE,OAAO,QAAQ,CAAC;IAC9C,IAAI,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAAE,OAAO,QAAQ,CAAC;IAC9C,IAAI,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;QAAE,OAAO,SAAS,CAAC;IAChD,IAAI,KAAK,CAAC,QAAQ,CAAC,eAAe,CAAC;QAAE,OAAO,YAAY,CAAC;IACzD,OAAO,KAAK,CAAC,OAAO,CAAC,mBAAmB,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AACrE,CAAC;AAED,iEAAiE;AACjE,MAAM,UAAU,cAAc,CAAC,MAA8B;IAC3D,IAAI,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IAC9B,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,SAAS,CAAC;IACnD,MAAM,KAAK,GAAG;QACZ,IAAI;QACJ,MAAM,CAAC,SAAS;YACd,CAAC,CAAC,GAAG,MAAM,CAAC,QAAQ,IAAI,KAAK,IAAI,MAAM,CAAC,SAAS,EAAE;YACnD,CAAC,CAAC,MAAM,CAAC,QAAQ;KACpB,CAAC;IACF,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9E,OAAO,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;AACtD,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "xcodebuild-axi",
3
- "version": "0.1.9",
3
+ "version": "0.1.11",
4
4
  "description": "AXI-compliant xcodebuild wrapper — turns multi-megabyte Xcode build and test transcripts into a few lines of TOON",
5
5
  "type": "module",
6
6
  "repository": {