appium-geckodriver 2.2.2 → 2.2.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
+ ## [2.2.3](https://github.com/appium/appium-geckodriver/compare/v2.2.2...v2.2.3) (2026-05-04)
2
+
3
+ ### Miscellaneous Chores
4
+
5
+ * remove lodash ([#160](https://github.com/appium/appium-geckodriver/issues/160)) ([6a4b9b6](https://github.com/appium/appium-geckodriver/commit/6a4b9b6051dcb4ed21361f6764e174645c8b9a0e))
6
+
1
7
  ## [2.2.2](https://github.com/appium/appium-geckodriver/compare/v2.2.1...v2.2.2) (2026-05-01)
2
8
 
3
9
  ### Bug Fixes
@@ -1 +1 @@
1
- {"version":3,"file":"driver.d.ts","sourceRoot":"","sources":["../../lib/driver.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,YAAY,EACZ,0BAA0B,EAC1B,WAAW,EACX,YAAY,EACZ,cAAc,EACd,aAAa,EACd,MAAM,eAAe,CAAC;AACvB,OAAO,EAAC,UAAU,EAAS,MAAM,eAAe,CAAC;AACjD,OAAO,EAAoB,iBAAiB,EAAC,MAAM,SAAS,CAAC;AAC7D,OAAO,EAAC,qBAAqB,EAAC,MAAM,gBAAgB,CAAC;AAErD,OAAO,KAAK,YAAY,MAAM,iBAAiB,CAAC;AAUhD,MAAM,MAAM,gBAAgB,GAAG,OAAO,qBAAqB,CAAC;AAE5D,qBAAa,WACX,SAAQ,UAAU,CAAC,gBAAgB,EAAE,YAAY,CACjD,YAAW,cAAc,CAAC,gBAAgB,EAAE,MAAM,EAAE,YAAY,CAAC;IAE1D,WAAW,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,KAAK,GAAG,CAAC;IAE1C,WAAW,kCAA4B;IAEvC,OAAO,CAAC,aAAa,CAAkB;IACvC,OAAO,CAAC,MAAM,CAAkC;IAChD,OAAO,CAAC,aAAa,CAAuB;gBAEhC,IAAI,GAAE,WAA+B;IAgBjD,IAAI,KAAK,IAAI,iBAAiB,CAK7B;IAED,IAAa,YAAY,IAAI,MAAM,GAAG,IAAI,CAEzC;IAGQ,WAAW,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO;IAIxC,iBAAiB,IAAI,YAAY,EAAE;IAInC,QAAQ,IAAI,OAAO;IAInB,mBAAmB,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI,IAAI,GAAG;IAmBrC,aAAa,CAC1B,QAAQ,EAAE,aAAa,CAAC,gBAAgB,CAAC,EACzC,QAAQ,CAAC,EAAE,aAAa,CAAC,gBAAgB,CAAC,EAC1C,GAAG,IAAI,EAAE,GAAG,EAAE,GACb,OAAO,CAAC,0BAA0B,CAAC,gBAAgB,CAAC,CAAC;IAqBzC,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ7C,OAAO,CAAC,UAAU;IAOlB,OAAO,CAAC,oBAAoB;CAe7B;AAED,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"driver.d.ts","sourceRoot":"","sources":["../../lib/driver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,0BAA0B,EAC1B,WAAW,EACX,YAAY,EACZ,cAAc,EACd,aAAa,EACd,MAAM,eAAe,CAAC;AACvB,OAAO,EAAC,UAAU,EAAS,MAAM,eAAe,CAAC;AACjD,OAAO,EAAoB,iBAAiB,EAAC,MAAM,SAAS,CAAC;AAC7D,OAAO,EAAC,qBAAqB,EAAC,MAAM,gBAAgB,CAAC;AAErD,OAAO,KAAK,YAAY,MAAM,iBAAiB,CAAC;AAUhD,MAAM,MAAM,gBAAgB,GAAG,OAAO,qBAAqB,CAAC;AAE5D,qBAAa,WACX,SAAQ,UAAU,CAAC,gBAAgB,EAAE,YAAY,CACjD,YAAW,cAAc,CAAC,gBAAgB,EAAE,MAAM,EAAE,YAAY,CAAC;IAE1D,WAAW,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,KAAK,GAAG,CAAC;IAE1C,WAAW,kCAA4B;IAEvC,OAAO,CAAC,aAAa,CAAkB;IACvC,OAAO,CAAC,MAAM,CAAkC;IAChD,OAAO,CAAC,aAAa,CAAuB;gBAEhC,IAAI,GAAE,WAA+B;IAgBjD,IAAI,KAAK,IAAI,iBAAiB,CAK7B;IAED,IAAa,YAAY,IAAI,MAAM,GAAG,IAAI,CAEzC;IAGQ,WAAW,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO;IAIxC,iBAAiB,IAAI,YAAY,EAAE;IAInC,QAAQ,IAAI,OAAO;IAInB,mBAAmB,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI,IAAI,GAAG;IAmBrC,aAAa,CAC1B,QAAQ,EAAE,aAAa,CAAC,gBAAgB,CAAC,EACzC,QAAQ,CAAC,EAAE,aAAa,CAAC,gBAAgB,CAAC,EAC1C,GAAG,IAAI,EAAE,GAAG,EAAE,GACb,OAAO,CAAC,0BAA0B,CAAC,gBAAgB,CAAC,CAAC;IAqBzC,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ7C,OAAO,CAAC,UAAU;IAOlB,OAAO,CAAC,oBAAoB;CAe7B;AAED,eAAe,WAAW,CAAC"}
@@ -32,12 +32,8 @@ var __importStar = (this && this.__importStar) || (function () {
32
32
  return result;
33
33
  };
34
34
  })();
35
- var __importDefault = (this && this.__importDefault) || function (mod) {
36
- return (mod && mod.__esModule) ? mod : { "default": mod };
37
- };
38
35
  Object.defineProperty(exports, "__esModule", { value: true });
39
36
  exports.GeckoDriver = void 0;
40
- const lodash_1 = __importDefault(require("lodash"));
41
37
  const driver_1 = require("appium/driver");
42
38
  const gecko_1 = require("./gecko");
43
39
  const desired_caps_1 = require("./desired-caps");
@@ -58,7 +54,7 @@ class GeckoDriver extends driver_1.BaseDriver {
58
54
  _bidiProxyUrl = null;
59
55
  constructor(opts = {}) {
60
56
  super(opts);
61
- this.desiredCapConstraints = lodash_1.default.cloneDeep(desired_caps_1.desiredCapConstraints);
57
+ this.desiredCapConstraints = structuredClone(desired_caps_1.desiredCapConstraints);
62
58
  this.locatorStrategies = [
63
59
  'xpath',
64
60
  'tag name',
@@ -138,7 +134,7 @@ class GeckoDriver extends driver_1.BaseDriver {
138
134
  }
139
135
  _extractWebSocketUrl(response) {
140
136
  const webSocketUrl = response?.capabilities?.webSocketUrl;
141
- if (lodash_1.default.isEmpty(webSocketUrl) || !lodash_1.default.isString(webSocketUrl)) {
137
+ if (typeof webSocketUrl !== 'string' || webSocketUrl.length === 0) {
142
138
  return null;
143
139
  }
144
140
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"driver.js","sourceRoot":"","sources":["../../lib/driver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"driver.js","sourceRoot":"","sources":["../../lib/driver.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"gecko.d.ts","sourceRoot":"","sources":["../../lib/gecko.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,OAAO,EAAS,MAAM,eAAe,CAAC;AAM9C,OAAO,KAAK,EAAC,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,QAAQ,EAAC,MAAM,eAAe,CAAC;AAWpF,eAAO,MAAM,iBAAiB,cAAc,CAAC;AAE7C,MAAM,WAAW,cAAc;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAwID,qBAAa,UAAW,SAAQ,OAAO;IACrC,cAAc,CAAC,EAAE,OAAO,CAAC;IAEV,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,GAAE,QAAe;CASnF;AAmBD,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,MAAM,CAA2B;IACzC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAqB;IAC9C,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAe;gBAEvB,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,YAAY;IAMjD,IAAI,KAAK,IAAI,UAAU,CAKtB;IAED,IAAI,SAAS,IAAI,OAAO,CAEvB;IAEK,KAAK,CAAC,SAAS,EAAE,YAAY,EAAE,IAAI,GAAE,cAAmB,GAAG,OAAO,CAAC,YAAY,CAAC;IAkEhF,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAqB5B;AAED,eAAe,iBAAiB,CAAC"}
1
+ {"version":3,"file":"gecko.d.ts","sourceRoot":"","sources":["../../lib/gecko.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,OAAO,EAAS,MAAM,eAAe,CAAC;AAM9C,OAAO,KAAK,EAAC,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,QAAQ,EAAC,MAAM,eAAe,CAAC;AAWpF,eAAO,MAAM,iBAAiB,cAAc,CAAC;AAE7C,MAAM,WAAW,cAAc;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAwID,qBAAa,UAAW,SAAQ,OAAO;IACrC,cAAc,CAAC,EAAE,OAAO,CAAC;IAEV,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,GAAE,QAAe;CASnF;AA2BD,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,MAAM,CAA2B;IACzC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAqB;IAC9C,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAe;gBAEvB,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,YAAY;IAMjD,IAAI,KAAK,IAAI,UAAU,CAKtB;IAED,IAAI,SAAS,IAAI,OAAO,CAEvB;IAEK,KAAK,CAAC,SAAS,EAAE,YAAY,EAAE,IAAI,GAAE,cAAmB,GAAG,OAAO,CAAC,YAAY,CAAC;IAkEhF,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAqB5B;AAED,eAAe,iBAAiB,CAAC"}
@@ -4,7 +4,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.GeckoDriverServer = exports.GeckoProxy = exports.GECKO_SERVER_HOST = void 0;
7
- const lodash_1 = __importDefault(require("lodash"));
8
7
  const node_os_1 = __importDefault(require("node:os"));
9
8
  const node_path_1 = __importDefault(require("node:path"));
10
9
  const driver_1 = require("appium/driver");
@@ -67,7 +66,7 @@ class GeckoDriverProcess {
67
66
  const driverBin = await this.resolveGeckodriverBinary();
68
67
  const args = [];
69
68
  /* #region Options */
70
- switch (lodash_1.default.toLower(this.verbosity)) {
69
+ switch (this.verbosity?.toLowerCase()) {
71
70
  case constants_1.VERBOSITY.DEBUG:
72
71
  args.push('-v');
73
72
  break;
@@ -78,13 +77,13 @@ class GeckoDriverProcess {
78
77
  if (this.noReset) {
79
78
  args.push('--connect-existing');
80
79
  // https://firefox-source-docs.mozilla.org/testing/geckodriver/Flags.html#code-connect-existing-code
81
- if (lodash_1.default.isNil(this.marionettePort)) {
80
+ if (this.marionettePort == null) {
82
81
  this.log.info(`'marionettePort' capability value is not provided while 'noReset' is enabled`);
83
82
  this.log.info(`Assigning 'marionettePort' to the default value (${DEFAULT_MARIONETTE_PORT})`);
84
83
  }
85
84
  args.push('--marionette-port', `${this.marionettePort ?? DEFAULT_MARIONETTE_PORT}`);
86
85
  }
87
- else if (!lodash_1.default.isNil(this.marionettePort)) {
86
+ else if (this.marionettePort != null) {
88
87
  args.push('--marionette-port', `${this.marionettePort}`);
89
88
  }
90
89
  /* #endregion */
@@ -94,7 +93,7 @@ class GeckoDriverProcess {
94
93
  }
95
94
  this._proc = new teen_process_1.SubProcess(driverBin, args);
96
95
  this._proc.on('output', (stdout, stderr) => {
97
- const line = lodash_1.default.trim(stdout || stderr);
96
+ const line = (stdout || stderr).trim();
98
97
  if (line) {
99
98
  this.log.debug(`[${GD_BINARY}] ${line}`);
100
99
  }
@@ -147,8 +146,15 @@ class GeckoProxy extends driver_1.JWProxy {
147
146
  }
148
147
  exports.GeckoProxy = GeckoProxy;
149
148
  const RUNNING_PROCESS_IDS = [];
149
+ const removeRunningProcessId = (pid) => {
150
+ let idx = RUNNING_PROCESS_IDS.indexOf(pid);
151
+ while (idx >= 0) {
152
+ RUNNING_PROCESS_IDS.splice(idx, 1);
153
+ idx = RUNNING_PROCESS_IDS.indexOf(pid);
154
+ }
155
+ };
150
156
  process.once('exit', () => {
151
- if (lodash_1.default.isEmpty(RUNNING_PROCESS_IDS)) {
157
+ if (RUNNING_PROCESS_IDS.length === 0) {
152
158
  return;
153
159
  }
154
160
  const command = support_1.system.isWindows()
@@ -230,7 +236,7 @@ class GeckoDriverServer {
230
236
  const pid = this._process.proc?.pid;
231
237
  if (pid) {
232
238
  RUNNING_PROCESS_IDS.push(pid);
233
- this._process.proc?.on('exit', () => void lodash_1.default.pull(RUNNING_PROCESS_IDS, pid));
239
+ this._process.proc?.on('exit', () => removeRunningProcessId(pid));
234
240
  }
235
241
  return (await this._proxy.command('/session', 'POST', {
236
242
  capabilities: {
@@ -1 +1 @@
1
- {"version":3,"file":"gecko.js","sourceRoot":"","sources":["../../lib/gecko.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gecko.js","sourceRoot":"","sources":["../../lib/gecko.ts"],"names":[],"mappings":"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"}
@@ -14,9 +14,9 @@ export declare function mkdirp(p: string): Promise<void>;
14
14
  /**
15
15
  * Extract a specific file from a tar.gz archive
16
16
  */
17
- export declare function extractFileFromTarGz(srcAcrhive: string, fileToExtract: string, dstPath: string): Promise<void>;
17
+ export declare function extractFileFromTarGz(srcArchive: string, fileToExtract: string, dstPath: string): Promise<void>;
18
18
  /**
19
19
  * Extract a specific file from a zip archive
20
20
  */
21
- export declare function extractFileFromZip(srcAcrhive: string, fileToExtract: string, dstPath: string): Promise<void>;
21
+ export declare function extractFileFromZip(srcArchive: string, fileToExtract: string, dstPath: string): Promise<void>;
22
22
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../lib/utils.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,eAAe,CAAC;AAKhD;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,YAAY,GAAG,YAAY,CAkBpE;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAEnF;AAED;;GAEG;AACH,wBAAsB,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAErD;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CACxC,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC,CAqCf;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC,CAqBf"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../lib/utils.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,eAAe,CAAC;AAKhD;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,YAAY,GAAG,YAAY,CAkBpE;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAEnF;AAED;;GAEG;AACH,wBAAsB,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAErD;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CACxC,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC,CAqCf;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC,CAqBf"}
@@ -8,7 +8,6 @@ exports.downloadToFile = downloadToFile;
8
8
  exports.mkdirp = mkdirp;
9
9
  exports.extractFileFromTarGz = extractFileFromTarGz;
10
10
  exports.extractFileFromZip = extractFileFromZip;
11
- const lodash_1 = __importDefault(require("lodash"));
12
11
  const support_1 = require("appium/support");
13
12
  const tar_stream_1 = __importDefault(require("tar-stream"));
14
13
  const node_zlib_1 = __importDefault(require("node:zlib"));
@@ -21,7 +20,7 @@ const GECKO_CAP_PREFIXES = ['moz:'];
21
20
  */
22
21
  function formatCapsForServer(caps) {
23
22
  const result = {};
24
- for (const [name, value] of lodash_1.default.toPairs(caps)) {
23
+ for (const [name, value] of Object.entries(caps)) {
25
24
  if (GECKO_CAP_PREFIXES.some((prefix) => name.startsWith(prefix)) ||
26
25
  driver_1.STANDARD_CAPS.has(name)) {
27
26
  result[name] = value;
@@ -32,7 +31,7 @@ function formatCapsForServer(caps) {
32
31
  }
33
32
  if (result.platformName) {
34
33
  // Geckodriver only supports lowercase platform names
35
- result.platformName = lodash_1.default.toLower(result.platformName);
34
+ result.platformName = result.platformName.toLowerCase();
36
35
  }
37
36
  return result;
38
37
  }
@@ -51,7 +50,7 @@ async function mkdirp(p) {
51
50
  /**
52
51
  * Extract a specific file from a tar.gz archive
53
52
  */
54
- async function extractFileFromTarGz(srcAcrhive, fileToExtract, dstPath) {
53
+ async function extractFileFromTarGz(srcArchive, fileToExtract, dstPath) {
55
54
  const chunks = [];
56
55
  const extract = tar_stream_1.default.extract();
57
56
  const extractPromise = new bluebird_1.default((resolve, reject) => {
@@ -77,20 +76,20 @@ async function extractFileFromTarGz(srcAcrhive, fileToExtract, dstPath) {
77
76
  }
78
77
  }
79
78
  else {
80
- return reject(new Error(`The file '${fileToExtract}' could not be found in the '${srcAcrhive}' archive`));
79
+ return reject(new Error(`The file '${fileToExtract}' could not be found in the '${srcArchive}' archive`));
81
80
  }
82
81
  resolve();
83
82
  });
84
83
  });
85
- support_1.fs.createReadStream(srcAcrhive).pipe(node_zlib_1.default.createGunzip()).pipe(extract);
84
+ support_1.fs.createReadStream(srcArchive).pipe(node_zlib_1.default.createGunzip()).pipe(extract);
86
85
  await extractPromise;
87
86
  }
88
87
  /**
89
88
  * Extract a specific file from a zip archive
90
89
  */
91
- async function extractFileFromZip(srcAcrhive, fileToExtract, dstPath) {
90
+ async function extractFileFromZip(srcArchive, fileToExtract, dstPath) {
92
91
  let didFindEntry = false;
93
- await support_1.zip.readEntries(srcAcrhive, async ({ entry, extractEntryTo }) => {
92
+ await support_1.zip.readEntries(srcArchive, async ({ entry, extractEntryTo }) => {
94
93
  if (didFindEntry || entry.fileName !== fileToExtract) {
95
94
  return;
96
95
  }
@@ -105,7 +104,7 @@ async function extractFileFromZip(srcAcrhive, fileToExtract, dstPath) {
105
104
  }
106
105
  });
107
106
  if (!didFindEntry) {
108
- throw new Error(`The file '${fileToExtract}' could not be found in the '${srcAcrhive}' archive`);
107
+ throw new Error(`The file '${fileToExtract}' could not be found in the '${srcArchive}' archive`);
109
108
  }
110
109
  }
111
110
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../lib/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../lib/utils.ts"],"names":[],"mappings":"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"}
package/lib/driver.ts CHANGED
@@ -1,4 +1,3 @@
1
- import _ from 'lodash';
2
1
  import type {
3
2
  RouteMatcher,
4
3
  DefaultCreateSessionResult,
@@ -37,7 +36,7 @@ export class GeckoDriver
37
36
 
38
37
  constructor(opts: InitialOpts = {} as InitialOpts) {
39
38
  super(opts);
40
- this.desiredCapConstraints = _.cloneDeep(desiredCapConstraints);
39
+ this.desiredCapConstraints = structuredClone(desiredCapConstraints);
41
40
  this.locatorStrategies = [
42
41
  'xpath',
43
42
  'tag name',
@@ -136,7 +135,7 @@ export class GeckoDriver
136
135
 
137
136
  private _extractWebSocketUrl(response: StringRecord): string | null {
138
137
  const webSocketUrl = (response?.capabilities as any)?.webSocketUrl;
139
- if (_.isEmpty(webSocketUrl) || !_.isString(webSocketUrl)) {
138
+ if (typeof webSocketUrl !== 'string' || webSocketUrl.length === 0) {
140
139
  return null;
141
140
  }
142
141
  try {
package/lib/gecko.ts CHANGED
@@ -1,4 +1,3 @@
1
- import _ from 'lodash';
2
1
  import os from 'node:os';
3
2
  import path from 'node:path';
4
3
  import {JWProxy, errors} from 'appium/driver';
@@ -79,7 +78,7 @@ class GeckoDriverProcess {
79
78
  const driverBin = await this.resolveGeckodriverBinary();
80
79
  const args: string[] = [];
81
80
  /* #region Options */
82
- switch (_.toLower(this.verbosity)) {
81
+ switch (this.verbosity?.toLowerCase()) {
83
82
  case VERBOSITY.DEBUG:
84
83
  args.push('-v');
85
84
  break;
@@ -90,7 +89,7 @@ class GeckoDriverProcess {
90
89
  if (this.noReset) {
91
90
  args.push('--connect-existing');
92
91
  // https://firefox-source-docs.mozilla.org/testing/geckodriver/Flags.html#code-connect-existing-code
93
- if (_.isNil(this.marionettePort)) {
92
+ if (this.marionettePort == null) {
94
93
  this.log.info(
95
94
  `'marionettePort' capability value is not provided while 'noReset' is enabled`,
96
95
  );
@@ -99,7 +98,7 @@ class GeckoDriverProcess {
99
98
  );
100
99
  }
101
100
  args.push('--marionette-port', `${this.marionettePort ?? DEFAULT_MARIONETTE_PORT}`);
102
- } else if (!_.isNil(this.marionettePort)) {
101
+ } else if (this.marionettePort != null) {
103
102
  args.push('--marionette-port', `${this.marionettePort}`);
104
103
  }
105
104
  /* #endregion */
@@ -110,7 +109,7 @@ class GeckoDriverProcess {
110
109
  }
111
110
  this._proc = new SubProcess(driverBin, args);
112
111
  this._proc.on('output', (stdout, stderr) => {
113
- const line = _.trim(stdout || stderr);
112
+ const line = (stdout || stderr).trim();
114
113
  if (line) {
115
114
  this.log.debug(`[${GD_BINARY}] ${line}`);
116
115
  }
@@ -173,8 +172,16 @@ export class GeckoProxy extends JWProxy {
173
172
  }
174
173
 
175
174
  const RUNNING_PROCESS_IDS: (number | undefined)[] = [];
175
+ const removeRunningProcessId = (pid: number): void => {
176
+ let idx = RUNNING_PROCESS_IDS.indexOf(pid);
177
+ while (idx >= 0) {
178
+ RUNNING_PROCESS_IDS.splice(idx, 1);
179
+ idx = RUNNING_PROCESS_IDS.indexOf(pid);
180
+ }
181
+ };
182
+
176
183
  process.once('exit', () => {
177
- if (_.isEmpty(RUNNING_PROCESS_IDS)) {
184
+ if (RUNNING_PROCESS_IDS.length === 0) {
178
185
  return;
179
186
  }
180
187
 
@@ -266,7 +273,7 @@ export class GeckoDriverServer {
266
273
  const pid = this._process.proc?.pid;
267
274
  if (pid) {
268
275
  RUNNING_PROCESS_IDS.push(pid);
269
- this._process.proc?.on('exit', () => void _.pull(RUNNING_PROCESS_IDS, pid));
276
+ this._process.proc?.on('exit', () => removeRunningProcessId(pid));
270
277
  }
271
278
 
272
279
  return (await this._proxy.command('/session', 'POST', {
package/lib/utils.ts CHANGED
@@ -1,4 +1,3 @@
1
- import _ from 'lodash';
2
1
  import {fs, net, zip, tempDir} from 'appium/support';
3
2
  import tar from 'tar-stream';
4
3
  import zlib from 'node:zlib';
@@ -14,7 +13,7 @@ const GECKO_CAP_PREFIXES = ['moz:'] as const;
14
13
  */
15
14
  export function formatCapsForServer(caps: StringRecord): StringRecord {
16
15
  const result: StringRecord = {};
17
- for (const [name, value] of _.toPairs(caps)) {
16
+ for (const [name, value] of Object.entries(caps)) {
18
17
  if (
19
18
  GECKO_CAP_PREFIXES.some((prefix) => name.startsWith(prefix)) ||
20
19
  STANDARD_CAPS.has(name as any)
@@ -27,7 +26,7 @@ export function formatCapsForServer(caps: StringRecord): StringRecord {
27
26
  }
28
27
  if (result.platformName) {
29
28
  // Geckodriver only supports lowercase platform names
30
- result.platformName = _.toLower(result.platformName);
29
+ result.platformName = result.platformName.toLowerCase();
31
30
  }
32
31
  return result;
33
32
  }
@@ -50,7 +49,7 @@ export async function mkdirp(p: string): Promise<void> {
50
49
  * Extract a specific file from a tar.gz archive
51
50
  */
52
51
  export async function extractFileFromTarGz(
53
- srcAcrhive: string,
52
+ srcArchive: string,
54
53
  fileToExtract: string,
55
54
  dstPath: string,
56
55
  ): Promise<void> {
@@ -79,7 +78,7 @@ export async function extractFileFromTarGz(
79
78
  } else {
80
79
  return reject(
81
80
  new Error(
82
- `The file '${fileToExtract}' could not be found in the '${srcAcrhive}' archive`,
81
+ `The file '${fileToExtract}' could not be found in the '${srcArchive}' archive`,
83
82
  ),
84
83
  );
85
84
  }
@@ -87,7 +86,7 @@ export async function extractFileFromTarGz(
87
86
  });
88
87
  });
89
88
 
90
- fs.createReadStream(srcAcrhive).pipe(zlib.createGunzip()).pipe(extract);
89
+ fs.createReadStream(srcArchive).pipe(zlib.createGunzip()).pipe(extract);
91
90
 
92
91
  await extractPromise;
93
92
  }
@@ -96,12 +95,12 @@ export async function extractFileFromTarGz(
96
95
  * Extract a specific file from a zip archive
97
96
  */
98
97
  export async function extractFileFromZip(
99
- srcAcrhive: string,
98
+ srcArchive: string,
100
99
  fileToExtract: string,
101
100
  dstPath: string,
102
101
  ): Promise<void> {
103
102
  let didFindEntry = false;
104
- await zip.readEntries(srcAcrhive, async ({entry, extractEntryTo}) => {
103
+ await zip.readEntries(srcArchive, async ({entry, extractEntryTo}) => {
105
104
  if (didFindEntry || entry.fileName !== fileToExtract) {
106
105
  return;
107
106
  }
@@ -117,7 +116,7 @@ export async function extractFileFromZip(
117
116
  });
118
117
  if (!didFindEntry) {
119
118
  throw new Error(
120
- `The file '${fileToExtract}' could not be found in the '${srcAcrhive}' archive`,
119
+ `The file '${fileToExtract}' could not be found in the '${srcArchive}' archive`,
121
120
  );
122
121
  }
123
122
  }
@@ -1,19 +1,18 @@
1
1
  {
2
2
  "name": "appium-geckodriver",
3
- "version": "2.2.2",
3
+ "version": "2.2.3",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "appium-geckodriver",
9
- "version": "2.2.2",
9
+ "version": "2.2.3",
10
10
  "license": "Apache-2.0",
11
11
  "dependencies": {
12
12
  "appium-adb": "^14.0.0",
13
13
  "asyncbox": "^6.0.1",
14
14
  "axios": "^1.7.7",
15
15
  "bluebird": "^3.5.1",
16
- "lodash": "^4.17.4",
17
16
  "portscanner": "2.2.0",
18
17
  "semver": "^7.6.3",
19
18
  "tar-stream": "^3.1.7",
@@ -26,7 +25,6 @@
26
25
  "@semantic-release/changelog": "^6.0.1",
27
26
  "@semantic-release/git": "^10.0.1",
28
27
  "@types/bluebird": "^3.5.38",
29
- "@types/lodash": "^4.14.196",
30
28
  "@types/mocha": "^10.0.1",
31
29
  "@types/node": "^25.0.0",
32
30
  "chai": "^6.0.0",
@@ -125,6 +123,19 @@
125
123
  "sharp": "0.34.5"
126
124
  }
127
125
  },
126
+ "node_modules/@appium/support/node_modules/asyncbox": {
127
+ "version": "6.1.0",
128
+ "resolved": "https://registry.npmjs.org/asyncbox/-/asyncbox-6.1.0.tgz",
129
+ "integrity": "sha512-KZwKNVnDdDe0ubN+fFMuHhSljZNHnbjdJABImoqFzQP61oIg6sMlhXIqOIu3WRd7YwW89q+eVj2Ty/Ax5dbh2Q==",
130
+ "license": "Apache-2.0",
131
+ "dependencies": {
132
+ "p-limit": "^7.2.0"
133
+ },
134
+ "engines": {
135
+ "node": "^20.19.0 || ^22.12.0 || >=24.0.0",
136
+ "npm": ">=10"
137
+ }
138
+ },
128
139
  "node_modules/@appium/support/node_modules/axios": {
129
140
  "version": "1.15.0",
130
141
  "resolved": "https://registry.npmjs.org/axios/-/axios-1.15.0.tgz",
@@ -436,15 +447,14 @@
436
447
  }
437
448
  },
438
449
  "node_modules/appium-adb": {
439
- "version": "14.3.3",
440
- "resolved": "https://registry.npmjs.org/appium-adb/-/appium-adb-14.3.3.tgz",
441
- "integrity": "sha512-prK1cwmhjdPvsObArul4k/5eW6STpvGJUVmuf41qxbv1JXbmV2GZmds0OhORXjOXaELsqKRqf86+mRS2PEBEFA==",
450
+ "version": "14.3.4",
451
+ "resolved": "https://registry.npmjs.org/appium-adb/-/appium-adb-14.3.4.tgz",
452
+ "integrity": "sha512-vjxKXP4JIAEKAmKh4dQF1E434JV5cec03n8aUNP3t+TFdw43rVQxbvbQ0fZ0ztaVl9/qWJsWjp6UA6OMwyciLQ==",
442
453
  "license": "Apache-2.0",
443
454
  "dependencies": {
444
455
  "@appium/support": "^7.0.0-rc.1",
445
456
  "async-lock": "^1.0.0",
446
457
  "asyncbox": "^6.0.1",
447
- "bluebird": "^3.4.7",
448
458
  "ini": "^6.0.0",
449
459
  "lodash": "^4.0.0",
450
460
  "lru-cache": "^11.1.0",
@@ -579,9 +589,9 @@
579
589
  "license": "MIT"
580
590
  },
581
591
  "node_modules/asyncbox": {
582
- "version": "6.1.0",
583
- "resolved": "https://registry.npmjs.org/asyncbox/-/asyncbox-6.1.0.tgz",
584
- "integrity": "sha512-KZwKNVnDdDe0ubN+fFMuHhSljZNHnbjdJABImoqFzQP61oIg6sMlhXIqOIu3WRd7YwW89q+eVj2Ty/Ax5dbh2Q==",
592
+ "version": "6.2.0",
593
+ "resolved": "https://registry.npmjs.org/asyncbox/-/asyncbox-6.2.0.tgz",
594
+ "integrity": "sha512-z1XpHkoT3y+1aXfazEY5d7HN2eOi50fLq7ZTxG0H4WegLxrtEAI5Vsc6OR9dOwoC3SJQLXyV0ZVnPEh6GIgMKQ==",
585
595
  "license": "Apache-2.0",
586
596
  "dependencies": {
587
597
  "p-limit": "^7.2.0"
@@ -598,12 +608,12 @@
598
608
  "license": "MIT"
599
609
  },
600
610
  "node_modules/axios": {
601
- "version": "1.15.2",
602
- "resolved": "https://registry.npmjs.org/axios/-/axios-1.15.2.tgz",
603
- "integrity": "sha512-wLrXxPtcrPTsNlJmKjkPnNPK2Ihe0hn0wGSaTEiHRPxwjvJwT3hKmXF4dpqxmPO9SoNb2FsYXj/xEo0gHN+D5A==",
611
+ "version": "1.16.0",
612
+ "resolved": "https://registry.npmjs.org/axios/-/axios-1.16.0.tgz",
613
+ "integrity": "sha512-6hp5CwvTPlN2A31g5dxnwAX0orzM7pmCRDLnZSX772mv8WDqICwFjowHuPs04Mc8deIld1+ejhtaMn5vp6b+1w==",
604
614
  "license": "MIT",
605
615
  "dependencies": {
606
- "follow-redirects": "^1.15.11",
616
+ "follow-redirects": "^1.16.0",
607
617
  "form-data": "^4.0.5",
608
618
  "proxy-from-env": "^2.1.0"
609
619
  }
@@ -667,9 +677,9 @@
667
677
  }
668
678
  },
669
679
  "node_modules/bare-os": {
670
- "version": "3.9.0",
671
- "resolved": "https://registry.npmjs.org/bare-os/-/bare-os-3.9.0.tgz",
672
- "integrity": "sha512-JTjuZyNIDpw+GytMO4a6TK1VXdVKKJr6DRxEHasyuYyShV2deuiHJK/ahGZlebc+SG0/wJCB9XK8gprBGDFi/Q==",
680
+ "version": "3.9.1",
681
+ "resolved": "https://registry.npmjs.org/bare-os/-/bare-os-3.9.1.tgz",
682
+ "integrity": "sha512-6M5XjcnsygQNPMCMPXSK379xrJFiZ/AEMNBmFEmQW8d/789VQATvriyi5r0HYTL9TkQ26rn3kgdTG3aisbrXkQ==",
673
683
  "license": "Apache-2.0",
674
684
  "engines": {
675
685
  "bare": ">=1.14.0"
@@ -1524,9 +1534,9 @@
1524
1534
  }
1525
1535
  },
1526
1536
  "node_modules/hosted-git-info": {
1527
- "version": "9.0.2",
1528
- "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-9.0.2.tgz",
1529
- "integrity": "sha512-M422h7o/BR3rmCQ8UHi7cyyMqKltdP9Uo+J2fXK+RSAY+wTcKOIRyhTuKv4qn+DJf3g+PL890AzId5KZpX+CBg==",
1537
+ "version": "9.0.3",
1538
+ "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-9.0.3.tgz",
1539
+ "integrity": "sha512-Hc+ghLoSt6QaYZUv0WBiIvmMDZuZZ7oaDvdH8MbfOO4lOsxdXLEvuC6ePoGs9H1X9oCLyq6+NVN0MKqD+ydxyg==",
1530
1540
  "license": "ISC",
1531
1541
  "dependencies": {
1532
1542
  "lru-cache": "^11.1.0"
package/package.json CHANGED
@@ -7,7 +7,7 @@
7
7
  "seamonkey",
8
8
  "firefox"
9
9
  ],
10
- "version": "2.2.2",
10
+ "version": "2.2.3",
11
11
  "author": "Appium Contributors",
12
12
  "license": "Apache-2.0",
13
13
  "repository": {
@@ -62,7 +62,6 @@
62
62
  "asyncbox": "^6.0.1",
63
63
  "axios": "^1.7.7",
64
64
  "bluebird": "^3.5.1",
65
- "lodash": "^4.17.4",
66
65
  "portscanner": "2.2.0",
67
66
  "semver": "^7.6.3",
68
67
  "tar-stream": "^3.1.7",
@@ -88,7 +87,6 @@
88
87
  "@semantic-release/changelog": "^6.0.1",
89
88
  "@semantic-release/git": "^10.0.1",
90
89
  "@types/bluebird": "^3.5.38",
91
- "@types/lodash": "^4.14.196",
92
90
  "@types/mocha": "^10.0.1",
93
91
  "@types/node": "^25.0.0",
94
92
  "chai": "^6.0.0",
@@ -1,6 +1,5 @@
1
1
  import axios from 'axios';
2
2
  import * as semver from 'semver';
3
- import _ from 'lodash';
4
3
  import path from 'node:path';
5
4
  import { tmpdir } from 'node:os';
6
5
  import { log } from '../build/lib/logger.js';
@@ -21,7 +20,8 @@ const API_TIMEOUT_MS = 45 * 1000;
21
20
  const STABLE_VERSION = 'stable';
22
21
  const EXT_TAR_GZ = '.tar.gz';
23
22
  const EXT_ZIP = '.zip';
24
- const EXT_REGEXP = new RegExp(`(${_.escapeRegExp(EXT_TAR_GZ)}|${_.escapeRegExp(EXT_ZIP)})$`);
23
+ const escapeRegExp = (value) => value.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
24
+ const EXT_REGEXP = new RegExp(`(${escapeRegExp(EXT_TAR_GZ)}|${escapeRegExp(EXT_ZIP)})$`);
25
25
  const ARCHIVE_NAME_PREFIX = 'geckodriver-v';
26
26
  const ARCH_MAPPING = Object.freeze({
27
27
  ia32: '32',
@@ -56,7 +56,7 @@ function parseNextPageUrl(headers) {
56
56
  }
57
57
 
58
58
  for (const part of headers.link.split(';')) {
59
- const [rel, pageUrl] = part.split(',').map(_.trim);
59
+ const [rel, pageUrl] = part.split(',').map((item) => item.trim());
60
60
  if (rel === 'rel="next"' && pageUrl) {
61
61
  return pageUrl.replace(/^<|>$/g, '');
62
62
  }
@@ -123,8 +123,8 @@ async function listReleases() {
123
123
  const assetName = asset?.name;
124
124
  const downloadUrl = asset?.browser_download_url;
125
125
  if (
126
- !_.startsWith(assetName, ARCHIVE_NAME_PREFIX)
127
- || !(_.endsWith(assetName, EXT_TAR_GZ) || _.endsWith(assetName, EXT_ZIP))
126
+ !assetName?.startsWith(ARCHIVE_NAME_PREFIX)
127
+ || !(assetName?.endsWith(EXT_TAR_GZ) || assetName?.endsWith(EXT_ZIP))
128
128
  || !downloadUrl
129
129
  ) {
130
130
  continue;
@@ -154,7 +154,7 @@ function selectRelease(releases, version) {
154
154
  const stableReleasesAsc = releases
155
155
  .filter(({isDraft, isPrerelease}) => !isDraft && !isPrerelease)
156
156
  .toSorted((a, b) => a.version.compare(b.version));
157
- const dstRelease = _.last(stableReleasesAsc);
157
+ const dstRelease = stableReleasesAsc.at(-1);
158
158
  if (!dstRelease) {
159
159
  throw new Error(`Cannot find any stable GeckoDriver release: ${JSON.stringify(releases)}`);
160
160
  }
@@ -180,7 +180,7 @@ function selectRelease(releases, version) {
180
180
  * @returns {ReleaseAsset}
181
181
  */
182
182
  function selectAsset(release) {
183
- if (_.isEmpty(release.assets)) {
183
+ if (release.assets.length === 0) {
184
184
  throw new Error(`GeckoDriver v${release.version} does not contain any matching releases`);
185
185
  }
186
186
  const dstPlatform = PLATFORM_MAPPING[process.platform];
@@ -189,7 +189,7 @@ function selectAsset(release) {
189
189
  /** @type {(filterFunc: (string) => boolean) => null|ReleaseAsset} */
190
190
  const findAssetMatch = (filterFunc) => {
191
191
  for (const asset of release.assets) {
192
- if (!dstPlatform || !_.includes(asset.name, `-${dstPlatform}`)) {
192
+ if (!dstPlatform || !asset.name.includes(`-${dstPlatform}`)) {
193
193
  continue;
194
194
  }
195
195
  const nameWoExt = asset.name.replace(EXT_REGEXP, '');
@@ -203,8 +203,8 @@ function selectAsset(release) {
203
203
  // Try to find an exact match
204
204
  const exactMatch = findAssetMatch(
205
205
  (nameWoExt) =>
206
- (dstArch === 'aarch64' && _.endsWith(nameWoExt, `-${dstArch}`))
207
- || (['64', '32'].includes(dstArch) && _.endsWith(nameWoExt, `-${dstPlatform}${dstArch}`))
206
+ (dstArch === 'aarch64' && nameWoExt.endsWith(`-${dstArch}`))
207
+ || (['64', '32'].includes(dstArch) && nameWoExt.endsWith(`-${dstPlatform}${dstArch}`))
208
208
  );
209
209
  if (exactMatch) {
210
210
  return exactMatch;
@@ -212,8 +212,8 @@ function selectAsset(release) {
212
212
  // If no exact match has been been found then try a loose one
213
213
  const looseMatch = findAssetMatch(
214
214
  (nameWoExt) =>
215
- _.endsWith(nameWoExt, `-${dstPlatform}`)
216
- || (dstArch === '64' && _.endsWith(nameWoExt, `-${dstPlatform}32`))
215
+ nameWoExt.endsWith(`-${dstPlatform}`)
216
+ || (dstArch === '64' && nameWoExt.endsWith(`-${dstPlatform}32`))
217
217
  );
218
218
  if (looseMatch) {
219
219
  return looseMatch;