Commit Graph

12284 Commits

Author SHA1 Message Date
renovate[bot] e1e228380f chore(universal-xml-plugin): update dependency fast-xml-parser to v5.8.0 (#22277)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-15 15:31:01 +00:00
renovate[bot] 74170ec575 chore(eslint-config-appium-ts): update dependency typescript-eslint to v8.59.3 (#22275)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-15 12:43:00 +00:00
renovate[bot] 3f9a2ea18f chore(docutils): update dependency yaml to v2.9.0 (#22276)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-15 09:39:13 +00:00
renovate[bot] 2ef20b988b chore(deps): update dependency @types/node to v24.12.4 (#22274)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-15 07:51:31 +00:00
github-actions[bot] 1dffc4e833 docs(appium): Update documentation translations (#22273)
Co-authored-by: mykola-mokhnach <7767781+mykola-mokhnach@users.noreply.github.com>
2026-05-14 22:45:04 -07:00
Jonathan Lipps 97c879cdd0 feat: add IPC channels per session for drivers and plugins to communicate (#22211)
* feat: add IPC channels per session for drivers and plugins to communicate (fix #22206)

* lint

* export AppiumIpc

* fix test issues

* import AppiumIpc directly from basedriver

* fakedriver is used directly outside of appium so can't rely on existence of IPC

* make ipc functions async with lock and better types

* fix assignIpc types

* deduplicate session object deletion

* ipcGuard -> withIpc

* address various review comments

* lint

* address copilot and other review comments

* store only last message. change model to use subscription object and async generator

* enforce max message size in bytes

* fix tests and call the message payload 'data' for clarity

* lint

* make assignIpc optional on drivers for backwards compatibility

* add error handling in startClock since it is usually not awaited

* add docs

* remove todo comment

* apply copilot and eglitise suggestions

* add typedoc

* add error handling to onIpcInit

* apply more suggestions

* fix schema unit test

* apply more suggestions

* add links to ipc examples

* make minimum ipc message size 1 instead of 0

* ensure publisher names are friendly to consumers

* fix ipc message time unit

* use already included sizeof for objs

* just pass error obj to log

* be more typescriptey about our ipc guard

* make max obj size part of opts for appiumipc

* let unsubscribe return whether it worked

* improve ipc types and shapes

* apply master package-lock.json

* update schema config

* use javascript naming conventions

* clarify distinction between message and payload (data)

* ensure async iterator loop ends when unsubscribe is called

* ensure the right things happen when you unsubscribe

* make require ipc more ergonomic

* remove unnecessary async locks and de-asyncify methods

* simplify interface and just use subscriber/plugin names

* fix docs

* fix lint

* document isActive

* add note about topic namespace

* use sleep instead of delay

* restrict the ipc payload data type to something that can be cloned

* clarify topic namespacing recommendation

* make sure listeners and promises are cleaned up in async iterator

* clean up ipc internal names

* readonly

* address review comments

* make ipcmessage readonly

* readonly cause why not
2026-05-14 16:56:02 -07:00
renovate[bot] 8300e115b2 chore(docutils): update dependency mkdocs-git-revision-date-localized-plugin to v1.5.2 (#22270)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-13 13:38:48 +00:00
renovate[bot] ea186eae17 chore(support): update dependency semver to v7.8.0 (#22266)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-12 14:46:17 +00:00
renovate[bot] 07466e02f7 chore(support): update dependency asyncbox to v6.3.0 (#22265)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-12 11:34:37 +00:00
renovate[bot] a91f4a718b chore(deps): update dependency @types/node to v24.12.3 (#22263)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-11 19:15:58 +02:00
renovate[bot] f53e443d64 chore(eslint-config-appium-ts): update dependency @eslint/compat to v2.1.0 (#22264)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-11 15:37:16 +00:00
renovate[bot] fc11de2bda chore(test-support): update dependency sinon to v22 (#22262)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-10 20:35:59 +02:00
renovate[bot] 82343effc4 chore(eslint-config-appium-ts): update dependency eslint-plugin-n to v18 (#22261)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-10 20:35:28 +02:00
renovate[bot] 59a460949a chore(universal-xml-plugin): update dependency fast-xml-parser to v5.7.3 (#22260)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-10 10:19:43 +02:00
renovate[bot] b4dd22512c chore(eslint-config-appium-ts): update dependency typescript-eslint to v8.59.2 (#22258)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-10 08:48:04 +02:00
renovate[bot] a18700fed6 chore(storage-plugin): update dependency lru-cache to v11.3.6 (#22259)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-10 08:47:54 +02:00
dependabot[bot] 2f312722d7 chore(deps): bump the npm_and_yarn group across 1 directory with 2 updates (#22257)
Bumps the npm_and_yarn group with 2 updates in the / directory: [fast-uri](https://github.com/fastify/fast-uri) and [fast-xml-builder](https://github.com/NaturalIntelligence/fast-xml-builder).


Updates `fast-uri` from 3.0.1 to 3.1.2
- [Release notes](https://github.com/fastify/fast-uri/releases)
- [Commits](https://github.com/fastify/fast-uri/compare/v3.0.1...v3.1.2)

Updates `fast-xml-builder` from 1.1.5 to 1.2.0
- [Changelog](https://github.com/NaturalIntelligence/fast-xml-builder/blob/main/CHANGELOG.md)
- [Commits](https://github.com/NaturalIntelligence/fast-xml-builder/compare/v1.1.5...v1.2.0)

---
updated-dependencies:
- dependency-name: fast-uri
  dependency-version: 3.1.2
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: fast-xml-builder
  dependency-version: 1.2.0
  dependency-type: indirect
  dependency-group: npm_and_yarn
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-08 22:43:31 +03:00
github-actions f5369c65a8 chore: publish
- appium@3.4.2
 - @appium/base-driver@10.5.2
 - @appium/base-plugin@3.2.4
 - @appium/docutils@2.4.2
 - @appium/fake-plugin@4.2.4
 - @appium/images-plugin@4.2.4
 - @appium/storage-plugin@1.1.4
 - @appium/support@7.2.2
 - @appium/test-support@4.1.4
@appium/base-driver@10.5.2 @appium/base-plugin@3.2.4 @appium/docutils@2.4.2 @appium/fake-plugin@4.2.4 @appium/images-plugin@4.2.4 @appium/storage-plugin@1.1.4 @appium/support@7.2.2 @appium/test-support@4.1.4 appium@3.4.2
2026-05-07 18:32:52 +00:00
Mykola Mokhnach 8c6c19982e fix(support): accept Uint8Array/ArrayBuffer in plist parse path (#22256) 2026-05-07 20:26:25 +02:00
Mykola Mokhnach e39017feac ci: Restore publish fallback script (#22255) 2026-05-07 20:25:25 +02:00
github-actions fd6dbe9eff chore: publish
- appium@3.4.1
 - @appium/base-driver@10.5.1
 - @appium/base-plugin@3.2.3
 - @appium/docutils@2.4.1
 - @appium/eslint-config-appium-ts@3.2.1
 - @appium/fake-plugin@4.2.3
 - @appium/images-plugin@4.2.3
 - @appium/storage-plugin@1.1.3
 - @appium/support@7.2.1
 - @appium/test-support@4.1.3
@appium/base-driver@10.5.1 @appium/base-plugin@3.2.3 @appium/docutils@2.4.1 @appium/eslint-config-appium-ts@3.2.1 @appium/fake-plugin@4.2.3 @appium/images-plugin@4.2.3 @appium/storage-plugin@1.1.3 @appium/support@7.2.1 @appium/test-support@4.1.3 appium@3.4.1
2026-05-06 20:38:58 +00:00
dependabot[bot] c18b535d42 chore(deps): bump basic-ftp in the npm_and_yarn group across 1 directory (#22253)
Bumps the npm_and_yarn group with 1 update in the / directory: [basic-ftp](https://github.com/patrickjuchli/basic-ftp).


Updates `basic-ftp` from 5.3.0 to 5.3.1
- [Release notes](https://github.com/patrickjuchli/basic-ftp/releases)
- [Changelog](https://github.com/patrickjuchli/basic-ftp/blob/master/CHANGELOG.md)
- [Commits](https://github.com/patrickjuchli/basic-ftp/compare/v5.3.0...v5.3.1)

---
updated-dependencies:
- dependency-name: basic-ftp
  dependency-version: 5.3.1
  dependency-type: indirect
  dependency-group: npm_and_yarn
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-06 23:24:12 +03:00
Edgars Eglītis 9045dfcefa ci: tune release workflows (#22252)
* ci: tune release workflows

* revert splitting workflows
2026-05-06 23:16:35 +03:00
Edgars Eglītis 98a1735913 fix(eslint-config-appium-ts): set new ESLint 10 rules to 'warn' (#22251) 2026-05-06 22:36:19 +03:00
Mykola Mokhnach 3229e74d3d fix(support): Avoid exceptions in unwrapElement (#22250) 2026-05-06 21:28:12 +02:00
github-actions 9c35776756 chore: publish
- appium@3.4.0
 - @appium/base-driver@10.5.0
 - @appium/base-plugin@3.2.2
 - @appium/docutils@2.4.0
 - @appium/driver-test-support@1.2.2
 - @appium/eslint-config-appium-ts@3.2.0
 - @appium/execute-driver-plugin@6.0.3
 - @appium/fake-driver@6.1.3
 - @appium/fake-plugin@4.2.2
 - @appium/images-plugin@4.2.2
 - @appium/opencv@4.1.4
 - @appium/plugin-test-support@1.2.2
 - @appium/relaxed-caps-plugin@2.2.2
 - @appium/schema@1.1.1
 - @appium/storage-plugin@1.1.2
 - @appium/support@7.2.0
 - @appium/test-support@4.1.2
 - @appium/types@1.4.0
 - @appium/universal-xml-plugin@2.1.3
@appium/base-driver@10.5.0 @appium/base-plugin@3.2.2 @appium/docutils@2.4.0 @appium/driver-test-support@1.2.2 @appium/eslint-config-appium-ts@3.2.0 @appium/execute-driver-plugin@6.0.3 @appium/fake-driver@6.1.3 @appium/fake-plugin@4.2.2 @appium/images-plugin@4.2.2 @appium/opencv@4.1.4 @appium/plugin-test-support@1.2.2 @appium/relaxed-caps-plugin@2.2.2 @appium/schema@1.1.1 @appium/storage-plugin@1.1.2 @appium/support@7.2.0 @appium/test-support@4.1.2 @appium/types@1.4.0 @appium/universal-xml-plugin@2.1.3 appium@3.4.0
2026-05-06 19:01:52 +00:00
Mykola Mokhnach 1b31db3be9 ci: Add a workflow for executing lerna version (#22249) 2026-05-06 20:59:36 +02:00
renovate[bot] 0a4b4f5a55 chore(support): update dependency glob to v13.0.6 (#22244)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-06 17:42:13 +02:00
Mykola Mokhnach a085d44616 ci: Apply scoped release recovery (#22248) 2026-05-06 17:41:59 +02:00
Mykola Mokhnach a10f558382 ci: tune recovery logic (#22247) 2026-05-06 17:19:23 +02:00
Mykola Mokhnach f61e7d57fa ci: Release recovery script (#22246) 2026-05-06 17:09:23 +02:00
renovate[bot] 705710adc5 chore(support): update dependency axios to v1.16.0 (#22240)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-06 14:50:17 +00:00
renovate[bot] 6a3d659c5a chore(support): update dependency teen_process to v4.1.3 (#22241)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-06 13:46:54 +00:00
dependabot[bot] c760f02e14 chore(deps): bump ip-address (#22243)
Bumps the npm_and_yarn group with 1 update in the / directory: [ip-address](https://github.com/beaugunderson/ip-address).


Updates `ip-address` from 9.0.5 to 10.2.0
- [Commits](https://github.com/beaugunderson/ip-address/commits)

---
updated-dependencies:
- dependency-name: ip-address
  dependency-version: 10.2.0
  dependency-type: indirect
  dependency-group: npm_and_yarn
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-06 12:27:52 +03:00
renovate[bot] e1ab96fc4e chore(docutils): update dependency yaml to v2.8.4 (#22239)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-06 08:47:02 +00:00
github-actions[bot] e8d31c63c4 docs(appium): Update documentation translations (#22238)
Co-authored-by: mykola-mokhnach <7767781+mykola-mokhnach@users.noreply.github.com>
2026-05-06 09:20:11 +03:00
Edgars Eglītis 787571d338 feat: add 3 WebDriver extension endpoints (#22237)
* feat: add 2 WebDriver extension endpoints

* docs: add missing reference for removeAuthCredential

* fix protocol hash
2026-05-05 20:30:59 +03:00
Edgars Eglītis 4849ad015d feat(eslint-config-appium-ts): support ESLint 10 (#22236) 2026-05-05 11:15:02 +03:00
renovate[bot] 0878f3c8ce chore(workflows): update fuxingloh/multi-labeler action to v5 (#22235)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-05 09:05:43 +03:00
renovate[bot] 3dd0ac715a chore(support): update dependency asyncbox to v6.2.0 (#22233)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-04 20:27:40 +00:00
Edgars Eglītis ce09eb2e7d chore: fix new linting errors in ESLint 10 (#22230)
* fix no-useless-assignment errors

* fix preserve-caught-error errors

* address comments

* address comments
2026-05-04 20:44:23 +03:00
renovate[bot] 9cc0377acf chore(execute-driver-plugin): update dependency webdriverio to v9.27.1 (#22232)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-04 15:15:08 +00:00
renovate[bot] 9b21b92418 chore(workflows): update slackapi/slack-github-action action to v3.0.3 (#22229)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-02 13:35:08 +00:00
renovate[bot] c758fcaf13 chore(eslint-config-appium-ts): update dependency typescript-eslint to v8.59.1 (#22228)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-02 09:06:07 +00:00
Mykola Mokhnach 63218cdac6 feat(support): Replace lodash with native alternatives (#22225) 2026-05-01 23:17:40 +02:00
Edgars Eglītis 08493df3d1 feat(docutils): add mermaid diagram support (#22227) 2026-05-01 19:47:22 +03:00
Mykola Mokhnach bde5bd57f4 feat(eslint-config-appium-ts): Add rule to warn if a type is not imported properly (#22226) 2026-05-01 17:47:26 +02:00
renovate[bot] b5bdfdd4e4 chore(eslint-config-appium-ts): update dependency eslint-plugin-promise to v7.3.0 (#22222)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-30 14:43:29 +00:00
Edgars Eglītis cb4aa687a2 chore(deps): update plist to v4 (#22224) 2026-04-30 13:52:34 +03:00
renovate[bot] 180f2611c1 chore(support): update dependency plist to v3.1.1 (#22221)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-30 10:06:28 +00:00