Highlights
- Introduced a new DTX stack under
pymobiledevice3/dtx/with channel/connection/context/message primitives - Huge thanks to @tux-mind 👏! - Migrated DVT/Instruments flows to the new
DvtProviderarchitecture. - Added DTX robustness improvements: fragmented message sending, configurable capabilities, non-handshake compatibility, and improved
MessageAuxhandling. - Updated XCTest/XCUITest integration to use the new DTX implementation and added more listener callbacks.
- Improved CLI behavior and reliability (
developer shell,developer dvt ls, Ctrl-C handling, WDA wait behavior). - Expanded tests for DTX and DVT provider paths.
Breaking / API-impacting changes
- Removed old DVT APIs (dvt: Remove old APIs).
- Removed legacy service classes/modules:
RemoteServerremoved.dvt_secure_socket_proxyremoved.dvt_testmanaged_proxyremoved.
- Instruments and related services now primarily target DvtProvider-based workflows.
Added
- New DTX package and docs:
pymobiledevice3/dtx/*(reader/sender/channel/connection/message/message_aux/etc.)pymobiledevice3/dtx/README.mdpymobiledevice3/dtx/DEVELOPMENT.md
Changed
- Broad refactor of instruments services to use improved/public DTX APIs.
- CLI migration to DvtProvider for shell and DVT command paths.
- Documentation updated to reflect DvtProvider usage.
Commit History
- b7247c7 DTX: implementat based on other open srouce projects
- 5080402 cli: Fix handling for Ctrl-C
- d666619 xcuitest: switch to the new DTX implementation
- 6a8b8f2 cli: wda: Fix waiting for the wda app
- e64b5c1 instruments: Migrate into
DvtProviderimpl - 83f2e55 xctest: Add
XCTAttachment - 5216c41 dtx: Handle non-handshaked implementations (
AccessibiltyAudit) - c7a5d37 tests: Migrate to DvtProvider
- 45e4adc instruments: Migrate
Tap&CoreProfileSessionintoDvtProvider - e8fdb4f cli: Make
dvt shelluseDvtProvider - 9f0cf03 docs: Update documentation to use
DvtProvider - 9010435 dvt: Remove old APIs
- 7b3ce57 instruments: Make all dtx services and channels public
- db964de dtx: refactor code and add support for sending fragmented DTXMessages
- 399407b instruments: Refactor most to use improved API
- 9a36c00 cli: Migrate
developer shellcommand - 48375d1 services: Remove
RemoteServer - e1934c4 instruments: Remove redundant code
- 3c703e3 cli: Add non-ctx example for developer shell
- 55a15ac cli: Fix
developer dvt ls - 301b753 dtx: Refactor
do_invoke()->invoke() - 8f40b92 dtx: Add configurable capabilities support
- c3b7593 dtx: Add support for nasty MessageAux
- a7f6f0f cli: dvt: Refactor
lsimpl - 7bbaf4f xctest: Add more callbacks to the listener
Contibuters
Full Changelog: v8.2.4...v9.0.0