Skip to content

[Feat]: Appium 3 🚀  #20792

@KazuCocoa

Description

@KazuCocoa

This issue will be used to keep track of issues related to Appium 3.

We see Appium 3 as more of an evolution of Appium 2, rather than a complete overhaul. It will keep the same architecture as Appium 2, but we want to clean up some older code and update various dependencies (such as dropping old NodeJS versions, bumping up Express version to 5, and so on). Each driver such as UIA2/XCUITest etc will keep their responsibility in their repositories, so their functionalities won't be affected by this change.

Working branch: https://github.com/appium/appium/tree/appium3

Items

Dev Process

Functionality

Drop/Low Priority

  • Switch node.http to node.http2 for Express, get rid of the third-party spdy dependency
    • Cannot do this yet since Express v5 still doesn't support it
  • Investigate the possibility of moving to ESM
    • This is not so beneficial right now. We would need to update a lot of tests to achieve this, so this would depend on our capacity

RC Target

  • April 2025 (by following NodeJS v18 EOL)

Concerns

  • How to treat backward compatibility AFTER releasing Appium 3 RC?
    • The worst case is if Appium 3 based modules (especially base-driver) have no compatibility with Appium 2. Should we somehow keep Appium 2 backward compatibility for individual drivers? etc.

Metadata

Metadata

Assignees

No one assigned

    Labels

    v3Appium v3

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions