@tamagui/native-ci 2.0.0-rc.11 → 2.0.0-rc.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/detox.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { parseArgs } from "node:util";
2
2
  import { DETOX_SERVER_PORT } from "./constants";
3
3
  function parseDetoxArgs(platform) {
4
- const defaultConfig = platform === "ios" ? "ios.sim.debug" : "android.emu.ci.debug", { values } = parseArgs({
4
+ const defaultConfig = platform === "ios" ? "ios.sim.debug" : "android.emu.ci.debug", { values, positionals } = parseArgs({
5
5
  options: {
6
6
  config: { type: "string", default: defaultConfig },
7
7
  "project-root": { type: "string", default: process.cwd() },
@@ -9,7 +9,8 @@ function parseDetoxArgs(platform) {
9
9
  "record-logs": { type: "string", default: "all" },
10
10
  retries: { type: "string", default: "0" },
11
11
  workers: { type: "string", default: "1" }
12
- }
12
+ },
13
+ allowPositionals: !0
13
14
  }), retriesNum = Number.parseInt(values.retries, 10);
14
15
  (Number.isNaN(retriesNum) || retriesNum < 0) && (console.error("Error: retries must be a non-negative integer"), process.exit(1));
15
16
  const workersNum = Number.parseInt(values.workers, 10);
@@ -19,7 +20,8 @@ function parseDetoxArgs(platform) {
19
20
  headless: values.headless,
20
21
  recordLogs: values["record-logs"],
21
22
  retries: retriesNum,
22
- workers: workersNum
23
+ workers: workersNum,
24
+ testFiles: positionals.length > 0 ? positionals : void 0
23
25
  };
24
26
  }
25
27
  function buildDetoxArgs(options) {
@@ -35,7 +37,7 @@ function buildDetoxArgs(options) {
35
37
  // force jest to exit after tests complete (prevents hanging on open handles)
36
38
  "--forceExit"
37
39
  ];
38
- return options.headless && args.push("--headless"), options.workers && options.workers > 1 && args.push("--workers", String(options.workers)), args;
40
+ return options.headless && args.push("--headless"), options.workers && options.workers > 1 && args.push("--workers", String(options.workers)), options.testFiles && options.testFiles.length > 0 && args.push(...options.testFiles), args;
39
41
  }
40
42
  const DETOX_TIMEOUT_MS = 2700 * 1e3;
41
43
  async function resetDetoxLockFile() {
package/dist/detox.js.map CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../src/detox.ts"],
4
- "mappings": "AAMA,SAAS,iBAAiB;AAE1B,SAAS,yBAAyB;AAoB3B,SAAS,eAAe,UAAoB;AACjD,QAAM,gBAAgB,aAAa,QAAQ,kBAAkB,wBAEvD,EAAE,OAAO,IAAI,UAAU;AAAA,IAC3B,SAAS;AAAA,MACP,QAAQ,EAAE,MAAM,UAAU,SAAS,cAAc;AAAA,MACjD,gBAAgB,EAAE,MAAM,UAAU,SAAS,QAAQ,IAAI,EAAE;AAAA,MACzD,UAAU,EAAE,MAAM,WAAW,SAAS,GAAM;AAAA,MAC5C,eAAe,EAAE,MAAM,UAAU,SAAS,MAAM;AAAA,MAChD,SAAS,EAAE,MAAM,UAAU,SAAS,IAAI;AAAA,MACxC,SAAS,EAAE,MAAM,UAAU,SAAS,IAAI;AAAA,IAC1C;AAAA,EACF,CAAC,GAGK,aAAa,OAAO,SAAS,OAAO,SAAU,EAAE;AACtD,GAAI,OAAO,MAAM,UAAU,KAAK,aAAa,OAC3C,QAAQ,MAAM,+CAA+C,GAC7D,QAAQ,KAAK,CAAC;AAIhB,QAAM,aAAa,OAAO,SAAS,OAAO,SAAU,EAAE;AACtD,UAAI,OAAO,MAAM,UAAU,KAAK,aAAa,OAC3C,QAAQ,MAAM,2CAA2C,GACzD,QAAQ,KAAK,CAAC,IAGT;AAAA,IACL,QAAQ,OAAO;AAAA,IACf,aAAa,OAAO,cAAc;AAAA,IAClC,UAAU,OAAO;AAAA,IACjB,YAAY,OAAO,aAAa;AAAA,IAChC,SAAS;AAAA,IACT,SAAS;AAAA,EACX;AACF;AAKO,SAAS,eAAe,SAAuC;AACpE,QAAM,OAAO;AAAA,IACX;AAAA,IACA;AAAA,IACA;AAAA,IACA,QAAQ;AAAA,IACR;AAAA,IACA,QAAQ;AAAA,IACR;AAAA,IACA,OAAO,QAAQ,OAAO;AAAA;AAAA,IAEtB;AAAA,EACF;AAEA,SAAI,QAAQ,YACV,KAAK,KAAK,YAAY,GAIpB,QAAQ,WAAW,QAAQ,UAAU,KACvC,KAAK,KAAK,aAAa,OAAO,QAAQ,OAAO,CAAC,GAGzC;AACT;AAGA,MAAM,mBAAmB,OAAU;AAMnC,eAAsB,qBAAoC;AACxD,UAAQ,KAAK,8BAA8B,GAK3C,MAJa,IAAI,MAAM,CAAC,OAAO,SAAS,iBAAiB,GAAG;AAAA,IAC1D,QAAQ;AAAA,IACR,QAAQ;AAAA,EACV,CAAC,EACU;AACb;AAOA,eAAsB,cAAc,SAA8C;AAGhF,QAAM,mBAAmB;AAEzB,QAAM,YAAY,eAAe,OAAO;AAExC,UAAQ,KAAK;AAAA,4BAA+B,GAC5C,QAAQ,KAAK,kCAAkC,iBAAiB,EAAE,GAClE,QAAQ,KAAK,gBAAgB,UAAU,KAAK,GAAG,CAAC,EAAE;AAGlD,QAAM,OAAO,IAAI,MAAM,CAAC,OAAO,GAAG,SAAS,GAAG;AAAA,IAC5C,KAAK,EAAE,GAAG,QAAQ,KAAK,mBAAmB,OAAO,iBAAiB,EAAE;AAAA,IACpE,QAAQ;AAAA,IACR,QAAQ;AAAA,EACV,CAAC,GAGK,iBAAiB,IAAI,QAAmB,CAAC,YAAY;AACzD,eAAW,MAAM,QAAQ,SAAS,GAAG,gBAAgB;AAAA,EACvD,CAAC,GAEK,SAAS,MAAM,QAAQ,KAAK,CAAC,KAAK,QAAQ,cAAc,CAAC;AAE/D,MAAI,WAAW;AACb,mBAAQ,KAAK;AAAA,oCAAuC,GACpD,KAAK,KAAK,SAAS,GACZ;AAGT,QAAM,WAAW;AAEjB,SACE,QAAQ,KADN,aAAa,IACF;AAAA,qBAEA;AAAA,+BAAkC,QAAQ,EAFrB,GAK7B;AACT;",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
package/dist/detox.mjs CHANGED
@@ -3,7 +3,8 @@ import { DETOX_SERVER_PORT } from "./constants.mjs";
3
3
  function parseDetoxArgs(platform) {
4
4
  const defaultConfig = platform === "ios" ? "ios.sim.debug" : "android.emu.ci.debug",
5
5
  {
6
- values
6
+ values,
7
+ positionals
7
8
  } = parseArgs({
8
9
  options: {
9
10
  config: {
@@ -30,7 +31,8 @@ function parseDetoxArgs(platform) {
30
31
  type: "string",
31
32
  default: "1"
32
33
  }
33
- }
34
+ },
35
+ allowPositionals: !0
34
36
  }),
35
37
  retriesNum = Number.parseInt(values.retries, 10);
36
38
  (Number.isNaN(retriesNum) || retriesNum < 0) && (console.error("Error: retries must be a non-negative integer"), process.exit(1));
@@ -41,14 +43,15 @@ function parseDetoxArgs(platform) {
41
43
  headless: values.headless,
42
44
  recordLogs: values["record-logs"],
43
45
  retries: retriesNum,
44
- workers: workersNum
46
+ workers: workersNum,
47
+ testFiles: positionals.length > 0 ? positionals : void 0
45
48
  };
46
49
  }
47
50
  function buildDetoxArgs(options) {
48
51
  const args = ["detox", "test", "--configuration", options.config, "--record-logs", options.recordLogs, "--retries", String(options.retries),
49
52
  // force jest to exit after tests complete (prevents hanging on open handles)
50
53
  "--forceExit"];
51
- return options.headless && args.push("--headless"), options.workers && options.workers > 1 && args.push("--workers", String(options.workers)), args;
54
+ return options.headless && args.push("--headless"), options.workers && options.workers > 1 && args.push("--workers", String(options.workers)), options.testFiles && options.testFiles.length > 0 && args.push(...options.testFiles), args;
52
55
  }
53
56
  const DETOX_TIMEOUT_MS = 2700 * 1e3;
54
57
  async function resetDetoxLockFile() {
@@ -1 +1 @@
1
- {"version":3,"names":["parseArgs","DETOX_SERVER_PORT","parseDetoxArgs","platform","defaultConfig","values","options","config","type","default","process","cwd","headless","retries","workers","retriesNum","Number","parseInt","isNaN","console","error","exit","workersNum","projectRoot","recordLogs","buildDetoxArgs","args","String","push","DETOX_TIMEOUT_MS","resetDetoxLockFile","info","Bun","spawn","stdout","stderr","exited","runDetoxTests","detoxArgs","join","proc","env","timeoutPromise","Promise","resolve","setTimeout","result","race","kill","exitCode"],"sources":["../src/detox.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["parseArgs","DETOX_SERVER_PORT","parseDetoxArgs","platform","defaultConfig","values","positionals","options","config","type","default","process","cwd","headless","retries","workers","allowPositionals","retriesNum","Number","parseInt","isNaN","console","error","exit","workersNum","projectRoot","recordLogs","testFiles","length","buildDetoxArgs","args","String","push","DETOX_TIMEOUT_MS","resetDetoxLockFile","info","Bun","spawn","stdout","stderr","exited","runDetoxTests","detoxArgs","join","proc","env","timeoutPromise","Promise","resolve","setTimeout","result","race","kill","exitCode"],"sources":["../src/detox.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tamagui/native-ci",
3
- "version": "2.0.0-rc.11",
3
+ "version": "2.0.0-rc.12",
4
4
  "description": "Native CI/CD helpers for React Native apps with Expo - fingerprinting, caching, and build optimization",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -41,7 +41,7 @@
41
41
  "@expo/fingerprint": "^0.15.3"
42
42
  },
43
43
  "devDependencies": {
44
- "@tamagui/build": "2.0.0-rc.11",
44
+ "@tamagui/build": "2.0.0-rc.12",
45
45
  "@types/bun": "^1.1.0",
46
46
  "@types/node": "^22.1.0"
47
47
  },
package/src/detox.ts CHANGED
@@ -21,6 +21,8 @@ export interface DetoxRunnerOptions {
21
21
  headless?: boolean
22
22
  /** Number of parallel workers (default: 1) */
23
23
  workers?: number
24
+ /** Specific test files to run (passed as positional args to detox) */
25
+ testFiles?: string[]
24
26
  }
25
27
 
26
28
  /**
@@ -29,7 +31,7 @@ export interface DetoxRunnerOptions {
29
31
  export function parseDetoxArgs(platform: Platform) {
30
32
  const defaultConfig = platform === 'ios' ? 'ios.sim.debug' : 'android.emu.ci.debug'
31
33
 
32
- const { values } = parseArgs({
34
+ const { values, positionals } = parseArgs({
33
35
  options: {
34
36
  config: { type: 'string', default: defaultConfig },
35
37
  'project-root': { type: 'string', default: process.cwd() },
@@ -38,6 +40,7 @@ export function parseDetoxArgs(platform: Platform) {
38
40
  retries: { type: 'string', default: '0' },
39
41
  workers: { type: 'string', default: '1' },
40
42
  },
43
+ allowPositionals: true,
41
44
  })
42
45
 
43
46
  // Validate and convert retries to number
@@ -61,6 +64,7 @@ export function parseDetoxArgs(platform: Platform) {
61
64
  recordLogs: values['record-logs']!,
62
65
  retries: retriesNum,
63
66
  workers: workersNum,
67
+ testFiles: positionals.length > 0 ? positionals : undefined,
64
68
  }
65
69
  }
66
70
 
@@ -90,6 +94,11 @@ export function buildDetoxArgs(options: DetoxRunnerOptions): string[] {
90
94
  args.push('--workers', String(options.workers))
91
95
  }
92
96
 
97
+ // append specific test files if provided (for CI sharding)
98
+ if (options.testFiles && options.testFiles.length > 0) {
99
+ args.push(...options.testFiles)
100
+ }
101
+
93
102
  return args
94
103
  }
95
104
 
@@ -43,6 +43,7 @@ const exitCode = await withMetro('android', async () => {
43
43
  recordLogs: options.recordLogs,
44
44
  retries: options.retries,
45
45
  headless: options.headless,
46
+ testFiles: options.testFiles,
46
47
  })
47
48
  })
48
49
 
@@ -38,6 +38,7 @@ const exitCode = await withMetro('ios', async () => {
38
38
  recordLogs: options.recordLogs,
39
39
  retries: options.retries,
40
40
  workers: options.workers,
41
+ testFiles: options.testFiles,
41
42
  })
42
43
  })
43
44
 
package/types/detox.d.ts CHANGED
@@ -17,6 +17,8 @@ export interface DetoxRunnerOptions {
17
17
  headless?: boolean;
18
18
  /** Number of parallel workers (default: 1) */
19
19
  workers?: number;
20
+ /** Specific test files to run (passed as positional args to detox) */
21
+ testFiles?: string[];
20
22
  }
21
23
  /**
22
24
  * Parse common CLI arguments for Detox runners
@@ -28,6 +30,7 @@ export declare function parseDetoxArgs(platform: Platform): {
28
30
  recordLogs: string;
29
31
  retries: number;
30
32
  workers: number;
33
+ testFiles: string[] | undefined;
31
34
  };
32
35
  /**
33
36
  * Build Detox CLI command arguments
@@ -1 +1 @@
1
- {"version":3,"file":"detox.d.ts","sourceRoot":"","sources":["../src/detox.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAG3C,MAAM,WAAW,kBAAkB;IACjC,+BAA+B;IAC/B,MAAM,EAAE,MAAM,CAAA;IACd,6BAA6B;IAC7B,WAAW,EAAE,MAAM,CAAA;IACnB,2CAA2C;IAC3C,UAAU,EAAE,MAAM,CAAA;IAClB,wCAAwC;IACxC,OAAO,EAAE,MAAM,CAAA;IACf,0CAA0C;IAC1C,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,8CAA8C;IAC9C,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,QAAQ;;;;;;;EAoChD;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,kBAAkB,GAAG,MAAM,EAAE,CAwBpE;AAKD;;;GAGG;AACH,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC,CAOxD;AAED;;;;GAIG;AACH,wBAAsB,aAAa,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC,CAwChF"}
1
+ {"version":3,"file":"detox.d.ts","sourceRoot":"","sources":["../src/detox.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAG3C,MAAM,WAAW,kBAAkB;IACjC,+BAA+B;IAC/B,MAAM,EAAE,MAAM,CAAA;IACd,6BAA6B;IAC7B,WAAW,EAAE,MAAM,CAAA;IACnB,2CAA2C;IAC3C,UAAU,EAAE,MAAM,CAAA;IAClB,wCAAwC;IACxC,OAAO,EAAE,MAAM,CAAA;IACf,0CAA0C;IAC1C,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,8CAA8C;IAC9C,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,sEAAsE;IACtE,SAAS,CAAC,EAAE,MAAM,EAAE,CAAA;CACrB;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,QAAQ;;;;;;;;EAsChD;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,kBAAkB,GAAG,MAAM,EAAE,CA6BpE;AAKD;;;GAGG;AACH,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC,CAOxD;AAED;;;;GAIG;AACH,wBAAsB,aAAa,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC,CAwChF"}