appium-xcuitest-driver 11.0.2 → 11.0.3

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
@@ -1,3 +1,9 @@
1
+ ## [11.0.3](https://github.com/appium/appium-xcuitest-driver/compare/v11.0.2...v11.0.3) (2026-04-29)
2
+
3
+ ### Bug Fixes
4
+
5
+ * Log a warning instead of throwing an error on attachment deletion ([#2822](https://github.com/appium/appium-xcuitest-driver/issues/2822)) ([5a8ffd7](https://github.com/appium/appium-xcuitest-driver/commit/5a8ffd7e1e67432110b14e6efc17699b1f787e53))
6
+
1
7
  ## [11.0.2](https://github.com/appium/appium-xcuitest-driver/compare/v11.0.1...v11.0.2) (2026-04-29)
2
8
 
3
9
  ### Bug Fixes
@@ -1 +1 @@
1
- {"version":3,"file":"xctest-record-screen.d.ts","sourceRoot":"","sources":["../../../lib/commands/xctest-record-screen.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,WAAW,CAAC;AAG9C,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,eAAe,CAAC;AAC/C,OAAO,KAAK,EAAC,yBAAyB,EAAE,qBAAqB,EAAC,MAAM,SAAS,CAAC;AAgE9E;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,gCAAgC,CACpD,IAAI,EAAE,cAAc,EACpB,GAAG,CAAC,EAAE,MAAM,EACZ,KAAK,CAAC,EAAE,MAAM,GACb,OAAO,CAAC,yBAAyB,CAAC,CA2BpC;AAED;;;GAGG;AACH,wBAAsB,kCAAkC,CACtD,IAAI,EAAE,cAAc,GACnB,OAAO,CAAC,yBAAyB,GAAG,IAAI,CAAC,CAE3C;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,wBAAsB,+BAA+B,CACnD,IAAI,EAAE,cAAc,EACpB,UAAU,CAAC,EAAE,MAAM,EACnB,IAAI,CAAC,EAAE,MAAM,EACb,IAAI,CAAC,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,WAAW,EACrB,aAAa,CAAC,EAAE,MAAM,EACtB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,EAClD,MAAM,GAAE,KAAK,GAAG,MAAM,GAAG,OAAe,GACvC,OAAO,CAAC,qBAAqB,CAAC,CAqEhC"}
1
+ {"version":3,"file":"xctest-record-screen.d.ts","sourceRoot":"","sources":["../../../lib/commands/xctest-record-screen.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,WAAW,CAAC;AAG9C,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,eAAe,CAAC;AAC/C,OAAO,KAAK,EAAC,yBAAyB,EAAE,qBAAqB,EAAC,MAAM,SAAS,CAAC;AAiE9E;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,gCAAgC,CACpD,IAAI,EAAE,cAAc,EACpB,GAAG,CAAC,EAAE,MAAM,EACZ,KAAK,CAAC,EAAE,MAAM,GACb,OAAO,CAAC,yBAAyB,CAAC,CA2BpC;AAED;;;GAGG;AACH,wBAAsB,kCAAkC,CACtD,IAAI,EAAE,cAAc,GACnB,OAAO,CAAC,yBAAyB,GAAG,IAAI,CAAC,CAE3C;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,wBAAsB,+BAA+B,CACnD,IAAI,EAAE,cAAc,EACpB,UAAU,CAAC,EAAE,MAAM,EACnB,IAAI,CAAC,EAAE,MAAM,EACb,IAAI,CAAC,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,WAAW,EACrB,aAAa,CAAC,EAAE,MAAM,EACtB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,EAClD,MAAM,GAAE,KAAK,GAAG,MAAM,GAAG,OAAe,GACvC,OAAO,CAAC,qBAAqB,CAAC,CAiFhC"}
@@ -11,6 +11,7 @@ const support_1 = require("appium/support");
11
11
  const utils_1 = require("../utils");
12
12
  const node_path_1 = __importDefault(require("node:path"));
13
13
  const xctest_attachment_deletion_client_1 = require("../device/xctest-attachment-deletion-client");
14
+ const remotexpc_utils_1 = require("../device/remotexpc-utils");
14
15
  const MOV_EXT = '.mov';
15
16
  /** Insecure feature when real-device XCTest recording is used without RemoteXPC attachment deletion. */
16
17
  const XCTEST_SCREEN_RECORD_FEATURE = 'xctest_screen_record';
@@ -185,10 +186,16 @@ async function mobileStopXctestScreenRecording(remotePath, user, pass, headers,
185
186
  }
186
187
  catch (deleteErr) {
187
188
  if (encodeOrUploadError === undefined) {
188
- attachmentDeleteError = deleteErr;
189
+ if (this.isFeatureEnabled(XCTEST_SCREEN_RECORD_FEATURE) &&
190
+ (0, remotexpc_utils_1.isTunnelAvailabilityError)(deleteErr)) {
191
+ this.log.warn(`Could not delete XCTest attachment on device: ${deleteErr?.message ?? deleteErr}`);
192
+ }
193
+ else {
194
+ attachmentDeleteError = deleteErr;
195
+ }
189
196
  }
190
197
  else {
191
- this.log.warn(`Could not delete XCTest attachment on device after stop (encode/upload had already failed): ${deleteErr?.message ?? deleteErr}`);
198
+ this.log.warn(`Could not delete XCTest attachment on device (encode/upload had already failed): ${deleteErr?.message ?? deleteErr}`);
192
199
  }
193
200
  }
194
201
  }
@@ -1 +1 @@
1
- {"version":3,"file":"xctest-record-screen.js","sourceRoot":"","sources":["../../../lib/commands/xctest-record-screen.ts"],"names":[],"mappings":";;;;;AAyFA,4EA+BC;AAMD,gFAIC;AAwCD,0EA8EC;AAxPD,oDAAuB;AACvB,4CAAwC;AACxC,oCAA8C;AAC9C,0DAA6B;AAM7B,mGAA2F;AAE3F,MAAM,OAAO,GAAG,MAAM,CAAC;AACvB,wGAAwG;AACxG,MAAM,4BAA4B,GAAG,sBAAsB,CAAC;AAC5D,MAAM,iBAAiB,GAAG,wBAAwB,CAAC;AACnD,MAAM,WAAW,GAAG,kBAAkB,CAAC;AACvC,MAAM,QAAQ,GAAG,QAAQ,CAAC;AAC1B,MAAM,YAAY,GAAG,aAAa,CAAC;AAEnC,KAAK,UAAU,6BAA6B,CAAuB,IAAY;IAC7E,MAAM,MAAM,GAAG,IAAI,CAAC,MAAmB,CAAC;IACxC,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;IACjC,oCAAoC;IACpC,+MAA+M;IAC/M,MAAM,kBAAkB,GAAG,mBAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,YAAY,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAC1F,MAAM,UAAU,GAAG,MAAM,YAAE,CAAC,IAAI,CAAC,iBAAiB,IAAI,EAAE,EAAE;QACxD,GAAG,EAAE,kBAAkB;QACvB,QAAQ,EAAE,IAAI;KACf,CAAC,CAAC;IACH,IAAI,gBAAC,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CACb,2DAA2D,IAAI,uBAAuB,MAAM,CAAC,IAAI,EAAE,CACpG,CAAC;IACJ,CAAC;IACD,MAAM,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;IAChC,MAAM,EAAC,IAAI,EAAC,GAAG,MAAM,YAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACxC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,yBAAyB,SAAS,MAAM,cAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC3F,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,KAAK,UAAU,8BAA8B,CAAuB,IAAY;IAC9E,MAAM,MAAM,GAAG,IAAI,CAAC,MAAoB,CAAC;IAEzC,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,WAAW,EAAE,iBAAiB,EAAE;QACjF,QAAQ,EAAE,QAAQ;QAClB,YAAY,EAAE,YAAY;KAC3B,CAAC,CAAC;IACH,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CACb,2DAA2D,IAAI,oBAAoB,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CACpG,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;IACzD,CAAC;IACD,MAAM,SAAS,GAAG,mBAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,GAAG,OAAO,EAAE,CAAC,CAAC;IACnE,MAAM,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,YAAY,IAAI,IAAI,EAAE,EAAE,SAAS,EAAE;QACpE,QAAQ,EAAE,QAAQ;QAClB,gBAAgB,EAAE,iBAAiB;QACnC,UAAU,EAAE,WAAW;KACxB,CAAC,CAAC;IACH,MAAM,EAAC,IAAI,EAAC,GAAG,MAAM,YAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACxC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,wBAAwB,SAAS,MAAM,cAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC1F,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,KAAK,UAAU,6BAA6B,CAAuB,IAAY;IAC7E,OAAO,IAAI,CAAC,YAAY,EAAE;QACxB,CAAC,CAAC,MAAM,8BAA8B,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC;QACvD,CAAC,CAAC,MAAM,6BAA6B,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AAC3D,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACI,KAAK,UAAU,gCAAgC,CAEpD,GAAY,EACZ,KAAc;IAEd,IAAI,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC;QACxB,MAAM,kBAAkB,GAAG,MAAM,kEAA8B,CAAC,mBAAmB,CACjF,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,EACpB,IAAI,CAAC,IAAI,CAAC,eAAe,IAAI,EAAE,EAC/B,SAAS,EACT,IAAI,CAAC,GAAG,CACT,CAAC;QACF,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACxB,IAAI,CAAC,oBAAoB,CAAC,4BAA4B,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC;IAED,MAAM,IAAI,GAAmC,EAAE,CAAC;IAChD,IAAI,gBAAC,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;QACvB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IACD,IAAI,gBAAC,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC;QACrB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACjB,CAAC;IACD,MAAM,QAAQ,GAAG,CAAC,MAAM,IAAI,CAAC,YAAY,CACvC,kBAAkB,EAClB,MAAM,EACN,IAAI,CACL,CAA8B,CAAC;IAChC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,mCAAmC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC7E,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;GAGG;AACI,KAAK,UAAU,kCAAkC;IAGtD,OAAO,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,KAAK,CAAC,CAAqC,CAAC;AAC5F,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACI,KAAK,UAAU,+BAA+B,CAEnD,UAAmB,EACnB,IAAa,EACb,IAAa,EACb,OAAqB,EACrB,aAAsB,EACtB,UAAkD,EAClD,SAAmC,KAAK;IAExC,MAAM,mBAAmB,GAAG,MAAM,IAAI,CAAC,kCAAkC,EAAE,CAAC;IAC5E,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;IACxF,CAAC;IAED,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,yCAAyC,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC;IAC/F,MAAM,IAAI,CAAC,YAAY,CAAC,iBAAiB,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;IACvD,MAAM,SAAS,GAAG,MAAM,6BAA6B,CAAC,IAAI,CAAC,IAAI,EAAE,mBAAmB,CAAC,IAAI,CAAC,CAAC;IAC3F,MAAM,MAAM,GAA0B;QACpC,GAAG,mBAAmB;QACtB,OAAO,EAAE,EAAE,EAAE,oBAAoB;KAClC,CAAC;IACF,IAAI,mBAA4B,CAAC;IACjC,IAAI,qBAA8B,CAAC;IACnC,IAAI,CAAC;QACH,MAAM,CAAC,OAAO,GAAG,MAAM,IAAA,4BAAoB,EAAC,SAAS,EAAE,UAAU,EAAE;YACjE,IAAI;YACJ,IAAI;YACJ,OAAO;YACP,aAAa;YACb,UAAU;YACV,MAAM;SACP,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,mBAAmB,GAAG,GAAG,CAAC;IAC5B,CAAC;YAAS,CAAC;QACT,MAAM,YAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC3B,IAAI,IAAI,CAAC,YAAY,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YAC1C,IAAI,CAAC;gBACH,MAAM,SAAS,GAAG,MAAM,kEAA8B,CAAC,mBAAmB,CACxE,IAAI,CAAC,IAAI,CAAC,IAAI,EACd,IAAI,CAAC,IAAI,CAAC,eAAe,IAAI,EAAE,EAC/B,SAAS,EACT,IAAI,CAAC,GAAG,CACT,CAAC;gBACF,IAAI,SAAS,EAAE,CAAC;oBACd,MAAM,cAAc,GAAG,MAAM,kEAA8B,CAAC,MAAM,CAChE,IAAI,CAAC,IAAI,CAAC,IAAI,EACd,IAAI,CAAC,IAAI,CAAC,eAAe,IAAI,EAAE,CAChC,CAAC;oBACF,MAAM,cAAc,CAAC,uBAAuB,CAAC,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC3E,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,GAAG,CAAC,KAAK,CACZ,mGAAmG,CACpG,CAAC;gBACJ,CAAC;YACH,CAAC;YAAC,OAAO,SAAc,EAAE,CAAC;gBACxB,IAAI,mBAAmB,KAAK,SAAS,EAAE,CAAC;oBACtC,qBAAqB,GAAG,SAAS,CAAC;gBACpC,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,GAAG,CAAC,IAAI,CACX,+FACE,SAAS,EAAE,OAAO,IAAI,SACxB,EAAE,CACH,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,mBAAmB,KAAK,SAAS,EAAE,CAAC;QACtC,MAAM,mBAAmB,CAAC;IAC5B,CAAC;IACD,IAAI,qBAAqB,KAAK,SAAS,EAAE,CAAC;QACxC,MAAM,qBAAqB,CAAC;IAC9B,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"xctest-record-screen.js","sourceRoot":"","sources":["../../../lib/commands/xctest-record-screen.ts"],"names":[],"mappings":";;;;;AA0FA,4EA+BC;AAMD,gFAIC;AAwCD,0EA0FC;AArQD,oDAAuB;AACvB,4CAAwC;AACxC,oCAA8C;AAC9C,0DAA6B;AAM7B,mGAA2F;AAC3F,+DAAoE;AAEpE,MAAM,OAAO,GAAG,MAAM,CAAC;AACvB,wGAAwG;AACxG,MAAM,4BAA4B,GAAG,sBAAsB,CAAC;AAC5D,MAAM,iBAAiB,GAAG,wBAAwB,CAAC;AACnD,MAAM,WAAW,GAAG,kBAAkB,CAAC;AACvC,MAAM,QAAQ,GAAG,QAAQ,CAAC;AAC1B,MAAM,YAAY,GAAG,aAAa,CAAC;AAEnC,KAAK,UAAU,6BAA6B,CAAuB,IAAY;IAC7E,MAAM,MAAM,GAAG,IAAI,CAAC,MAAmB,CAAC;IACxC,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;IACjC,oCAAoC;IACpC,+MAA+M;IAC/M,MAAM,kBAAkB,GAAG,mBAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,YAAY,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAC1F,MAAM,UAAU,GAAG,MAAM,YAAE,CAAC,IAAI,CAAC,iBAAiB,IAAI,EAAE,EAAE;QACxD,GAAG,EAAE,kBAAkB;QACvB,QAAQ,EAAE,IAAI;KACf,CAAC,CAAC;IACH,IAAI,gBAAC,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CACb,2DAA2D,IAAI,uBAAuB,MAAM,CAAC,IAAI,EAAE,CACpG,CAAC;IACJ,CAAC;IACD,MAAM,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;IAChC,MAAM,EAAC,IAAI,EAAC,GAAG,MAAM,YAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACxC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,yBAAyB,SAAS,MAAM,cAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC3F,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,KAAK,UAAU,8BAA8B,CAAuB,IAAY;IAC9E,MAAM,MAAM,GAAG,IAAI,CAAC,MAAoB,CAAC;IAEzC,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,WAAW,EAAE,iBAAiB,EAAE;QACjF,QAAQ,EAAE,QAAQ;QAClB,YAAY,EAAE,YAAY;KAC3B,CAAC,CAAC;IACH,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CACb,2DAA2D,IAAI,oBAAoB,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CACpG,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;IACzD,CAAC;IACD,MAAM,SAAS,GAAG,mBAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,GAAG,OAAO,EAAE,CAAC,CAAC;IACnE,MAAM,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,YAAY,IAAI,IAAI,EAAE,EAAE,SAAS,EAAE;QACpE,QAAQ,EAAE,QAAQ;QAClB,gBAAgB,EAAE,iBAAiB;QACnC,UAAU,EAAE,WAAW;KACxB,CAAC,CAAC;IACH,MAAM,EAAC,IAAI,EAAC,GAAG,MAAM,YAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACxC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,wBAAwB,SAAS,MAAM,cAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC1F,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,KAAK,UAAU,6BAA6B,CAAuB,IAAY;IAC7E,OAAO,IAAI,CAAC,YAAY,EAAE;QACxB,CAAC,CAAC,MAAM,8BAA8B,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC;QACvD,CAAC,CAAC,MAAM,6BAA6B,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AAC3D,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACI,KAAK,UAAU,gCAAgC,CAEpD,GAAY,EACZ,KAAc;IAEd,IAAI,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC;QACxB,MAAM,kBAAkB,GAAG,MAAM,kEAA8B,CAAC,mBAAmB,CACjF,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,EACpB,IAAI,CAAC,IAAI,CAAC,eAAe,IAAI,EAAE,EAC/B,SAAS,EACT,IAAI,CAAC,GAAG,CACT,CAAC;QACF,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACxB,IAAI,CAAC,oBAAoB,CAAC,4BAA4B,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC;IAED,MAAM,IAAI,GAAmC,EAAE,CAAC;IAChD,IAAI,gBAAC,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;QACvB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IACD,IAAI,gBAAC,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC;QACrB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACjB,CAAC;IACD,MAAM,QAAQ,GAAG,CAAC,MAAM,IAAI,CAAC,YAAY,CACvC,kBAAkB,EAClB,MAAM,EACN,IAAI,CACL,CAA8B,CAAC;IAChC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,mCAAmC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC7E,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;GAGG;AACI,KAAK,UAAU,kCAAkC;IAGtD,OAAO,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,KAAK,CAAC,CAAqC,CAAC;AAC5F,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACI,KAAK,UAAU,+BAA+B,CAEnD,UAAmB,EACnB,IAAa,EACb,IAAa,EACb,OAAqB,EACrB,aAAsB,EACtB,UAAkD,EAClD,SAAmC,KAAK;IAExC,MAAM,mBAAmB,GAAG,MAAM,IAAI,CAAC,kCAAkC,EAAE,CAAC;IAC5E,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;IACxF,CAAC;IAED,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,yCAAyC,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC;IAC/F,MAAM,IAAI,CAAC,YAAY,CAAC,iBAAiB,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;IACvD,MAAM,SAAS,GAAW,MAAM,6BAA6B,CAAC,IAAI,CAChE,IAAI,EACJ,mBAAmB,CAAC,IAAI,CACzB,CAAC;IACF,MAAM,MAAM,GAA0B;QACpC,GAAG,mBAAmB;QACtB,OAAO,EAAE,EAAE,EAAE,oBAAoB;KAClC,CAAC;IACF,IAAI,mBAA4B,CAAC;IACjC,IAAI,qBAA8B,CAAC;IACnC,IAAI,CAAC;QACH,MAAM,CAAC,OAAO,GAAG,MAAM,IAAA,4BAAoB,EAAC,SAAS,EAAE,UAAU,EAAE;YACjE,IAAI;YACJ,IAAI;YACJ,OAAO;YACP,aAAa;YACb,UAAU;YACV,MAAM;SACP,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,mBAAmB,GAAG,GAAG,CAAC;IAC5B,CAAC;YAAS,CAAC;QACT,MAAM,YAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC3B,IAAI,IAAI,CAAC,YAAY,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YAC1C,IAAI,CAAC;gBACH,MAAM,SAAS,GAAG,MAAM,kEAA8B,CAAC,mBAAmB,CACxE,IAAI,CAAC,IAAI,CAAC,IAAI,EACd,IAAI,CAAC,IAAI,CAAC,eAAe,IAAI,EAAE,EAC/B,SAAS,EACT,IAAI,CAAC,GAAG,CACT,CAAC;gBACF,IAAI,SAAS,EAAE,CAAC;oBACd,MAAM,cAAc,GAAG,MAAM,kEAA8B,CAAC,MAAM,CAChE,IAAI,CAAC,IAAI,CAAC,IAAI,EACd,IAAI,CAAC,IAAI,CAAC,eAAe,IAAI,EAAE,CAChC,CAAC;oBACF,MAAM,cAAc,CAAC,uBAAuB,CAAC,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC3E,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,GAAG,CAAC,KAAK,CACZ,mGAAmG,CACpG,CAAC;gBACJ,CAAC;YACH,CAAC;YAAC,OAAO,SAAc,EAAE,CAAC;gBACxB,IAAI,mBAAmB,KAAK,SAAS,EAAE,CAAC;oBACtC,IACE,IAAI,CAAC,gBAAgB,CAAC,4BAA4B,CAAC;wBACnD,IAAA,2CAAyB,EAAC,SAAS,CAAC,EACpC,CAAC;wBACD,IAAI,CAAC,GAAG,CAAC,IAAI,CACX,iDAAiD,SAAS,EAAE,OAAO,IAAI,SAAS,EAAE,CACnF,CAAC;oBACJ,CAAC;yBAAM,CAAC;wBACN,qBAAqB,GAAG,SAAS,CAAC;oBACpC,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,GAAG,CAAC,IAAI,CACX,oFACE,SAAS,EAAE,OAAO,IAAI,SACxB,EAAE,CACH,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,mBAAmB,KAAK,SAAS,EAAE,CAAC;QACtC,MAAM,mBAAmB,CAAC;IAC5B,CAAC;IACD,IAAI,qBAAqB,KAAK,SAAS,EAAE,CAAC;QACxC,MAAM,qBAAqB,CAAC;IAC9B,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -2,6 +2,10 @@ import type { AppiumLogger } from '@appium/types';
2
2
  export type RemoteXPCEsmModule = typeof import('appium-ios-remotexpc');
3
3
  export type RemoteXPCServices = typeof import('appium-ios-remotexpc').Services;
4
4
  export type RemoteXPCTestRunner = RemoteXPCEsmModule['XCTestRunner'];
5
+ /**
6
+ * Whether the given error means RemoteXPC tunnel infrastructure is unavailable.
7
+ */
8
+ export declare function isTunnelAvailabilityError(err: unknown): boolean;
5
9
  /**
6
10
  * Get the RemoteXPC Services module dynamically
7
11
  *
@@ -1 +1 @@
1
- {"version":3,"file":"remotexpc-utils.d.ts","sourceRoot":"","sources":["../../../lib/device/remotexpc-utils.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,eAAe,CAAC;AAGhD,MAAM,MAAM,kBAAkB,GAAG,cAAc,sBAAsB,CAAC,CAAC;AACvE,MAAM,MAAM,iBAAiB,GAAG,cAAc,sBAAsB,EAAE,QAAQ,CAAC;AAC/E,MAAM,MAAM,mBAAmB,GAAG,kBAAkB,CAAC,cAAc,CAAC,CAAC;AAyErE;;;;;;;;;GASG;AACH,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,iBAAiB,CAAC,CAyBvE;AAED;;;;;;;GAOG;AACH,wBAAsB,uBAAuB,IAAI,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAkCjF;AAED;;;GAGG;AACH,wBAAgB,oCAAoC,IAAI,OAAO,CAE9D;AAED;;;;GAIG;AACH,wBAAgB,mCAAmC,IAAI,KAAK,GAAG,IAAI,CAElE;AAED;;;GAGG;AACH,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAGhF;AAED;;;;;;;GAOG;AACH,wBAAsB,6BAA6B,CACjD,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,YAAY,GAChB,OAAO,CAAC;IAAC,SAAS,EAAE,kBAAkB,CAAC;IAAC,aAAa,EAAE,OAAO,CAAA;CAAC,GAAG,IAAI,CAAC,CAOzE;AAED;;;;;GAKG;AACH,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,mBAAmB,CAAC,CA6BzE"}
1
+ {"version":3,"file":"remotexpc-utils.d.ts","sourceRoot":"","sources":["../../../lib/device/remotexpc-utils.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,eAAe,CAAC;AAGhD,MAAM,MAAM,kBAAkB,GAAG,cAAc,sBAAsB,CAAC,CAAC;AACvE,MAAM,MAAM,iBAAiB,GAAG,cAAc,sBAAsB,EAAE,QAAQ,CAAC;AAC/E,MAAM,MAAM,mBAAmB,GAAG,kBAAkB,CAAC,cAAc,CAAC,CAAC;AAErE;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAM/D;AAyED;;;;;;;;;GASG;AACH,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,iBAAiB,CAAC,CAyBvE;AAED;;;;;;;GAOG;AACH,wBAAsB,uBAAuB,IAAI,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAkCjF;AAED;;;GAGG;AACH,wBAAgB,oCAAoC,IAAI,OAAO,CAE9D;AAED;;;;GAIG;AACH,wBAAgB,mCAAmC,IAAI,KAAK,GAAG,IAAI,CAElE;AAED;;;GAGG;AACH,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAGhF;AAED;;;;;;;GAOG;AACH,wBAAsB,6BAA6B,CACjD,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,YAAY,GAChB,OAAO,CAAC;IAAC,SAAS,EAAE,kBAAkB,CAAC;IAAC,aAAa,EAAE,OAAO,CAAA;CAAC,GAAG,IAAI,CAAC,CAOzE;AAED;;;;;GAKG;AACH,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,mBAAmB,CAAC,CA6BzE"}
@@ -3,6 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.isTunnelAvailabilityError = isTunnelAvailabilityError;
6
7
  exports.getRemoteXPCServices = getRemoteXPCServices;
7
8
  exports.tryGetRemoteXPCServices = tryGetRemoteXPCServices;
8
9
  exports.isRemoteXPCOptionalDependencyMissing = isRemoteXPCOptionalDependencyMissing;
@@ -14,6 +15,16 @@ const support_1 = require("appium/support");
14
15
  const node_path_1 = __importDefault(require("node:path"));
15
16
  const node_fs_1 = require("node:fs");
16
17
  const usbmux_utils_1 = require("./usbmux-utils");
18
+ /**
19
+ * Whether the given error means RemoteXPC tunnel infrastructure is unavailable.
20
+ */
21
+ function isTunnelAvailabilityError(err) {
22
+ if (!err) {
23
+ return false;
24
+ }
25
+ const name = err?.name ?? err?.constructor?.name;
26
+ return name === 'TunnelAvailabilityError';
27
+ }
17
28
  /**
18
29
  * Full ESM namespace after a successful `import('appium-ios-remotexpc')` (e.g. **XCTestAttachment**).
19
30
  * Set together with {@link cachedRemoteXPCServices}.
@@ -1 +1 @@
1
- {"version":3,"file":"remotexpc-utils.js","sourceRoot":"","sources":["../../../lib/device/remotexpc-utils.ts"],"names":[],"mappings":";;;;;AA2FA,oDAyBC;AAUD,0DAkCC;AAMD,oFAEC;AAOD,kFAEC;AAMD,sDAGC;AAUD,sEAUC;AAQD,oDA6BC;AAnPD,4CAAoC;AACpC,0DAA6B;AAC7B,qCAAqC;AAErC,iDAAsD;AAMtD;;;GAGG;AACH,IAAI,yBAAyB,GAA8B,IAAI,CAAC;AAEhE;;GAEG;AACH,IAAI,uBAAuB,GAA6B,IAAI,CAAC;AAE7D;;;GAGG;AACH,IAAI,0BAA0B,GAAG,KAAK,CAAC;AAEvC,yFAAyF;AACzF,IAAI,wBAAwB,GAAiB,IAAI,CAAC;AAElD;;;GAGG;AACH,IAAI,8BAA8B,GAAiB,IAAI,CAAC;AAExD;;GAEG;AACH,IAAI,uBAAuB,GAA+B,IAAI,CAAC;AAE/D;;GAEG;AACH,MAAM,EAAC,UAAU,EAAE,gBAAgB,EAAC,GAAG,gBAAgB,EAAE,CAAC;AAE1D;;;GAGG;AACH,SAAS,uCAAuC,CAAC,GAAU;IACzD,MAAM,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC;IACxB,OAAO,CACL,CAAC,GAAG,CAAC,QAAQ,CAAC,oBAAoB,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC;QAC5E,CAAC,GAAG,CAAC,QAAQ,CAAC,qBAAqB,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC,CAC9E,CAAC;AACJ,CAAC;AAED,SAAS,yBAAyB,CAAC,GAAU;IAC3C,IAAI,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,CAAC;QAC/C,IAAI,YAAY,GACd,gDAAgD;YAChD,iEAAiE,CAAC;QAEpE,IAAI,UAAU,IAAI,gBAAgB,EAAE,CAAC;YACnC,YAAY;gBACV,iCAAiC;oBACjC,OAAO,UAAU,0CAA0C,gBAAgB,IAAI,CAAC;QACpF,CAAC;QAED,YAAY,IAAI,oBAAoB,GAAG,CAAC,OAAO,EAAE,CAAC;QAClD,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC;IAChC,CAAC;IAED,MAAM,IAAI,KAAK,CACb,gDAAgD;QAC9C,kEAAkE;QAClE,mBAAmB,GAAG,CAAC,OAAO,EAAE,CACnC,CAAC;AACJ,CAAC;AAED;;;;;;;;;GASG;AACI,KAAK,UAAU,oBAAoB;IACxC,IAAI,uBAAuB,EAAE,CAAC;QAC5B,IAAI,CAAC,yBAAyB,EAAE,CAAC;YAC/B,IAAI,CAAC;gBACH,yBAAyB,GAAG,CAAC,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAuB,CAAC;YAC3F,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,yBAAyB,CAAC,GAAY,CAAC,CAAC;YAC1C,CAAC;QACH,CAAC;QACD,8BAA8B,GAAG,IAAI,CAAC;QACtC,OAAO,uBAAuB,CAAC;IACjC,CAAC;IACD,IAAI,0BAA0B,IAAI,wBAAwB,EAAE,CAAC;QAC3D,yBAAyB,CAAC,wBAAwB,CAAC,CAAC;IACtD,CAAC;IAED,IAAI,CAAC;QACH,MAAM,eAAe,GAAG,CAAC,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAuB,CAAC;QACrF,yBAAyB,GAAG,eAAe,CAAC;QAC5C,uBAAuB,GAAG,eAAe,CAAC,QAAQ,CAAC;QACnD,8BAA8B,GAAG,IAAI,CAAC;QACtC,OAAO,uBAAuB,CAAC;IACjC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,yBAAyB,CAAC,GAAY,CAAC,CAAC;IAC1C,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACI,KAAK,UAAU,uBAAuB;IAC3C,IAAI,uBAAuB,EAAE,CAAC;QAC5B,IAAI,CAAC,yBAAyB,EAAE,CAAC;YAC/B,IAAI,CAAC;gBACH,yBAAyB,GAAG,CAAC,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAuB,CAAC;gBACzF,8BAA8B,GAAG,IAAI,CAAC;YACxC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,8BAA8B,GAAG,GAAY,CAAC;gBAC9C,sFAAsF;YACxF,CAAC;QACH,CAAC;aAAM,CAAC;YACN,8BAA8B,GAAG,IAAI,CAAC;QACxC,CAAC;QACD,OAAO,uBAAuB,CAAC;IACjC,CAAC;IACD,IAAI,0BAA0B,EAAE,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAC;QACH,MAAM,eAAe,GAAG,CAAC,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAuB,CAAC;QACrF,yBAAyB,GAAG,eAAe,CAAC;QAC5C,uBAAuB,GAAG,eAAe,CAAC,QAAQ,CAAC;QACnD,8BAA8B,GAAG,IAAI,CAAC;QACtC,OAAO,uBAAuB,CAAC;IACjC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,KAAK,GAAG,GAAY,CAAC;QAC3B,8BAA8B,GAAG,KAAK,CAAC;QACvC,IAAI,uCAAuC,CAAC,KAAK,CAAC,EAAE,CAAC;YACnD,wBAAwB,GAAG,KAAK,CAAC;YACjC,0BAA0B,GAAG,IAAI,CAAC;QACpC,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,SAAgB,oCAAoC;IAClD,OAAO,0BAA0B,CAAC;AACpC,CAAC;AAED;;;;GAIG;AACH,SAAgB,mCAAmC;IACjD,OAAO,8BAA8B,CAAC;AACxC,CAAC;AAED;;;GAGG;AACI,KAAK,UAAU,qBAAqB;IACzC,MAAM,uBAAuB,EAAE,CAAC;IAChC,OAAO,yBAAyB,CAAC;AACnC,CAAC;AAED;;;;;;;GAOG;AACI,KAAK,UAAU,6BAA6B,CACjD,IAAY,EACZ,GAAiB;IAEjB,MAAM,SAAS,GAAG,MAAM,qBAAqB,EAAE,CAAC;IAChD,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,aAAa,GAAG,MAAM,IAAA,qCAAsB,EAAC,SAAS,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;IACzE,OAAO,EAAC,SAAS,EAAE,aAAa,EAAC,CAAC;AACpC,CAAC;AAED;;;;;GAKG;AACI,KAAK,UAAU,oBAAoB;IACxC,IAAI,uBAAuB,EAAE,CAAC;QAC5B,OAAO,uBAAuB,CAAC;IACjC,CAAC;IAED,MAAM,oBAAoB,EAAE,CAAC;IAC7B,MAAM,eAAe,GAAG,yBAAyB,CAAC;IAClD,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CACb,kGAAkG,CACnG,CAAC;IACJ,CAAC;IACD,IAAI,CAAC;QACH,MAAM,iBAAiB,GAAG,eAAe,CAAC,YAAY,CAAC;QACvD,IAAI,OAAO,iBAAiB,KAAK,UAAU,EAAE,CAAC;YAC5C,MAAM,IAAI,KAAK,CACb,0DAA0D;gBACxD,4CAA4C,CAC/C,CAAC;QACJ,CAAC;QACD,uBAAuB,GAAG,iBAAiB,CAAC;QAC5C,OAAO,uBAAuB,CAAC;IACjC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,KAAK,GAAG,GAAY,CAAC;QAC3B,MAAM,IAAI,KAAK,CACb,2DAA2D;YACzD,mBAAmB,KAAK,CAAC,OAAO,EAAE,CACrC,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,SAAS,gBAAgB;IAIvB,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,cAAI,CAAC,iBAAiB,CAAC,wBAAwB,EAAE,UAAU,CAAC,CAAC;QAC1E,IAAI,IAAI,EAAE,CAAC;YACT,MAAM,eAAe,GAAG,mBAAI,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;YACxD,MAAM,kBAAkB,GAAG,IAAA,sBAAY,EAAC,eAAe,EAAE,MAAM,CAAC,CAAC;YACjE,IAAI,kBAAkB,EAAE,CAAC;gBACvB,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;gBACnD,OAAO;oBACL,UAAU,EAAE,IAAI;oBAChB,gBAAgB,EAAE,WAAW,CAAC,oBAAoB,EAAE,CAAC,sBAAsB,CAAC;iBAC7E,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,yCAAyC;IAC3C,CAAC;IAED,OAAO,EAAC,UAAU,EAAE,SAAS,EAAE,gBAAgB,EAAE,SAAS,EAAC,CAAC;AAC9D,CAAC"}
1
+ {"version":3,"file":"remotexpc-utils.js","sourceRoot":"","sources":["../../../lib/device/remotexpc-utils.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,7 @@ import type {RealDevice} from '../device/real-device-management';
8
8
  import type {HTTPHeaders} from '@appium/types';
9
9
  import type {XcTestScreenRecordingInfo, XcTestScreenRecording} from './types';
10
10
  import {XctestAttachmentDeletionClient} from '../device/xctest-attachment-deletion-client';
11
+ import {isTunnelAvailabilityError} from '../device/remotexpc-utils';
11
12
 
12
13
  const MOV_EXT = '.mov';
13
14
  /** Insecure feature when real-device XCTest recording is used without RemoteXPC attachment deletion. */
@@ -185,7 +186,10 @@ export async function mobileStopXctestScreenRecording(
185
186
 
186
187
  this.log.debug(`Stopping the active screen recording: ${JSON.stringify(screenRecordingInfo)}`);
187
188
  await this.proxyCommand('/wda/video/stop', 'POST', {});
188
- const videoPath = await retrieveXcTestScreenRecording.call(this, screenRecordingInfo.uuid);
189
+ const videoPath: string = await retrieveXcTestScreenRecording.call(
190
+ this,
191
+ screenRecordingInfo.uuid,
192
+ );
189
193
  const result: XcTestScreenRecording = {
190
194
  ...screenRecordingInfo,
191
195
  payload: '', // Will be set below
@@ -226,10 +230,19 @@ export async function mobileStopXctestScreenRecording(
226
230
  }
227
231
  } catch (deleteErr: any) {
228
232
  if (encodeOrUploadError === undefined) {
229
- attachmentDeleteError = deleteErr;
233
+ if (
234
+ this.isFeatureEnabled(XCTEST_SCREEN_RECORD_FEATURE) &&
235
+ isTunnelAvailabilityError(deleteErr)
236
+ ) {
237
+ this.log.warn(
238
+ `Could not delete XCTest attachment on device: ${deleteErr?.message ?? deleteErr}`,
239
+ );
240
+ } else {
241
+ attachmentDeleteError = deleteErr;
242
+ }
230
243
  } else {
231
244
  this.log.warn(
232
- `Could not delete XCTest attachment on device after stop (encode/upload had already failed): ${
245
+ `Could not delete XCTest attachment on device (encode/upload had already failed): ${
233
246
  deleteErr?.message ?? deleteErr
234
247
  }`,
235
248
  );
@@ -8,6 +8,17 @@ export type RemoteXPCEsmModule = typeof import('appium-ios-remotexpc');
8
8
  export type RemoteXPCServices = typeof import('appium-ios-remotexpc').Services;
9
9
  export type RemoteXPCTestRunner = RemoteXPCEsmModule['XCTestRunner'];
10
10
 
11
+ /**
12
+ * Whether the given error means RemoteXPC tunnel infrastructure is unavailable.
13
+ */
14
+ export function isTunnelAvailabilityError(err: unknown): boolean {
15
+ if (!err) {
16
+ return false;
17
+ }
18
+ const name = (err as any)?.name ?? (err as any)?.constructor?.name;
19
+ return name === 'TunnelAvailabilityError';
20
+ }
21
+
11
22
  /**
12
23
  * Full ESM namespace after a successful `import('appium-ios-remotexpc')` (e.g. **XCTestAttachment**).
13
24
  * Set together with {@link cachedRemoteXPCServices}.
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "appium-xcuitest-driver",
3
- "version": "11.0.2",
3
+ "version": "11.0.3",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "appium-xcuitest-driver",
9
- "version": "11.0.2",
9
+ "version": "11.0.3",
10
10
  "license": "Apache-2.0",
11
11
  "dependencies": {
12
12
  "@appium/strongbox": "^1.0.0-rc.1",
@@ -67,7 +67,7 @@
67
67
  "npm": ">=10"
68
68
  },
69
69
  "optionalDependencies": {
70
- "appium-ios-remotexpc": "^1.0.1"
70
+ "appium-ios-remotexpc": "^1.1.0"
71
71
  },
72
72
  "peerDependencies": {
73
73
  "appium": "^3.0.0-rc.2"
package/package.json CHANGED
@@ -8,7 +8,7 @@
8
8
  "xcuitest",
9
9
  "xctest"
10
10
  ],
11
- "version": "11.0.2",
11
+ "version": "11.0.3",
12
12
  "author": "Appium Contributors",
13
13
  "license": "Apache-2.0",
14
14
  "repository": {
@@ -107,7 +107,7 @@
107
107
  "ws": "^8.13.0"
108
108
  },
109
109
  "optionalDependencies": {
110
- "appium-ios-remotexpc": "^1.0.1"
110
+ "appium-ios-remotexpc": "^1.1.0"
111
111
  },
112
112
  "scripts": {
113
113
  "build": "tsc -b",