- Support raising an error when wait timeout is longer than RPC timeout
- Support fling & swipe with margin setting
- Support scrolling to a complex-search object
- Support clicking on a point within the object's visible bounds
- Fix waitUntilTrue doesn't run when passing small wait time
- Raise an error when non-positive wait time is set
- Support clicking on specific coordinate when registering a UiWatcher
- Support performing a swipe between points in the Point array
- Handle StaleObjectException raised from waiting for specific object appear/disappear
- Support Direct Boot mode
- Support ancestor search in Selector
- Remove ineffectiveness Configurator settings
- Support gesture margin for default Scroll
- Support index search in child Selector
- Migrate -jre flavor of Guava to -android flavor
- Fix the type of percent in scrollUntilFinished and scrollUntil
- Update uiautomator lib to stable 2.3.0
- Print Mobly AndroidDevice object for better evaluated as a proper prefix
- Remove deprecated service registration method
- Add pytype hint to avoid Union[str, pathlib.Path]
- Include device debug tag when raising an error
- Refactor the way to get log path and dump to file
- Handle null value returned from QueryController.getCurrentPackageName
- Update the visibility of uiDevice in UiDeviceSnippet
- Update androidx.test.uiautomator to 2.3.0-beta01
- Support KeyEvent in UiAutomator Python Lib
- Set default value for uiautomator configs and send warning message for deprecation notice
- Enable UiWatcher to monitor the condition without subsequent action
- Handle NullPointerException throw from Until#scrollUntilFinished
- Fix sibling find the grandchildren object
- Implement UiAutomation.clearCache API
- Support updating gesture margin when scrolling
- Implement pause and resume in service
- Parse byte string before decoding to string
- Raise an error when uiautomation service has already registered
- Add latest release version and testing result for apk and python build status
- Fix incorrect selector layer when using a serial of sub selectors
- Fix incorrect UiObject2 being found when using waitForExists and waitUntilGone on 2 or more layers of BySelector
- Fix Selector being overwritten when creating an instance of child UiObject2