xcodebuild-axi 0.1.2 → 0.1.4

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/CHANGELOG.md CHANGED
@@ -6,6 +6,55 @@ Notable changes to `xcodebuild-axi`. Versions follow
6
6
 
7
7
  ## [Unreleased]
8
8
 
9
+ ## [0.1.4] - 2026-09-21
10
+
11
+ ### Added
12
+
13
+ - `settings` takes `--device`, `--destination` and `--sdk`. Build settings are
14
+ destination-dependent, and without one xcodebuild resolves against the
15
+ default _device_ SDK -- so `BUILT_PRODUCTS_DIR` came back under
16
+ `Debug-iphoneos` while `build` and `test` default to a simulator. There was
17
+ no flag to ask otherwise, which made `settings` the wrong way to locate a
18
+ simulator `.app`, silently.
19
+
20
+ ### Changed
21
+
22
+ - `settings` reports `platform:` alongside the scheme, so an answer always
23
+ names the destination it is for. The default is unchanged -- still the
24
+ device SDK -- but it no longer looks like the simulator one.
25
+
26
+ ### Fixed
27
+
28
+ - `result` reported a **build** bundle as a test run: `result: unknown`,
29
+ `title: Test - MyApp`, `0 passed / 0 failed`, on an `unknown` destination.
30
+ This is the same misread 0.1.2 fixed in the home view, in the second place it
31
+ lives -- and 0.1.2 made it easier to reach rather than harder, because the
32
+ home view now prints `see \`xcodebuild-axi result <path>\`` and that command
33
+ then gave the wrong answer.
34
+
35
+ `home.ts` discriminates on the name `runLabel` gave the bundle, which `result`
36
+ cannot do: it takes an arbitrary path, and its own help offers
37
+ `build/MyApp.xcresult`. So `result` gates the verdict path on the bundle
38
+ having actually recorded tests, and reports anything else from
39
+ `build-results`, which carries the real `actionTitle`, `status` and
40
+ `destination`. A build now reads `result: succeeded`, `title: Build "MyApp"`,
41
+ with the device it landed on.
42
+
43
+ ## [0.1.3] - 2026-09-21
44
+
45
+ ### Fixed
46
+
47
+ - `setup hooks` installed a session-start hook with a **10 second timeout**,
48
+ which is not long enough. The home view runs `xcodebuild -list`, and against
49
+ a workspace with 16 local Swift packages that resolves the package graph on a
50
+ cold run: measured 10.9s cold, then 2.9s and 1.4s warm. Cold is exactly the
51
+ case a session start hits, so the hook would be killed before it produced
52
+ anything — silently, with no error to notice. The timeout is now 30s, which
53
+ is a ceiling rather than a cost: a warm run still returns in a second or two.
54
+
55
+ Re-run `xcodebuild-axi setup hooks` to repair an already-installed hook; it
56
+ updates the existing entry in place rather than adding a second one.
57
+
9
58
  ## [0.1.2] - 2026-09-21
10
59
 
11
60
  ### Fixed
@@ -60,7 +109,9 @@ First release.
60
109
  - 100% of the 117 options `xcodebuild -help` lists are covered, declared in
61
110
  `src/surface.ts` and checked against the installed Xcode in CI.
62
111
 
63
- [unreleased]: https://github.com/alexrrouse/xcodebuild-axi/compare/v0.1.2...HEAD
112
+ [unreleased]: https://github.com/alexrrouse/xcodebuild-axi/compare/v0.1.4...HEAD
113
+ [0.1.4]: https://github.com/alexrrouse/xcodebuild-axi/compare/v0.1.3...v0.1.4
114
+ [0.1.3]: https://github.com/alexrrouse/xcodebuild-axi/compare/v0.1.2...v0.1.3
64
115
  [0.1.2]: https://github.com/alexrrouse/xcodebuild-axi/compare/v0.1.1...v0.1.2
65
116
  [0.1.1]: https://github.com/alexrrouse/xcodebuild-axi/compare/v0.1.0...v0.1.1
66
117
  [0.1.0]: https://github.com/alexrrouse/xcodebuild-axi/releases/tag/v0.1.0
@@ -1,2 +1,10 @@
1
+ import { type BuildResults } from "../xcresult.js";
1
2
  export declare const RESULT_HELP = "usage: xcodebuild-axi result <path.xcresult> [flags]\nRe-reads a result bundle that a previous run wrote, without rebuilding.\nflags[4]:\n --failures failures and errors only\n --warnings include the full warning list\n --max <n> rows to list before summarizing the rest (default: 20)\n --full untruncated messages\nexamples:\n xcodebuild-axi result ~/Library/Caches/xcodebuild-axi/MyApps-1a2b3c4d/MyApp-iPhone-17-Pro-test.xcresult\n xcodebuild-axi result build/MyApp.xcresult --failures --full\n";
2
3
  export declare function resultCommand(args: string[]): Promise<string>;
4
+ /**
5
+ * The header a non-test bundle reports. A build bundle carries every field the
6
+ * test-shaped query lacks: `actionTitle` names the action xcodebuild ran,
7
+ * `status` is the verdict it recorded, and `destination` is the device it
8
+ * actually landed on.
9
+ */
10
+ export declare function buildFields(build: BuildResults): Record<string, string>;
@@ -37,7 +37,15 @@ export async function resultCommand(args) {
37
37
  throw new AxiError(`Nothing readable in the bundle at ${rawPath}`, "RESULT_NOT_FOUND");
38
38
  }
39
39
  const blocks = [];
40
- if (summary?.totalTestCount !== undefined) {
40
+ // `xcresulttool` answers the test-shaped query for *any* bundle, so a build
41
+ // comes back as `{title: "Test - X", totalTestCount: 0, result: "unknown"}`
42
+ // rather than as nothing. Reading that as a verdict rendered a build as
43
+ // `result: unknown / title: Test - X / 0 passed / 0 failed`, which is the
44
+ // shape of a clean pass. `home.ts` fixed the same misread by trusting the
45
+ // name `runLabel` gave the bundle, but `result` takes an arbitrary path --
46
+ // its own help offers `build/MyApp.xcresult` -- so the name proves nothing
47
+ // here and the count is the discriminator instead.
48
+ if (summary && (summary.totalTestCount ?? 0) > 0) {
41
49
  const device = summary.devicesAndConfigurations?.[0]?.device;
42
50
  blocks.push(renderFields({
43
51
  result: summary.result?.toLowerCase() ?? "unknown",
@@ -65,6 +73,9 @@ export async function resultCommand(args) {
65
73
  blocks.push(renderFields({ failures: "0 test failures in this bundle" }));
66
74
  }
67
75
  }
76
+ else if (build) {
77
+ blocks.push(renderFields(buildFields(build)));
78
+ }
68
79
  if (build) {
69
80
  const errors = toDiagnostics(build.errors);
70
81
  const warnings = toDiagnostics([
@@ -93,6 +104,22 @@ export async function resultCommand(args) {
93
104
  blocks.push(renderHelp(hints));
94
105
  return renderOutput(blocks);
95
106
  }
107
+ /**
108
+ * The header a non-test bundle reports. A build bundle carries every field the
109
+ * test-shaped query lacks: `actionTitle` names the action xcodebuild ran,
110
+ * `status` is the verdict it recorded, and `destination` is the device it
111
+ * actually landed on.
112
+ */
113
+ export function buildFields(build) {
114
+ return {
115
+ result: build.status?.toLowerCase() ?? "unknown",
116
+ title: build.actionTitle ?? "",
117
+ destination: describeDevice(build.destination),
118
+ duration: build.startTime !== undefined && build.endTime !== undefined
119
+ ? duration(build.endTime - build.startTime)
120
+ : "unknown",
121
+ };
122
+ }
96
123
  function expandTilde(path) {
97
124
  const home = process.env["HOME"];
98
125
  return home && path.startsWith("~/") ? `${home}${path.slice(1)}` : path;
@@ -1 +1 @@
1
- {"version":3,"file":"result.js","sourceRoot":"","sources":["../../../src/commands/result.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,eAAe,EACf,aAAa,GACd,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EACL,QAAQ,EACR,YAAY,EACZ,UAAU,EACV,UAAU,EACV,YAAY,EACZ,SAAS,EACT,QAAQ,GACT,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,UAAU,EACV,OAAO,EACP,WAAW,EACX,kBAAkB,GACnB,MAAM,YAAY,CAAC;AAEpB,MAAM,CAAC,MAAM,WAAW,GAAG;;;;;;;;;;CAU1B,CAAC;AAEF,MAAM,KAAK,GAAG,CAAC,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,CAAU,CAAC;AAEvE,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,IAAc;IAChD,kBAAkB,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAErD,MAAM,CAAC,OAAO,CAAC,GAAG,WAAW,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAC/C,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,MAAM,IAAI,QAAQ,CAChB,4CAA4C,EAC5C,kBAAkB,EAClB;YACE,uCAAuC;YACvC,kEAAkE;SACnE,CACF,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC;IAC3C,MAAM,GAAG,GAAG,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC;IAC5C,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IACrC,MAAM,YAAY,GAAG,OAAO,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;IAEjD,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QACzC,eAAe,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC;QAC5C,gBAAgB,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC;KAC9C,CAAC,CAAC;IAEH,IAAI,CAAC,OAAO,IAAI,CAAC,KAAK,EAAE,CAAC;QACvB,MAAM,IAAI,QAAQ,CAChB,qCAAqC,OAAO,EAAE,EAC9C,kBAAkB,CACnB,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAa,EAAE,CAAC;IAE5B,IAAI,OAAO,EAAE,cAAc,KAAK,SAAS,EAAE,CAAC;QAC1C,MAAM,MAAM,GAAG,OAAO,CAAC,wBAAwB,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC;QAC7D,MAAM,CAAC,IAAI,CACT,YAAY,CAAC;YACX,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,SAAS;YAClD,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,EAAE;YAC1B,WAAW,EAAE,cAAc,CAAC,MAAM,CAAC;YACnC,KAAK,EAAE,GAAG,OAAO,CAAC,WAAW,IAAI,CAAC,aAAa,OAAO,CAAC,WAAW,IAAI,CAAC,aAAa,OAAO,CAAC,YAAY,IAAI,CAAC,UAAU;YACvH,QAAQ,EACN,OAAO,CAAC,SAAS,KAAK,SAAS,IAAI,OAAO,CAAC,UAAU,KAAK,SAAS;gBACjE,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC;gBAClD,CAAC,CAAC,SAAS;SAChB,CAAC,CACH,CAAC;QAEF,MAAM,QAAQ,GAAG,OAAO,CAAC,YAAY,IAAI,EAAE,CAAC;QAC5C,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;gBACrD,IAAI,EAAE,OAAO,CAAC,oBAAoB,IAAI,OAAO,CAAC,QAAQ,IAAI,SAAS;gBACnE,MAAM,EAAE,OAAO,CAAC,UAAU,IAAI,EAAE;gBAChC,OAAO,EAAE,IAAI;oBACX,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE;oBACzD,CAAC,CAAC,QAAQ,CACN,CAAC,OAAO,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,EACvD,GAAG,CACJ,CAAC,IAAI;aACX,CAAC,CAAC,CAAC;YACJ,MAAM,CAAC,IAAI,CACT,UAAU,CACR,QAAQ,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM;gBAC5B,CAAC,CAAC,aAAa,KAAK,CAAC,MAAM,OAAO,QAAQ,CAAC,MAAM,GAAG;gBACpD,CAAC,CAAC,UAAU,EACd,KAAK,CACN,CACF,CAAC;QACJ,CAAC;aAAM,IAAI,YAAY,EAAE,CAAC;YACxB,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,QAAQ,EAAE,gCAAgC,EAAE,CAAC,CAAC,CAAC;QAC5E,CAAC;IACH,CAAC;IAED,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,MAAM,GAAG,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC3C,MAAM,QAAQ,GAAG,aAAa,CAAC;YAC7B,GAAG,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC;YACzB,GAAG,CAAC,KAAK,CAAC,gBAAgB,IAAI,EAAE,CAAC;SAClC,CAAC,CAAC;QAEH,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,MAAM,CAAC,IAAI,CACT,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CACjE,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,IAAI,EAAE,YAAY,CAAC,EAAE,CAAC;gBACvD,MAAM,CAAC,IAAI,CACT,gBAAgB,CAAC,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CACrE,CAAC;YACJ,CAAC;iBAAM,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC/B,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YAC3D,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;IAEvD,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IACE,CAAC,OAAO,CAAC,IAAI,EAAE,YAAY,CAAC;QAC5B,CAAC,KAAK,EAAE,YAAY,IAAI,CAAC,CAAC,GAAG,CAAC;QAC9B,CAAC,YAAY,EACb,CAAC;QACD,KAAK,CAAC,IAAI,CACR,+BAA+B,OAAO,4BAA4B,CACnE,CAAC;IACJ,CAAC;IACD,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;IAE/B,OAAO,YAAY,CAAC,MAAM,CAAC,CAAC;AAC9B,CAAC;AAED,SAAS,WAAW,CAAC,IAAY;IAC/B,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACjC,OAAO,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AAC1E,CAAC"}
1
+ {"version":3,"file":"result.js","sourceRoot":"","sources":["../../../src/commands/result.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,10 @@
1
- export declare const SETTINGS_HELP = "usage: xcodebuild-axi settings [flags]\nReads resolved build settings. Asking for the keys you want turns a 40 KB dump\ninto a few lines.\nflags[7]:\n --scheme <name> scheme to resolve against (required only when the project has more than one)\n --key <NAME> setting to read; repeatable or comma-separated\n --configuration <name> build configuration to resolve against\n --all dump every setting (large \u2014 hundreds of keys)\n --for-index the per-source-file settings an indexer sees\n --file <path> with --for-index: the one source file to report on\n --full with --for-index --file: list the long argument arrays\nnote:\n --for-index answers a different question from the rest of this command: it\n reports the compiler invocation the indexer builds per source file. The raw\n payload measured 216 KB on a 12-scheme workspace, so without --file it\n reports only which targets have index settings and how many files each has.\nexamples:\n xcodebuild-axi settings --key PRODUCT_BUNDLE_IDENTIFIER,MARKETING_VERSION\n xcodebuild-axi settings --scheme MyApp --key SWIFT_VERSION\n xcodebuild-axi settings --scheme MyApp --for-index --file MyApp/AppFeature.swift\n";
1
+ export declare const SETTINGS_HELP = "usage: xcodebuild-axi settings [flags]\nReads resolved build settings. Asking for the keys you want turns a 40 KB dump\ninto a few lines.\nflags[10]:\n --scheme <name> scheme to resolve against (required only when the project has more than one)\n --key <NAME> setting to read; repeatable or comma-separated\n --configuration <name> build configuration to resolve against\n --device <name> resolve against a simulator or device by name, e.g. \"iPhone 17 Pro\"\n --destination <spec> raw xcodebuild destination specifier, passed through untouched\n --sdk <name> base SDK to resolve against, e.g. iphonesimulator\n --all dump every setting (large \u2014 hundreds of keys)\n --for-index the per-source-file settings an indexer sees\n --file <path> with --for-index: the one source file to report on\n --full with --for-index --file: list the long argument arrays\nnote:\n Paths and platform names are destination-dependent. With no --device,\n --destination or --sdk, xcodebuild resolves against the default SDK, which is\n the *device* SDK -- so BUILT_PRODUCTS_DIR comes back under Debug-iphoneos\n while build and test default to a simulator. The reported platform names\n what the answer is for.\n --for-index answers a different question from the rest of this command: it\n reports the compiler invocation the indexer builds per source file. The raw\n payload measured 216 KB on a 12-scheme workspace, so without --file it\n reports only which targets have index settings and how many files each has.\nexamples:\n xcodebuild-axi settings --key PRODUCT_BUNDLE_IDENTIFIER,MARKETING_VERSION\n xcodebuild-axi settings --scheme MyApp --key SWIFT_VERSION\n xcodebuild-axi settings --scheme MyApp --device \"iPhone 17 Pro\" --key BUILT_PRODUCTS_DIR\n xcodebuild-axi settings --scheme MyApp --for-index --file MyApp/AppFeature.swift\n";
2
2
  export declare function settingsCommand(args: string[]): Promise<string>;
3
+ /**
4
+ * Name the platform an answer is for. These settings are destination-dependent
5
+ * and the destination is easy not to think about, so the report says which one
6
+ * it resolved against rather than leaving the reader to assume.
7
+ */
8
+ export declare function platformOf(settings: Record<string, unknown>): {
9
+ platform: string;
10
+ } | Record<string, never>;
@@ -1,21 +1,30 @@
1
1
  import { AxiError } from "../errors.js";
2
2
  import { requireProject } from "../context.js";
3
3
  import { requireScheme } from "../scheme.js";
4
+ import { resolveDestination } from "../destination.js";
4
5
  import { runMetadata } from "../xcodebuild.js";
5
6
  import { renderFields, renderHelp, renderList, renderOutput } from "../toon.js";
6
7
  import { getFlag, getListFlag, hasFlag, rejectUnknownFlags } from "../args.js";
7
8
  export const SETTINGS_HELP = `usage: xcodebuild-axi settings [flags]
8
9
  Reads resolved build settings. Asking for the keys you want turns a 40 KB dump
9
10
  into a few lines.
10
- flags[7]:
11
+ flags[10]:
11
12
  --scheme <name> scheme to resolve against (required only when the project has more than one)
12
13
  --key <NAME> setting to read; repeatable or comma-separated
13
14
  --configuration <name> build configuration to resolve against
15
+ --device <name> resolve against a simulator or device by name, e.g. "iPhone 17 Pro"
16
+ --destination <spec> raw xcodebuild destination specifier, passed through untouched
17
+ --sdk <name> base SDK to resolve against, e.g. iphonesimulator
14
18
  --all dump every setting (large — hundreds of keys)
15
19
  --for-index the per-source-file settings an indexer sees
16
20
  --file <path> with --for-index: the one source file to report on
17
21
  --full with --for-index --file: list the long argument arrays
18
22
  note:
23
+ Paths and platform names are destination-dependent. With no --device,
24
+ --destination or --sdk, xcodebuild resolves against the default SDK, which is
25
+ the *device* SDK -- so BUILT_PRODUCTS_DIR comes back under Debug-iphoneos
26
+ while build and test default to a simulator. The reported platform names
27
+ what the answer is for.
19
28
  --for-index answers a different question from the rest of this command: it
20
29
  reports the compiler invocation the indexer builds per source file. The raw
21
30
  payload measured 216 KB on a 12-scheme workspace, so without --file it
@@ -23,18 +32,30 @@ note:
23
32
  examples:
24
33
  xcodebuild-axi settings --key PRODUCT_BUNDLE_IDENTIFIER,MARKETING_VERSION
25
34
  xcodebuild-axi settings --scheme MyApp --key SWIFT_VERSION
35
+ xcodebuild-axi settings --scheme MyApp --device "iPhone 17 Pro" --key BUILT_PRODUCTS_DIR
26
36
  xcodebuild-axi settings --scheme MyApp --for-index --file MyApp/AppFeature.swift
27
37
  `;
28
38
  const FLAGS = [
29
39
  "--scheme",
30
40
  "--key",
31
41
  "--configuration",
42
+ "--device",
43
+ "--destination",
44
+ "--sdk",
32
45
  "--all",
33
46
  "--for-index",
34
47
  "--file",
35
48
  "--full",
36
49
  ];
37
- const VALUE_FLAGS = ["--scheme", "--key", "--configuration", "--file"];
50
+ const VALUE_FLAGS = [
51
+ "--scheme",
52
+ "--key",
53
+ "--configuration",
54
+ "--device",
55
+ "--destination",
56
+ "--sdk",
57
+ "--file",
58
+ ];
38
59
  export async function settingsCommand(args) {
39
60
  rejectUnknownFlags(args, "settings", FLAGS, VALUE_FLAGS);
40
61
  const keys = getListFlag(args, "--key");
@@ -49,11 +70,30 @@ export async function settingsCommand(args) {
49
70
  const project = requireProject();
50
71
  const scheme = await requireScheme(project, getFlag(args, "--scheme"), "settings");
51
72
  const configuration = getFlag(args, "--configuration");
73
+ const sdk = getFlag(args, "--sdk");
74
+ // Without a destination xcodebuild resolves against the default *device*
75
+ // SDK, so BUILT_PRODUCTS_DIR and PLATFORM_NAME describe a build that
76
+ // `xcodebuild-axi build` -- which defaults to the newest simulator -- never
77
+ // performs. Reading the `.app` path out of that answer sends you to an
78
+ // iphoneos directory for a simulator build. Only resolve when asked, so the
79
+ // default answer does not move under anyone.
80
+ const rawDestination = getFlag(args, "--destination");
81
+ const device = getFlag(args, "--device");
82
+ const destination = rawDestination !== undefined || device !== undefined
83
+ ? await resolveDestination({
84
+ project,
85
+ scheme,
86
+ ...(device !== undefined ? { device } : {}),
87
+ ...(rawDestination !== undefined ? { raw: rawDestination } : {}),
88
+ })
89
+ : undefined;
52
90
  const { stdout } = await runMetadata([
53
91
  ...project.flags,
54
92
  "-scheme",
55
93
  scheme,
56
94
  ...(configuration ? ["-configuration", configuration] : []),
95
+ ...(destination ? ["-destination", destination.specifier] : []),
96
+ ...(sdk ? ["-sdk", sdk] : []),
57
97
  forIndex ? "-showBuildSettingsForIndex" : "-showBuildSettings",
58
98
  "-json",
59
99
  ]);
@@ -61,9 +101,14 @@ export async function settingsCommand(args) {
61
101
  return reportIndexSettings(stdout, scheme, getFlag(args, "--file"), hasFlag(args, "--full"));
62
102
  }
63
103
  const settings = parseSettings(stdout);
104
+ const platform = platformOf(settings);
64
105
  if (all) {
65
106
  return renderOutput([
66
- renderFields({ scheme, settings: Object.keys(settings).length }),
107
+ renderFields({
108
+ scheme,
109
+ ...platform,
110
+ settings: Object.keys(settings).length,
111
+ }),
67
112
  renderFields({ ...settings }),
68
113
  ]);
69
114
  }
@@ -76,7 +121,7 @@ export async function settingsCommand(args) {
76
121
  else
77
122
  found[key] = value;
78
123
  }
79
- const blocks = [renderFields({ scheme })];
124
+ const blocks = [renderFields({ scheme, ...platform })];
80
125
  if (Object.keys(found).length > 0) {
81
126
  blocks.push(renderFields({ settings: found }));
82
127
  }
@@ -90,6 +135,15 @@ export async function settingsCommand(args) {
90
135
  }
91
136
  return renderOutput(blocks);
92
137
  }
138
+ /**
139
+ * Name the platform an answer is for. These settings are destination-dependent
140
+ * and the destination is easy not to think about, so the report says which one
141
+ * it resolved against rather than leaving the reader to assume.
142
+ */
143
+ export function platformOf(settings) {
144
+ const name = settings["PLATFORM_NAME"];
145
+ return typeof name === "string" && name.length > 0 ? { platform: name } : {};
146
+ }
93
147
  /**
94
148
  * `-showBuildSettingsForIndex` is the one query in this family whose full
95
149
  * output is never worth printing: it repeats the entire Swift driver command
@@ -1 +1 @@
1
- {"version":3,"file":"settings.js","sourceRoot":"","sources":["../../../src/commands/settings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"settings.js","sourceRoot":"","sources":["../../../src/commands/settings.ts"],"names":[],"mappings":"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"}
@@ -31,6 +31,20 @@ const FLAGS = ["--project", "--status", "--uninstall"];
31
31
  * as soon as the checkout moved.
32
32
  */
33
33
  const MARKER = "xcodebuild-axi";
34
+ /**
35
+ * How long the session-start hook is allowed to take.
36
+ *
37
+ * The SDK defaults to 10s, which is not enough. The home view runs
38
+ * `xcodebuild -list`, and against a workspace with 16 local Swift packages
39
+ * that resolves the package graph on a cold run: measured 10.9s cold, then
40
+ * 2.9s and 1.4s warm. Cold is exactly the case a session start hits, and a
41
+ * hook that times out contributes nothing at all — the whole point of it is
42
+ * lost silently, with no error to notice.
43
+ *
44
+ * 30s is headroom over the slowest real measurement rather than a guess. It is
45
+ * a ceiling, not a cost: a warm run still returns in a second or two.
46
+ */
47
+ const HOOK_TIMEOUT_SECONDS = 30;
34
48
  export async function setupCommand(args) {
35
49
  rejectUnknownFlags(args, "setup", FLAGS);
36
50
  const [target] = positionals(args, []);
@@ -64,7 +78,11 @@ export async function setupCommand(args) {
64
78
  await uninstallSessionStartHooks({ scope, marker: MARKER });
65
79
  return renderOutput([renderFields({ setup: "hooks removed", scope })]);
66
80
  }
67
- await installSessionStartHooks({ scope, marker: MARKER });
81
+ await installSessionStartHooks({
82
+ scope,
83
+ marker: MARKER,
84
+ timeoutSeconds: HOOK_TIMEOUT_SECONDS,
85
+ });
68
86
  const status = sessionStartHookStatus({ scope, marker: MARKER });
69
87
  return renderOutput([
70
88
  renderFields({
@@ -1 +1 @@
1
- {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../../src/commands/setup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../../src/commands/setup.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EACxB,sBAAsB,EACtB,0BAA0B,GAC3B,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AACpE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAEtE,MAAM,CAAC,MAAM,UAAU,GAAG;;;;;;;;;;;;CAYzB,CAAC;AAEF,MAAM,KAAK,GAAG,CAAC,WAAW,EAAE,UAAU,EAAE,aAAa,CAAU,CAAC;AAEhE;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,GAAG,gBAAgB,CAAC;AAEhC;;;;;;;;;;;;GAYG;AACH,MAAM,oBAAoB,GAAG,EAAE,CAAC;AAEhC,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,IAAc;IAC/C,kBAAkB,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IAEzC,MAAM,CAAC,MAAM,CAAC,GAAG,WAAW,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IACvC,IAAI,MAAM,KAAK,OAAO,EAAE,CAAC;QACvB,MAAM,IAAI,QAAQ,CAChB,MAAM,KAAK,SAAS;YAClB,CAAC,CAAC,sBAAsB;YACxB,CAAC,CAAC,yBAAyB,MAAM,GAAG,EACtC,kBAAkB,EAClB,CAAC,4BAA4B,CAAC,CAC/B,CAAC;IACJ,CAAC;IAED,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC;QACtC,CAAC,CAAE,SAAmB;QACtB,CAAC,CAAE,MAAgB,CAAC;IAEtB,IAAI,OAAO,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE,CAAC;QAC9B,MAAM,MAAM,GAAG,sBAAsB,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QACjE,OAAO,YAAY,CAAC;YAClB,YAAY,CAAC;gBACX,KAAK,EAAE,QAAQ;gBACf,KAAK;gBACL,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS;oBAC9B,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,IAAI,WAAW,CAAC;oBACrC,CAAC,CAAC,eAAe;gBACnB,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,SAAS;oBAC5B,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,IAAI,WAAW,CAAC;oBACpC,CAAC,CAAC,eAAe;gBACnB,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,SAAS;oBAClC,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,IAAI,WAAW,CAAC;oBACvC,CAAC,CAAC,eAAe;aACpB,CAAC;SACH,CAAC,CAAC;IACL,CAAC;IAED,IAAI,OAAO,CAAC,IAAI,EAAE,aAAa,CAAC,EAAE,CAAC;QACjC,MAAM,0BAA0B,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QAC5D,OAAO,YAAY,CAAC,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;IACzE,CAAC;IAED,MAAM,wBAAwB,CAAC;QAC7B,KAAK;QACL,MAAM,EAAE,MAAM;QACd,cAAc,EAAE,oBAAoB;KACrC,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,sBAAsB,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IAEjE,OAAO,YAAY,CAAC;QAClB,YAAY,CAAC;YACX,KAAK,EAAE,uCAAuC;YAC9C,KAAK;YACL,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,IAAI,SAAS;YACxC,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,IAAI,IAAI,SAAS;YACtC,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,IAAI,IAAI,SAAS;SAC7C,CAAC;QACF,UAAU,CAAC;YACT,2CAA2C;YAC3C,qDAAqD;YACrD,6DAA6D;SAC9D,CAAC;KACH,CAAC,CAAC;AACL,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "xcodebuild-axi",
3
- "version": "0.1.2",
3
+ "version": "0.1.4",
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": {