Commit Graph

9000 Commits

Author SHA1 Message Date
Jonathan Lipps
167fdb18f7 docs(appium): fix link to new docs in old docs dir 2022-08-03 13:12:48 -07:00
Jonathan Lipps
50964e0690 docs(appium): migrate the migration docs and fix urls (#17306)
* docs(appium): migrate the migration docs and fix urls

* Update packages/appium/docs/en/guides/migrating-1-to-2.md

Co-authored-by: Kazuaki Matsuo <fly.49.89.over@gmail.com>

* docs(appium): migrate the migration docs and fix urls

Co-authored-by: Kazuaki Matsuo <fly.49.89.over@gmail.com>
2022-08-03 11:46:48 -07:00
renovate[bot]
a2385f08d5 chore(images-plugin): update dependency lru-cache to v7.13.2 2022-08-03 13:39:58 +00:00
Jonathan Lipps
500c08f392 Publish
- appium@2.0.0-beta.42
 - @appium/base-driver@8.6.1
 - @appium/base-plugin@1.10.1
 - @appium/doctor@1.16.24
 - @appium/docutils@0.0.9
 - @appium/eslint-config-appium@6.0.4
 - @appium/execute-driver-plugin@2.0.4
 - @appium/fake-driver@4.1.0
 - @appium/fake-plugin@2.0.5
 - @appium/gulp-plugins@7.0.4
 - @appium/images-plugin@1.3.4
 - @appium/opencv@1.0.11
 - @appium/relaxed-caps-plugin@1.0.0-beta.11
 - @appium/schema@0.0.9
 - @appium/support@2.59.4
 - @appium/test-support@1.4.1
 - @appium/types@0.3.1
 - @appium/universal-xml-plugin@1.0.0-beta.13
@appium/base-driver@8.6.1 @appium/base-plugin@1.10.1 @appium/doctor@1.16.24 @appium/docutils@0.0.9 @appium/eslint-config-appium@6.0.4 @appium/execute-driver-plugin@2.0.4 @appium/fake-driver@4.1.0 @appium/fake-plugin@2.0.5 @appium/gulp-plugins@7.0.4 @appium/images-plugin@1.3.4 @appium/opencv@1.0.11 @appium/relaxed-caps-plugin@1.0.0-beta.11 @appium/schema@0.0.9 @appium/support@2.59.4 @appium/test-support@1.4.1 @appium/types@0.3.1 @appium/universal-xml-plugin@1.0.0-beta.13 appium@2.0.0-beta.42
2022-08-02 20:21:17 -07:00
Christopher Hiller
4655302239 test(appium): add smoke test for driver installation
This adds a test (which currently only runs automatically in CI) which installs the uiautomator2 driver.  This will ensure that driver installation does not only work in a dev environment!

Due to needing to support Windows and not wishing to befoul the default `APPIUM_HOME`, we need `cross-env` as a production dependency (otherwise the smoke test would fail) to set a temporary `APPIUM_HOME` (`local_appium_home`) which is relative to the temp dir used by the smoke test (see https://github.com/boneskull/nodejs-production-test-action)
2022-08-02 17:21:14 -07:00
Christopher Hiller
5efd62af08 chore(ci): fix target branch for FOSSA job 2022-08-02 16:18:39 -07:00
Christopher Hiller
27ac2fa125 fix(appium): add npm version check
Also fix duplication of error messages about engines.

Unfortunately this adds another startup delay, but I'm unsure of a better way around it.  I guess bundling our own npm might work!
2022-08-02 14:43:25 -07:00
Christopher Hiller
d8d2382327 fix(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): update engines
also add a missing dep in `@appium/schema`
2022-08-02 14:22:44 -07:00
Christopher Hiller
faff3ce347 feat(appium): pass unknown args to extension scripts
Resolves #17250

This change passes any extra unknown arguments to extension scripts _if and only if_ `appium <extension> <name> run` is executed.  In all other cases, unknown arguments result in an error and the `appium` CLI will abort as before.

Example:

```bash
appium driver fake run fake-success --foo --bar`
```

In the `fake-success` script of the `fake` driver, `process.argv.slice(2)` will be `['--foo', '--bar']`.  Extra arguments can appear anywhere after the `appium` executable in the command and do not need to appear after the script name.

- In addition, added some missing arguments for extension subcommands to the types (`json`, `suppressOutput`).  Extra arguments are stored in property `extraArgs`.
- Fixed a type problem surfaced by the previous item
- Changed help text for the `run` subcommand to hopefully read more clearly
- Reorganized E2E tests for the `run` subcommand
- Slightly changed error output when unknown argument is provided (given that we now need to DIY this)
2022-08-02 10:55:11 -07:00
renovate[bot]
05b981afa2 chore(): update babel monorepo to v7.18.10 2022-08-02 13:51:09 +00:00
Christopher Hiller
5e047485ee chore(renovate): add "del", "get-port", "inquirer", "vinyl-paths" to exclusion list
these packages are now ESM-only
2022-08-01 14:36:28 -07:00
Christopher Hiller
b7e905eaf1 fix(appium): partially revert 2a6a056187
This removes the symlink we were creating to avoid an extra install of `appium` in `APPIUM_HOME`.  Using a symlink obviously breaks stuff, because (for whatever reason) `npm` wants to run lthe `prepare` lifecycle script in the symlinked `appium`, which will not work outside of a dev environment due to missing dev depenencies.

Because npm v7+'s behavior is to install peer dependencies automatically, this will cause `appium` to be installed alongside any extensions in `APPIUM_HOME`. Each extension will have its own `appium`. This may just be the price we have to pay for using `APPIUM_HOME`, or there may be another solution to avoid the extra install (I'm not sure what it is).  I think it _also_ exposes us to future bugs where the running Appium differs from whatever the peer dependency is set to... which sort of defeats the purpose of peer dependencies.  Either way, the user will get a warning if the currently-running Appium is too new for an extension.
2022-08-01 14:36:03 -07:00
renovate[bot]
47de13c0d6 chore(types): update dependency type-fest to v2.18.0 2022-07-31 13:25:12 +00:00
renovate[bot]
edc9a5e7e7 chore(): update dependency @types/node to v16.11.47 2022-07-31 11:01:36 +00:00
renovate[bot]
6c36683859 chore(docutils): update dependency jsdoc-plugin-typescript to v2.1.1 2022-07-30 11:00:12 +00:00
renovate[bot]
6db31553db chore(execute-driver-plugin): update dependency webdriverio to v7.20.9 2022-07-29 19:21:42 +00:00
renovate[bot]
de273dd370 chore(doctor): update dependency appium-adb to v9.10.2 2022-07-29 11:09:34 +00:00
Christopher Hiller
f6e6d7234e Publish
- appium@2.0.0-beta.41
 - @appium/base-driver@8.6.0
 - @appium/base-plugin@1.10.0
 - @appium/doctor@1.16.23
 - @appium/docutils@0.0.8
 - @appium/eslint-config-appium@6.0.3
 - @appium/execute-driver-plugin@2.0.3
 - @appium/fake-driver@4.0.2
 - @appium/fake-plugin@2.0.4
 - @appium/gulp-plugins@7.0.3
 - @appium/images-plugin@1.3.3
 - @appium/opencv@1.0.10
 - @appium/relaxed-caps-plugin@1.0.0-beta.10
 - @appium/schema@0.0.8
 - @appium/support@2.59.3
 - @appium/test-support@1.4.0
 - @appium/types@0.3.0
 - @appium/universal-xml-plugin@1.0.0-beta.12
@appium/base-driver@8.6.0 @appium/base-plugin@1.10.0 @appium/doctor@1.16.23 @appium/docutils@0.0.8 @appium/eslint-config-appium@6.0.3 @appium/execute-driver-plugin@2.0.3 @appium/fake-driver@4.0.2 @appium/fake-plugin@2.0.4 @appium/gulp-plugins@7.0.3 @appium/images-plugin@1.3.3 @appium/opencv@1.0.10 @appium/relaxed-caps-plugin@1.0.0-beta.10 @appium/schema@0.0.8 @appium/support@2.59.3 @appium/test-support@1.4.0 @appium/types@0.3.0 @appium/universal-xml-plugin@1.0.0-beta.12 appium@2.0.0-beta.41
2022-07-28 14:34:54 -07:00
renovate[bot]
1848cc8229 chore(): update dependency @types/node to v16.11.46 2022-07-28 12:27:47 +00:00
renovate[bot]
54908e1cae chore(types): update dependency type-fest to v2.17.0 2022-07-22 16:54:35 +00:00
renovate[bot]
ae0ff136f6 chore(docutils): update dependency jsdoc to v3.6.11 2022-07-22 14:30:22 +00:00
Christopher Hiller
018daac156 chore(): remove dependabot config 2022-07-20 11:42:33 -07:00
renovate[bot]
32b9e50b3c chore(docutils): update dependency jsdoc-plugin-typescript to v2.1.0 2022-07-20 15:12:09 +00:00
renovate[bot]
8b48e46952 chore(): update dependency @types/sinon to v10.0.13 2022-07-20 12:17:57 +00:00
renovate[bot]
c256e0026b chore(doctor): update dependency appium-adb to v9.10.1 2022-07-19 15:29:26 +00:00
renovate[bot]
27ea226364 chore(): update babel monorepo to v7.18.9 2022-07-19 12:46:13 +00:00
Kazuaki Matsuo
e71e4eeecb docs: add ruby (#16857)
* chore: add ruby

* append ruby more

* tweak

* update
2022-07-18 22:03:32 -07:00
Christopher Hiller
4627756c66 test(images-plugin): use appium/test 2022-07-18 15:58:21 -07:00
Christopher Hiller
a96f1197a7 test(execute-driver-plugin): use appium/test 2022-07-18 15:58:21 -07:00
Christopher Hiller
5226844468 test(fake-driver): use appium/test 2022-07-18 15:58:21 -07:00
Christopher Hiller
70d88cb86f feat(appium,base-driver,base-plugin,test-support,types): move test fixtures into test-support
- `@appium/test-support` now exports the e2e setup for plugins, and e2e/unit suites for drivers from base-driver.  it also generates declarations.
- `appium` exports this as `appium/test`.
- The `capability.spec.js` unit test for basedriver now avoids spying on the "global" logger, due to test flake.  It now spies directly on the function which calls the global logger. (@mykola_mokhnach)
- removed homebrew ansi-stripping code from `test-support` and replaced with `@colors/colors`
- type fixes and refactors for `@appium/test-support`
- type fixes for `appium`
- simplify `lib/index.js` of `@appium/base-driver`
2022-07-18 15:58:21 -07:00
renovate[bot]
f6ac91787d chore(types): update webdriverio monorepo to v7.20.7 2022-07-18 12:07:13 +00:00
Mykola Mokhnach
47867d248d chore(doctor): Remove the obsolete android binary check (#17219) 2022-07-17 11:34:54 +02:00
renovate[bot]
7e461650c9 chore(doctor): update dependency appium-adb to v9.10.0 2022-07-16 17:30:45 +00:00
renovate[bot]
949076c768 chore(images-plugin): update dependency lru-cache to v7.13.1 2022-07-16 15:13:32 +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]
3608f0633d chore(workflows): update actions/setup-node digest to 2fddd88 2022-07-15 19:00:45 +00:00
Jonathan Lipps
b55405cac0 docs(appium): delete old 1.x docs in favour of a ref to the 1.x branch (#17204) 2022-07-14 14:22:16 -07:00
renovate[bot]
f503227fbc chore(): update dependency @types/node to v16.11.44 2022-07-14 13:20:55 +00:00
renovate[bot]
f82ba22f31 chore(gulp-plugins): update dependency plugin-error to v2 2022-07-13 13:49:07 -07:00
Christopher Hiller
85c6526909 fix(support): if appium is installed extraneously, do not consider it a dependency
This can happen if someone does something like `npm install --no-save appium`, _or_ if npm changes its shrinkwrap behavior for reasons that cause `appium` to be installed in `$APPIUM_HOME/node_modules` _(cough)_
2022-07-13 13:48:21 -07:00
Christopher Hiller
2a6a056187 fix(appium,support): fix installation problems
Ref: #17073

this change uses --legacy-peer-deps for newer versions of npm to
avoid installation of appium when installing extensions in ~/.appium.  this does not work if the extension contains a shrinkwrap with appium in it, though.
in that case, an extra copy of appium will always be installed.

it creates a symlink, e.g., ~/.appium/node_modules/appium to the currently-running appium, wherever that is.  could not abuse NODE_PATH to do this.

this is rather naive and does not check that the symlink is actually the same as the running appium if it already exists. that might cause some weird problems with multiple installs of appium on the same machine, but if it does, we can fix them as they arise.
2022-07-13 13:48:21 -07:00
renovate[bot]
c8b9dfcd91 chore(workflows): pin actions/setup-node action to 5b949b5 2022-07-13 13:48:01 -07: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
Mykola Mokhnach
3d402716fa docs(appium): Update README with the relevant Appium2 info (#17172) 2022-07-13 19:16:48 +02:00
renovate[bot]
a5700904bc chore(support): update dependency plist to v3.0.6 2022-07-13 14:02:42 +00:00
renovate[bot]
efcbfe81d6 chore(images-plugin): update dependency lru-cache to v7.13.0 2022-07-13 11:16:08 +00:00