@wdio/utils 9.28.0 → 9.29.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.
@@ -1 +1 @@
1
- {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/node/manager.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AA4GxD,wBAAsB,WAAW,CAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,cAAc,CAAC,EAAE,IAAI,EAAE,YAAY,CAAC,sBAAsB,kCAqB7H;AAED,wBAAgB,YAAY,CAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,cAAc,CAAC,EAAE,IAAI,EAAE,YAAY,CAAC,sBAAsB,kCAsBxH"}
1
+ {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/node/manager.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AA0GxD,wBAAsB,WAAW,CAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,cAAc,CAAC,EAAE,IAAI,EAAE,YAAY,CAAC,sBAAsB,kCAc7H;AAED,wBAAgB,YAAY,CAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,cAAc,CAAC,EAAE,IAAI,EAAE,YAAY,CAAC,sBAAsB,kCAsBxH"}
@@ -1,8 +1,8 @@
1
1
  import cp from 'node:child_process';
2
2
  import { type SafaridriverOptions as SafaridriverParameters } from 'safaridriver';
3
3
  import { type GeckodriverParameters } from 'geckodriver';
4
- import { type EdgedriverParameters } from 'edgedriver';
5
4
  import type { InstallOptions } from '@puppeteer/browsers';
5
+ import type { EdgedriverParameters } from 'edgedriver';
6
6
  import type { Capabilities } from '@wdio/types';
7
7
  export type ChromedriverParameters = (Partial<InstallOptions> & Omit<EdgedriverParameters, 'port' | 'edgeDriverVersion' | 'customEdgeDriverPath'> & Pick<GeckodriverParameters, 'spawnOpts'>);
8
8
  declare global {
@@ -1 +1 @@
1
- {"version":3,"file":"startWebDriver.d.ts","sourceRoot":"","sources":["../../src/node/startWebDriver.ts"],"names":[],"mappings":"AAGA,OAAO,EAAyB,MAAM,oBAAoB,CAAA;AAQ1D,OAAO,EAA8B,KAAK,mBAAmB,IAAI,sBAAsB,EAAE,MAAM,cAAc,CAAA;AAC7G,OAAO,EAA6B,KAAK,qBAAqB,EAAE,MAAM,aAAa,CAAA;AACnF,OAAO,EAA0C,KAAK,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAC9F,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEzD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAM/C,MAAM,MAAM,sBAAsB,GAAG,CACjC,OAAO,CAAC,cAAc,CAAC,GACvB,IAAI,CAAC,oBAAoB,EAAE,MAAM,GAAG,mBAAmB,GAAG,sBAAsB,CAAC,GACjF,IAAI,CAAC,qBAAqB,EAAE,WAAW,CAAC,CAC3C,CAAA;AACD,OAAO,CAAC,MAAM,CAAC;IACX,UAAU,WAAW,CAAC;QAClB,UAAU,mBAAoB,SAAQ,sBAAsB;SAAI;QAChE,UAAU,kBAAmB,SAAQ,IAAI,CAAC,qBAAqB,EAAE,MAAM,CAAC;SAAI;QAC5E,UAAU,iBAAkB,SAAQ,IAAI,CAAC,oBAAoB,EAAE,MAAM,CAAC;SAAI;QAC1E,UAAU,mBAAoB,SAAQ,IAAI,CAAC,sBAAsB,EAAE,MAAM,CAAC;SAAI;KACjF;CACJ;AAMD,wBAAsB,cAAc,CAAC,OAAO,EAAE,YAAY,CAAC,YAAY,wCA+LtE"}
1
+ {"version":3,"file":"startWebDriver.d.ts","sourceRoot":"","sources":["../../src/node/startWebDriver.ts"],"names":[],"mappings":"AAGA,OAAO,EAAyB,MAAM,oBAAoB,CAAA;AAQ1D,OAAO,EAA8B,KAAK,mBAAmB,IAAI,sBAAsB,EAAE,MAAM,cAAc,CAAA;AAC7G,OAAO,EAA6B,KAAK,qBAAqB,EAAE,MAAM,aAAa,CAAA;AACnF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACzD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAEtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAM/C,MAAM,MAAM,sBAAsB,GAAG,CACjC,OAAO,CAAC,cAAc,CAAC,GACvB,IAAI,CAAC,oBAAoB,EAAE,MAAM,GAAG,mBAAmB,GAAG,sBAAsB,CAAC,GACjF,IAAI,CAAC,qBAAqB,EAAE,WAAW,CAAC,CAC3C,CAAA;AACD,OAAO,CAAC,MAAM,CAAC;IACX,UAAU,WAAW,CAAC;QAClB,UAAU,mBAAoB,SAAQ,sBAAsB;SAAI;QAChE,UAAU,kBAAmB,SAAQ,IAAI,CAAC,qBAAqB,EAAE,MAAM,CAAC;SAAI;QAC5E,UAAU,iBAAkB,SAAQ,IAAI,CAAC,oBAAoB,EAAE,MAAM,CAAC;SAAI;QAC1E,UAAU,mBAAoB,SAAQ,IAAI,CAAC,sBAAsB,EAAE,MAAM,CAAC;SAAI;KACjF;CACJ;AAMD,wBAAsB,cAAc,CAAC,OAAO,EAAE,YAAY,CAAC,YAAY,wCAiMtE"}
@@ -1,5 +1,7 @@
1
1
  import type { EdgedriverParameters } from 'edgedriver';
2
2
  import type { Options } from '@wdio/types';
3
+ export declare const DEFAULT_EDGEDRIVER_CDN_URL = "https://msedgedriver.microsoft.com";
4
+ export declare function setDefaultEdgedriverCdnUrl(): void;
3
5
  /**
4
6
  * Helper utility to check file access
5
7
  * @param {string} file file to check access for
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/node/utils.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AACtD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAK1C;;;;GAIG;AACH,eAAO,MAAM,SAAS,GAAI,OAAO,MAAM,YAWtC,CAAA;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,oBAAoB,YAYvD;AAED,wBAAgB,sBAAsB,CAAC,UAAU,CAAC,EAAE,MAAM,sBA6BzD;AAED,wBAAsB,uBAAuB,CAAC,WAAW,CAAC,EAAE,MAAM,+BAyBjE;AAGD,eAAO,MAAM,wBAAwB,GAAI,UAAU,MAAM,EAAE,iBAAiB,MAAM,EAAE,YAAY,MAAM,SAOrG,CAAA;AAgCD,wBAAsB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,CAAC,YAAY;;;;;;GA4G3F;AAED,wBAAgB,gBAAgB,CAAE,IAAI,EAAE,WAAW,CAAC,YAAY,oGAS/D;AAED,wBAAgB,WAAW,CAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,UAAU,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,YAAY,UAGxG;AAED,wBAAgB,yBAAyB,CAAC,WAAW,EAAC,MAAM,UAM3D;AAED,wBAAsB,iBAAiB,CAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM;;GAgDhF;AAED,wBAAgB,gBAAgB,CAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,mBAEzE;AAED,wBAAgB,eAAe,CAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,mBAExE;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,WAAW,CAAC,YAAY;;;;;;EAIlE"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/node/utils.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AACtD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAI1C,eAAO,MAAM,0BAA0B,uCAAuC,CAAA;AAG9E,wBAAgB,0BAA0B,SAKzC;AAED;;;;GAIG;AACH,eAAO,MAAM,SAAS,GAAI,OAAO,MAAM,YAWtC,CAAA;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,oBAAoB,YAYvD;AAED,wBAAgB,sBAAsB,CAAC,UAAU,CAAC,EAAE,MAAM,sBA6BzD;AAED,wBAAsB,uBAAuB,CAAC,WAAW,CAAC,EAAE,MAAM,+BAyBjE;AAGD,eAAO,MAAM,wBAAwB,GAAI,UAAU,MAAM,EAAE,iBAAiB,MAAM,EAAE,YAAY,MAAM,SAOrG,CAAA;AAgCD,wBAAsB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,CAAC,YAAY;;;;;;GA4G3F;AAED,wBAAgB,gBAAgB,CAAE,IAAI,EAAE,WAAW,CAAC,YAAY,oGAS/D;AAED,wBAAgB,WAAW,CAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,UAAU,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,YAAY,UAGxG;AAED,wBAAgB,yBAAyB,CAAC,WAAW,EAAC,MAAM,UAM3D;AAED,wBAAsB,iBAAiB,CAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM;;GAgDhF;AAED,wBAAgB,gBAAgB,CAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,mBAEzE;AAED,wBAAsB,eAAe,CAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,mBAI9E;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,WAAW,CAAC,YAAY;;;;;;EAIlE"}
package/build/node.js CHANGED
@@ -10,7 +10,6 @@ import split2 from "split2";
10
10
  import { deepmerge } from "deepmerge-ts";
11
11
  import { start as startSafaridriver } from "safaridriver";
12
12
  import { start as startGeckodriver } from "geckodriver";
13
- import { start as startEdgedriver, findEdgePath } from "edgedriver";
14
13
 
15
14
  // src/node/utils.ts
16
15
  import os from "node:os";
@@ -30,10 +29,17 @@ import {
30
29
  computeExecutablePath
31
30
  } from "@puppeteer/browsers";
32
31
  import { download as downloadGeckodriver } from "geckodriver";
33
- import { download as downloadEdgedriver } from "edgedriver";
34
32
  import { locateChrome, locateFirefox, locateApp } from "locate-app";
35
33
  var log = logger("webdriver");
36
34
  var EXCLUDED_PARAMS = ["version", "help"];
35
+ var DEFAULT_EDGEDRIVER_CDN_URL = "https://msedgedriver.microsoft.com";
36
+ var LEGACY_EDGEDRIVER_CDN_URL = "https://msedgedriver.azureedge.net";
37
+ function setDefaultEdgedriverCdnUrl() {
38
+ const edgedriverCdnUrl = process.env.EDGEDRIVER_CDNURL?.replace(/\/+$/, "");
39
+ if (!edgedriverCdnUrl || edgedriverCdnUrl === LEGACY_EDGEDRIVER_CDN_URL) {
40
+ process.env.EDGEDRIVER_CDNURL = DEFAULT_EDGEDRIVER_CDN_URL;
41
+ }
42
+ }
37
43
  var canAccess = (file) => {
38
44
  if (!file) {
39
45
  return false;
@@ -248,7 +254,9 @@ async function setupChromedriver(cacheDir, driverVersion) {
248
254
  function setupGeckodriver(cacheDir, driverVersion) {
249
255
  return downloadGeckodriver(driverVersion, cacheDir);
250
256
  }
251
- function setupEdgedriver(cacheDir, driverVersion) {
257
+ async function setupEdgedriver(cacheDir, driverVersion) {
258
+ setDefaultEdgedriverCdnUrl();
259
+ const { download: downloadEdgedriver } = await import("edgedriver");
252
260
  return downloadEdgedriver(driverVersion, cacheDir);
253
261
  }
254
262
  function generateDefaultPrefs(caps) {
@@ -385,6 +393,8 @@ If you like to run a local browser session make sure to pick from one of the fol
385
393
  if (binary) {
386
394
  edgedriverOptions.customEdgeDriverPath = binary;
387
395
  }
396
+ setDefaultEdgedriverCdnUrl();
397
+ const { start: startEdgedriver, findEdgePath } = await import("edgedriver");
388
398
  driver = "EdgeDriver";
389
399
  driverProcess = await startEdgedriver({ ...edgedriverOptions, cacheDir, port, allowedIps: ["0.0.0.0"] }).catch((err) => {
390
400
  log2.warn(`Couldn't start EdgeDriver: ${err.message}, retry ...`);
@@ -426,7 +436,6 @@ If you like to run a local browser session make sure to pick from one of the fol
426
436
  import logger3 from "@wdio/logger";
427
437
  var log3 = logger3("@wdio/utils");
428
438
  var UNDEFINED_BROWSER_VERSION = null;
429
- var firefoxChannels = ["stable", "latest"];
430
439
  function mapCapabilities(options, caps, task, taskItemLabel) {
431
440
  const capabilitiesToRequireSetup = (Array.isArray(caps) ? caps.map((cap) => {
432
441
  const w3cCaps = cap;
@@ -489,8 +498,8 @@ async function setupDriver(options, caps) {
489
498
  if (isEdge(cap.browserName)) {
490
499
  return setupEdgedriver(cacheDir, cap.browserVersion);
491
500
  } else if (isFirefox(cap.browserName)) {
492
- const version = firefoxChannels.includes(cap.browserVersion ?? "") ? void 0 : cap.browserVersion;
493
- return setupGeckodriver(cacheDir, version);
501
+ const driverVersion = cap["wdio:geckodriverOptions"]?.geckoDriverVersion;
502
+ return setupGeckodriver(cacheDir, driverVersion);
494
503
  } else if (isChrome(cap.browserName)) {
495
504
  return setupChromedriver(cacheDir, cap.browserVersion);
496
505
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wdio/utils",
3
- "version": "9.28.0",
3
+ "version": "9.29.0",
4
4
  "description": "A WDIO helper utility to provide several utility functions used across the project.",
5
5
  "author": "Christian Bromann <mail@bromann.dev>",
6
6
  "homepage": "https://github.com/webdriverio/webdriverio/tree/main/packages/wdio-utils",
@@ -39,7 +39,7 @@
39
39
  "dependencies": {
40
40
  "@puppeteer/browsers": "^2.2.0",
41
41
  "@wdio/logger": "9.18.0",
42
- "@wdio/types": "9.28.0",
42
+ "@wdio/types": "9.29.0",
43
43
  "decamelize": "^6.0.0",
44
44
  "deepmerge-ts": "^7.0.3",
45
45
  "edgedriver": "^6.1.2",
@@ -55,5 +55,5 @@
55
55
  "publishConfig": {
56
56
  "access": "public"
57
57
  },
58
- "gitHead": "66baa0049385cd9161677e1e6728fde90db56f35"
58
+ "gitHead": "c7808c59ca3ab6a677230cebd688454426cba0f2"
59
59
  }