mirror of
https://github.com/appium/appium.git
synced 2026-02-26 13:20:04 -06:00
Most of these changes are the addition of types. There are a few places in which the typechecker found weirdness, and I have addressed those. - In `logging.js`, `parseInt()` was being called on props of `process.env`; this is not allowed, because `parseInt()` only accepts a string, and props may be `undefined`. - In `log-internal.js`, I had to remove the `raiseError()` function because TypeScript is unable to understand that a function, when called, will always throw. The fix was just to replace with `throw new Error...` - Introduced a var in `mjpeg.js` to avoid repeated casting - Added some type guards to `net.js`. as function parameters, union types kind of suck. This is definitely one place TS would have helped, since it allows function overloads. Also dropped use of deprecated `url` module in lieu of W3C `URL`. - Removed some old-node-version cruft from `util.js`. Non-code changes: - Needed to use an override for `type-fest`, as it's included as a transitive dependency, but otherwise is only present in the devdeps of the monorepo root `package.json`. This means, due to version conflicts, a `support/node_modules/type-fest` would be created with an old, incompatible version, which would be preferred over the monorepo one due to Node's resolution algorithm. This needs npm v8.3+ to work properly, but is only a problem for contributors (not consumers). - Pinned type of `opencvv-bindings`. - No longer deleting `build` dir before transpilation since it may contain generated declarations!