appium 3.3.0 → 3.3.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.
- package/build/lib/appium.d.ts +147 -205
- package/build/lib/appium.d.ts.map +1 -1
- package/build/lib/appium.js +169 -282
- package/build/lib/appium.js.map +1 -1
- package/build/lib/bidi-commands.d.ts.map +1 -1
- package/build/lib/bidi-commands.js +11 -11
- package/build/lib/bidi-commands.js.map +1 -1
- package/build/lib/bootstrap/appium-initializer.d.ts +21 -0
- package/build/lib/bootstrap/appium-initializer.d.ts.map +1 -0
- package/build/lib/bootstrap/appium-initializer.js +146 -0
- package/build/lib/bootstrap/appium-initializer.js.map +1 -0
- package/build/lib/bootstrap/appium-main-runner.d.ts +22 -0
- package/build/lib/bootstrap/appium-main-runner.d.ts.map +1 -0
- package/build/lib/bootstrap/appium-main-runner.js +109 -0
- package/build/lib/bootstrap/appium-main-runner.js.map +1 -0
- package/build/lib/bootstrap/config-file.d.ts +37 -0
- package/build/lib/bootstrap/config-file.d.ts.map +1 -0
- package/build/lib/{config-file.js → bootstrap/config-file.js} +9 -26
- package/build/lib/bootstrap/config-file.js.map +1 -0
- package/build/lib/bootstrap/grid-v3-register.d.ts +20 -0
- package/build/lib/bootstrap/grid-v3-register.d.ts.map +1 -0
- package/build/lib/{grid-register.js → bootstrap/grid-v3-register.js} +28 -13
- package/build/lib/bootstrap/grid-v3-register.js.map +1 -0
- package/build/lib/bootstrap/init-types.d.ts +16 -0
- package/build/lib/bootstrap/init-types.d.ts.map +1 -0
- package/build/lib/bootstrap/init-types.js +3 -0
- package/build/lib/bootstrap/init-types.js.map +1 -0
- package/build/lib/bootstrap/main-helpers.d.ts +55 -0
- package/build/lib/bootstrap/main-helpers.d.ts.map +1 -0
- package/build/lib/bootstrap/main-helpers.js +187 -0
- package/build/lib/bootstrap/main-helpers.js.map +1 -0
- package/build/lib/bootstrap/node-helpers.d.ts +32 -0
- package/build/lib/bootstrap/node-helpers.d.ts.map +1 -0
- package/build/lib/bootstrap/node-helpers.js +201 -0
- package/build/lib/bootstrap/node-helpers.js.map +1 -0
- package/build/lib/bootstrap/startup-config.d.ts +22 -0
- package/build/lib/bootstrap/startup-config.d.ts.map +1 -0
- package/build/lib/bootstrap/startup-config.js +111 -0
- package/build/lib/bootstrap/startup-config.js.map +1 -0
- package/build/lib/cli/args.d.ts.map +1 -1
- package/build/lib/cli/args.js +9 -9
- package/build/lib/cli/args.js.map +1 -1
- package/build/lib/cli/extension-command.d.ts +95 -95
- package/build/lib/cli/extension-command.d.ts.map +1 -1
- package/build/lib/cli/extension-command.js +18 -18
- package/build/lib/cli/extension-command.js.map +1 -1
- package/build/lib/cli/extension.d.ts +1 -1
- package/build/lib/cli/extension.d.ts.map +1 -1
- package/build/lib/cli/extension.js +5 -5
- package/build/lib/cli/extension.js.map +1 -1
- package/build/lib/cli/parser.d.ts +8 -8
- package/build/lib/cli/parser.d.ts.map +1 -1
- package/build/lib/cli/parser.js +49 -49
- package/build/lib/cli/parser.js.map +1 -1
- package/build/lib/cli/setup-command.js +6 -6
- package/build/lib/cli/setup-command.js.map +1 -1
- package/build/lib/cli/utils.d.ts +17 -17
- package/build/lib/cli/utils.d.ts.map +1 -1
- package/build/lib/cli/utils.js +29 -29
- package/build/lib/cli/utils.js.map +1 -1
- package/build/lib/doctor/doctor.d.ts +2 -2
- package/build/lib/doctor/doctor.d.ts.map +1 -1
- package/build/lib/doctor/doctor.js +6 -6
- package/build/lib/doctor/doctor.js.map +1 -1
- package/build/lib/extension/driver-config.d.ts +18 -77
- package/build/lib/extension/driver-config.d.ts.map +1 -1
- package/build/lib/extension/driver-config.js +37 -125
- package/build/lib/extension/driver-config.js.map +1 -1
- package/build/lib/extension/extension-config.d.ts +103 -210
- package/build/lib/extension/extension-config.d.ts.map +1 -1
- package/build/lib/extension/extension-config.js +180 -342
- package/build/lib/extension/extension-config.js.map +1 -1
- package/build/lib/extension/index.d.ts +12 -29
- package/build/lib/extension/index.d.ts.map +1 -1
- package/build/lib/extension/index.js +33 -75
- package/build/lib/extension/index.js.map +1 -1
- package/build/lib/extension/manifest-migrations.d.ts +3 -20
- package/build/lib/extension/manifest-migrations.d.ts.map +1 -1
- package/build/lib/extension/manifest-migrations.js +20 -101
- package/build/lib/extension/manifest-migrations.js.map +1 -1
- package/build/lib/extension/manifest.d.ts +61 -107
- package/build/lib/extension/manifest.d.ts.map +1 -1
- package/build/lib/extension/manifest.js +181 -356
- package/build/lib/extension/manifest.js.map +1 -1
- package/build/lib/extension/package-changed.d.ts +1 -3
- package/build/lib/extension/package-changed.d.ts.map +1 -1
- package/build/lib/extension/package-changed.js +8 -15
- package/build/lib/extension/package-changed.js.map +1 -1
- package/build/lib/extension/plugin-config.d.ts +10 -52
- package/build/lib/extension/plugin-config.d.ts.map +1 -1
- package/build/lib/extension/plugin-config.js +11 -63
- package/build/lib/extension/plugin-config.js.map +1 -1
- package/build/lib/helpers/build.d.ts +22 -0
- package/build/lib/helpers/build.d.ts.map +1 -0
- package/build/lib/helpers/build.js +109 -0
- package/build/lib/helpers/build.js.map +1 -0
- package/build/lib/helpers/capability.d.ts +38 -0
- package/build/lib/helpers/capability.d.ts.map +1 -0
- package/build/lib/helpers/capability.js +128 -0
- package/build/lib/helpers/capability.js.map +1 -0
- package/build/lib/helpers/network.d.ts +14 -0
- package/build/lib/helpers/network.d.ts.map +1 -0
- package/build/lib/helpers/network.js +35 -0
- package/build/lib/helpers/network.js.map +1 -0
- package/build/lib/insecure-features.js +6 -6
- package/build/lib/insecure-features.js.map +1 -1
- package/build/lib/inspector-commands.d.ts +6 -0
- package/build/lib/inspector-commands.d.ts.map +1 -1
- package/build/lib/inspector-commands.js +6 -0
- package/build/lib/inspector-commands.js.map +1 -1
- package/build/lib/logger.d.ts +2 -3
- package/build/lib/logger.d.ts.map +1 -1
- package/build/lib/logger.js +2 -3
- package/build/lib/logger.js.map +1 -1
- package/build/lib/main.d.ts +15 -58
- package/build/lib/main.d.ts.map +1 -1
- package/build/lib/main.js +25 -425
- package/build/lib/main.js.map +1 -1
- package/build/lib/schema/cli-args-guards.d.ts +34 -0
- package/build/lib/schema/cli-args-guards.d.ts.map +1 -0
- package/build/lib/schema/cli-args-guards.js +49 -0
- package/build/lib/schema/cli-args-guards.js.map +1 -0
- package/build/lib/schema/cli-args.js +2 -2
- package/build/lib/schema/cli-args.js.map +1 -1
- package/build/lib/schema/format-errors.d.ts +28 -0
- package/build/lib/schema/format-errors.d.ts.map +1 -0
- package/build/lib/schema/format-errors.js +29 -0
- package/build/lib/schema/format-errors.js.map +1 -0
- package/build/lib/schema/index.d.ts +2 -0
- package/build/lib/schema/index.d.ts.map +1 -1
- package/build/lib/schema/index.js +2 -0
- package/build/lib/schema/index.js.map +1 -1
- package/build/lib/schema/schema.d.ts +15 -15
- package/build/lib/schema/schema.d.ts.map +1 -1
- package/build/lib/schema/schema.js +37 -37
- package/build/lib/schema/schema.js.map +1 -1
- package/build/lib/utils.d.ts +0 -81
- package/build/lib/utils.d.ts.map +1 -1
- package/build/lib/utils.js +1 -248
- package/build/lib/utils.js.map +1 -1
- package/lib/{appium.js → appium.ts} +297 -341
- package/lib/bidi-commands.ts +10 -14
- package/lib/bootstrap/appium-initializer.ts +212 -0
- package/lib/bootstrap/appium-main-runner.ts +172 -0
- package/lib/{config-file.ts → bootstrap/config-file.ts} +29 -63
- package/lib/{grid-register.ts → bootstrap/grid-v3-register.ts} +35 -35
- package/lib/bootstrap/init-types.ts +31 -0
- package/lib/bootstrap/main-helpers.ts +223 -0
- package/lib/bootstrap/node-helpers.ts +180 -0
- package/lib/bootstrap/startup-config.ts +143 -0
- package/lib/cli/args.ts +10 -10
- package/lib/cli/extension-command.ts +132 -132
- package/lib/cli/extension.ts +7 -7
- package/lib/cli/parser.ts +50 -50
- package/lib/cli/setup-command.ts +2 -2
- package/lib/cli/utils.ts +33 -33
- package/lib/doctor/doctor.ts +8 -8
- package/lib/extension/driver-config.ts +165 -0
- package/lib/extension/{extension-config.js → extension-config.ts} +291 -405
- package/lib/extension/index.ts +143 -0
- package/lib/extension/manifest-migrations.ts +57 -0
- package/lib/extension/manifest.ts +369 -0
- package/lib/extension/{package-changed.js → package-changed.ts} +9 -18
- package/lib/extension/plugin-config.ts +62 -0
- package/lib/helpers/build.ts +111 -0
- package/lib/helpers/capability.ts +171 -0
- package/lib/helpers/network.ts +30 -0
- package/lib/insecure-features.ts +1 -1
- package/lib/inspector-commands.ts +6 -1
- package/lib/{logger.js → logger.ts} +1 -2
- package/lib/main.ts +60 -0
- package/lib/schema/cli-args-guards.ts +67 -0
- package/lib/schema/cli-args.ts +1 -1
- package/lib/schema/format-errors.ts +43 -0
- package/lib/schema/index.ts +2 -0
- package/lib/schema/schema.ts +51 -52
- package/lib/utils.ts +0 -331
- package/package.json +12 -13
- package/scripts/autoinstall-extensions.js +3 -0
- package/build/lib/config-file.d.ts +0 -57
- package/build/lib/config-file.d.ts.map +0 -1
- package/build/lib/config-file.js.map +0 -1
- package/build/lib/config.d.ts +0 -68
- package/build/lib/config.d.ts.map +0 -1
- package/build/lib/config.js +0 -358
- package/build/lib/config.js.map +0 -1
- package/build/lib/grid-register.d.ts +0 -35
- package/build/lib/grid-register.d.ts.map +0 -1
- package/build/lib/grid-register.js.map +0 -1
- package/lib/config.ts +0 -377
- package/lib/extension/driver-config.js +0 -245
- package/lib/extension/index.js +0 -169
- package/lib/extension/manifest-migrations.js +0 -136
- package/lib/extension/manifest.js +0 -550
- package/lib/extension/plugin-config.js +0 -112
- package/lib/main.js +0 -545
package/build/lib/config.d.ts
DELETED
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
import type { BuildInfo, Args } from 'appium/types';
|
|
2
|
-
import type { ReadConfigFileResult } from './config-file';
|
|
3
|
-
export declare const APPIUM_VER: string;
|
|
4
|
-
export declare const rootDir: string;
|
|
5
|
-
/**
|
|
6
|
-
* Update mutable build info metadata from local git or GitHub fallback.
|
|
7
|
-
*/
|
|
8
|
-
export declare function updateBuildInfo(useGithubApiFallback?: boolean): Promise<void>;
|
|
9
|
-
/**
|
|
10
|
-
* Prints server debug info to stdout.
|
|
11
|
-
*/
|
|
12
|
-
export declare function showDebugInfo({ driverConfig, pluginConfig, appiumHome }: DebugInfoInput): Promise<void>;
|
|
13
|
-
/**
|
|
14
|
-
* Returns the current git commit SHA for this Appium checkout.
|
|
15
|
-
*
|
|
16
|
-
* Attempts to read from local git first; when unavailable and fallback is enabled,
|
|
17
|
-
* queries the GitHub API for the tag matching the current Appium version.
|
|
18
|
-
*/
|
|
19
|
-
export declare function getGitRev(useGithubApiFallback?: boolean): Promise<string | null>;
|
|
20
|
-
/**
|
|
21
|
-
* Mutable object containing Appium build information. By default it
|
|
22
|
-
* only contains the Appium version, but is updated with the build timestamp
|
|
23
|
-
* and git commit hash asynchronously as soon as `updateBuildInfo` is called
|
|
24
|
-
* and succeeds.
|
|
25
|
-
*/
|
|
26
|
-
export declare function getBuildInfo(): BuildInfo;
|
|
27
|
-
/**
|
|
28
|
-
* @throws {Error} If Node version is outside of the supported range
|
|
29
|
-
*/
|
|
30
|
-
export declare function checkNodeOk(): void;
|
|
31
|
-
/**
|
|
32
|
-
* Prints the current build info JSON to stdout.
|
|
33
|
-
*
|
|
34
|
-
* This updates build metadata first (using GitHub fallback) and then logs the
|
|
35
|
-
* resulting {@link BuildInfo} object.
|
|
36
|
-
*/
|
|
37
|
-
export declare function showBuildInfo(): Promise<void>;
|
|
38
|
-
/**
|
|
39
|
-
* Returns k/v pairs of server arguments which are _not_ the defaults.
|
|
40
|
-
*/
|
|
41
|
-
export declare function getNonDefaultServerArgs(parsedArgs: Args): Args;
|
|
42
|
-
/**
|
|
43
|
-
* Shows a breakdown of the current config after CLI params, config file loaded & defaults applied.
|
|
44
|
-
*
|
|
45
|
-
* The actual shape of `preConfigParsedArgs` and `defaults` does not matter for the purposes of this
|
|
46
|
-
* function, but it's intended to be called with values of type {@link ParsedArgs} and
|
|
47
|
-
* `DefaultValues<true>`, respectively.
|
|
48
|
-
*/
|
|
49
|
-
export declare function showConfig(nonDefaultPreConfigParsedArgs: Partial<Args>, configResult: ReadConfigFileResult, defaults: Partial<Args>, parsedArgs: Args): void;
|
|
50
|
-
/**
|
|
51
|
-
* Ensures a directory exists and (optionally) is writeable.
|
|
52
|
-
*
|
|
53
|
-
* If the directory does not exist, this attempts to create it recursively.
|
|
54
|
-
*
|
|
55
|
-
* @throws {Error}
|
|
56
|
-
*/
|
|
57
|
-
export declare function requireDir(root: string, requireWriteable?: boolean, displayName?: string): Promise<void>;
|
|
58
|
-
interface DebugInfoInput {
|
|
59
|
-
driverConfig: {
|
|
60
|
-
installedExtensions: unknown;
|
|
61
|
-
};
|
|
62
|
-
pluginConfig: {
|
|
63
|
-
installedExtensions: unknown;
|
|
64
|
-
};
|
|
65
|
-
appiumHome: string;
|
|
66
|
-
}
|
|
67
|
-
export {};
|
|
68
|
-
//# sourceMappingURL=config.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../lib/config.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAC,SAAS,EAAE,IAAI,EAAC,MAAM,cAAc,CAAC;AAClD,OAAO,KAAK,EAAC,oBAAoB,EAAC,MAAM,eAAe,CAAC;AAExD,eAAO,MAAM,UAAU,QAAqB,CAAC;AAG7C,eAAO,MAAM,OAAO,QAAyB,CAAC;AAS9C;;GAEG;AACH,wBAAsB,eAAe,CAAC,oBAAoB,UAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAUjF;AAED;;GAEG;AACH,wBAAsB,aAAa,CAAC,EAAC,YAAY,EAAE,YAAY,EAAE,UAAU,EAAC,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAyC3G;AAED;;;;;GAKG;AACH,wBAAsB,SAAS,CAAC,oBAAoB,UAAQ,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CA2BpF;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,IAAI,SAAS,CAExC;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI,IAAI,CAKlC;AAED;;;;;GAKG;AACH,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAGnD;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,UAAU,EAAE,IAAI,GAAG,IAAI,CA0E9D;AAED;;;;;;GAMG;AACH,wBAAgB,UAAU,CACxB,6BAA6B,EAAE,OAAO,CAAC,IAAI,CAAC,EAC5C,YAAY,EAAE,oBAAoB,EAClC,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,EACvB,UAAU,EAAE,IAAI,GACf,IAAI,CAmBN;AAED;;;;;;GAMG;AACH,wBAAsB,UAAU,CAC9B,IAAI,EAAE,MAAM,EACZ,gBAAgB,UAAO,EACvB,WAAW,SAAgB,GAC1B,OAAO,CAAC,IAAI,CAAC,CAyBf;AAmED,UAAU,cAAc;IACtB,YAAY,EAAE;QAAC,mBAAmB,EAAE,OAAO,CAAA;KAAC,CAAC;IAC7C,YAAY,EAAE;QAAC,mBAAmB,EAAE,OAAO,CAAA;KAAC,CAAC;IAC7C,UAAU,EAAE,MAAM,CAAC;CACpB"}
|
package/build/lib/config.js
DELETED
|
@@ -1,358 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
35
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
-
};
|
|
38
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
-
exports.rootDir = exports.APPIUM_VER = void 0;
|
|
40
|
-
exports.updateBuildInfo = updateBuildInfo;
|
|
41
|
-
exports.showDebugInfo = showDebugInfo;
|
|
42
|
-
exports.getGitRev = getGitRev;
|
|
43
|
-
exports.getBuildInfo = getBuildInfo;
|
|
44
|
-
exports.checkNodeOk = checkNodeOk;
|
|
45
|
-
exports.showBuildInfo = showBuildInfo;
|
|
46
|
-
exports.getNonDefaultServerArgs = getNonDefaultServerArgs;
|
|
47
|
-
exports.showConfig = showConfig;
|
|
48
|
-
exports.requireDir = requireDir;
|
|
49
|
-
/* eslint-disable no-console */
|
|
50
|
-
const lodash_1 = __importDefault(require("lodash"));
|
|
51
|
-
const support_1 = require("@appium/support");
|
|
52
|
-
const axios_1 = __importDefault(require("axios"));
|
|
53
|
-
const teen_process_1 = require("teen_process");
|
|
54
|
-
const semver = __importStar(require("semver"));
|
|
55
|
-
const node_os_1 = __importDefault(require("node:os"));
|
|
56
|
-
const utils_1 = require("./utils");
|
|
57
|
-
const bluebird_1 = __importDefault(require("bluebird"));
|
|
58
|
-
const schema_1 = require("./schema/schema");
|
|
59
|
-
exports.APPIUM_VER = utils_1.npmPackage.version;
|
|
60
|
-
const ENGINES = utils_1.npmPackage.engines;
|
|
61
|
-
const MIN_NODE_VERSION = ENGINES.node;
|
|
62
|
-
exports.rootDir = support_1.fs.findRoot(__dirname);
|
|
63
|
-
const GIT_BINARY = `git${support_1.system.isWindows() ? '.exe' : ''}`;
|
|
64
|
-
const GITHUB_API = 'https://api.github.com/repos/appium/appium';
|
|
65
|
-
const BUILD_INFO = {
|
|
66
|
-
version: exports.APPIUM_VER,
|
|
67
|
-
};
|
|
68
|
-
/**
|
|
69
|
-
* Update mutable build info metadata from local git or GitHub fallback.
|
|
70
|
-
*/
|
|
71
|
-
async function updateBuildInfo(useGithubApiFallback = false) {
|
|
72
|
-
const sha = await getGitRev(useGithubApiFallback);
|
|
73
|
-
if (!sha) {
|
|
74
|
-
return;
|
|
75
|
-
}
|
|
76
|
-
BUILD_INFO['git-sha'] = sha;
|
|
77
|
-
const buildTimestamp = await getGitTimestamp(sha, useGithubApiFallback);
|
|
78
|
-
if (buildTimestamp) {
|
|
79
|
-
BUILD_INFO.built = buildTimestamp;
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
/**
|
|
83
|
-
* Prints server debug info to stdout.
|
|
84
|
-
*/
|
|
85
|
-
async function showDebugInfo({ driverConfig, pluginConfig, appiumHome }) {
|
|
86
|
-
const getNpmVersion = async () => {
|
|
87
|
-
const { stdout } = await support_1.npm.exec('--version', [], { cwd: process.cwd() });
|
|
88
|
-
return lodash_1.default.trim(stdout);
|
|
89
|
-
};
|
|
90
|
-
const findNpmLocation = async () => await support_1.fs.which(support_1.system.isWindows() ? 'npm.cmd' : 'npm');
|
|
91
|
-
const [npmVersion, npmLocation] = await bluebird_1.default.all([
|
|
92
|
-
...[getNpmVersion, findNpmLocation].map((f) => getSafeResult(f, 'unknown')),
|
|
93
|
-
updateBuildInfo(),
|
|
94
|
-
]);
|
|
95
|
-
const debugInfo = {
|
|
96
|
-
os: {
|
|
97
|
-
platform: node_os_1.default.platform(),
|
|
98
|
-
release: node_os_1.default.release(),
|
|
99
|
-
arch: node_os_1.default.arch(),
|
|
100
|
-
homedir: node_os_1.default.homedir(),
|
|
101
|
-
username: node_os_1.default.userInfo().username,
|
|
102
|
-
},
|
|
103
|
-
node: {
|
|
104
|
-
version: process.version,
|
|
105
|
-
arch: process.arch,
|
|
106
|
-
cwd: process.cwd(),
|
|
107
|
-
argv: process.argv,
|
|
108
|
-
env: process.env,
|
|
109
|
-
npm: {
|
|
110
|
-
location: npmLocation,
|
|
111
|
-
version: npmVersion,
|
|
112
|
-
},
|
|
113
|
-
},
|
|
114
|
-
appium: {
|
|
115
|
-
location: exports.rootDir,
|
|
116
|
-
homedir: appiumHome,
|
|
117
|
-
build: getBuildInfo(),
|
|
118
|
-
drivers: driverConfig.installedExtensions,
|
|
119
|
-
plugins: pluginConfig.installedExtensions,
|
|
120
|
-
},
|
|
121
|
-
};
|
|
122
|
-
console.log(JSON.stringify(debugInfo, null, 2));
|
|
123
|
-
}
|
|
124
|
-
/**
|
|
125
|
-
* Returns the current git commit SHA for this Appium checkout.
|
|
126
|
-
*
|
|
127
|
-
* Attempts to read from local git first; when unavailable and fallback is enabled,
|
|
128
|
-
* queries the GitHub API for the tag matching the current Appium version.
|
|
129
|
-
*/
|
|
130
|
-
async function getGitRev(useGithubApiFallback = false) {
|
|
131
|
-
const fullGitPath = await getFullGitPath();
|
|
132
|
-
if (fullGitPath) {
|
|
133
|
-
try {
|
|
134
|
-
const { stdout } = await (0, teen_process_1.exec)(fullGitPath, ['rev-parse', 'HEAD'], {
|
|
135
|
-
cwd: __dirname,
|
|
136
|
-
});
|
|
137
|
-
return stdout.trim();
|
|
138
|
-
}
|
|
139
|
-
catch { }
|
|
140
|
-
}
|
|
141
|
-
if (!useGithubApiFallback) {
|
|
142
|
-
return null;
|
|
143
|
-
}
|
|
144
|
-
// If the package folder is not a valid git repository
|
|
145
|
-
// then fetch the corresponding tag info from GitHub
|
|
146
|
-
try {
|
|
147
|
-
return (await axios_1.default.get(`${GITHUB_API}/git/refs/tags/appium@${exports.APPIUM_VER}`, {
|
|
148
|
-
headers: {
|
|
149
|
-
'User-Agent': `Appium ${exports.APPIUM_VER}`,
|
|
150
|
-
},
|
|
151
|
-
})).data?.object?.sha;
|
|
152
|
-
}
|
|
153
|
-
catch { }
|
|
154
|
-
return null;
|
|
155
|
-
}
|
|
156
|
-
/**
|
|
157
|
-
* Mutable object containing Appium build information. By default it
|
|
158
|
-
* only contains the Appium version, but is updated with the build timestamp
|
|
159
|
-
* and git commit hash asynchronously as soon as `updateBuildInfo` is called
|
|
160
|
-
* and succeeds.
|
|
161
|
-
*/
|
|
162
|
-
function getBuildInfo() {
|
|
163
|
-
return BUILD_INFO;
|
|
164
|
-
}
|
|
165
|
-
/**
|
|
166
|
-
* @throws {Error} If Node version is outside of the supported range
|
|
167
|
-
*/
|
|
168
|
-
function checkNodeOk() {
|
|
169
|
-
const version = getNodeVersion();
|
|
170
|
-
if (!semver.satisfies(version, MIN_NODE_VERSION)) {
|
|
171
|
-
throw new Error(`Node version must be at least ${MIN_NODE_VERSION}; current is ${version.version}`);
|
|
172
|
-
}
|
|
173
|
-
}
|
|
174
|
-
/**
|
|
175
|
-
* Prints the current build info JSON to stdout.
|
|
176
|
-
*
|
|
177
|
-
* This updates build metadata first (using GitHub fallback) and then logs the
|
|
178
|
-
* resulting {@link BuildInfo} object.
|
|
179
|
-
*/
|
|
180
|
-
async function showBuildInfo() {
|
|
181
|
-
await updateBuildInfo(true);
|
|
182
|
-
console.log(JSON.stringify(getBuildInfo()));
|
|
183
|
-
}
|
|
184
|
-
/**
|
|
185
|
-
* Returns k/v pairs of server arguments which are _not_ the defaults.
|
|
186
|
-
*/
|
|
187
|
-
function getNonDefaultServerArgs(parsedArgs) {
|
|
188
|
-
/**
|
|
189
|
-
* Flattens parsed args into a single level object for comparison with
|
|
190
|
-
* flattened defaults across server args and extension args.
|
|
191
|
-
*/
|
|
192
|
-
const flatten = (args) => {
|
|
193
|
-
const argSpecs = (0, schema_1.getAllArgSpecs)();
|
|
194
|
-
const flattened = lodash_1.default.reduce([...argSpecs.values()], (acc, argSpec) => {
|
|
195
|
-
if (lodash_1.default.has(args, argSpec.dest)) {
|
|
196
|
-
acc[argSpec.dest] = { value: lodash_1.default.get(args, argSpec.dest), argSpec };
|
|
197
|
-
}
|
|
198
|
-
return acc;
|
|
199
|
-
}, {});
|
|
200
|
-
return flattened;
|
|
201
|
-
};
|
|
202
|
-
const args = flatten(parsedArgs);
|
|
203
|
-
// hopefully these function names are descriptive enough
|
|
204
|
-
const typesDiffer = (dest) => typeof args[dest].value !== typeof defaultsFromSchema[dest];
|
|
205
|
-
const defaultValueIsArray = (dest) => lodash_1.default.isArray(defaultsFromSchema[dest]);
|
|
206
|
-
const argsValueIsArray = (dest) => lodash_1.default.isArray(args[dest].value);
|
|
207
|
-
const arraysDiffer = (dest) => lodash_1.default.gt(lodash_1.default.size(lodash_1.default.difference(args[dest].value, defaultsFromSchema[dest])), 0);
|
|
208
|
-
const valuesDiffer = (dest) => args[dest].value !== defaultsFromSchema[dest];
|
|
209
|
-
const defaultIsDefined = (dest) => !lodash_1.default.isUndefined(defaultsFromSchema[dest]);
|
|
210
|
-
// note that `_.overEvery` is like an "AND", and `_.overSome` is like an "OR"
|
|
211
|
-
const argValueNotArrayOrArraysDiffer = lodash_1.default.overSome([lodash_1.default.negate(argsValueIsArray), arraysDiffer]);
|
|
212
|
-
const defaultValueNotArrayAndValuesDiffer = lodash_1.default.overEvery([
|
|
213
|
-
lodash_1.default.negate(defaultValueIsArray),
|
|
214
|
-
valuesDiffer,
|
|
215
|
-
]);
|
|
216
|
-
/**
|
|
217
|
-
* This used to be a hideous conditional, but it's broken up into a hideous function instead.
|
|
218
|
-
* hopefully this makes things a little more understandable.
|
|
219
|
-
* - checks if the default value is defined
|
|
220
|
-
* - if so, and the default is not an array:
|
|
221
|
-
* - ensures the types are the same
|
|
222
|
-
* - ensures the values are equal
|
|
223
|
-
* - if so, and the default is an array:
|
|
224
|
-
* - ensures the args value is an array
|
|
225
|
-
* - ensures the args values do not differ from the default values
|
|
226
|
-
*/
|
|
227
|
-
const isNotDefault = lodash_1.default.overEvery([
|
|
228
|
-
defaultIsDefined,
|
|
229
|
-
lodash_1.default.overSome([
|
|
230
|
-
typesDiffer,
|
|
231
|
-
lodash_1.default.overEvery([defaultValueIsArray, argValueNotArrayOrArraysDiffer]),
|
|
232
|
-
defaultValueNotArrayAndValuesDiffer,
|
|
233
|
-
]),
|
|
234
|
-
]);
|
|
235
|
-
const defaultsFromSchema = (0, schema_1.getDefaultsForSchema)(true);
|
|
236
|
-
return lodash_1.default.reduce(lodash_1.default.pickBy(args, (_v, key) => isNotDefault(key)),
|
|
237
|
-
// explodes the flattened object back into nested one
|
|
238
|
-
(acc, { value, argSpec }) => lodash_1.default.set(acc, argSpec.dest, value), {});
|
|
239
|
-
}
|
|
240
|
-
/**
|
|
241
|
-
* Shows a breakdown of the current config after CLI params, config file loaded & defaults applied.
|
|
242
|
-
*
|
|
243
|
-
* The actual shape of `preConfigParsedArgs` and `defaults` does not matter for the purposes of this
|
|
244
|
-
* function, but it's intended to be called with values of type {@link ParsedArgs} and
|
|
245
|
-
* `DefaultValues<true>`, respectively.
|
|
246
|
-
*/
|
|
247
|
-
function showConfig(nonDefaultPreConfigParsedArgs, configResult, defaults, parsedArgs) {
|
|
248
|
-
console.log('Appium Configuration\n');
|
|
249
|
-
console.log('from defaults:\n');
|
|
250
|
-
console.dir(compactConfig(defaults));
|
|
251
|
-
if (configResult.config) {
|
|
252
|
-
console.log(`\nfrom config file at ${configResult.filepath}:\n`);
|
|
253
|
-
console.dir(compactConfig(configResult.config));
|
|
254
|
-
}
|
|
255
|
-
else {
|
|
256
|
-
console.log(`\n(no configuration file loaded)`);
|
|
257
|
-
}
|
|
258
|
-
const compactedNonDefaultPreConfigArgs = compactConfig(nonDefaultPreConfigParsedArgs);
|
|
259
|
-
if (lodash_1.default.isEmpty(compactedNonDefaultPreConfigArgs)) {
|
|
260
|
-
console.log(`\n(no CLI parameters provided)`);
|
|
261
|
-
}
|
|
262
|
-
else {
|
|
263
|
-
console.log('\nvia CLI or function call:\n');
|
|
264
|
-
console.dir(compactedNonDefaultPreConfigArgs);
|
|
265
|
-
}
|
|
266
|
-
console.log('\nfinal configuration:\n');
|
|
267
|
-
console.dir(compactConfig(parsedArgs));
|
|
268
|
-
}
|
|
269
|
-
/**
|
|
270
|
-
* Ensures a directory exists and (optionally) is writeable.
|
|
271
|
-
*
|
|
272
|
-
* If the directory does not exist, this attempts to create it recursively.
|
|
273
|
-
*
|
|
274
|
-
* @throws {Error}
|
|
275
|
-
*/
|
|
276
|
-
async function requireDir(root, requireWriteable = true, displayName = 'folder path') {
|
|
277
|
-
let stat;
|
|
278
|
-
try {
|
|
279
|
-
stat = await support_1.fs.stat(root);
|
|
280
|
-
}
|
|
281
|
-
catch (e) {
|
|
282
|
-
if (e.code === 'ENOENT') {
|
|
283
|
-
try {
|
|
284
|
-
await support_1.fs.mkdir(root, { recursive: true });
|
|
285
|
-
return;
|
|
286
|
-
}
|
|
287
|
-
catch { }
|
|
288
|
-
}
|
|
289
|
-
throw new Error(`The ${displayName} '${root}' must exist and be a valid directory`);
|
|
290
|
-
}
|
|
291
|
-
if (stat && !stat.isDirectory()) {
|
|
292
|
-
throw new Error(`The ${displayName} '${root}' must be a valid directory`);
|
|
293
|
-
}
|
|
294
|
-
if (requireWriteable) {
|
|
295
|
-
try {
|
|
296
|
-
await support_1.fs.access(root, support_1.fs.constants.W_OK);
|
|
297
|
-
}
|
|
298
|
-
catch {
|
|
299
|
-
throw new Error(`The ${displayName} '${root}' must be writeable for the current user account '${node_os_1.default.userInfo().username}'`);
|
|
300
|
-
}
|
|
301
|
-
}
|
|
302
|
-
}
|
|
303
|
-
function getNodeVersion() {
|
|
304
|
-
return semver.coerce(process.version);
|
|
305
|
-
}
|
|
306
|
-
const getFullGitPath = lodash_1.default.memoize(async function getFullGitPath() {
|
|
307
|
-
try {
|
|
308
|
-
return await support_1.fs.which(GIT_BINARY);
|
|
309
|
-
}
|
|
310
|
-
catch {
|
|
311
|
-
return null;
|
|
312
|
-
}
|
|
313
|
-
});
|
|
314
|
-
async function getGitTimestamp(commitSha, useGithubApiFallback = false) {
|
|
315
|
-
const fullGitPath = await getFullGitPath();
|
|
316
|
-
if (fullGitPath) {
|
|
317
|
-
try {
|
|
318
|
-
const { stdout } = await (0, teen_process_1.exec)(fullGitPath, ['show', '-s', '--format=%ci', commitSha], {
|
|
319
|
-
cwd: __dirname,
|
|
320
|
-
});
|
|
321
|
-
return stdout.trim();
|
|
322
|
-
}
|
|
323
|
-
catch { }
|
|
324
|
-
}
|
|
325
|
-
if (!useGithubApiFallback) {
|
|
326
|
-
return null;
|
|
327
|
-
}
|
|
328
|
-
try {
|
|
329
|
-
return (await axios_1.default.get(`${GITHUB_API}/git/tags/${commitSha}`, {
|
|
330
|
-
headers: {
|
|
331
|
-
'User-Agent': `Appium ${exports.APPIUM_VER}`,
|
|
332
|
-
},
|
|
333
|
-
})).data?.tagger?.date;
|
|
334
|
-
}
|
|
335
|
-
catch { }
|
|
336
|
-
return null;
|
|
337
|
-
}
|
|
338
|
-
/**
|
|
339
|
-
* Compacts an object for {@link showConfig}:
|
|
340
|
-
* 1. Removes `subcommand` key/value
|
|
341
|
-
* 2. Removes `undefined` values
|
|
342
|
-
* 3. Removes empty objects (but not `false` values)
|
|
343
|
-
* Does not operate recursively.
|
|
344
|
-
*/
|
|
345
|
-
const compactConfig = lodash_1.default.partial(lodash_1.default.omitBy, lodash_1.default, (value, key) => key === 'subcommand' || lodash_1.default.isUndefined(value) || (lodash_1.default.isObject(value) && lodash_1.default.isEmpty(value)));
|
|
346
|
-
/**
|
|
347
|
-
* Calculates the result of the given function and return its value
|
|
348
|
-
* or the default one if there was an exception.
|
|
349
|
-
*/
|
|
350
|
-
async function getSafeResult(f, defaultValue) {
|
|
351
|
-
try {
|
|
352
|
-
return await f();
|
|
353
|
-
}
|
|
354
|
-
catch {
|
|
355
|
-
return defaultValue;
|
|
356
|
-
}
|
|
357
|
-
}
|
|
358
|
-
//# sourceMappingURL=config.js.map
|
package/build/lib/config.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../lib/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import type { StringRecord } from '@appium/types';
|
|
2
|
-
/**
|
|
3
|
-
* Registers this server as a node with a **Selenium Grid 3** hub.
|
|
4
|
-
*
|
|
5
|
-
* When `data` is a path to a JSON config file, `addr`, `port`, and `basePath` are required (they define
|
|
6
|
-
* how the hub reaches this Appium server). When `data` is an inline config object, those parameters are
|
|
7
|
-
* optional and only used to fill missing node URL fields in the config.
|
|
8
|
-
*
|
|
9
|
-
* @deprecated Selenium Grid 3 registration is legacy and slated for removal.
|
|
10
|
-
* Use Selenium Grid 4 integration (node relay) instead.
|
|
11
|
-
*
|
|
12
|
-
* @param data - Path to a JSON file or an inline parsed config object
|
|
13
|
-
* @param addr - Bind to this address
|
|
14
|
-
* @param port - Bind to this port
|
|
15
|
-
* @param basePath - Base path for the Appium server (used in the node URL sent to the hub; may be `''`)
|
|
16
|
-
*/
|
|
17
|
-
export default function registerNode(data: string, addr: string, port: number, basePath: string): Promise<void>;
|
|
18
|
-
export default function registerNode(data: Grid3NodeConfig, addr?: string, port?: number, basePath?: string): Promise<void>;
|
|
19
|
-
interface Grid3HubConfiguration {
|
|
20
|
-
hubProtocol?: string;
|
|
21
|
-
hubHost?: string;
|
|
22
|
-
hubPort?: number;
|
|
23
|
-
url?: string;
|
|
24
|
-
host?: string;
|
|
25
|
-
port?: number;
|
|
26
|
-
id?: string;
|
|
27
|
-
register?: boolean;
|
|
28
|
-
registerCycle?: number;
|
|
29
|
-
}
|
|
30
|
-
interface Grid3NodeConfig extends StringRecord {
|
|
31
|
-
configuration?: Grid3HubConfiguration;
|
|
32
|
-
capabilities?: unknown;
|
|
33
|
-
}
|
|
34
|
-
export {};
|
|
35
|
-
//# sourceMappingURL=grid-register.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"grid-register.d.ts","sourceRoot":"","sources":["../../lib/grid-register.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,eAAe,CAAC;AAkBhD;;;;;;;;;;;;;;GAcG;AACH,wBAA8B,YAAY,CACxC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,CAAC,CAAC;AACjB,wBAA8B,YAAY,CACxC,IAAI,EAAE,eAAe,EACrB,IAAI,CAAC,EAAE,MAAM,EACb,IAAI,CAAC,EAAE,MAAM,EACb,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,IAAI,CAAC,CAAC;AAuLjB,UAAU,qBAAqB;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,UAAU,eAAgB,SAAQ,YAAY;IAC5C,aAAa,CAAC,EAAE,qBAAqB,CAAC;IACtC,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"grid-register.js","sourceRoot":"","sources":["../../lib/grid-register.ts"],"names":[],"mappings":"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"}
|