@appium/base-driver 10.0.1 → 10.1.1

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":"routes.js","sourceRoot":"","sources":["../../../lib/protocol/routes.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"routes.js","sourceRoot":"","sources":["../../../lib/protocol/routes.js"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@ import type {
6
6
  StandardCapabilities,
7
7
  } from '@appium/types';
8
8
  import type {
9
- StringKeyOf,
9
+ KeyAsString,
10
10
  MergeExclusive,
11
11
  } from 'type-fest';
12
12
  import _ from 'lodash';
@@ -112,7 +112,7 @@ export function validateCaps<C extends Constraints>(
112
112
 
113
113
  /**
114
114
  * Standard, non-prefixed capabilities
115
- * @see https://www.w3.org/TR/webdriver/#dfn-table-of-standard-capabilities)
115
+ * @see https://www.w3.org/TR/webdriver2/#dfn-table-of-standard-capabilities)
116
116
  */
117
117
  export const STANDARD_CAPS = Object.freeze(
118
118
  new Set(
@@ -125,9 +125,11 @@ export const STANDARD_CAPS = Object.freeze(
125
125
  'proxy',
126
126
  'setWindowRect',
127
127
  'timeouts',
128
+ 'strictFileInteractability',
128
129
  'unhandledPromptBehavior',
130
+ 'userAgent',
129
131
  'webSocketUrl',
130
- ]) as StringKeyOf<StandardCapabilities>[]
132
+ ]) as KeyAsString<StandardCapabilities>[]
131
133
  )
132
134
  );
133
135
 
@@ -155,7 +157,7 @@ export function stripAppiumPrefixes<C extends Constraints>(caps: NSCapabilities<
155
157
 
156
158
  // Strip out the 'appium:' prefix
157
159
  for (const prefixedCap of prefixedCaps) {
158
- const strippedCapName = prefixedCap.substring(APPIUM_VENDOR_PREFIX.length) as StringKeyOf<Capabilities<C>>;
160
+ const strippedCapName = prefixedCap.substring(APPIUM_VENDOR_PREFIX.length) as KeyAsString<Capabilities<C>>;
159
161
 
160
162
  // If it's standard capability that was prefixed, add it to an array of incorrectly prefixed capabilities
161
163
  if (isStandardCap(strippedCapName)) {
@@ -59,13 +59,13 @@ process.on('exit', () => {
59
59
  });
60
60
 
61
61
  /**
62
- * Perform inital application package configuration
62
+ * Perform initial application package configuration
63
63
  * to prepare it for the further consumption by a driver:
64
64
  *
65
65
  * - Manages caching logic
66
66
  * - Downloads the app from a remote URL to the local filesystem
67
67
  * - Determines package name
68
- * - Checks basic requiremenets on the application package
68
+ * - Checks basic requirements on the application package
69
69
  *
70
70
  * @param {string} app
71
71
  * @param {string|string[]|import('@appium/types').ConfigureAppOptions} options
@@ -86,6 +86,39 @@ export function defaultToJSONContentType(req, res, next) {
86
86
  next();
87
87
  }
88
88
 
89
+ /**
90
+ * Core function to handle WebSocket upgrade requests by matching the request path
91
+ * against registered WebSocket handlers in the webSocketsMapping.
92
+ *
93
+ * @param {import('http').IncomingMessage} req - The HTTP request
94
+ * @param {import('stream').Duplex} socket - The network socket
95
+ * @param {Buffer} head - The first packet of the upgraded stream
96
+ * @param {import('@appium/types').StringRecord<import('@appium/types').WSServer>} webSocketsMapping - Mapping of paths to WebSocket servers
97
+ * @returns {boolean} - Returns true if the upgrade was handled, false otherwise
98
+ */
99
+ export function tryHandleWebSocketUpgrade(req, socket, head, webSocketsMapping) {
100
+ if (_.toLower(req.headers?.upgrade) !== 'websocket') {
101
+ return false;
102
+ }
103
+
104
+ let currentPathname;
105
+ try {
106
+ currentPathname = new URL(req.url ?? '', 'http://localhost').pathname;
107
+ } catch {
108
+ currentPathname = req.url ?? '';
109
+ }
110
+ for (const [pathname, wsServer] of _.toPairs(webSocketsMapping)) {
111
+ if (match(pathname)(currentPathname)) {
112
+ wsServer.handleUpgrade(req, socket, head, (ws) => {
113
+ wsServer.emit('connection', ws, req);
114
+ });
115
+ return true;
116
+ }
117
+ }
118
+ log.info(`Did not match the websocket upgrade request at ${currentPathname} to any known route`);
119
+ return false;
120
+ }
121
+
89
122
  /**
90
123
  *
91
124
  * @param {import('@appium/types').StringRecord<import('@appium/types').WSServer>} webSocketsMapping
@@ -93,23 +126,9 @@ export function defaultToJSONContentType(req, res, next) {
93
126
  */
94
127
  export function handleUpgrade(webSocketsMapping) {
95
128
  return (req, res, next) => {
96
- if (!req.headers?.upgrade || _.toLower(req.headers.upgrade) !== 'websocket') {
97
- return next();
98
- }
99
- let currentPathname;
100
- try {
101
- currentPathname = new URL(req.url ?? '').pathname;
102
- } catch {
103
- currentPathname = req.url ?? '';
104
- }
105
- for (const [pathname, wsServer] of _.toPairs(webSocketsMapping)) {
106
- if (match(pathname)(currentPathname)) {
107
- return wsServer.handleUpgrade(req, req.socket, Buffer.from(''), (ws) => {
108
- wsServer.emit('connection', ws, req);
109
- });
110
- }
129
+ if (tryHandleWebSocketUpgrade(req, req.socket, Buffer.from(''), webSocketsMapping)) {
130
+ return;
111
131
  }
112
- log.info(`Did not match the websocket upgrade request at ${currentPathname} to any known route`);
113
132
  next();
114
133
  };
115
134
  }
@@ -14,6 +14,7 @@ import {
14
14
  allowCrossDomainAsyncExecute,
15
15
  handleIdempotency,
16
16
  handleUpgrade,
17
+ tryHandleWebSocketUpgrade,
17
18
  catch404Handler,
18
19
  handleLogContext,
19
20
  } from './middleware';
@@ -31,45 +32,6 @@ import {fs, timing} from '@appium/support';
31
32
 
32
33
  const KEEP_ALIVE_TIMEOUT_MS = 10 * 60 * 1000; // 10 minutes
33
34
 
34
- /**
35
- *
36
- * @param {import('express').Express} app
37
- * @param {Partial<import('@appium/types').ServerArgs>} [cliArgs]
38
- * @returns {Promise<http.Server>}
39
- */
40
- async function createServer (app, cliArgs) {
41
- const {sslCertificatePath, sslKeyPath} = cliArgs ?? {};
42
- if (!sslCertificatePath && !sslKeyPath) {
43
- return http.createServer(app);
44
- }
45
- if (!sslCertificatePath || !sslKeyPath) {
46
- throw new Error(`Both certificate path and key path must be provided to enable TLS`);
47
- }
48
-
49
- const certKey = [sslCertificatePath, sslKeyPath];
50
- const zipped = _.zip(
51
- await B.all(certKey.map((p) => fs.exists(p))),
52
- ['certificate', 'key'],
53
- certKey,
54
- );
55
- for (const [exists, desc, p] of zipped) {
56
- if (!exists) {
57
- throw new Error(`The provided SSL ${desc} at '${p}' does not exist or is not accessible`);
58
- }
59
- }
60
- const [cert, key] = await B.all(certKey.map((p) => fs.readFile(p, 'utf8')));
61
- log.debug('Enabling TLS/SPDY on the server using the provided certificate');
62
-
63
- return require('spdy').createServer({
64
- cert,
65
- key,
66
- spdy: {
67
- plain: false,
68
- ssl: true,
69
- }
70
- }, app);
71
- }
72
-
73
35
  /**
74
36
  *
75
37
  * @param {ServerOpts} opts
@@ -105,6 +67,7 @@ export async function server(opts) {
105
67
  keepAliveTimeout,
106
68
  gracefulShutdownTimeout: cliArgs.shutdownTimeout,
107
69
  });
70
+ const useLegacyUpgradeHandler = !hasShouldUpgradeCallback(httpServer);
108
71
  configureServer({
109
72
  app,
110
73
  addRoutes: routeConfiguringFunction,
@@ -112,6 +75,7 @@ export async function server(opts) {
112
75
  basePath,
113
76
  extraMethodMap,
114
77
  webSocketsMapping: appiumServer.webSocketsMapping,
78
+ useLegacyUpgradeHandler,
115
79
  });
116
80
  // allow extensions to update the app and http server objects
117
81
  for (const updater of serverUpdaters) {
@@ -149,6 +113,7 @@ export function configureServer({
149
113
  basePath = DEFAULT_BASE_PATH,
150
114
  extraMethodMap = {},
151
115
  webSocketsMapping = {},
116
+ useLegacyUpgradeHandler = true,
152
117
  }) {
153
118
  basePath = normalizeBasePath(basePath);
154
119
 
@@ -164,7 +129,12 @@ export function configureServer({
164
129
  app.use(`${basePath}/produce_error`, produceError);
165
130
  app.use(`${basePath}/crash`, produceCrash);
166
131
 
167
- app.use(handleUpgrade(webSocketsMapping));
132
+ // Only use legacy Express middleware for WebSocket upgrades if shouldUpgradeCallback is not available
133
+ // When shouldUpgradeCallback is available, upgrades are handled directly on the HTTP server
134
+ // to avoid Express middleware timeout issues with long-lived connections
135
+ if (useLegacyUpgradeHandler) {
136
+ app.use(handleUpgrade(webSocketsMapping));
137
+ }
168
138
  if (allowCors) {
169
139
  app.use(allowCrossDomain);
170
140
  } else {
@@ -191,6 +161,68 @@ export function configureServer({
191
161
  app.all('/test/guinea-pig-app-banner', guineaPigAppBanner);
192
162
  }
193
163
 
164
+ /**
165
+ * Normalize base path string
166
+ * @param {string} basePath
167
+ * @returns {string}
168
+ */
169
+ export function normalizeBasePath(basePath) {
170
+ if (!_.isString(basePath)) {
171
+ throw new Error(`Invalid path prefix ${basePath}`);
172
+ }
173
+
174
+ // ensure the path prefix does not end in '/', since our method map
175
+ // starts all paths with '/'
176
+ basePath = basePath.replace(/\/$/, '');
177
+
178
+ // likewise, ensure the path prefix does always START with /, unless the path
179
+ // is empty meaning no base path at all
180
+ if (basePath !== '' && !basePath.startsWith('/')) {
181
+ basePath = `/${basePath}`;
182
+ }
183
+
184
+ return basePath;
185
+ }
186
+
187
+ /**
188
+ *
189
+ * @param {import('express').Express} app
190
+ * @param {Partial<import('@appium/types').ServerArgs>} [cliArgs]
191
+ * @returns {Promise<http.Server>}
192
+ */
193
+ async function createServer (app, cliArgs) {
194
+ const {sslCertificatePath, sslKeyPath} = cliArgs ?? {};
195
+ if (!sslCertificatePath && !sslKeyPath) {
196
+ return http.createServer(app);
197
+ }
198
+ if (!sslCertificatePath || !sslKeyPath) {
199
+ throw new Error(`Both certificate path and key path must be provided to enable TLS`);
200
+ }
201
+
202
+ const certKey = [sslCertificatePath, sslKeyPath];
203
+ const zipped = _.zip(
204
+ await B.all(certKey.map((p) => fs.exists(p))),
205
+ ['certificate', 'key'],
206
+ certKey,
207
+ );
208
+ for (const [exists, desc, p] of zipped) {
209
+ if (!exists) {
210
+ throw new Error(`The provided SSL ${desc} at '${p}' does not exist or is not accessible`);
211
+ }
212
+ }
213
+ const [cert, key] = await B.all(certKey.map((p) => fs.readFile(p, 'utf8')));
214
+ log.debug('Enabling TLS/SPDY on the server using the provided certificate');
215
+
216
+ return require('spdy').createServer({
217
+ cert,
218
+ key,
219
+ spdy: {
220
+ plain: false,
221
+ ssl: true,
222
+ }
223
+ }, app);
224
+ }
225
+
194
226
  /**
195
227
  * Monkeypatches the `http.Server` instance and returns a {@linkcode AppiumServer}.
196
228
  * This function _mutates_ the `httpServer` parameter.
@@ -212,6 +244,20 @@ function configureHttp({httpServer, reject, keepAliveTimeout, gracefulShutdownTi
212
244
  return Boolean(this['_spdyState']?.secure);
213
245
  };
214
246
 
247
+ // This avoids Express middleware timeout issues with long-lived WebSocket connections
248
+ // See: https://github.com/appium/appium/issues/20760
249
+ // See: https://github.com/nodejs/node/pull/59824
250
+ if (hasShouldUpgradeCallback(httpServer)) {
251
+ // shouldUpgradeCallback only returns a boolean to indicate if the upgrade should proceed
252
+ // eslint-disable-next-line dot-notation
253
+ appiumServer['shouldUpgradeCallback'] = (req) => _.toLower(req.headers?.upgrade) === 'websocket';
254
+ appiumServer.on('upgrade', (req, socket, head) => {
255
+ if (!tryHandleWebSocketUpgrade(req, socket, head, appiumServer.webSocketsMapping)) {
256
+ socket.destroy();
257
+ }
258
+ });
259
+ }
260
+
215
261
  // http.Server.close() only stops new connections, but we need to wait until
216
262
  // all connections are closed and the `close` event is emitted
217
263
  const originalClose = appiumServer.close.bind(appiumServer);
@@ -294,29 +340,23 @@ async function startServer({
294
340
  }
295
341
 
296
342
  /**
297
- * Normalize base path string
298
- * @param {string} basePath
299
- * @returns {string}
343
+ * Checks if the provided server instance supports `shouldUpgradeCallback`.
344
+ * This feature was added in Node.js v22.21.0 (LTS) and v24.9.0.
345
+ * @param {import('http').Server} server - The HTTP server instance to check
346
+ * @returns {boolean}
300
347
  */
301
- export function normalizeBasePath(basePath) {
302
- if (!_.isString(basePath)) {
303
- throw new Error(`Invalid path prefix ${basePath}`);
304
- }
305
-
306
- // ensure the path prefix does not end in '/', since our method map
307
- // starts all paths with '/'
308
- basePath = basePath.replace(/\/$/, '');
309
-
310
- // likewise, ensure the path prefix does always START with /, unless the path
311
- // is empty meaning no base path at all
312
- if (basePath !== '' && !basePath.startsWith('/')) {
313
- basePath = `/${basePath}`;
348
+ function hasShouldUpgradeCallback(server) {
349
+ // Check if shouldUpgradeCallback is available on http.Server
350
+ // This is a runtime check that works regardless of TypeScript types
351
+ try {
352
+ // Use bracket notation to access property that may not exist in type definitions
353
+ // eslint-disable-next-line dot-notation
354
+ return typeof server['shouldUpgradeCallback'] !== 'undefined';
355
+ } catch {
356
+ return false;
314
357
  }
315
-
316
- return basePath;
317
358
  }
318
359
 
319
-
320
360
  /**
321
361
  * Options for {@linkcode startServer}.
322
362
  * @typedef StartServerOpts
@@ -386,4 +426,6 @@ export function normalizeBasePath(basePath) {
386
426
  * @property {string} [basePath]
387
427
  * @property {MethodMap} [extraMethodMap]
388
428
  * @property {import('@appium/types').StringRecord} [webSocketsMapping={}]
429
+ * @property {boolean} [useLegacyUpgradeHandler=true] - Whether to use legacy Express middleware for WebSocket upgrades.
430
+ * Set to false when using shouldUpgradeCallback on the HTTP server (Node.js >= 22.21.0 or >= 24.9.0).
389
431
  */
@@ -3,7 +3,7 @@
3
3
  import _ from 'lodash';
4
4
 
5
5
  /**
6
- * Determine whether the given agument is valid
6
+ * Determine whether the given argument is valid
7
7
  * W3C capabilities instance.
8
8
  *
9
9
  * @param {any} caps
@@ -59,7 +59,7 @@ export function fixCaps(oldCaps, desiredCapConstraints, log) {
59
59
  }
60
60
 
61
61
  // int capabilities are often sent in as strings by frameworks
62
- let intCaps = /** @type {import('type-fest').StringKeyOf<typeof caps>[]} */ (
62
+ let intCaps = /** @type {import('type-fest').KeyAsString<typeof caps>[]} */ (
63
63
  _.keys(_.pickBy(desiredCapConstraints, (k) => k.isNumber === true))
64
64
  );
65
65
  for (let cap of intCaps) {