appium-webdriveragent 7.2.0 → 7.3.0

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,10 @@
1
+ ## [7.3.0](https://github.com/appium/WebDriverAgent/compare/v7.2.0...v7.3.0) (2024-03-23)
2
+
3
+
4
+ ### Features
5
+
6
+ * Support prebuiltWDAPath for iOS 17 ([#868](https://github.com/appium/WebDriverAgent/issues/868)) ([39194d4](https://github.com/appium/WebDriverAgent/commit/39194d4ac6d0072c1214088ff5c15c986969914c))
7
+
1
8
  ## [7.2.0](https://github.com/appium/WebDriverAgent/compare/v7.1.2...v7.2.0) (2024-03-21)
2
9
 
3
10
 
@@ -24,6 +24,7 @@ export class WebDriverAgent {
24
24
  derivedDataPath: any;
25
25
  mjpegServerPort: any;
26
26
  updatedWDABundleId: any;
27
+ wdaLaunchTimeout: any;
27
28
  usePreinstalledWDA: any;
28
29
  xctestApiClient: any;
29
30
  xcodebuild: XcodeBuild | null;
@@ -68,7 +69,6 @@ export class WebDriverAgent {
68
69
  * }
69
70
  *
70
71
  * @return {Promise<any?>} State Object
71
- * @throws {Error} If there was invalid response code or body
72
72
  */
73
73
  getStatus(): Promise<any | null>;
74
74
  /**
@@ -78,6 +78,28 @@ export class WebDriverAgent {
78
78
  */
79
79
  uninstall(): Promise<void>;
80
80
  _cleanupProjectIfFresh(): Promise<void>;
81
+ /**
82
+ * @typedef {Object} LaunchWdaViaDeviceCtlOptions
83
+ * @property {Record<string, string|number>} [env] environment variables for the launching WDA process
84
+ */
85
+ /**
86
+ * Launch WDA with preinstalled package with 'xcrun devicectl device process launch'.
87
+ * The WDA package must be prepared properly like published via
88
+ * https://github.com/appium/WebDriverAgent/releases
89
+ * with proper sign for this case.
90
+ *
91
+ * When we implement launching XCTest service via appium-ios-device,
92
+ * this implementation can be replaced with it.
93
+ *
94
+ * @param {LaunchWdaViaDeviceCtlOptions} [opts={}] launching WDA with devicectl command options.
95
+ * @return {Promise<void>}
96
+ */
97
+ _launchViaDevicectl(opts?: {
98
+ /**
99
+ * environment variables for the launching WDA process
100
+ */
101
+ env?: Record<string, string | number> | undefined;
102
+ } | undefined): Promise<void>;
81
103
  /**
82
104
  * Launch WDA with preinstalled package without xcodebuild.
83
105
  * @param {string} sessionId Launch WDA and establish the session with this sessionId
@@ -1 +1 @@
1
- {"version":3,"file":"webdriveragent.d.ts","sourceRoot":"","sources":["../../lib/webdriveragent.js"],"names":[],"mappings":";AA4BA;IACE,sDAqEC;IApEC,kBAAgC;IAEhC,SAAyB;IACzB,0CAA+B;IAE/B,YAAyB;IACzB,qBAA2C;IAC3C,kBAAqC;IACrC,mBAAuC;IACvC,UAAqB;IACrB,sBAAqC;IACrC,SAAkC;IAClC,mBAAuC;IAIvC,kBAAqC;IACrC,mBAAwD;IACxD,gBAAiD;IAEjD,iBAAmC;IAKnC,uBAA+C;IAE/C,iBAAoB;IAEpB,0BAAqD;IAErD,sBAA6C;IAC7C,oBAAyC;IACzC,qBAA2C;IAC3C,qBAA2C;IAE3C,wBAAiD;IAEjD,wBAAiD;IACjD,qBAA2B;IAE3B,8BA0Bc;IAGhB;;;OAGG;IACH,iCAIC;IAED;;;OAGG;IACH,gCAEC;IAED,sDASC;IANC,mBAAoD;IAIpD,eAA0F;IAI5F,0CAmBC;IAED;;;;OAIG;IACH,aAHY,QAAQ,OAAO,CAAC,CAK3B;IAED,oBAKC;IAED;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,aAHY,QAAQ,GAAG,QAAE,CAgBxB;IAED;;;;OAIG;IACH,2BAiBC;IAED,wCA4DC;IAED;;;;OAIG;IACH,qCAHW,MAAM,GACL,QAAQ,GAAG,QAAE,CA6BxB;IAED;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,kBAJW,MAAM,GACL,QAAQ,GAAG,QAAE,CAmDxB;IAyHD,mBAEC;IAfD,eAWC;IArHD,6BAYC;IAED,gDAOC;IAED;;;;OAQC;IAED,kCAWC;IAED,kCAMC;IAED,mCAeC;IALC,6BAAqC;IAErC,iBAA8D;IAE9D,2CAAmD;IAGrD,sBAiCC;IAKK,UAA6C;IAkBnD,mCAEC;IAND,4BAEC;IAMD,wCAMC;IAED;;;;OAIG;IACH,8BAoCC;IAED;;OAEG;IACH,kCAGC;CACF;uBA9jBsB,cAAc;wBAPb,qBAAqB;+BAGd,oBAAoB"}
1
+ {"version":3,"file":"webdriveragent.d.ts","sourceRoot":"","sources":["../../lib/webdriveragent.js"],"names":[],"mappings":";AA6BA;IACE,sDAsEC;IArEC,kBAAgC;IAEhC,SAAyB;IACzB,0CAA+B;IAE/B,YAAyB;IACzB,qBAA2C;IAC3C,kBAAqC;IACrC,mBAAuC;IACvC,UAAqB;IACrB,sBAAqC;IACrC,SAAkC;IAClC,mBAAuC;IAIvC,kBAAqC;IACrC,mBAAwD;IACxD,gBAAiD;IAEjD,iBAAmC;IAKnC,uBAA+C;IAE/C,iBAAoB;IAEpB,0BAAqD;IAErD,sBAA6C;IAC7C,oBAAyC;IACzC,qBAA2C;IAC3C,qBAA2C;IAE3C,wBAAiD;IAEjD,sBAAmE;IACnE,wBAAiD;IACjD,qBAA2B;IAE3B,8BA0Bc;IAGhB;;;OAGG;IACH,iCAIC;IAED;;;OAGG;IACH,gCAEC;IAED,sDASC;IANC,mBAAoD;IAIpD,eAA0F;IAI5F,0CAmBC;IAED;;;;OAIG;IACH,aAHY,QAAQ,OAAO,CAAC,CAK3B;IAED,oBAKC;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,aAFY,QAAQ,GAAG,QAAE,CAexB;IAED;;;;OAIG;IACH,2BAiBC;IAED,wCA4DC;IAGD;;;OAGG;IAEH;;;;;;;;;;;OAWG;IACH;;;;;oBAFY,QAAQ,IAAI,CAAC,CAiDxB;IAED;;;;OAIG;IACH,qCAHW,MAAM,GACL,QAAQ,GAAG,QAAE,CAoCxB;IAED;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,kBAJW,MAAM,GACL,QAAQ,GAAG,QAAE,CAmDxB;IAyHD,mBAEC;IAfD,eAWC;IArHD,6BAYC;IAED,gDAOC;IAED;;;;OAQC;IAED,kCAWC;IAED,kCAMC;IAED,mCAeC;IALC,6BAAqC;IAErC,iBAA8D;IAE9D,2CAAmD;IAGrD,sBAiCC;IAKK,UAA6C;IAkBnD,mCAEC;IAND,4BAEC;IAMD,wCAMC;IAED;;;;OAIG;IACH,8BAoCC;IAED;;OAEG;IACH,kCAGC;CACF;uBAxoBsB,cAAc;wBAPb,qBAAqB;+BAGd,oBAAoB"}
@@ -4,6 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.WebDriverAgent = void 0;
7
+ const asyncbox_1 = require("asyncbox");
7
8
  const lodash_1 = __importDefault(require("lodash"));
8
9
  const path_1 = __importDefault(require("path"));
9
10
  const url_1 = __importDefault(require("url"));
@@ -54,6 +55,7 @@ class WebDriverAgent {
54
55
  this.derivedDataPath = args.derivedDataPath;
55
56
  this.mjpegServerPort = args.mjpegServerPort;
56
57
  this.updatedWDABundleId = args.updatedWDABundleId;
58
+ this.wdaLaunchTimeout = args.wdaLaunchTimeout || WDA_LAUNCH_TIMEOUT;
57
59
  this.usePreinstalledWDA = args.usePreinstalledWDA;
58
60
  this.xctestApiClient = null;
59
61
  this.xcodebuild = this.canSkipXcodebuild
@@ -74,7 +76,7 @@ class WebDriverAgent {
74
76
  useSimpleBuildTest: args.useSimpleBuildTest,
75
77
  usePrebuiltWDA: args.usePrebuiltWDA,
76
78
  updatedWDABundleId: this.updatedWDABundleId,
77
- launchTimeout: args.wdaLaunchTimeout || WDA_LAUNCH_TIMEOUT,
79
+ launchTimeout: this.wdaLaunchTimeout,
78
80
  wdaRemotePort: this.wdaRemotePort,
79
81
  useXctestrunFile: this.useXctestrunFile,
80
82
  derivedDataPath: args.derivedDataPath,
@@ -161,7 +163,6 @@ class WebDriverAgent {
161
163
  * }
162
164
  *
163
165
  * @return {Promise<any?>} State Object
164
- * @throws {Error} If there was invalid response code or body
165
166
  */
166
167
  async getStatus() {
167
168
  const noSessionProxy = new no_session_proxy_1.NoSessionProxy({
@@ -259,6 +260,63 @@ class WebDriverAgent {
259
260
  this.log.warn(`Cannot perform WebDriverAgent project cleanup. Original error: ${e.message}`);
260
261
  }
261
262
  }
263
+ /**
264
+ * @typedef {Object} LaunchWdaViaDeviceCtlOptions
265
+ * @property {Record<string, string|number>} [env] environment variables for the launching WDA process
266
+ */
267
+ /**
268
+ * Launch WDA with preinstalled package with 'xcrun devicectl device process launch'.
269
+ * The WDA package must be prepared properly like published via
270
+ * https://github.com/appium/WebDriverAgent/releases
271
+ * with proper sign for this case.
272
+ *
273
+ * When we implement launching XCTest service via appium-ios-device,
274
+ * this implementation can be replaced with it.
275
+ *
276
+ * @param {LaunchWdaViaDeviceCtlOptions} [opts={}] launching WDA with devicectl command options.
277
+ * @return {Promise<void>}
278
+ */
279
+ async _launchViaDevicectl(opts = {}) {
280
+ // FIXME: use appium-xcuitest-driver's Devicectl. Maybe it needs to be included in the `this.device`?
281
+ //
282
+ const { env } = opts;
283
+ let xcrunBinnaryPath;
284
+ try {
285
+ xcrunBinnaryPath = await support_1.fs.which('xcrun');
286
+ }
287
+ catch (e) {
288
+ throw new Error(`xcrun has not been found in PATH. ` +
289
+ `Please make sure XCode development tools are installed`);
290
+ }
291
+ const cmd = [
292
+ 'devicectl',
293
+ 'device',
294
+ 'process',
295
+ 'launch',
296
+ `--device`, this.device.udid,
297
+ '--terminate-existing'
298
+ ];
299
+ if (!lodash_1.default.isEmpty(env)) {
300
+ cmd.push('--environment-variables', JSON.stringify(lodash_1.default.mapValues(env, (v) => lodash_1.default.toString(v))));
301
+ }
302
+ ;
303
+ cmd.push(this.bundleIdForXctest);
304
+ const { stdout } = await (0, teen_process_1.exec)(xcrunBinnaryPath, cmd);
305
+ this.log.debug(`The output of devicectl command: ${stdout}`);
306
+ // Launching app via decictl does not wait for the app start.
307
+ // We should wait for the app start by ourselves.
308
+ try {
309
+ await (0, asyncbox_1.waitForCondition)(async () => !lodash_1.default.isNull(await this.getStatus()), {
310
+ waitMs: this.wdaLaunchTimeout,
311
+ intervalMs: 300,
312
+ });
313
+ }
314
+ catch (err) {
315
+ throw new Error(`Failed to start the preinstalled WebDriverAgent in ${this.wdaLaunchTimeout} ms. ` +
316
+ `The WebDriverAgent might not be properly built or the device might be locked. ` +
317
+ 'appium:wdaLaunchTimeout capability modifies the timeout.');
318
+ }
319
+ }
262
320
  /**
263
321
  * Launch WDA with preinstalled package without xcodebuild.
264
322
  * @param {string} sessionId Launch WDA and establish the session with this sessionId
@@ -274,8 +332,16 @@ class WebDriverAgent {
274
332
  }
275
333
  this.log.info('Launching WebDriverAgent on the device without xcodebuild');
276
334
  if (this.isRealDevice) {
277
- this.xctestApiClient = new appium_ios_device_1.Xctest(this.device.udid, this.bundleIdForXctest, null, { env: xctestEnv });
278
- await this.xctestApiClient.start();
335
+ // Current method to launch WDA process can be done via 'xcrun devicectl',
336
+ // but it has limitation about the WDA preinstalled package.
337
+ // https://github.com/appium/appium/issues/19206#issuecomment-2014182674
338
+ if (support_1.util.compareVersions(this.platformVersion, '>=', '17.0')) {
339
+ await this._launchViaDevicectl({ env: xctestEnv });
340
+ }
341
+ else {
342
+ this.xctestApiClient = new appium_ios_device_1.Xctest(this.device.udid, this.bundleIdForXctest, null, { env: xctestEnv });
343
+ await this.xctestApiClient.start();
344
+ }
279
345
  }
280
346
  else {
281
347
  await this.device.simctl.exec('launch', {
@@ -1 +1 @@
1
- {"version":3,"file":"webdriveragent.js","sourceRoot":"","sources":["../../lib/webdriveragent.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"webdriveragent.js","sourceRoot":"","sources":["../../lib/webdriveragent.js"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { waitForCondition } from 'asyncbox';
1
2
  import _ from 'lodash';
2
3
  import path from 'path';
3
4
  import url from 'url';
@@ -66,6 +67,7 @@ class WebDriverAgent {
66
67
 
67
68
  this.updatedWDABundleId = args.updatedWDABundleId;
68
69
 
70
+ this.wdaLaunchTimeout = args.wdaLaunchTimeout || WDA_LAUNCH_TIMEOUT;
69
71
  this.usePreinstalledWDA = args.usePreinstalledWDA;
70
72
  this.xctestApiClient = null;
71
73
 
@@ -87,7 +89,7 @@ class WebDriverAgent {
87
89
  useSimpleBuildTest: args.useSimpleBuildTest,
88
90
  usePrebuiltWDA: args.usePrebuiltWDA,
89
91
  updatedWDABundleId: this.updatedWDABundleId,
90
- launchTimeout: args.wdaLaunchTimeout || WDA_LAUNCH_TIMEOUT,
92
+ launchTimeout: this.wdaLaunchTimeout,
91
93
  wdaRemotePort: this.wdaRemotePort,
92
94
  useXctestrunFile: this.useXctestrunFile,
93
95
  derivedDataPath: args.derivedDataPath,
@@ -184,7 +186,6 @@ class WebDriverAgent {
184
186
  * }
185
187
  *
186
188
  * @return {Promise<any?>} State Object
187
- * @throws {Error} If there was invalid response code or body
188
189
  */
189
190
  async getStatus () {
190
191
  const noSessionProxy = new NoSessionProxy({
@@ -287,6 +288,73 @@ class WebDriverAgent {
287
288
  }
288
289
  }
289
290
 
291
+
292
+ /**
293
+ * @typedef {Object} LaunchWdaViaDeviceCtlOptions
294
+ * @property {Record<string, string|number>} [env] environment variables for the launching WDA process
295
+ */
296
+
297
+ /**
298
+ * Launch WDA with preinstalled package with 'xcrun devicectl device process launch'.
299
+ * The WDA package must be prepared properly like published via
300
+ * https://github.com/appium/WebDriverAgent/releases
301
+ * with proper sign for this case.
302
+ *
303
+ * When we implement launching XCTest service via appium-ios-device,
304
+ * this implementation can be replaced with it.
305
+ *
306
+ * @param {LaunchWdaViaDeviceCtlOptions} [opts={}] launching WDA with devicectl command options.
307
+ * @return {Promise<void>}
308
+ */
309
+ async _launchViaDevicectl(opts = {}) {
310
+ // FIXME: use appium-xcuitest-driver's Devicectl. Maybe it needs to be included in the `this.device`?
311
+ //
312
+
313
+ const {env} = opts;
314
+
315
+ let xcrunBinnaryPath;
316
+ try {
317
+ xcrunBinnaryPath = await fs.which('xcrun');
318
+ } catch (e) {
319
+ throw new Error(
320
+ `xcrun has not been found in PATH. ` +
321
+ `Please make sure XCode development tools are installed`,
322
+ );
323
+ }
324
+
325
+ const cmd = [
326
+ 'devicectl',
327
+ 'device',
328
+ 'process',
329
+ 'launch',
330
+ `--device`, this.device.udid,
331
+ '--terminate-existing'
332
+ ];
333
+ if (!_.isEmpty(env)) {
334
+ cmd.push('--environment-variables', JSON.stringify(_.mapValues(env, (v) => _.toString(v))));
335
+ };
336
+ cmd.push(this.bundleIdForXctest);
337
+
338
+ const {stdout} = await exec(xcrunBinnaryPath, cmd);
339
+ this.log.debug(`The output of devicectl command: ${stdout}`);
340
+
341
+ // Launching app via decictl does not wait for the app start.
342
+ // We should wait for the app start by ourselves.
343
+ try {
344
+ await waitForCondition(async () => !_.isNull(await this.getStatus()), {
345
+ waitMs: this.wdaLaunchTimeout,
346
+ intervalMs: 300,
347
+ });
348
+
349
+ } catch (err) {
350
+ throw new Error(
351
+ `Failed to start the preinstalled WebDriverAgent in ${this.wdaLaunchTimeout} ms. ` +
352
+ `The WebDriverAgent might not be properly built or the device might be locked. ` +
353
+ 'appium:wdaLaunchTimeout capability modifies the timeout.'
354
+ );
355
+ }
356
+ }
357
+
290
358
  /**
291
359
  * Launch WDA with preinstalled package without xcodebuild.
292
360
  * @param {string} sessionId Launch WDA and establish the session with this sessionId
@@ -302,8 +370,15 @@ class WebDriverAgent {
302
370
  }
303
371
  this.log.info('Launching WebDriverAgent on the device without xcodebuild');
304
372
  if (this.isRealDevice) {
305
- this.xctestApiClient = new Xctest(this.device.udid, this.bundleIdForXctest, null, {env: xctestEnv});
306
- await this.xctestApiClient.start();
373
+ // Current method to launch WDA process can be done via 'xcrun devicectl',
374
+ // but it has limitation about the WDA preinstalled package.
375
+ // https://github.com/appium/appium/issues/19206#issuecomment-2014182674
376
+ if (util.compareVersions(this.platformVersion, '>=', '17.0')) {
377
+ await this._launchViaDevicectl({env: xctestEnv});
378
+ } else {
379
+ this.xctestApiClient = new Xctest(this.device.udid, this.bundleIdForXctest, null, {env: xctestEnv});
380
+ await this.xctestApiClient.start();
381
+ }
307
382
  } else {
308
383
  await this.device.simctl.exec('launch', {
309
384
  args: [
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "appium-webdriveragent",
3
- "version": "7.2.0",
3
+ "version": "7.3.0",
4
4
  "description": "Package bundling WebDriverAgent",
5
5
  "main": "./build/index.js",
6
6
  "scripts": {