Releases: webdriverio/webdriverio
Releases · webdriverio/webdriverio
v9.27.0
v9.27.0 (2026-03-23)
🐛 Bug Fix
wdio-appium-service- #15155 fix(appium-service): fix startup failure caused by Appium stderr log output (@wswebcreation)
wdio-globalswdio-protocols,webdriverio- #15159 fix(webdriverio): revert queryAppState protocol rename and remove mobile command wrapper (@wswebcreation)
Committers: 2
- Michael Scrivo (@mscrivo)
- Wim Selles (@wswebcreation)
v9.26.1
v9.26.1 (2026-03-15)
🐛 Bug Fix
webdriverio- #15154 fix(webdriverio): fix mobile command argument mismatches for Appium 3 compatibility (@wswebcreation)
Committers: 1
- Wim Selles (@wswebcreation)
v9.26.0
v9.26.0 (2026-03-15)
🚀 New Feature
-
wdio-protocols,webdriver,webdriverio- #15141 fix(appium): rename deprecated Appium protocol commands for Appium 3 compatibility (@wswebcreation)
-
eslint-plugin-wdio- #15151 feat(eslint-plugin-wdio): Following eslint v9 plugin specification (@dprevost-LMI)
🏠 Internal
- Ohter
- #14953 fix: Upgrade expect-webdriverio to 5.6.5 (@dprevost-LMI)
Committers: 2
- David Prevost (@dprevost-LMI)
- Wim Selles (@wswebcreation)
v9.25.0
v9.25.0 (2026-03-10)
🚀 New Feature
eslint-plugin-wdio- #15084 feat: Use no floating promise eslint rule for missing
await(@dprevost-LMI)
- #15084 feat: Use no floating promise eslint rule for missing
🐛 Bug Fix
wdio-browserstack-service- #15117 fix: update exit signal for CLI process termination on Unix systems (@xxshubhamxx)
webdriverio- #15098 fix: Ensure getValue returns a string (@dprevost-LMI)
- #15131 fix(webdriverio): ignore 'no such frame' error in handleUserPrompt (#… (@mccmrunal)
wdio-junit-reporter- #15133 fix(wdio-junit-reporter): correctly detect Cucumber framework in mult… (@mccmrunal)
wdio-allure-reporter- #15130 fix(wdio-allure-reporter): properly resolve pending steps and status … (@mccmrunal)
Committers: 10
- Anish Kumar Sinha (@anish353)
- Christian Bromann (@christian-bromann)
- David Prevost (@dprevost-LMI)
- Kamalpreet Kaur (@kamal-kaur04)
- MRUNAL CHAUDHARI (@mccmrunal)
- Rounak Bhatia (@rounak610)
- Shubham Garg (@xxshubhamxx)
- Vishnu Vardhan (@vishnuv688)
- Wim Selles (@wswebcreation)
- Yevhen Laichenkov (@elaichenkov)
v9.24.0
v9.24.0 (2026-02-10)
🚀 New Feature
wdio-appium-service- #14980 Ws/appium service selector performance (@wswebcreation)
💅 Polish
wdio-appium-service- #14980 Ws/appium service selector performance (@wswebcreation)
📝 Documentation
- #15079 fix: resolve broken link in docs (@mccmrunal)
Committers: 3
- MRUNAL CHAUDHARI (@mccmrunal)
- Vince Graics (@Winify)
- Wim Selles (@wswebcreation)
v9.23.3
v9.23.3 (2026-02-01)
🐛 Bug Fix
wdio-config- #15044 fix(wdio-config): restore jiti fallback for CJS named imports (@mccmrunal)
wdio-sauce-service- #15000 Fix/sauce service jasmine error (@mccmrunal)
webdriverio- #15045 fix(webdriverio): allow waitForClickable in native context if browser… (@mccmrunal)
- #15034 Fix/bidi cookie robustness (@mccmrunal)
webdriver- #15046 Fix/14946 overlapping capabilities (@mccmrunal)
wdio-protocols,webdriverio- #15003 fix: Fix incorrect typings and commands inconsistency (@dprevost-LMI)
wdio-local-runner- #15047 feat: add spec file name to log file prefix (@mccmrunal)
wdio-appium-service- #15070 fix(appium): pass through clean NODE_OPTIONS (@christian-bromann)
wdio-allure-reporter- #15041 fix(allure-reporter): attach cucumber data table to step instead of s… (@mccmrunal)
💅 Polish
wdio-browserstack-service- #15066 Allow parallel runs to download CLI (@xxshubhamxx)
📝 Documentation
- #15057 fix(website): Change Expect API docs, manage Event docs generation error and update website packages (@Winify)
- #15056 fix(website): ensure footer copyright year is dynamic (@mccmrunal)
- #15035 Add WebdriverIO 9 Mobile Automation Boilerplate with Appium (@syamphaneendra)
Committers: 8
- Aakash Hotchandani (@AakashHotchandani)
- Christian Bromann (@christian-bromann)
- David Prevost (@dprevost-LMI)
- MRUNAL CHAUDHARI (@mccmrunal)
- Shubham Garg (@xxshubhamxx)
- Swastik Baranwal (@Delta456)
- Syamphaneendra Kalluri (@syamphaneendra)
- Vince Graics (@Winify)
v9.23.2
No updates!
v9.23.1
v9.23.1 (2026-01-18)
👓 Spec Compliancy
🚀 New Feature
wdio-config- #14915 feat(config): allow --exclude to exclude suites by name (@mccmrunal)
🐛 Bug Fix
wdio-browser-runner- #15010 fix(wdio-browser-runner): prioritize @tailwindcss/postcss for Tailwin… (@mccmrunal)
wdio-cli- #15012 fix(wdio-cli): ensure dynamic specs added in onPrepare are correctly … (@mccmrunal)
wdio-allure-reporter,wdio-jasmine-framework- #15013 fix(jasmine,allure): preserve nested describe structure (#13953) (@mccmrunal)
webdriver- #14951 fix(webdriver): normalize overlapping W3C capabilities (#14946) (@mccmrunal)
wdio-utils- #15011 Fix/retry timeout propagation (@mccmrunal)
wdio-local-runner- #14997 fix(local-runner): force kill stuck workers after shutdown timeout (@mccmrunal)
- #14971 fix(wdio-local-runner): use gracefulExit to avoid synchronous termina… (@mccmrunal)
wdio-jasmine-framework,wdio-sauce-service- #15001 fix(jasmine-framework): move @types/jasmine to dependencies (@mccmrunal)
webdriverio- #15019 fix(webdriverio): prevent waitForExist from swapping valid indexed el… (@mccmrunal)
- #15018 fix(webdriverio): handle 'no such frame' error in BiDi navigation (@mccmrunal)
- #14912 fix: relative XPath chaining in BiDi mode (@mccmrunal)
- #14972 fix(session): eliminate memory leak in session managers (@mccmrunal)
wdio-cli,wdio-local-runner,wdio-runner,wdio-typeswdio-cli,webdriverio- #14913 Fix/watcher files to watch 14685 (@mccmrunal)
wdio-appium-service- #14961 fix: remove double ports for
start-appium-inspector(@wswebcreation)
- #14961 fix: remove double ports for
wdio-junit-reporter- #14965 fix(junit-reporter): do not report skipped test when no tests are exe… (@mccmrunal)
wdio-shared-store-service- #14966 fix(shared-store): use 127.0.0.1 instead of localhost (#14761) (@mccmrunal)
wdio-mocha-framework- #14982 fix(mocha): don't report this.skip() in hooks as failure (#14649) (@mccmrunal)
wdio-browserstack-service
📝 Documentation
- #14963 docs: add documentation on LT accessibility (@harsha509)
Committers: 9
- Aditya Hirapara (@AdityaHirapara)
- Anish Kumar Sinha (@anish353)
- Edgars Eglītis (@eglitise)
- MRUNAL CHAUDHARI (@mccmrunal)
- Rounak Bhatia (@rounak610)
- Sri Harsha (@harsha509)
- Wim Selles (@wswebcreation)
- @bgrozev
- @vipin-bs
v9.23.0
v9.23.0 (2026-01-03)
🚀 New Feature
eslint-plugin-wdio,wdio-browserstack-service,wdio-globals,wdio-runner,webdriverio- #14975 fix: Rename
multiremotebrowsertomultiRemoteBrowserto follow camelCasing Rules (@dprevost-LMI)
- #14975 fix: Rename
🐛 Bug Fix
wdio-jasmine-framework- #14976 fix(wdio-jasmine-framework): restore hook data for Jasmine 5.10+ (@mccmrunal)
wdio-utils- #14977 fix(wdio-utils): rethrow pending/skip errors for Jasmine (#14688) (@mccmrunal)
webdriverio- #14979 fix(webdriverio): respect element index in waitForExist (#14418) (@mccmrunal)
- #14957 fix(webdriverio): handle 'no such alert' error when dialog closes (@mccmrunal)
💅 Polish
webdriverio- #14958 feat: enhance
getContext(s)|switchContext(@wswebcreation)
- #14958 feat: enhance
📝 Documentation
wdio-utils- #14978 docu: fix wdio/utils description (@mauriciolauffer)
🏠 Internal
wdio-appium-service- #14956 chore: UTs genering errors on main (@dprevost-LMI)
Committers: 5
- David Prevost (@dprevost-LMI)
- Kamalpreet Kaur (@kamal-kaur04)
- MRUNAL CHAUDHARI (@mccmrunal)
- Mauricio Lauffer (@mauriciolauffer)
- Wim Selles (@wswebcreation)
v9.22.0
v9.22.0 (2025-12-24)
🚀 New Feature
wdio-appium-service- #14932 feat:add start appium inspector from the cli (@wswebcreation)
- #14939 Adding ability to pass in custom timeout for appium start (@samuelfreiberg)
🐛 Bug Fix
wdio-utils- #14918 fix(wdio-utils): propagate framework timeouts to shim to avoid premat… (@mccmrunal)
- #14896 fix: add unique user-data-dir for Chrome workers on Windows (#14729) (@mccmrunal)
webdriverio- #14901 fix(attach): flatten options to top-level for waitFor commands (#14715) (@mccmrunal)
- #14909 fix: use type-specific action IDs to comply with W3C WebDriver spec (… (@mccmrunal)
- #14910 Fix isElementDisplayed and isElementClickable on Perfecto Mobile Devices (@nheiser)
- #14933 fix: handle multiple webviews with same package when first is empty (… (@mccmrunal)
- #14937 Fix/ getCSSProperty implicit wait on stale element (@ivanovicu)
- #14944 fix(webdriverio): fix wildcard support in browser.mock (@mccmrunal)
wdio-allure-reporter- #14907 fix(@wdio/allure-reporter): include cid in historyId for multi-capabi… (@mccmrunal)
wdio-cli- #14904 fixes double config file loading issue and tsx file timing load issue (@mccmrunal)
- #14917 fix(cli): correct isParallelMultiremote check for empty capabilities (@mccmrunal)
wdio-browserstack-service- #14923 fix(wdio-browserstack-service): resolve BiDi syntax error (#14922) (@mccmrunal)
- #14950 Fix/browserstack cli file contention 14943 (@mccmrunal)
- #14931 fix: Logs leaking creds (@Tanmay-Bstack)
wdio-appium-service- #14952 fixed test cases for PR #14932 (@mccmrunal)
💅 Polish
wdio-appium-service- #14932 feat:add start appium inspector from the cli (@wswebcreation)
📝 Documentation
- #14938 docs: add TestPlanIt Reporter to 3rd-party reporters list (@therealbrad)
- #14916 Add smartUI doc (@harsha509)
🏠 Internal
- Other
- #14925 chore: update GitHub Actions macOS runner from 13 to 15 (@mccmrunal)
webdriverio- #14900 added mocking for fs/promises (@mccmrunal)
Committers: 9
- Brad DerManouelian (@therealbrad)
- MRUNAL CHAUDHARI (@mccmrunal)
- Samuel Freiberg (@samuelfreiberg)
- Sri Harsha (@harsha509)
- Uros Ivanovic (@ivanovicu)
- Vishnu Vardhan (@vishnuv688)
- Wim Selles (@wswebcreation)
- @Tanmay-Bstack
- @nheiser