mirror of
https://github.com/appium/appium.git
synced 2026-10-31 22:32:24 +08:00
Compare commits
6
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e6b583a209 | ||
|
|
3016201f2a | ||
|
|
e0d5c4dfd6 | ||
|
|
779a3a048f | ||
|
|
07302ab3e9 | ||
|
|
609db021f4 |
@@ -9,7 +9,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Check for "On Hold" label
|
||||
uses: egmacke/action-check-label@v4
|
||||
uses: egmacke/action-check-label@v5
|
||||
with:
|
||||
label: On Hold
|
||||
state: absent
|
||||
|
||||
Generated
+73
-45
@@ -1698,9 +1698,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@nodable/entities": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/@nodable/entities/-/entities-2.1.0.tgz",
|
||||
"integrity": "sha512-nyT7T3nbMyBI/lvr6L5TyWbFJAI9FTgVRakNoBqCD+PmID8DzFrrNdLLtHMwMszOtqZa8PAOV24ZqDnQrhQINA==",
|
||||
"version": "2.2.0",
|
||||
"resolved": "https://registry.npmjs.org/@nodable/entities/-/entities-2.2.0.tgz",
|
||||
"integrity": "sha512-9uGyhaQavEUMC8AIddIjau4NsnsXhou+j5sBAGojCM1oxmQpVKTWR/9JxABD6UAv12vpIms55fPZKFQEhG6uBg==",
|
||||
"funding": [
|
||||
{
|
||||
"type": "github",
|
||||
@@ -4900,6 +4900,18 @@
|
||||
"url": "https://github.com/chalk/ansi-styles?sponsor=1"
|
||||
}
|
||||
},
|
||||
"node_modules/anynum": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/anynum/-/anynum-1.0.0.tgz",
|
||||
"integrity": "sha512-xjR9/zBVnUOP6ztMIIgShjsxui80nQUQH+5xJnvrYLs+90bF25/KJqaAi8mk+B4RDtX1Nspi6fmp4YTEts8SfA==",
|
||||
"funding": [
|
||||
{
|
||||
"type": "github",
|
||||
"url": "https://github.com/sponsors/NaturalIntelligence"
|
||||
}
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/appium": {
|
||||
"resolved": "packages/appium",
|
||||
"link": true
|
||||
@@ -5307,9 +5319,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/axios": {
|
||||
"version": "1.17.0",
|
||||
"resolved": "https://registry.npmjs.org/axios/-/axios-1.17.0.tgz",
|
||||
"integrity": "sha512-J8SwNxprqqpbfenehxWYXE7CW+wM1BB4w3+N+g+/Wx40xM4rsLrfPmHHxSWIxJLYDgSY/HqlFPIYb2/S3rxafw==",
|
||||
"version": "1.18.0",
|
||||
"resolved": "https://registry.npmjs.org/axios/-/axios-1.18.0.tgz",
|
||||
"integrity": "sha512-E32NzpYKp++W7XRe52rHiXV2ehxmh3wbdgO7MHeFM+vqxLBYHzt0ElkiImtOBxtOmyp0yoC8C6uESVV84Y2/hw==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"follow-redirects": "^1.16.0",
|
||||
@@ -9178,9 +9190,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/fast-xml-parser": {
|
||||
"version": "5.8.0",
|
||||
"resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-5.8.0.tgz",
|
||||
"integrity": "sha512-6bIM7fsJxeo3uXv7OncQYsBAMPJ7V16Slahl/6M98C/i2q+vB1+4a0MtrvYwDFEUrwDSbAmeLDRXsOBwrL7yAg==",
|
||||
"version": "5.9.0",
|
||||
"resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-5.9.0.tgz",
|
||||
"integrity": "sha512-duBuXbyIhEeNO4GjFuVqr0nF047oNwr18aum+zJyqo0MUG/n7Afgs3Qv3D6VN3ONedUKxiuFlPiMGIa0Z11chA==",
|
||||
"funding": [
|
||||
{
|
||||
"type": "github",
|
||||
@@ -9189,10 +9201,11 @@
|
||||
],
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@nodable/entities": "^2.1.0",
|
||||
"@nodable/entities": "^2.2.0",
|
||||
"fast-xml-builder": "^1.2.0",
|
||||
"is-unsafe": "^1.0.1",
|
||||
"path-expression-matcher": "^1.5.0",
|
||||
"strnum": "^2.3.0",
|
||||
"strnum": "^2.4.0",
|
||||
"xml-naming": "^0.1.0"
|
||||
},
|
||||
"bin": {
|
||||
@@ -11050,6 +11063,18 @@
|
||||
"url": "https://github.com/sponsors/sindresorhus"
|
||||
}
|
||||
},
|
||||
"node_modules/is-unsafe": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/is-unsafe/-/is-unsafe-1.0.1.tgz",
|
||||
"integrity": "sha512-CLK2+VdgERgD96EYm5lUQssZYlRg2tkZnbsxZoacmSiRxiFJ4Nk4SzjCl+Ur+v3kXIY9dTIdb3IH22y1mZ56LA==",
|
||||
"funding": [
|
||||
{
|
||||
"type": "github",
|
||||
"url": "https://github.com/sponsors/NaturalIntelligence"
|
||||
}
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/is-wsl": {
|
||||
"version": "2.2.0",
|
||||
"resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz",
|
||||
@@ -16995,16 +17020,19 @@
|
||||
}
|
||||
},
|
||||
"node_modules/strnum": {
|
||||
"version": "2.3.0",
|
||||
"resolved": "https://registry.npmjs.org/strnum/-/strnum-2.3.0.tgz",
|
||||
"integrity": "sha512-ums3KNd42PGyx5xaoVTO1mjU1bH3NpY4vsrVlnv9PNGqQj8wd7rJ6nEypLrJ7z5vxK5RP0yMLo6J/Gsm62DI5Q==",
|
||||
"version": "2.4.0",
|
||||
"resolved": "https://registry.npmjs.org/strnum/-/strnum-2.4.0.tgz",
|
||||
"integrity": "sha512-sHrVyWWdq28RbhjuJdZsA1SnGRJV6NiXbk6AXBxDOsgAcA+lmpUZCYjOdLBxkXMwis6RRe7dlZt4VlIWFVzkmg==",
|
||||
"funding": [
|
||||
{
|
||||
"type": "github",
|
||||
"url": "https://github.com/sponsors/NaturalIntelligence"
|
||||
}
|
||||
],
|
||||
"license": "MIT"
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"anynum": "^1.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/supports-color": {
|
||||
"version": "8.1.1",
|
||||
@@ -18844,23 +18872,23 @@
|
||||
}
|
||||
},
|
||||
"packages/appium": {
|
||||
"version": "3.5.1",
|
||||
"version": "3.5.2",
|
||||
"hasInstallScript": true,
|
||||
"license": "Apache-2.0",
|
||||
"dependencies": {
|
||||
"@appium/base-driver": "10.7.0",
|
||||
"@appium/base-plugin": "3.3.1",
|
||||
"@appium/docutils": "2.5.0",
|
||||
"@appium/base-driver": "10.7.1",
|
||||
"@appium/base-plugin": "3.3.2",
|
||||
"@appium/docutils": "2.5.1",
|
||||
"@appium/logger": "2.0.9",
|
||||
"@appium/schema": "1.2.1",
|
||||
"@appium/support": "7.2.4",
|
||||
"@appium/support": "7.2.5",
|
||||
"@appium/types": "1.5.1",
|
||||
"@sidvind/better-ajv-errors": "5.0.0",
|
||||
"ajv": "8.20.0",
|
||||
"ajv-formats": "3.0.1",
|
||||
"argparse": "2.0.1",
|
||||
"asyncbox": "6.3.0",
|
||||
"axios": "1.17.0",
|
||||
"axios": "1.18.0",
|
||||
"lilconfig": "3.1.3",
|
||||
"lru-cache": "11.5.1",
|
||||
"ora": "5.4.1",
|
||||
@@ -18917,14 +18945,14 @@
|
||||
},
|
||||
"packages/base-driver": {
|
||||
"name": "@appium/base-driver",
|
||||
"version": "10.7.0",
|
||||
"version": "10.7.1",
|
||||
"license": "Apache-2.0",
|
||||
"dependencies": {
|
||||
"@appium/support": "7.2.4",
|
||||
"@appium/support": "7.2.5",
|
||||
"@appium/types": "1.5.1",
|
||||
"async-lock": "1.4.1",
|
||||
"asyncbox": "6.3.0",
|
||||
"axios": "1.17.0",
|
||||
"axios": "1.18.0",
|
||||
"body-parser": "2.2.2",
|
||||
"express": "5.2.1",
|
||||
"fastest-levenshtein": "1.0.16",
|
||||
@@ -18970,11 +18998,11 @@
|
||||
},
|
||||
"packages/base-plugin": {
|
||||
"name": "@appium/base-plugin",
|
||||
"version": "3.3.1",
|
||||
"version": "3.3.2",
|
||||
"license": "Apache-2.0",
|
||||
"dependencies": {
|
||||
"@appium/base-driver": "10.7.0",
|
||||
"@appium/support": "7.2.4",
|
||||
"@appium/base-driver": "10.7.1",
|
||||
"@appium/support": "7.2.5",
|
||||
"@appium/types": "1.5.1"
|
||||
},
|
||||
"engines": {
|
||||
@@ -18984,10 +19012,10 @@
|
||||
},
|
||||
"packages/docutils": {
|
||||
"name": "@appium/docutils",
|
||||
"version": "2.5.0",
|
||||
"version": "2.5.1",
|
||||
"license": "Apache-2.0",
|
||||
"dependencies": {
|
||||
"@appium/support": "7.2.4",
|
||||
"@appium/support": "7.2.5",
|
||||
"consola": "3.4.2",
|
||||
"diff": "9.0.0",
|
||||
"lilconfig": "3.1.3",
|
||||
@@ -19186,11 +19214,11 @@
|
||||
},
|
||||
"packages/driver-test-support": {
|
||||
"name": "@appium/driver-test-support",
|
||||
"version": "1.2.4",
|
||||
"version": "1.2.5",
|
||||
"license": "Apache-2.0",
|
||||
"dependencies": {
|
||||
"asyncbox": "6.3.0",
|
||||
"axios": "1.17.0",
|
||||
"axios": "1.18.0",
|
||||
"chai": "6.2.2",
|
||||
"chai-as-promised": "8.0.2",
|
||||
"sinon": "22.0.0",
|
||||
@@ -19252,10 +19280,10 @@
|
||||
},
|
||||
"packages/execute-driver-plugin": {
|
||||
"name": "@appium/execute-driver-plugin",
|
||||
"version": "6.0.5",
|
||||
"version": "6.0.6",
|
||||
"license": "Apache-2.0",
|
||||
"dependencies": {
|
||||
"@appium/support": "7.2.4",
|
||||
"@appium/support": "7.2.5",
|
||||
"webdriverio": "9.28.0"
|
||||
},
|
||||
"engines": {
|
||||
@@ -19285,11 +19313,11 @@
|
||||
},
|
||||
"packages/fake-plugin": {
|
||||
"name": "@appium/fake-plugin",
|
||||
"version": "4.3.1",
|
||||
"version": "4.3.2",
|
||||
"license": "Apache-2.0",
|
||||
"dependencies": {
|
||||
"@appium/base-plugin": "3.3.1",
|
||||
"@appium/support": "7.2.4",
|
||||
"@appium/base-plugin": "3.3.2",
|
||||
"@appium/support": "7.2.5",
|
||||
"asyncbox": "6.3.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
@@ -19306,11 +19334,11 @@
|
||||
},
|
||||
"packages/images-plugin": {
|
||||
"name": "@appium/images-plugin",
|
||||
"version": "4.2.6",
|
||||
"version": "4.2.7",
|
||||
"license": "Apache-2.0",
|
||||
"dependencies": {
|
||||
"@appium/opencv": "4.1.6",
|
||||
"@appium/support": "7.2.4",
|
||||
"@appium/support": "7.2.5",
|
||||
"lru-cache": "11.5.1",
|
||||
"sharp": "0.35.1"
|
||||
},
|
||||
@@ -19413,10 +19441,10 @@
|
||||
},
|
||||
"packages/storage-plugin": {
|
||||
"name": "@appium/storage-plugin",
|
||||
"version": "1.1.6",
|
||||
"version": "1.1.7",
|
||||
"license": "Apache-2.0",
|
||||
"dependencies": {
|
||||
"@appium/support": "7.2.4",
|
||||
"@appium/support": "7.2.5",
|
||||
"async-lock": "1.4.1",
|
||||
"asyncbox": "6.3.0",
|
||||
"lru-cache": "11.5.1",
|
||||
@@ -19468,14 +19496,14 @@
|
||||
},
|
||||
"packages/support": {
|
||||
"name": "@appium/support",
|
||||
"version": "7.2.4",
|
||||
"version": "7.2.5",
|
||||
"license": "Apache-2.0",
|
||||
"dependencies": {
|
||||
"@appium/logger": "2.0.9",
|
||||
"@appium/types": "1.5.1",
|
||||
"archiver": "8.0.0",
|
||||
"asyncbox": "6.3.0",
|
||||
"axios": "1.17.0",
|
||||
"axios": "1.18.0",
|
||||
"bluebird": "3.7.2",
|
||||
"bplist-creator": "0.1.1",
|
||||
"bplist-parser": "0.3.2",
|
||||
@@ -19857,12 +19885,12 @@
|
||||
},
|
||||
"packages/universal-xml-plugin": {
|
||||
"name": "@appium/universal-xml-plugin",
|
||||
"version": "2.1.5",
|
||||
"version": "2.1.6",
|
||||
"license": "Apache-2.0",
|
||||
"dependencies": {
|
||||
"@appium/support": "7.2.4",
|
||||
"@appium/support": "7.2.5",
|
||||
"@xmldom/xmldom": "0.9.10",
|
||||
"fast-xml-parser": "5.8.0",
|
||||
"fast-xml-parser": "5.9.0",
|
||||
"xpath": "0.0.34"
|
||||
},
|
||||
"engines": {
|
||||
|
||||
@@ -3,6 +3,14 @@
|
||||
All notable changes to this project will be documented in this file.
|
||||
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
||||
|
||||
## [3.5.2](https://github.com/appium/appium/compare/appium@3.5.1...appium@3.5.2) (2026-06-18)
|
||||
|
||||
**Note:** Version bump only for package appium
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
## [3.5.1](https://github.com/appium/appium/compare/appium@3.5.0...appium@3.5.1) (2026-06-18)
|
||||
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "appium",
|
||||
"version": "3.5.1",
|
||||
"version": "3.5.2",
|
||||
"description": "Automation for Apps.",
|
||||
"keywords": [
|
||||
"automation",
|
||||
@@ -60,19 +60,19 @@
|
||||
"test:unit": "mocha \"./test/unit/**/*.spec.ts\""
|
||||
},
|
||||
"dependencies": {
|
||||
"@appium/base-driver": "10.7.0",
|
||||
"@appium/base-plugin": "3.3.1",
|
||||
"@appium/docutils": "2.5.0",
|
||||
"@appium/base-driver": "10.7.1",
|
||||
"@appium/base-plugin": "3.3.2",
|
||||
"@appium/docutils": "2.5.1",
|
||||
"@appium/logger": "2.0.9",
|
||||
"@appium/schema": "1.2.1",
|
||||
"@appium/support": "7.2.4",
|
||||
"@appium/support": "7.2.5",
|
||||
"@appium/types": "1.5.1",
|
||||
"@sidvind/better-ajv-errors": "5.0.0",
|
||||
"ajv": "8.20.0",
|
||||
"ajv-formats": "3.0.1",
|
||||
"argparse": "2.0.1",
|
||||
"asyncbox": "6.3.0",
|
||||
"axios": "1.17.0",
|
||||
"axios": "1.18.0",
|
||||
"lilconfig": "3.1.3",
|
||||
"lru-cache": "11.5.1",
|
||||
"ora": "5.4.1",
|
||||
|
||||
@@ -3,6 +3,14 @@
|
||||
All notable changes to this project will be documented in this file.
|
||||
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
||||
|
||||
## [10.7.1](https://github.com/appium/appium/compare/@appium/base-driver@10.7.0...@appium/base-driver@10.7.1) (2026-06-18)
|
||||
|
||||
**Note:** Version bump only for package @appium/base-driver
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
## [10.7.0](https://github.com/appium/appium/compare/@appium/base-driver@10.6.0...@appium/base-driver@10.7.0) (2026-06-18)
|
||||
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@appium/base-driver",
|
||||
"version": "10.7.0",
|
||||
"version": "10.7.1",
|
||||
"description": "Base driver class for Appium drivers",
|
||||
"keywords": [
|
||||
"automation",
|
||||
@@ -45,11 +45,11 @@
|
||||
"test:types": "tsd"
|
||||
},
|
||||
"dependencies": {
|
||||
"@appium/support": "7.2.4",
|
||||
"@appium/support": "7.2.5",
|
||||
"@appium/types": "1.5.1",
|
||||
"async-lock": "1.4.1",
|
||||
"asyncbox": "6.3.0",
|
||||
"axios": "1.17.0",
|
||||
"axios": "1.18.0",
|
||||
"body-parser": "2.2.2",
|
||||
"express": "5.2.1",
|
||||
"fastest-levenshtein": "1.0.16",
|
||||
|
||||
@@ -3,6 +3,14 @@
|
||||
All notable changes to this project will be documented in this file.
|
||||
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
||||
|
||||
## [3.3.2](https://github.com/appium/appium/compare/@appium/base-plugin@3.3.1...@appium/base-plugin@3.3.2) (2026-06-18)
|
||||
|
||||
**Note:** Version bump only for package @appium/base-plugin
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
## [3.3.1](https://github.com/appium/appium/compare/@appium/base-plugin@3.3.0...@appium/base-plugin@3.3.1) (2026-06-18)
|
||||
|
||||
**Note:** Version bump only for package @appium/base-plugin
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@appium/base-plugin",
|
||||
"version": "3.3.1",
|
||||
"version": "3.3.2",
|
||||
"description": "The base plugin used to create Appium plugins",
|
||||
"keywords": [
|
||||
"automation",
|
||||
@@ -40,8 +40,8 @@
|
||||
"test:unit": "mocha \"./test/unit/**/*.spec.*ts\""
|
||||
},
|
||||
"dependencies": {
|
||||
"@appium/base-driver": "10.7.0",
|
||||
"@appium/support": "7.2.4",
|
||||
"@appium/base-driver": "10.7.1",
|
||||
"@appium/support": "7.2.5",
|
||||
"@appium/types": "1.5.1"
|
||||
},
|
||||
"engines": {
|
||||
|
||||
@@ -3,6 +3,14 @@
|
||||
All notable changes to this project will be documented in this file.
|
||||
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
||||
|
||||
## [2.5.1](https://github.com/appium/appium/compare/@appium/docutils@2.5.0...@appium/docutils@2.5.1) (2026-06-18)
|
||||
|
||||
**Note:** Version bump only for package @appium/docutils
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
## [2.5.0](https://github.com/appium/appium/compare/@appium/docutils@2.4.3...@appium/docutils@2.5.0) (2026-06-18)
|
||||
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@appium/docutils",
|
||||
"version": "2.5.0",
|
||||
"version": "2.5.1",
|
||||
"description": "Documentation generation utilities for Appium and related projects",
|
||||
"keywords": [
|
||||
"automation",
|
||||
@@ -46,7 +46,7 @@
|
||||
"start": "node ./build/lib/cli/index.js"
|
||||
},
|
||||
"dependencies": {
|
||||
"@appium/support": "7.2.4",
|
||||
"@appium/support": "7.2.5",
|
||||
"consola": "3.4.2",
|
||||
"diff": "9.0.0",
|
||||
"lilconfig": "3.1.3",
|
||||
|
||||
@@ -3,6 +3,14 @@
|
||||
All notable changes to this project will be documented in this file.
|
||||
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
||||
|
||||
## [1.2.5](https://github.com/appium/appium/compare/@appium/driver-test-support@1.2.4...@appium/driver-test-support@1.2.5) (2026-06-18)
|
||||
|
||||
**Note:** Version bump only for package @appium/driver-test-support
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
## [1.2.4](https://github.com/appium/appium/compare/@appium/driver-test-support@1.2.3...@appium/driver-test-support@1.2.4) (2026-06-18)
|
||||
|
||||
**Note:** Version bump only for package @appium/driver-test-support
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@appium/driver-test-support",
|
||||
"version": "1.2.4",
|
||||
"version": "1.2.5",
|
||||
"description": "Test utilities for Appium drivers",
|
||||
"keywords": [
|
||||
"automation",
|
||||
@@ -40,7 +40,7 @@
|
||||
"types": "./build/lib/index.d.ts",
|
||||
"dependencies": {
|
||||
"asyncbox": "6.3.0",
|
||||
"axios": "1.17.0",
|
||||
"axios": "1.18.0",
|
||||
"chai": "6.2.2",
|
||||
"chai-as-promised": "8.0.2",
|
||||
"sinon": "22.0.0",
|
||||
|
||||
@@ -3,6 +3,14 @@
|
||||
All notable changes to this project will be documented in this file.
|
||||
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
||||
|
||||
## [6.0.6](https://github.com/appium/appium/compare/@appium/execute-driver-plugin@6.0.5...@appium/execute-driver-plugin@6.0.6) (2026-06-18)
|
||||
|
||||
**Note:** Version bump only for package @appium/execute-driver-plugin
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
## [6.0.5](https://github.com/appium/appium/compare/@appium/execute-driver-plugin@6.0.4...@appium/execute-driver-plugin@6.0.5) (2026-06-18)
|
||||
|
||||
**Note:** Version bump only for package @appium/execute-driver-plugin
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
[](https://npmjs.org/package/@appium/execute-driver-plugin)
|
||||
[](https://npmjs.org/package/@appium/execute-driver-plugin)
|
||||
|
||||
This plugin adds a new driver command that allows executing scripts in a child process. Currently,
|
||||
This plugin adds a new server endpoint that allows executing scripts in a child process. Currently,
|
||||
the only supported driver type is `webdriverio`, therefore the script must also be written in JS.
|
||||
|
||||
## Motivation
|
||||
@@ -14,7 +14,7 @@ Running a driver script in a child process adds a degree of parallelisation, whi
|
||||
faster test execution.
|
||||
|
||||
> [!WARNING]
|
||||
> This plugin enables execution of arbitrary JavaScript code. We recommend only using this plugin in a controlled environment. Scripts run in a Node.js `vm` context with a hardened view of the WebdriverIO driver (host-realm prototype metadata is not exposed), but `vm` is still not a full security boundary for untrusted code; treat `--allow-insecure=…:execute_driver_script` as highly privileged.
|
||||
> This plugin enables execution of arbitrary JavaScript code. We recommend only using this plugin in a controlled environment. Scripts run in a Node.js `vm` context with a hardened view of the WebdriverIO driver (host-realm prototype metadata is not exposed), but `vm` is still not a full security boundary for untrusted code; treat this plugin as highly privileged.
|
||||
|
||||
## Installation
|
||||
|
||||
@@ -22,18 +22,20 @@ faster test execution.
|
||||
appium plugin install execute-driver
|
||||
```
|
||||
|
||||
The plugin must be explicitly activated when launching the Appium server. Since the input script
|
||||
can be arbitrary JavaScript, this is an insecure feature, and must also be explicitly enabled:
|
||||
## Usage
|
||||
|
||||
Like all plugins, this plugin must be explicitly activated when launching the Appium server. Since
|
||||
the input script can be arbitrary JavaScript, this is [an insecure feature](https://appium.io/docs/en/latest/guides/security/),
|
||||
and must also be explicitly enabled:
|
||||
|
||||
```
|
||||
appium --use-plugins=execute-driver --allow-insecure=<driver>:execute_driver_script
|
||||
```
|
||||
|
||||
`<driver>` is the name of the driver whose sessions will have access to the plugin.
|
||||
|
||||
## Usage
|
||||
Once the plugin is running, you can call the new command:
|
||||
|
||||
```js
|
||||
// JavaScript (WebdriverIO)
|
||||
const script = `return await driver.getTimeouts();`;
|
||||
const {result, logs} = await driver.executeDriverScript(script);
|
||||
// 'result' contains the data returned by the script (in this case, the response to 'getTimeouts')
|
||||
@@ -50,6 +52,10 @@ enabling the use of unconditional delays:
|
||||
const script = `return await new Promise((resolve) => setTimeout(resolve, 1000));`;
|
||||
```
|
||||
|
||||
## API
|
||||
|
||||
[Refer to the Appium documentation](https://appium.io/docs/en/latest/reference/api/plugins/#execute-driver-plugin).
|
||||
|
||||
## License
|
||||
|
||||
Apache-2.0
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@appium/execute-driver-plugin",
|
||||
"version": "6.0.5",
|
||||
"version": "6.0.6",
|
||||
"description": "Plugin for batching and executing Appium driver commands",
|
||||
"keywords": [
|
||||
"automation",
|
||||
@@ -39,7 +39,7 @@
|
||||
"test:unit": "mocha \"./test/unit/**/*.spec.ts\""
|
||||
},
|
||||
"dependencies": {
|
||||
"@appium/support": "7.2.4",
|
||||
"@appium/support": "7.2.5",
|
||||
"webdriverio": "9.28.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
|
||||
@@ -3,6 +3,14 @@
|
||||
All notable changes to this project will be documented in this file.
|
||||
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
||||
|
||||
## [4.3.2](https://github.com/appium/appium/compare/@appium/fake-plugin@4.3.1...@appium/fake-plugin@4.3.2) (2026-06-18)
|
||||
|
||||
**Note:** Version bump only for package @appium/fake-plugin
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
## [4.3.1](https://github.com/appium/appium/compare/@appium/fake-plugin@4.3.0...@appium/fake-plugin@4.3.1) (2026-06-18)
|
||||
|
||||
**Note:** Version bump only for package @appium/fake-plugin
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@appium/fake-plugin",
|
||||
"version": "4.3.1",
|
||||
"version": "4.3.2",
|
||||
"description": "A fake Appium plugin",
|
||||
"keywords": [
|
||||
"automation",
|
||||
@@ -39,8 +39,8 @@
|
||||
"test:unit": "mocha \"./test/unit/**/*.spec.*ts\""
|
||||
},
|
||||
"dependencies": {
|
||||
"@appium/base-plugin": "3.3.1",
|
||||
"@appium/support": "7.2.4",
|
||||
"@appium/base-plugin": "3.3.2",
|
||||
"@appium/support": "7.2.5",
|
||||
"asyncbox": "6.3.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
|
||||
@@ -3,6 +3,14 @@
|
||||
All notable changes to this project will be documented in this file.
|
||||
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
||||
|
||||
## [4.2.7](https://github.com/appium/appium/compare/@appium/images-plugin@4.2.6...@appium/images-plugin@4.2.7) (2026-06-18)
|
||||
|
||||
**Note:** Version bump only for package @appium/images-plugin
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
## [4.2.6](https://github.com/appium/appium/compare/@appium/images-plugin@4.2.5...@appium/images-plugin@4.2.6) (2026-06-18)
|
||||
|
||||
**Note:** Version bump only for package @appium/images-plugin
|
||||
|
||||
@@ -5,10 +5,10 @@
|
||||
[](https://npmjs.org/package/@appium/images-plugin)
|
||||
[](https://npmjs.org/package/@appium/images-plugin)
|
||||
|
||||
## Features
|
||||
This plugin provides two features for image-based testing:
|
||||
|
||||
1. **Image Comparison** ([docs](./docs/image-comparison.md)) - A new Appium command and route that allows sending in two different images and comparing them in various ways.
|
||||
2. **Finding Elements by Image** ([docs](./docs/find-by-image.md)) - Using a template image, find a matching screen region of an app and interact with it via standard Appium element semantics.
|
||||
1. [**Image Comparison**](./docs/image-comparison.md) - A new Appium endpoint that allows accepts two images and allows comparing them in various ways
|
||||
2. [**Finding Elements by Image**](./docs/find-by-image.md) - Using a template image, find a matching screen region of an app, and interact with it using standard Appium element commands
|
||||
|
||||
## Installation
|
||||
|
||||
@@ -16,12 +16,21 @@
|
||||
appium plugin install images
|
||||
```
|
||||
|
||||
The plugin must be explicitly activated when launching the Appium server:
|
||||
## Usage
|
||||
|
||||
Like all plugins, this plugin must be explicitly activated when launching the Appium server:
|
||||
|
||||
```
|
||||
appium --use-plugins=images
|
||||
```
|
||||
|
||||
Once the plugin is running, you can use its new and modified endpoints as described in the
|
||||
aforementioned guides.
|
||||
|
||||
## API
|
||||
|
||||
[Refer to the Appium documentation](https://appium.io/docs/en/latest/reference/api/plugins/#images-plugin).
|
||||
|
||||
## License
|
||||
|
||||
Apache-2.0
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@appium/images-plugin",
|
||||
"version": "4.2.6",
|
||||
"version": "4.2.7",
|
||||
"description": "Plugin for working with images and image elements in Appium",
|
||||
"keywords": [
|
||||
"automation",
|
||||
@@ -41,7 +41,7 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"@appium/opencv": "4.1.6",
|
||||
"@appium/support": "7.2.4",
|
||||
"@appium/support": "7.2.5",
|
||||
"lru-cache": "11.5.1",
|
||||
"sharp": "0.35.1"
|
||||
},
|
||||
|
||||
@@ -24,12 +24,21 @@ capability requirements since Appium 2.
|
||||
appium plugin install relaxed-caps
|
||||
```
|
||||
|
||||
The plugin must be explicitly activated when launching the Appium server:
|
||||
## Usage
|
||||
|
||||
Like all plugins, this plugin must be explicitly activated when launching the Appium server:
|
||||
|
||||
```
|
||||
appium --use-plugins=relaxed-caps
|
||||
```
|
||||
|
||||
Once the plugin is running, all unprefixed non-standard capabilities provided in any new session
|
||||
will automatically be prefixed with `appium:`.
|
||||
|
||||
## API
|
||||
|
||||
[Refer to the Appium documentation](https://appium.io/docs/en/latest/reference/api/plugins/#relaxed-caps-plugin).
|
||||
|
||||
## License
|
||||
|
||||
Apache-2.0
|
||||
|
||||
@@ -3,6 +3,14 @@
|
||||
All notable changes to this project will be documented in this file.
|
||||
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
||||
|
||||
## [1.1.7](https://github.com/appium/appium/compare/@appium/storage-plugin@1.1.6...@appium/storage-plugin@1.1.7) (2026-06-18)
|
||||
|
||||
**Note:** Version bump only for package @appium/storage-plugin
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
## [1.1.6](https://github.com/appium/appium/compare/@appium/storage-plugin@1.1.5...@appium/storage-plugin@1.1.6) (2026-06-18)
|
||||
|
||||
|
||||
|
||||
@@ -2,6 +2,9 @@
|
||||
|
||||
> Appium plugin for server-side file storage
|
||||
|
||||
[](https://npmjs.org/package/@appium/storage-plugin)
|
||||
[](https://npmjs.org/package/@appium/storage-plugin)
|
||||
|
||||
This plugin adds the ability to create a dedicated storage space on the server side,
|
||||
which can be managed from the client side. This can be useful for files like application packages.
|
||||
Only one storage may exist per server process, shared by all testing sessions.
|
||||
@@ -13,21 +16,22 @@ Only one storage may exist per server process, shared by all testing sessions.
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
```
|
||||
appium plugin install storage
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Add the plugin name to the list of plugins to use upon server startup:
|
||||
Like all plugins, this plugin must be explicitly activated when launching the Appium server:
|
||||
|
||||
```bash
|
||||
```
|
||||
appium --use-plugins=storage
|
||||
```
|
||||
|
||||
By default, the plugin creates a new temporary folder where it manages uploaded files.
|
||||
Once the plugin is running, you can call its endpoints (see API section) to manage the storage
|
||||
space. These endpoints can be invoked even without an active Appium session.
|
||||
|
||||
[Refer to the Appium documentation for the endpoints supported by this plugin.](https://appium.io/docs/en/latest/reference/api/storage-plugin/)
|
||||
By default, the plugin creates a new temporary folder where it manages uploaded files.
|
||||
|
||||
### Storing a File
|
||||
|
||||
@@ -55,23 +59,11 @@ Only flat files hierarchies are supported in the storage, no subfolders are allo
|
||||
If a file with the same name already exists in the storage, it will be overridden with the new one.
|
||||
If a folder with the same name already exists in the storage, an error will be thrown.
|
||||
|
||||
### Environment Variables
|
||||
## API
|
||||
|
||||
#### APPIUM_STORAGE_ROOT
|
||||
[Refer to the Appium documentation](https://appium.io/docs/en/latest/reference/api/plugins/#storage-plugin).
|
||||
|
||||
It is also possible to customize the repository root folder path by assigning a custom path to the
|
||||
`APPIUM_STORAGE_ROOT` environment variable upon server startup. The plugin automatically deletes the
|
||||
root folder recursively upon server process termination, unless the server is
|
||||
killed forcefully. If `APPIUM_STORAGE_ROOT` points to an existing folder,
|
||||
then all files there are going to be preserved by default unless a different behavior is
|
||||
requested by [APPIUM_STORAGE_KEEP_ALL](#appium_storage_keep_all) environment variable value.
|
||||
|
||||
#### APPIUM_STORAGE_KEEP_ALL
|
||||
|
||||
If this environment variable is set to `true`, `1` or `yes` then the plugin will always keep
|
||||
storage files after the server process is terminated. All other
|
||||
values of this variable enforce the plugin to always delete all files
|
||||
from the storage folder.
|
||||
The plugin also supports [several environment variables](https://appium.io/docs/en/latest/reference/cli/env-vars/) for further customization.
|
||||
|
||||
## Examples
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@appium/storage-plugin",
|
||||
"version": "1.1.6",
|
||||
"version": "1.1.7",
|
||||
"description": "Server-side storage plugin for Appium",
|
||||
"keywords": [
|
||||
"automation",
|
||||
@@ -40,7 +40,7 @@
|
||||
"test:e2e": "mocha --timeout 20s --slow 10s \"./test/e2e/**/*.spec.ts\""
|
||||
},
|
||||
"dependencies": {
|
||||
"@appium/support": "7.2.4",
|
||||
"@appium/support": "7.2.5",
|
||||
"async-lock": "1.4.1",
|
||||
"asyncbox": "6.3.0",
|
||||
"lru-cache": "11.5.1",
|
||||
|
||||
@@ -3,6 +3,15 @@
|
||||
All notable changes to this project will be documented in this file.
|
||||
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
||||
|
||||
## [7.2.5](https://github.com/appium/appium/compare/@appium/support@7.2.4...@appium/support@7.2.5) (2026-06-18)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **support:** uploadFile overload ([#22400](https://github.com/appium/appium/issues/22400)) ([779a3a0](https://github.com/appium/appium/commit/779a3a048f50d5c860402fca6023828c2ccdf1be))
|
||||
|
||||
|
||||
|
||||
## [7.2.4](https://github.com/appium/appium/compare/@appium/support@7.2.3...@appium/support@7.2.4) (2026-06-18)
|
||||
|
||||
**Note:** Version bump only for package @appium/support
|
||||
|
||||
@@ -85,6 +85,11 @@ export async function uploadFile(
|
||||
remoteUri: FtpRemoteUri,
|
||||
uploadOptions?: FtpUploadOptions,
|
||||
): Promise<void>;
|
||||
export async function uploadFile(
|
||||
localPath: string,
|
||||
remoteUri: string,
|
||||
uploadOptions?: HttpUploadOptions,
|
||||
): Promise<void>;
|
||||
export async function uploadFile(
|
||||
localPath: string,
|
||||
remoteUri: string,
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@appium/support",
|
||||
"version": "7.2.4",
|
||||
"version": "7.2.5",
|
||||
"description": "Support libs used across Appium packages",
|
||||
"keywords": [
|
||||
"automation",
|
||||
@@ -47,7 +47,7 @@
|
||||
"@appium/types": "1.5.1",
|
||||
"archiver": "8.0.0",
|
||||
"asyncbox": "6.3.0",
|
||||
"axios": "1.17.0",
|
||||
"axios": "1.18.0",
|
||||
"bluebird": "3.7.2",
|
||||
"bplist-creator": "0.1.1",
|
||||
"bplist-parser": "0.3.2",
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
import {expect} from 'chai';
|
||||
import {uploadFile} from '../../lib/net';
|
||||
|
||||
describe('net', function () {
|
||||
describe('uploadFile()', function () {
|
||||
it('should accept remote URLs typed as strings', function () {
|
||||
const upload = (remoteUri: string) =>
|
||||
uploadFile('/path/to/local/file', remoteUri, {
|
||||
method: 'PUT',
|
||||
headers: {'content-type': 'video/mp4'},
|
||||
});
|
||||
|
||||
expect(upload).to.be.a('function');
|
||||
});
|
||||
});
|
||||
});
|
||||
@@ -3,6 +3,14 @@
|
||||
All notable changes to this project will be documented in this file.
|
||||
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
||||
|
||||
## [2.1.6](https://github.com/appium/appium/compare/@appium/universal-xml-plugin@2.1.5...@appium/universal-xml-plugin@2.1.6) (2026-06-18)
|
||||
|
||||
**Note:** Version bump only for package @appium/universal-xml-plugin
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
## [2.1.5](https://github.com/appium/appium/compare/@appium/universal-xml-plugin@2.1.4...@appium/universal-xml-plugin@2.1.5) (2026-06-18)
|
||||
|
||||
**Note:** Version bump only for package @appium/universal-xml-plugin
|
||||
|
||||
@@ -6,8 +6,7 @@
|
||||
[](https://npmjs.org/package/@appium/universal-xml-plugin)
|
||||
|
||||
This plugin takes the XML page source retrieved using an iOS or Android driver, and changes various
|
||||
node and attribute names to use common terminology that can apply to both platforms. This is
|
||||
achieved by altering the behavior of the `getPageSource` and `findElement` methods.
|
||||
node and attribute names to use common terminology that can apply to both platforms.
|
||||
|
||||
## Motivation
|
||||
|
||||
@@ -19,12 +18,21 @@ Having compatibility between iOS and Android XML sources can simplify creation o
|
||||
appium plugin install universal-xml
|
||||
```
|
||||
|
||||
The plugin must be explicitly activated when launching the Appium server:
|
||||
## Usage
|
||||
|
||||
Like all plugins, this plugin must be explicitly activated when launching the Appium server:
|
||||
|
||||
```
|
||||
appium --use-plugins=universal-xml
|
||||
```
|
||||
|
||||
Once the plugin is running, it will intercept and transform the app source retrieved by the Get Page
|
||||
Source command, as well as element node/attribute names provided in Find Element-related commands.
|
||||
|
||||
## API
|
||||
|
||||
[Refer to the Appium documentation](https://appium.io/docs/en/latest/reference/api/plugins/#universal-xml-plugin).
|
||||
|
||||
## Examples
|
||||
|
||||
### Node names
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@appium/universal-xml-plugin",
|
||||
"version": "2.1.5",
|
||||
"version": "2.1.6",
|
||||
"description": "Appium plugin for making XML source and XPath queries the same across iOS and Android",
|
||||
"keywords": [
|
||||
"automation",
|
||||
@@ -38,9 +38,9 @@
|
||||
"test:unit": "mocha \"./test/unit/**/*.spec.*ts\""
|
||||
},
|
||||
"dependencies": {
|
||||
"@appium/support": "7.2.4",
|
||||
"@appium/support": "7.2.5",
|
||||
"@xmldom/xmldom": "0.9.10",
|
||||
"fast-xml-parser": "5.8.0",
|
||||
"fast-xml-parser": "5.9.0",
|
||||
"xpath": "0.0.34"
|
||||
},
|
||||
"peerDependencies": {
|
||||
|
||||
Reference in New Issue
Block a user