15 Commits
Author SHA1 Message Date
Mohamed Mostafa 9ea7718f0a fix(http-server): reject invalid JSON only after the route is known (#23057) 2026-10-25 20:43:01 +01:00
Mohamed Mostafa 8f30c8abc7 fix(http-server): return unknown method for a known command url (#22991) 2026-10-21 12:56:57 +02:00
Mohamed Mostafa 39e9512b4a fix(base-driver)!: reject command POST bodies that are not JSON objects (#23007)
BREAKING CHANGE: POST body has to be a JSON object, otherwise the server returns invalid argument error.
2026-10-21 08:40:34 +02:00
Kazuaki Matsuo a090505184 fix(base-driver): reject implicit HEAD command routing (#22992) 2026-10-15 18:57:15 -07:00
Mykola Mokhnach 2bbb1d3a49 fix(http-server)!: reject browser-origin requests unless CORS is enabled (#22990)
BREAKING CHANGE: clients that send an Origin header must enable the CORS feature (--allow-insecure=*:cors).
BREAKING CHANGE: Library callers that depended on the implicit CORS default must now pass allowCors: true
2026-10-15 18:15:36 +02:00
Kazuaki Matsuo 07d324b488 fix(base-driver): preserve optional WebDriver error data (#22974)
* fix(base-driver): preserve optional WebDriver error data

Preserve supplied Classic WebDriver error data. Refs #22966 (F09).

* fix(base-driver): retain data in returned driver errors

* Add data handling to errorFromW3CJsonCode

Refs #22966 (F09).

* Add tests for error handling in ProxyRequestError

Refs #22966 (F09).

* Enhance proxy tests with error handling case

Refs #22966 (F09).

* test(http-server): cover returned driver error data
2026-10-14 12:09:48 +09:00
Kazuaki Matsuo 4949ea4375 fix(http-server): set no-cache on WebDriver responses (#22971)
* fix(http-server): set no-cache on WebDriver responses

* test(http-server): isolate cache-control regression requests
2026-10-12 15:10:45 +09:00
Kazuaki Matsuo da8570d882 fix(http-server): return WebDriver errors for the root path (#22969)
* fix(http-server): return WebDriver errors for the root path

* test(http-server): isolate server ports between test cases
2026-10-12 15:07:04 +09:00
Kazuaki Matsuo 9cb4185b07 fix(http-server): contain WebSocket upgrade failures (#22944)
* fix(http-server): contain WebSocket upgrade failures

* test(http-server): bound and verify WebSocket exchanges
2026-10-10 16:15:24 +09:00
Kazuaki Matsuo c5ddcef894 fix: centralize URL hostname formatting and bracket IPv6 hosts (#22914)
* fix: bracket IPv6 hosts in proxy and helper URLs

* refactor(support): share URL hostname formatting across packages

* test: remove duplicate hostname formatting coverage

* refactor(support): move hostname formatting to net module
2026-10-08 23:52:44 +09:00
Edgars Eglītis 298b09cdbf chore: apply oxlint correctness fixes (#22896)
* chore: fix some correctness issues

* chore: fix more correctness issues

* chore: more correctness fixes

* chore: remove unnecessary eslint-disable directives

* chore: more correctness fixes

* chore: apply remaining fixes

* chore: minor tuning

* chore: explicitly disable rule

* chore: handle TS error

* chore: tune

* chore: tune more

* chore: address comments

* chore: address some comments

* chore: address remaining comments

* chore: address previously missed copilot commens
2026-10-05 20:52:17 +03:00
Kazuaki Matsuo 14c42f791c fix(base-driver): return protocol errors for null rejections (#22869) 2026-10-04 09:59:50 +02:00
Mykola Mokhnach 7a79dc208c refactor(base-driver): vendor Levenshtein distance and drop http-status-codes dep (#22805) 2026-09-22 22:16:34 +02:00
Mykola Mokhnach 822e4d19d5 refactor(http-server): move network/listener-address helpers out of appium (#22804) 2026-09-22 21:33:05 +02:00
Mykola Mokhnach 225a1c6d9d refactor(base-driver)!: extract the HTTP/Express server into @appium/http-server (#22800)
BREAKING CHANGE: @appium/base-driver no longer exports server, normalizeBasePath, configureServer, ServerOpts, ConfigureServerOpts, ConfigureHttpOpts, or StartServerOpts, and no longer depends on express/morgan/body-parser/ method-override/path-to-regexp. Use the new @appium/http-server package instead.

BREAKING CHANGE: appium/driver.js and driver.d.ts no longer re-export server/normalizeBasePath/configureServer/ServerOpts (or their types), and no longer use a blanket export *. Import from @appium/http-server directly if you were relying on this undocumented path.
2026-09-22 07:44:13 +02:00