Commit Graph

160 Commits

Author SHA1 Message Date
Jonathan Lipps bd6e3ac0b0 chore: publish
- appium@2.2.1
 - @appium/base-driver@9.4.1
 - @appium/base-plugin@2.2.22
 - @appium/doctor@2.0.27
 - @appium/docutils@0.4.11
 - @appium/driver-test-support@0.4.16
 - @appium/execute-driver-plugin@3.0.19
 - @appium/fake-driver@5.2.10
 - @appium/fake-plugin@3.1.26
 - @appium/images-plugin@2.1.6
 - @appium/opencv@2.1.5
 - @appium/plugin-test-support@0.3.23
 - @appium/schema@0.4.1
 - @appium/support@4.1.8
 - @appium/test-support@3.0.26
 - @appium/types@0.14.1
 - @appium/universal-xml-plugin@1.0.14
2023-10-19 10:05:33 -07:00
renovate[bot] a306ce741a fix(support): update definitelytyped 2023-10-18 21:08:27 +00:00
Jonathan Lipps 475198e36b chore: publish
- appium@2.2.0
 - @appium/base-driver@9.4.0
 - @appium/base-plugin@2.2.21
 - @appium/doctor@2.0.26
 - @appium/docutils@0.4.10
 - @appium/driver-test-support@0.4.15
 - @appium/eslint-config-appium@8.0.5
 - @appium/eslint-config-appium-ts@0.3.2
 - @appium/execute-driver-plugin@3.0.18
 - @appium/fake-driver@5.2.9
 - @appium/fake-plugin@3.1.25
 - @appium/images-plugin@2.1.5
 - @appium/opencv@2.1.4
 - @appium/plugin-test-support@0.3.22
 - @appium/schema@0.4.0
 - @appium/support@4.1.7
 - @appium/test-support@3.0.25
 - @appium/tsconfig@0.3.2
 - @appium/types@0.14.0
 - @appium/universal-xml-plugin@1.0.13
2023-10-18 13:35:18 -07:00
renovate[bot] d2a9a99418 fix(opencv): update definitelytyped 2023-10-10 16:29:41 +00:00
renovate[bot] b6a76ce91e fix(support): update definitelytyped 2023-09-16 13:25:08 +00:00
renovate[bot] 72a806bec7 fix(images-plugin): update dependency lru-cache to v10 (#19050) 2023-08-25 10:42:28 +02:00
Jonathan Lipps 820428b769 chore: publish
- appium@2.1.1
 - @appium/base-driver@9.3.18
 - @appium/base-plugin@2.2.18
 - @appium/doctor@2.0.24
 - @appium/docutils@0.4.7
 - @appium/driver-test-support@0.4.13
 - @appium/fake-driver@5.2.8
 - @appium/fake-plugin@3.1.22
 - @appium/images-plugin@2.1.4
 - @appium/opencv@2.1.3
 - @appium/support@4.1.5
 - @appium/test-support@3.0.23
 - @appium/universal-xml-plugin@1.0.11
2023-08-21 09:54:56 -07:00
renovate[bot] f2cff24685 fix(universal-xml-plugin): update dependency xpath to v0.0.33 (#18952) 2023-08-21 14:40:14 +02:00
Mykola Mokhnach 2f69e6db2a chore(base-driver): Improve bad parameters error message (#19002) 2023-08-19 08:27:31 +02:00
Jonathan Lipps d6204b6902 chore: publish
- appium@2.1.0
 - @appium/base-driver@9.3.17
 - @appium/base-plugin@2.2.17
 - @appium/doctor@2.0.23
 - @appium/docutils@0.4.6
 - @appium/driver-test-support@0.4.12
 - @appium/execute-driver-plugin@3.0.16
 - @appium/fake-driver@5.2.7
 - @appium/fake-plugin@3.1.21
 - @appium/images-plugin@2.1.3
 - @appium/opencv@2.1.2
 - @appium/plugin-test-support@0.3.20
 - @appium/support@4.1.4
 - @appium/test-support@3.0.22
 - @appium/typedoc-plugin-appium@0.6.6
 - @appium/types@0.13.3
 - @appium/universal-xml-plugin@1.0.10
2023-08-17 13:50:09 -07:00
renovate[bot] 12147d518f fix(universal-xml-plugin): update dependency @xmldom/xmldom to v0.8.10 (#18949)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-08-04 15:01:54 +02:00
Christopher Hiller 8a6a4ba7e7 chore: publish
- appium@2.0.0-rc.5
 - @appium/base-driver@9.3.15
 - @appium/base-plugin@2.2.15
 - @appium/doctor@2.0.21
 - @appium/docutils@0.4.4
 - @appium/driver-test-support@0.4.10
 - @appium/eslint-config-appium@8.0.4
 - @appium/fake-driver@5.2.6
 - @appium/fake-plugin@3.1.19
 - @appium/plugin-test-support@0.3.18
 - @appium/schema@0.3.1
 - @appium/support@4.1.2
 - @appium/test-support@3.0.20
 - @appium/types@0.13.2
2023-07-03 13:18:58 -07:00
Christopher Hiller d6cca5175c fix(types): separate the type of opts from initialOpts
A thing we know about the `opts` object passed in to a driver constructor is that it does _not_ contain caps.  This value is retained in `this.initialOpts`.  Upon session creation, it _does_ contain caps.

This adds a new type, `InitialOpts`, which is the first parameter to a driver.  In the future, it may accept a type argument, as currently any extension-specific options (defined via schema in `package.json`) are not typed.

Because `DriverOpts` is a superset of `InitialOpts`, this should not be a breaking change.
2023-07-03 13:10:51 -07:00
Jonathan Lipps ed20e00754 chore: publish
- appium@2.0.0-rc.3
 - @appium/base-driver@9.3.13
 - @appium/base-plugin@2.2.13
 - @appium/doctor@2.0.19
 - @appium/docutils@0.4.2
 - @appium/driver-test-support@0.4.8
 - @appium/fake-driver@5.2.5
 - @appium/fake-plugin@3.1.17
 - @appium/plugin-test-support@0.3.16
 - @appium/support@4.1.0
 - @appium/test-support@3.0.18
 - @appium/types@0.13.0
2023-06-15 13:57:59 -07:00
Christopher Hiller 81bc527be6 fix(types): various fixes for reality
- because BaseDriver implements `findElOrEls` (technically), any subclasses must not inherit an interface containing a non-identical `findElOrEls` -- not even narrowing.  so to avoid this, we will need to make it as broad as possible; no more generic `Ctx`
- likewise with `getLog`
- fix return type of `setGeoLocation`
- fix return type of `getPerformanceData`
- fix return type of `removeApp`
- fix return type of `hideKeyboard`
- fix return type of `getSystemBars`
- fix signature of various `touch*` methods
- fix return type of `setNetworkConnection`

alternatively, the deprecated methods mentioned here should be removed.
2023-06-14 16:21:51 -07:00
Christopher Hiller 00ae1625d7 fix(types,fake-driver): getLog doesn't necessarily return an array 2023-06-14 16:21:51 -07:00
Christopher Hiller 598b255e8d fix(fake-driver): update definition of findElOrEls 2023-06-14 16:21:51 -07:00
Jonathan Lipps d0ebbaa0c6 chore: publish
- appium@2.0.0-rc.1
 - @appium/base-driver@9.3.11
 - @appium/base-plugin@2.2.11
 - @appium/doctor@2.0.17
 - @appium/docutils@0.4.0
 - @appium/driver-test-support@0.4.7
 - @appium/execute-driver-plugin@3.0.14
 - @appium/fake-driver@5.2.4
 - @appium/fake-plugin@3.1.15
 - @appium/images-plugin@2.1.2
 - @appium/opencv@2.1.1
 - @appium/plugin-test-support@0.3.15
 - @appium/schema@0.3.0
 - @appium/strongbox@0.3.1
 - @appium/support@4.0.2
 - @appium/test-support@3.0.16
 - @appium/typedoc-plugin-appium@0.6.5
 - @appium/types@0.12.0
 - @appium/universal-xml-plugin@1.0.9
2023-06-14 10:34:52 -07:00
Christopher Hiller c161ec2bad chore(fake-driver): bump timeout of tests 2023-06-05 15:34:01 -07:00
renovate[bot] 3bf406015e fix(universal-xml-plugin): update dependency @xmldom/xmldom to v0.8.8 2023-05-31 12:15:12 +00:00
Christopher Hiller a11a6ede33 chore: publish
- appium@2.0.0-beta.59
 - @appium/base-driver@9.3.5
 - @appium/base-plugin@2.2.5
 - @appium/doctor@2.0.11
 - @appium/docutils@0.3.2
 - @appium/driver-test-support@0.4.3
 - @appium/eslint-config-appium-ts@0.3.1
 - @appium/eslint-config-appium@8.0.3
 - @appium/execute-driver-plugin@3.0.10
 - @appium/fake-driver@5.2.3
 - @appium/fake-plugin@3.1.9
 - @appium/images-plugin@2.0.9
 - @appium/opencv@2.0.9
 - @appium/plugin-test-support@0.3.11
 - @appium/support@3.1.9
 - @appium/test-support@3.0.11
 - @appium/typedoc-plugin-appium@0.5.3
 - @appium/types@0.10.3
 - @appium/universal-xml-plugin@1.0.8
2023-04-03 12:55:58 -07:00
renovate[bot] b9d339eaf3 fix(universal-xml-plugin): update dependency @xmldom/xmldom to v0.8.7 2023-03-31 13:23:31 +00:00
Christopher Hiller d514ebdd7e chore: update gitHead for lerna screuwp 2023-03-28 13:12:00 -07:00
Christopher Hiller 8480a85ce2 chore: publish
- appium@2.0.0-beta.58
 - @appium/base-driver@9.3.4
 - @appium/base-plugin@2.2.4
 - @appium/doctor@2.0.10
 - @appium/docutils@0.3.1
 - @appium/driver-test-support@0.4.2
 - @appium/eslint-config-appium-ts@0.3.0
 - @appium/eslint-config-appium@8.0.2
 - @appium/execute-driver-plugin@3.0.9
 - @appium/fake-driver@5.2.2
 - @appium/fake-plugin@3.1.8
 - @appium/plugin-test-support@0.3.10
 - @appium/support@3.1.8
 - @appium/test-support@3.0.10
 - @appium/typedoc-plugin-appium@0.5.2
 - @appium/types@0.10.2
 - @appium/universal-xml-plugin@1.0.7
2023-03-28 13:10:45 -07:00
Christopher Hiller 3c9fa7ba73 fix(appium,types,base-driver,fake-driver,driver-test-support): normalize constraint defaults
Another handful of fixes.

- remove second "extra" parameter from `Capabilities`, `NSCapabilities` `W3CCapabilities`. we were not using it anywhere to my knowledge. it was an escape hatch anyway.
- never assign `BaseDriverCapConstraints` as the default constraints, because this is confusing as hell. instead, drivers should use the `*DriverCaps` types which automatically pulls the base constraints in. applied across several workspaces
- renamed `DeviceSettings` => `IDeviceSettings` because `DeviceSettings` is a class.
- the session ID param of `Core`'s `sessionExists()` is actually optional (per the implementation)
- allow some modicum of type narrowing at the class level around settings and values returned by `ISessionHandler`'s methods. also, not all values in the raw settings object are of the same type `T`, so fix that
- `server`, `serverHost`, `serverPort` and `serverPath` are not members of `Core` (using `AppiumDriver` as a litmus test--it interacts with `Driver` types but does not have these properties itself)
- changed a few types to interfaces where possible
- moved a lost comment
- further dumbed-down the logdef stuff
- `Driver.driverData` is _always_ defined, since `Core` makes it an empty array.
- `DriverOpts` no longer contains "partial" caps; this it not quite right as the caps are not assigned until a session is created, but there's a conflict between some props which are _both_ server args and defined in constraints.  anyway, this is what `initialOpts` is for
- fix some type disagreements in basedriver's "capabilities" module
2023-03-27 17:07:51 -07:00
Christopher Hiller 309fe4c964 chore: lint everything 2023-03-22 16:25:22 -07:00
Christopher Hiller 872b924a97 chore: publish
- appium@2.0.0-beta.57
 - @appium/base-driver@9.3.3
 - @appium/base-plugin@2.2.3
 - @appium/doctor@2.0.9
 - @appium/docutils@0.3.0
 - @appium/driver-test-support@0.4.1
 - @appium/eslint-config-appium-ts@0.2.0
 - @appium/eslint-config-appium@8.0.1
 - @appium/execute-driver-plugin@3.0.8
 - @appium/fake-driver@5.2.1
 - @appium/fake-plugin@3.1.7
 - @appium/images-plugin@2.0.8
 - @appium/opencv@2.0.8
 - @appium/plugin-test-support@0.3.9
 - @appium/schema@0.2.6
 - @appium/support@3.1.7
 - @appium/test-support@3.0.9
 - @appium/typedoc-plugin-appium@0.5.1
 - @appium/types@0.10.1
2023-03-08 11:43:18 -08:00
Christopher Hiller e9dae3f6d0 fix(appium,fake-driver): expose child process when running an extension script
This change makes it so when running an extension script (e.g., `appium driver foo run some-script`), unless the `--json` flag is present, the child process will do no buffering whatsoever and will inherit `process.stdin`, `process.stdout` and `process.stderr` from Appium.

This means that extension scripts can do stuff like prompt the user for input.  It _also_ means they can do stuff like display progress bars and spinners.

If the user wants JSON data, we revert to the old behavior, which is to buffer the output and dump it once the script has completed.
2023-03-06 15:46:50 -08:00
Christopher Hiller 58b4790b1d chore: lint all the typescript 2023-03-06 15:21:58 -08:00
Christopher Hiller b4c1403c22 fix(fake-driver): fix a broken type 2023-03-02 15:01:13 -08:00
Christopher Hiller feebf72eb4 chore(fake-driver): avoid public class field assignment
This changes the `fake-driver` implementation to use declaration merging instead of other alternatives to mixins.

History:

The original code simply assigned the mixin methods to `FakeDriver.prototype` after the `class` definition. In TS, this doesn't fly; you need to be explicit about what class members exist.

To get around this, we've tried multiple different approaches:

1. Use a "mixin pattern" as explained in the official TypeScript documentation, which involves _class factories_.  This is tedious and difficult to reason about; each mixin must be passed to the next in-line, and we must be explicit about the base class and which _previous_ mixins any given mixin expects.
2. Use public class fields (a recent addition to JS).  Basically, these do not work the way you want them to; if a subclass overrides a public field, a method in the superclass which refers to this public field _will use the field as defined in the superclass_--not the subclass. This is different than how methods and accessors work.  This inhibits use of inheritance.
3. Add a method _for each method in each mixin_ to the base class, which simply calls `Function.prototype.apply` on the mixin with the context as the base class' `this`.  This is too verbose.

There may be a better way to do this, but where we've landed is using _declaration merging_ in TypeScript.  It allows us to add (but not remove, and I'm not sure about "modify") properties to the "FakeDriver interface", which seems to be the implicit TS interface created by the `class` keyword.  Since the declaration merging syntax is not expressible in JavaScript, this requires a `.ts` file.  To avoid creating _n_ extra files, it was easier to just make the mixins `.ts` files (you may note that we can mix-and-match JS and TS in our projects at will).

The implementation of each mixin uses `Object.assign()` to put new methods on the prototype, which are previously defined in the merged declaration above.  Finally, a `satisfies` clause (which is a transient type-check; it does not change any types but it _will_ generate a compiler error) ensures the props being added to the prototype match what we've defined.

You'll also note that each method has a `this` parameter, which is not a "real" parameter--it's just an annotation for TS which tells the method what the  context is.  If we hate that, an alternative is to use `FakeDriver.prototype.method = <method>` instead of the `Object.assign` call.  This feels marginally more tedious, but I could go either way.
2023-02-27 14:15:11 -08:00
Christopher Hiller 7b49356322 chore: publish
- appium@2.0.0-beta.56
 - @appium/base-driver@9.3.2
 - @appium/base-plugin@2.2.2
 - @appium/doctor@2.0.8
 - @appium/docutils@0.2.2
 - @appium/driver-test-support@0.4.0
 - @appium/execute-driver-plugin@3.0.7
 - @appium/fake-driver@5.2.0
 - @appium/fake-plugin@3.1.6
 - @appium/images-plugin@2.0.7
 - @appium/opencv@2.0.7
 - @appium/plugin-test-support@0.3.8
 - @appium/schema@0.2.5
 - @appium/support@3.1.6
 - @appium/test-support@3.0.8
 - @appium/typedoc-plugin-appium@0.5.0
 - @appium/types@0.10.0
 - @appium/universal-xml-plugin@1.0.6
2023-02-24 13:43:18 -08:00
Christopher Hiller ebe9477a3c feat(typedoc-plugin-appium): extract descriptions of return values from builtins
If a command is not documented with a `@returns` tag, but a builtin method _does_ have this tag (e.g., `ExternalDriver.createSession()`), then the plugin will use the tag from the builtin.

If a command _does_ have a `@returns` tag, but it provides no description, then the plugin will use the original `@returns` tag (which may have a type) and combine it with the content/description from the builtin (if any).

This requires further inspection of `SignatureReflection` data, which needed a new set of "comment finders", which prompted me to refactor the comment finders into their own files (because it was becoming unwieldy).  The call to `deriveComment` happens in the static `BaseCommandData.rewriteSignature()` method (whereas before it was just a straightforward clone operation).

- Fixed the block tag aggregation to prefer contentful over contentless tags in all cases.
- Modified the `@returns` tag of `FakeDriver.createSession()` for testing
- Moved some types around that were used outside of their sibling modules (e.g. `CommentSource` which used to be called `CommentSourceType`)
- pruned dead imports
2023-02-20 10:05:30 -08:00
Christopher Hiller 322363b887 chore: publish
- appium@2.0.0-beta.54
 - @appium/base-driver@9.3.1
 - @appium/base-plugin@2.2.1
 - @appium/doctor@2.0.7
 - @appium/docutils@0.2.0
 - @appium/driver-test-support@0.3.7
 - @appium/execute-driver-plugin@3.0.6
 - @appium/fake-driver@5.1.5
 - @appium/fake-plugin@3.1.5
 - @appium/images-plugin@2.0.6
 - @appium/opencv@2.0.6
 - @appium/plugin-test-support@0.3.7
 - @appium/relaxed-caps-plugin@1.0.5
 - @appium/schema@0.2.4
 - @appium/support@3.1.5
 - @appium/test-support@3.0.7
 - @appium/tsconfig@0.2.4
 - @appium/typedoc-plugin-appium@0.4.0
 - @appium/types@0.9.1
 - @appium/universal-xml-plugin@1.0.5
2023-02-09 11:44:44 -08:00
Christopher Hiller c8ff39a02e chore: do not publish tsconfig.tsbuildinfo
apparently the "files" prop does not take into account what the ".npmignore" file says, so these were still getting published.

hopefully this will fix it.
2023-01-23 16:39:36 -08:00
Christopher Hiller f1e0a46712 chore: publish
- appium@2.0.0-beta.53
 - @appium/base-driver@9.3.0
 - @appium/base-plugin@2.2.0
 - @appium/doctor@2.0.6
 - @appium/docutils@0.1.6
 - @appium/driver-test-support@0.3.6
 - @appium/fake-driver@5.1.4
 - @appium/fake-plugin@3.1.4
 - @appium/plugin-test-support@0.3.6
 - @appium/support@3.1.4
 - @appium/test-support@3.0.6
 - @appium/typedoc-plugin-appium@0.3.4
 - @appium/types@0.9.0
2023-01-23 12:49:31 -08:00
Christopher Hiller a8365391dc chore(fake-driver): annihilate loathsome mixin classes
I did here what I did to `appium-xcuitest-driver`, which was to assign the command methods to the class as fields.  Easier this way.
2023-01-19 14:31:43 -08:00
Jonathan Lipps 67c9bdfbce chore: publish
- appium@2.0.0-beta.52
 - @appium/base-driver@9.2.3
 - @appium/base-plugin@2.1.3
 - @appium/doctor@2.0.5
 - @appium/docutils@0.1.5
 - @appium/driver-test-support@0.3.5
 - @appium/execute-driver-plugin@3.0.5
 - @appium/fake-driver@5.1.3
 - @appium/fake-plugin@3.1.3
 - @appium/images-plugin@2.0.5
 - @appium/opencv@2.0.5
 - @appium/plugin-test-support@0.3.5
 - @appium/relaxed-caps-plugin@1.0.4
 - @appium/schema@0.2.3
 - @appium/support@3.1.3
 - @appium/test-support@3.0.5
 - @appium/tsconfig@0.2.3
 - @appium/typedoc-plugin-appium@0.3.3
 - @appium/types@0.8.3
 - @appium/universal-xml-plugin@1.0.4
2023-01-13 13:28:45 -08:00
Jonathan Lipps 9e0a313d7c chore: update lerna git head 2023-01-13 13:26:36 -08:00
Jonathan Lipps 84b211330d chore: publish
- appium@2.0.0-beta.51
 - @appium/base-driver@9.2.2
 - @appium/base-plugin@2.1.2
 - @appium/doctor@2.0.4
 - @appium/docutils@0.1.4
 - @appium/driver-test-support@0.3.4
 - @appium/execute-driver-plugin@3.0.4
 - @appium/fake-driver@5.1.2
 - @appium/fake-plugin@3.1.2
 - @appium/images-plugin@2.0.4
 - @appium/opencv@2.0.4
 - @appium/plugin-test-support@0.3.4
 - @appium/relaxed-caps-plugin@1.0.3
 - @appium/schema@0.2.2
 - @appium/support@3.1.2
 - @appium/test-support@3.0.4
 - @appium/tsconfig@0.2.2
 - @appium/typedoc-plugin-appium@0.3.2
 - @appium/types@0.8.2
 - @appium/universal-xml-plugin@1.0.3
2023-01-13 13:25:31 -08:00
Jonathan Lipps e77e5a2a4f chore: update lerna git head 2023-01-13 13:23:55 -08:00
Jonathan Lipps 35f4e2b7e4 chore: publish
- appium@2.0.0-beta.50
 - @appium/base-driver@9.2.1
 - @appium/base-plugin@2.1.1
 - @appium/doctor@2.0.3
 - @appium/docutils@0.1.3
 - @appium/driver-test-support@0.3.3
 - @appium/execute-driver-plugin@3.0.3
 - @appium/fake-driver@5.1.1
 - @appium/fake-plugin@3.1.1
 - @appium/images-plugin@2.0.3
 - @appium/opencv@2.0.3
 - @appium/plugin-test-support@0.3.3
 - @appium/relaxed-caps-plugin@1.0.2
 - @appium/schema@0.2.1
 - @appium/support@3.1.1
 - @appium/test-support@3.0.3
 - @appium/tsconfig@0.2.1
 - @appium/typedoc-plugin-appium@0.3.1
 - @appium/types@0.8.1
 - @appium/universal-xml-plugin@1.0.2
2023-01-13 13:19:27 -08:00
Jonathan Lipps b48a697d5b chore: commit lerna publish changes 2023-01-13 13:12:00 -08:00
Jonathan Lipps 422142302f chore: publish
- appium@2.0.0-beta.49
 - @appium/base-driver@9.2.0
 - @appium/base-plugin@2.1.0
 - @appium/doctor@2.0.2
 - @appium/docutils@0.1.2
 - @appium/driver-test-support@0.3.2
 - @appium/execute-driver-plugin@3.0.2
 - @appium/fake-driver@5.1.0
 - @appium/fake-plugin@3.1.0
 - @appium/images-plugin@2.0.2
 - @appium/opencv@2.0.2
 - @appium/plugin-test-support@0.3.2
 - @appium/relaxed-caps-plugin@1.0.1
 - @appium/schema@0.2.0
 - @appium/support@3.1.0
 - @appium/test-support@3.0.2
 - @appium/tsconfig@0.2.0
 - @appium/typedoc-plugin-appium@0.3.0
 - @appium/types@0.8.0
 - @appium/universal-xml-plugin@1.0.1
2023-01-13 13:09:28 -08:00
Jonathan Lipps 7055a0b281 feat(base-driver): deprecate non-standard routes
and add deprecation warnings in the log when these routes are accessed
2023-01-12 10:11:08 -08:00
Christopher Hiller f036f0a612 chore: all pkgs consume @appium/tsconfig 2023-01-04 12:09:08 -08:00
Christopher Hiller 8b33414901 feat(typedoc-appium-plugin): implement cross-referencing of methods
This is getting pretty close, but:

- Commands from a driver will show even w/o a `newMethodMap` or `execMethodMap`; it is able to understand that it's overriding `BaseDriver`
- It's also able to understand the associated routes
- And it's able to understand the routes even if `BaseDriver` does not implement it

Still working on the parameters display, but we have the name override working at least.

Added some docstrings in `fake-driver`, `base-driver` for testing
2023-01-03 12:50:53 -08:00
Jonathan Lipps 0823f0b60e chore: publish
- appium@2.0.0-beta.47
 - @appium/base-driver@9.0.0
 - @appium/base-plugin@2.0.0
 - @appium/doctor@2.0.0
 - @appium/docutils@0.1.0
 - @appium/driver-test-support@0.3.0
 - @appium/eslint-config-appium@8.0.0
 - @appium/execute-driver-plugin@3.0.0
 - @appium/fake-driver@5.0.0
 - @appium/fake-plugin@3.0.0
 - @appium/gulp-plugins@8.0.0
 - @appium/images-plugin@2.0.0
 - @appium/opencv@2.0.0
 - @appium/plugin-test-support@0.3.0
 - @appium/relaxed-caps-plugin@1.0.0-beta.14
 - @appium/schema@0.1.0
 - @appium/support@3.0.0
 - @appium/test-support@3.0.0
 - @appium/typedoc-plugin-appium@0.2.0
 - @appium/types@0.6.0
 - @appium/universal-xml-plugin@1.0.0-beta.16
2022-12-13 16:10:05 -08:00
Christopher Hiller 4dfe1610b5 fix(fake-driver): copy screen.png on build 2022-12-06 11:21:05 -08:00
Christopher Hiller 3c32112c20 chore: use tsc for compilation across the board
- `@appium/gulp-plugins` does not use `tsc` and continues to use...whatever it uses.
- `@appium/doctor` now has generated declarations, though I didn't bother to do anything with the types
- rewrote swaths of build scripts:
  - removed the `fix` and `lint` scripts from each workspace (package) since I don't think they get used and they are of limited value
  - for tests and autoinstallation of extensions, added `ts-node` for on-the-fly compilation
  - workspaces _can_ define their own `build` and `clean` scripts (both should be required if either is used).  these do not currently get run when running `npm run dev`, but they do occur on a bare `npm install` from the monorepo root or a `npm run reinstall`.
  - `npm run rebuild` does a fresh rebuild, but does not clean any `node_modules` dirs nor does it reinstall anything.
  - removed `prepublishOnly` since `preversion` does the same thing
  - `npm test` now runs `build`/`lint` in parallel
- postinstall script of `appium` ("autoinstall") script now must call `npm run build` if in a fresh dev environment. this is because a) lifecycle scripts of packages run before lifecycle scripts in the monorepo root, and b) `postinstall` runs before `prepare`. so there's really no way around it; even using `ts-node` fails because other modules depend on `@appium/support/index.js` which expects the pkg to be built.

Closes #17746
Closes #17807
2022-12-06 11:21:05 -08:00