Commit Graph

9510 Commits

Author SHA1 Message Date
Christopher Hiller 0c70d27679 chore(ci): fix FOSSA workflow 2022-08-23 13:54:22 -07:00
Christopher Hiller 44422a1e58 chore(ci): use npm caches across jobs
I think this was just an oversight
2022-08-23 13:51:23 -07:00
Christopher Hiller 21dc828306 chore(ci): use midnight-smoker
This replaces use of GH action `boneskull/nodejs-production-test-action` with direct use of `midnight-smoker`. It's now trivial to run all the smoke tests in a development environment.
2022-08-23 13:51:23 -07:00
Jonathan Lipps f3a393aed8 docs(appium): add a readme note about docs flux (close #17347) 2022-08-23 13:51:08 -07:00
Christopher Hiller 12cdbb7fdd chore(types): better types for w3c actions
The previous types were very loose.  I found some decent ones and stole them.
2022-08-23 13:50:11 -07:00
Christopher Hiller d14a0c5c0b chore(): add RouteMatcher type
Replaces the bare tuple `[string, RegExp]` with a named type.  Used by `Driver.getProxyAvoidList()`

Narrows the type def to only allow known HTTP methods as the first item in the tuple.
2022-08-23 13:50:11 -07:00
Christopher Hiller 74378cca66 fix(types): add inclusionCaseInsensitive to Constraint type 2022-08-23 13:50:11 -07:00
Christopher Hiller 92f4677b94 docs(plugin-test-support): fix typo 2022-08-23 13:42:47 -07:00
Christopher Hiller e2b3bdb09d chore(): update package-lock.json 2022-08-23 13:42:47 -07:00
Christopher Hiller 6820f5ec4e chore(appium): remove test export
BREAKING CHANGE:

This removes the `test` export from `appium`.  `import * from 'appium/test'` is no longer supported.

Use `@appium/test-support`, `@appium/driver-test-support` or `@appium/plugin-test-support` instead.

See #17398
2022-08-23 13:42:47 -07:00
Christopher Hiller 743c764d5e chore(test-support): remove driver/plugin-specific methods
BREAKING CHANGE:

This removes plugin/driver specific methods from `@appium/test-support`, and also removes the peer dep on `appium`.
The methods can now be found in `@appium/plugin-test-support` and `@appium/driver-test-support`.

Closes #17398
2022-08-23 13:42:47 -07:00
Christopher Hiller ca1480adcf chore(docutils): sync package.json 2022-08-23 13:42:47 -07:00
Christopher Hiller 8ea98b1fe9 chore(base-plugin): sync package.json 2022-08-23 13:42:47 -07:00
Christopher Hiller e09e5051c8 chore(fake-plugin): sync package.json 2022-08-23 13:42:47 -07:00
Christopher Hiller 44e5f1ba05 test(execute-driver-plugin): use @appium/plugin-test-support 2022-08-23 13:42:47 -07:00
Christopher Hiller 0f735774af test(images-plugin): use @appium/plugin-test-support
also sync package.json
2022-08-23 13:42:47 -07:00
Christopher Hiller 61de659616 chore(relaxed-caps-plugin): sync package.json 2022-08-23 13:42:47 -07:00
Christopher Hiller 07d4a81d27 chore(universal-xml-plugin): sync package.json 2022-08-23 13:42:47 -07:00
Christopher Hiller d2a92c8bc1 test(fake-driver): use @appium/driver-test-support
also publish types, since that wasn't happening
2022-08-23 13:42:47 -07:00
Christopher Hiller c37f4500c2 test(base-driver): use @appium/driver-test-support 2022-08-23 13:42:47 -07:00
Christopher Hiller b6c7533513 chore(): update plugin base tsconfig to reference @appium/plugin-test-support 2022-08-23 13:42:47 -07:00
Christopher Hiller 108b8c0209 feat(plugin-test-support): create @appium/plugin-test-support
This provides setup/teardown functions to plugins for their E2E tests

Extracted from `@appium/base-plugin` by way of `@appium/test-support`
2022-08-23 13:42:47 -07:00
Christopher Hiller 41289724dc feat(driver-test-support): create package
This package contains driver-specific test utilities extracted from `@appium/base-driver` by way of `@appium/test-support`
2022-08-23 13:42:47 -07:00
renovate[bot] 58d359d944 chore(): update dependency @types/node to v16.11.54 2022-08-23 13:03:31 +00:00
renovate[bot] cf4f533022 chore(types): update webdriverio monorepo to v7.23.0 2022-08-22 14:39:25 +00:00
renovate[bot] 0eb56a055e chore(): update dependency @types/node to v16.11.52 2022-08-22 11:46:13 +00:00
renovate[bot] 94dd88fc98 chore(execute-driver-plugin): update dependency webdriverio to v7.22.0 2022-08-20 15:39:08 +00:00
Mykola Mokhnach 39d5cee1b7 feat(appium): Adjust NODE_PATH so NPM could properly resolve component peer dependencies (#17325) 2022-08-20 13:35:04 +02:00
renovate[bot] 17a803da27 chore(): update dependency @types/node to v16.11.51 2022-08-20 11:11:02 +00:00
renovate[bot] 3470ec5101 chore(types): update dependency type-fest to v2.18.1 2022-08-19 10:16:14 +00:00
Christopher Hiller f5bc702c9a chore(ci): update to latest nodejs-production-test-action 2022-08-17 11:33:26 -07:00
renovate[bot] 0668bc45dc chore(images-plugin): update dependency lru-cache to v7.14.0 2022-08-17 10:48:31 +00:00
renovate[bot] a815e3be9d chore(types): update webdriverio monorepo to v7.21.0 2022-08-17 02:53:06 +00:00
Christopher Hiller b5947991cf fix(types): Driver extends ExecuteCommands (#17363)
Closes #17359
2022-08-16 13:35:21 -07:00
renovate[bot] afc15599c0 chore(): update dependency @types/node to v16.11.49 2022-08-16 10:33:08 +00:00
renovate[bot] 75a9154366 chore(gulp-plugins): update dependency eslint to v8.22.0 2022-08-14 09:51:20 +00:00
renovate[bot] 8eea316484 chore(support): update dependency @types/semver to v7.3.12 2022-08-12 14:07:44 +00:00
renovate[bot] ef9b99feee chore(): update dependency @types/node to v16.11.48 2022-08-12 11:44:07 +00:00
renovate[bot] 7dbf3c2127 chore(support): update dependency @types/semver to v7.3.11 2022-08-11 12:05:02 +00:00
renovate[bot] d3c4d40b44 chore(gulp-plugins): update dependency eslint-plugin-mocha to v10.1.0 2022-08-11 09:11:47 +00:00
renovate[bot] 6357b30051 chore(gulp-plugins): update dependency eslint to v8.21.0 2022-08-11 02:41:19 +00:00
Christopher Hiller cfdf898e04 fix(appium): do not throw ENAMETOOLONG on long cli arg
Some CLI args can be interpreted as filenames or JSON/CSV blobs.  Appium first assumes the value is a file and attempts to open it.  But if a blob is given and it is of some _problematic length_, the OS will throw an `ENAMETOOLONG` exception trying to open a filepath with a huge blob.  If the JSON is reasonably small, an `ENOENT` will be thrown instead.  Previous to this change, we were only looking for `ENOENT`; now we treat `ENAMETOOLONG` errors as JSON blobs.  If the problem is that the filename _is_ actually too long, the user will get an "invalid JSON" error, which will probably be confusing, but is less likely to happen than the more-common error this addresses.

If someone complains about it in the future, we can take another look, but it's going to take more effort than it's worth atm to fix it (imo).
2022-08-10 15:51:31 -07:00
Christopher Hiller 159703744f fix(types): add missing @types/ws dep 2022-08-10 14:54:51 -07:00
Jonathan Lipps 7ae4b5cb6a docs(appium): fix env var typo in docs publishing (#17318) 2022-08-10 11:43:28 -07:00
Christopher Hiller 887cb449e6 chore(eslint-config-appium): upgrade to ESLint v8
BREAKING CHANGE:

This change upgrades to ESLint v8 and removes `@babel/eslint-parser`, which is only necessary if we're using mid-stage TC39 proposals (which we aren't).  I think `@babel/core` was a peer dep of `@babel/eslint-parser`, so I removed that too.  And removed cruft from the main configuration.

ESLint rules _very likely_ had breaking changes, but I didn't experience any on our codebase.  However, this version of ESLint seems to be incompatible with `gulp-eslint`, so `@appium/gulp-plugins` should be held back from upgrading.

In addition:

- Updated `README.md`
- Updated some fields in `package.json`
- Loosened `peerDependencies`, as they're supposed to be loose.
2022-08-10 11:36:28 -07:00
Jonathan Lipps c58f32441d Publish
- appium@2.0.0-beta.43
 - @appium/base-driver@8.7.0
 - @appium/base-plugin@1.10.2
 - @appium/doctor@1.16.25
 - @appium/docutils@0.0.10
 - @appium/fake-driver@4.2.0
 - @appium/fake-plugin@2.1.0
 - @appium/gulp-plugins@7.0.5
 - @appium/images-plugin@1.3.5
 - @appium/support@2.59.5
 - @appium/test-support@1.5.0
 - @appium/types@0.4.0
@appium/base-driver@8.7.0 @appium/base-plugin@1.10.2 @appium/doctor@1.16.25 @appium/docutils@0.0.10 @appium/fake-driver@4.2.0 @appium/fake-plugin@2.1.0 @appium/gulp-plugins@7.0.5 @appium/images-plugin@1.3.5 @appium/support@2.59.5 @appium/test-support@1.5.0 @appium/types@0.4.0 appium@2.0.0-beta.43
2022-08-10 07:45:24 -07:00
Jonathan Lipps 325f9900cc chore(appium): don't lint autogenerated docs assets js 2022-08-10 07:42:44 -07:00
Jonathan Lipps 337ec3e7ba feat(base-driver,fake-driver,appium): add convenience methods for defining execute script overloads (#17321)
* feat(base-driver,fake-driver,appium): add convenience methods for defining execute script overloads

* Update packages/appium/docs/en/ecosystem/build-drivers.md

Co-authored-by: Christopher Hiller <boneskull@boneskull.com>

* Update packages/appium/docs/en/ecosystem/build-drivers.md

Co-authored-by: Christopher Hiller <boneskull@boneskull.com>

* Update packages/appium/docs/en/ecosystem/build-drivers.md

Co-authored-by: Christopher Hiller <boneskull@boneskull.com>

* Update packages/appium/docs/en/ecosystem/build-drivers.md

Co-authored-by: Christopher Hiller <boneskull@boneskull.com>

* review

* review

Co-authored-by: Christopher Hiller <boneskull@boneskull.com>
2022-08-09 20:47:47 -07:00
Christopher Hiller 888aac85ff fix(support): add missing @appium/types
This package was missing `@appium/types`, which means packages consuming `@appium/support` which _don't_ also consume `appium` in some capacity will have types that won't compile, e.g., `teen_process`.
2022-08-09 15:26:20 -07:00
Christopher Hiller ee0a579ddc chore(gulp-plugins): remove unused babel-eslint 2022-08-09 10:49:44 -07:00