Commit Graph

926 Commits

Author SHA1 Message Date
renovate[bot] 1848cc8229 chore(): update dependency @types/node to v16.11.46 2022-07-28 12:27:47 +00:00
renovate[bot] 8b48e46952 chore(): update dependency @types/sinon to v10.0.13 2022-07-20 12:17:57 +00:00
renovate[bot] 27ea226364 chore(): update babel monorepo to v7.18.9 2022-07-19 12:46:13 +00:00
renovate[bot] f6ac91787d chore(types): update webdriverio monorepo to v7.20.7 2022-07-18 12:07:13 +00:00
renovate[bot] b422d4bed5 chore(): update dependency ws to v8.8.1 2022-07-16 12:29:59 +00:00
renovate[bot] 3b0dcd4e23 chore(): update dependency @types/node to v16.11.45 2022-07-16 10:40:42 +00:00
renovate[bot] 1fe5ec7f69 chore(execute-driver-plugin): update dependency webdriverio to v7.20.6 2022-07-15 21:05:07 +00:00
renovate[bot] f503227fbc chore(): update dependency @types/node to v16.11.44 2022-07-14 13:20:55 +00:00
Christopher Hiller dab37d7286 chore(ci): add mjpeg-consumer to dev deps
I am unsure why this was not in dev deps already. It is not a native module or anything, so...
2022-07-13 13:47:44 -07:00
Christopher Hiller 109278bb0d chore(ci): attempt to cache deps
This change adds [bahmutov/npm-install](https://github.com/bahmutov/npm-install) to help cache dependencies, and enables caching against global modules via [setup-node](https://github.com/actions/setup-node).
2022-07-13 13:47:44 -07:00
Christopher Hiller f9129dfee3 fix(): moved type packages to deps of specific packages
When any package here is consumed as a library, the production deps installed alongside it _must_ also include depenencies related to type information. If these packages _aren't_ included, consumers will not have the requisite declarations installed and will get incomplete type information--at best--or worse; compilation errors.

Putting the onus on the consumer to install these requisite types is both user-hostile _and_ can result in the incorrect versions of type declarations being installed.

To that end, I've moved the various type declaration deps to production deps of the packages in which they are used.  Sometimes this is multiple packages (in the case of, say, `@types/teen_process`).  This results in many types being removed from the monorepo root.  Those that remain are for _dev dependencies only_.  If a packages uses, say, `ws`, but only in its tests, then the types can remain in the monorepo root along with the rest of the common dev deps.

I also saw an unused `supports-color` in `appium` and removed it.
2022-07-08 13:09:28 -07:00
renovate[bot] 9e6a7af95b chore(): update dependency @types/teen_process to v1.16.1 2022-07-08 14:05:08 +00:00
renovate[bot] 10a1a3e736 chore(): update dependency type-fest to v2.16.0 2022-07-04 17:53:10 +00:00
renovate[bot] 9a2e1e4d1e chore(): update dependency @types/node to v16.11.43 2022-07-04 12:06:24 +00:00
renovate[bot] 29867b6cac chore(): update dependency @types/node to v16.11.42 2022-06-30 11:30:35 +00:00
renovate[bot] 464b112f4e chore(): update dependency @types/fancy-log to v2 2022-06-29 15:04:46 -07:00
renovate[bot] 79d6a1d9a0 chore(): update dependency @types/sinon to v10.0.12 2022-06-29 11:49:06 +00:00
renovate[bot] c4a1a46df3 chore(): update babel monorepo to v7.18.6 2022-06-28 12:58:59 +00:00
renovate[bot] 863e0dbd4d chore(gulp-plugins): update dependency babel-plugin-source-map-support to v2.2.0 2022-06-27 15:52:09 +00:00
renovate[bot] 6c6c860f82 chore(): update dependency type-fest to v2.14.0 2022-06-26 12:56:35 +00:00
renovate[bot] 7ee5074230 chore(): update dependency prettier to v2.7.1 2022-06-25 15:09:19 +00:00
Renovate Bot 6d0edbd93c chore(): update dependency lint-staged to v13.0.3 2022-06-25 11:10:53 +00:00
renovate[bot] a89e325aec chore(): update webdriverio monorepo 2022-06-25 08:57:58 +00:00
renovate[bot] 157f025466 chore(): update dependency typescript to v4.7.4 2022-06-24 14:25:53 +00:00
renovate[bot] 12e63bc516 chore(): update dependency lint-staged to v13.0.2 2022-06-24 11:55:18 +00:00
Christopher Hiller 8bde0703ad chore: commit package-lock.json
Because it’s now under VCS, we shouldn’t remove it when cleaning, since that will probably result in a dirty working copy.

changed the `reinstall` script to call `npm ci`, which a) expects `package-lock.json` to exist, and b) removes `node_modules` before it installs stuff.
2022-06-16 11:30:13 -07:00
Renovate Bot 0f5d3f8c1d chore(gulp-plugins): update babel monorepo to v7.18.5 2022-06-16 17:35:06 +00:00
Renovate Bot 984313d2e7 chore(): update dependency @types/semver to v7.3.10 2022-06-16 14:42:17 +00:00
Renovate Bot 0bf6f96839 chore(): update dependency @types/node to v16.11.41 2022-06-15 19:48:50 +00:00
Renovate Bot 69a9a15ac3 chore(): update dependency type-fest to v2.13.1 2022-06-15 12:37:22 +00:00
Christopher Hiller 485239d599 chore(ci): run smoke test in all packages
This uses the [boneskull/nodejs-production-test-action](https://github.com/boneskull/nodejs-production-test-action) GH action to run a smoke test across all packages.

The action does the following:

1. Runs `npm pack` on each package, writing the tarball to a temp dir. This tarball contains the package as a user would `npm install` it.
2. Changes into the temp dir and runs `npm install <tarball>` on each
3. Runs a specified script (in our case, `test:smoke`) in each installed package's dir in `<tmp_dir>/node_modules`

Because `devDependencies` will not be present, this should avoid a class of issues where production deps are miscategorized as dev deps.

The action should probably use a separate temp dir for each--in the case of a dependency being present but only because some other package depends on it--but it's not smart enough to figure out peer dependencies yet.
2022-06-13 16:08:17 -07:00
Renovate Bot 78d0419225 chore(): update dependency lint-staged to v13 2022-06-13 16:07:18 -07:00
Christopher Hiller 965752f288 fix(appium): postinstall: never assume local appium if it is being installed globally
In addition, wrap the text to the terminal.  `wrap-ansi` is good b/c it
considers colors/emoji/etc.

Removed unused dep `word-wrap`.

Resolves #17054
2022-06-13 16:05:20 -07:00
Renovate Bot ec5063b2f3 chore(execute-driver-plugin): update dependency webdriverio to v7.20.2 2022-06-11 12:52:02 +00:00
Renovate Bot 3f50133789 chore(): update dependency ws to v8.8.0 2022-06-10 13:12:57 +00:00
Renovate Bot 5b1664ce0b chore(): update dependency @types/node to v16.11.39 2022-06-09 17:17:49 +00:00
Renovate Bot d00398fe91 chore(): update webdriverio monorepo 2022-06-04 14:43:48 +00:00
Renovate Bot 3109c4b680 chore(): update dependency typescript to v4.7.3 2022-06-04 12:59:54 +00:00
Renovate Bot 7b720dc6ab chore(): update dependency @types/node to v16.11.38 2022-06-01 14:04:21 +00:00
Renovate Bot 54d8b44012 chore(): update dependency lint-staged to v12.5.0 2022-06-01 10:55:34 +00:00
Christopher Hiller ac8e0e0451 chore(appium,base-driver,base-plugin,doctor,docutils,eslint-config-appium,execute-driver-plugin,fake-driver,fake-plugin,gulp-plugins,images-plugin,opencv,relaxed-caps-plugin,schema,support,test-support,types,universal-xml-plugin): fix engines field 😂 2022-05-31 16:26:43 -07:00
Renovate Bot 8feb8bb442 chore(): update dependency lint-staged to v12.4.3 2022-05-31 12:46:39 +00:00
Renovate Bot 81ff2a3082 chore(): update dependency ws to v8.7.0 2022-05-27 11:08:45 +00:00
Renovate Bot e5e8f9b874 chore(test-support): update dependency @babel/runtime to v7.18.3 2022-05-26 15:29:43 -07:00
Renovate Bot a33416dd52 chore(): update dependency typescript to v4.7.2 2022-05-26 15:29:12 -07:00
Christopher Hiller 6b224f545f feat(appium,support): extension check improvements
This PR changes a few things:

- Extension problems are now displayed correctly at `appium server` startup.  This was done by changing the default `npmlog` level, then reesetting it to `silent` when `winston` takes over (in `logsink.init()`)
- Extension problems are also displayed at install time.
- Improved performance of `appium <driver|plugin> install` in many cases by actually checking if the thing is installed _before_ installing it.
- `ExtensionCommand` uses a new console logging mechanism (`console` in `@appium/support`) tailored to CLI usage, since it is intended to be run via the CLI.  Using this, we handle the result of extension checks both at server runtime and during CLI tool usage in the appropriate manner.  The implementation is just a dumb wrapper around `console.log` and should eventually be removed when we revisit the logging architecture.
- Separated extension checks further into "errors" ("Problems") and "warnings".  As these demand distinct log levels, `ExtensionConfig` no longer accepts a `logFn` in its constructor (since this restricted to a single level ("error"))
- Generally improved specificity, helpfulness, and reduced extraneous verbosity (like this sentence) of warnings
- Removed `strip-colors`, as this functionality is present in `@colors/colors`.  The E2E test helper now automatically strips colors from child processes.
- More tests
- Change `e2e-helpers` to use `CliConsole` for command logging output during tests
- Change the "uninstall" command to use `npm uninstall`, since `rm -rf` will hose `node_modules` if the current project has a dependency on `appium` (in other words, if they are otherwise using a package manager to manage extensions).  This is slower but safer.
2022-05-26 12:07:17 -07:00
Renovate Bot 3316ba65ef chore(): update dependency type-fest to v2.13.0 2022-05-25 20:37:45 +00:00
Renovate Bot 4d6c114fe8 chore(gulp-plugins): update babel monorepo to v7.18.2 2022-05-25 14:28:48 +00:00
Renovate Bot cf7a133cc6 chore(): update dependency lint-staged to v12.4.2 2022-05-25 11:57:29 +00:00
Renovate Bot 92b17d6c2e chore(gulp-plugins): update babel monorepo to v7.18.0 2022-05-20 14:59:10 -07:00