pymobiledevice3 5.0.2__tar.gz → 5.0.3__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (227) hide show
  1. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/PKG-INFO +1 -1
  2. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/_version.py +3 -3
  3. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/bonjour.py +11 -11
  4. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/irecv.py +1 -1
  5. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/lockdown.py +2 -1
  6. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/osu/os_utils.py +1 -1
  7. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/remote/remotexpc.py +2 -1
  8. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/accessibilityaudit.py +1 -1
  9. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/device_link.py +1 -1
  10. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/dvt/testmanaged/xcuitest.py +3 -3
  11. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/web_protocol/automation_session.py +3 -3
  12. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/web_protocol/selenium_api.py +1 -1
  13. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/webinspector.py +2 -1
  14. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/usbmux.py +1 -1
  15. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3.egg-info/PKG-INFO +1 -1
  16. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pyproject.toml +2 -8
  17. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/.gitattributes +0 -0
  18. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/.github/FUNDING.yml +0 -0
  19. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
  20. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/.github/ISSUE_TEMPLATE/config.yml +0 -0
  21. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
  22. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/.github/pull_request_template.md +0 -0
  23. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/.github/workflows/codeql.yml +0 -0
  24. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/.github/workflows/generate-executable.py +0 -0
  25. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/.github/workflows/markdown-lint.yml +0 -0
  26. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/.github/workflows/python-app.yml +0 -0
  27. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/.github/workflows/python-publish.yml +0 -0
  28. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/.gitignore +0 -0
  29. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/.pre-commit-config.yaml +0 -0
  30. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/CODE_OF_CONDUCT.md +0 -0
  31. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/CONTRIBUTING.md +0 -0
  32. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/LICENSE +0 -0
  33. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/README.md +0 -0
  34. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/example.gif +0 -0
  35. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/markdownlint-config.json +0 -0
  36. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/misc/DTServices-14.2.txt +0 -0
  37. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/misc/DTServices-14.5.txt +0 -0
  38. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/misc/RemoteXPC.md +0 -0
  39. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/misc/plist_sniffer.py +0 -0
  40. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/misc/pyinstaller.md +0 -0
  41. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/misc/remotexpc_sniffer.py +0 -0
  42. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/misc/understanding_idevice_protocol_layers.md +0 -0
  43. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/misc/usbmux_sniff.sh +0 -0
  44. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/__init__.py +0 -0
  45. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/__main__.py +0 -0
  46. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/ca.py +0 -0
  47. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/cli/__init__.py +0 -0
  48. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/cli/activation.py +0 -0
  49. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/cli/afc.py +0 -0
  50. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/cli/amfi.py +0 -0
  51. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/cli/apps.py +0 -0
  52. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/cli/backup.py +0 -0
  53. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/cli/bonjour.py +0 -0
  54. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/cli/cli_common.py +0 -0
  55. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/cli/companion_proxy.py +0 -0
  56. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/cli/completions.py +0 -0
  57. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/cli/crash.py +0 -0
  58. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/cli/developer.py +0 -0
  59. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/cli/diagnostics.py +0 -0
  60. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/cli/lockdown.py +0 -0
  61. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/cli/mounter.py +0 -0
  62. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/cli/notification.py +0 -0
  63. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/cli/pcap.py +0 -0
  64. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/cli/power_assertion.py +0 -0
  65. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/cli/processes.py +0 -0
  66. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/cli/profile.py +0 -0
  67. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/cli/provision.py +0 -0
  68. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/cli/remote.py +0 -0
  69. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/cli/restore.py +0 -0
  70. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/cli/springboard.py +0 -0
  71. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/cli/syslog.py +0 -0
  72. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/cli/usbmux.py +0 -0
  73. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/cli/version.py +0 -0
  74. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/cli/webinspector.py +0 -0
  75. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/common.py +0 -0
  76. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/exceptions.py +0 -0
  77. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/irecv_devices.py +0 -0
  78. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/lockdown_service_provider.py +0 -0
  79. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/osu/__init__.py +0 -0
  80. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/osu/posix_util.py +0 -0
  81. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/osu/win_util.py +0 -0
  82. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/pair_records.py +0 -0
  83. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/remote/__init__.py +0 -0
  84. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/remote/common.py +0 -0
  85. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/remote/core_device/__init__.py +0 -0
  86. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/remote/core_device/app_service.py +0 -0
  87. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/remote/core_device/core_device_service.py +0 -0
  88. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/remote/core_device/device_info.py +0 -0
  89. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/remote/core_device/diagnostics_service.py +0 -0
  90. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/remote/core_device/file_service.py +0 -0
  91. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/remote/module_imports.py +0 -0
  92. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/remote/remote_service.py +0 -0
  93. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/remote/remote_service_discovery.py +0 -0
  94. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/remote/tunnel_service.py +0 -0
  95. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/remote/utils.py +0 -0
  96. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/remote/xpc_message.py +0 -0
  97. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/resources/__init__.py +0 -0
  98. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/resources/dsc_uuid_map.json +0 -0
  99. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/resources/dsc_uuid_map.py +0 -0
  100. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/resources/firmware_notifications.py +0 -0
  101. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/resources/notifications.txt +0 -0
  102. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/resources/webinspector/element_attribute.js +0 -0
  103. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/resources/webinspector/element_clear.js +0 -0
  104. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/resources/webinspector/enter_fullscreen.js +0 -0
  105. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/resources/webinspector/find_nodes.js +0 -0
  106. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/resources/webinspector/focus.js +0 -0
  107. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/resources/webinspector/get_attribute.js +0 -0
  108. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/resources/webinspector/is_displayed.js +0 -0
  109. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/resources/webinspector/is_editable.js +0 -0
  110. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/resources/webinspector/is_enabled.js +0 -0
  111. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/restore/__init__.py +0 -0
  112. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/restore/asr.py +0 -0
  113. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/restore/base_restore.py +0 -0
  114. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/restore/consts.py +0 -0
  115. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/restore/device.py +0 -0
  116. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/restore/fdr.py +0 -0
  117. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/restore/ftab.py +0 -0
  118. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/restore/img4.py +0 -0
  119. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/restore/mbn.py +0 -0
  120. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/restore/recovery.py +0 -0
  121. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/restore/restore.py +0 -0
  122. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/restore/restore_options.py +0 -0
  123. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/restore/restored_client.py +0 -0
  124. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/restore/tss.py +0 -0
  125. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/service_connection.py +0 -0
  126. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/__init__.py +0 -0
  127. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/afc.py +0 -0
  128. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/amfi.py +0 -0
  129. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/companion.py +0 -0
  130. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/crash_reports.py +0 -0
  131. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/debugserver_applist.py +0 -0
  132. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/device_arbitration.py +0 -0
  133. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/diagnostics.py +0 -0
  134. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/dtfetchsymbols.py +0 -0
  135. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/dvt/__init__.py +0 -0
  136. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/dvt/dvt_secure_socket_proxy.py +0 -0
  137. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/dvt/dvt_testmanaged_proxy.py +0 -0
  138. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/dvt/instruments/__init__.py +0 -0
  139. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/dvt/instruments/activity_trace_tap.py +0 -0
  140. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/dvt/instruments/application_listing.py +0 -0
  141. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/dvt/instruments/condition_inducer.py +0 -0
  142. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/dvt/instruments/core_profile_session_tap.py +0 -0
  143. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/dvt/instruments/device_info.py +0 -0
  144. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/dvt/instruments/energy_monitor.py +0 -0
  145. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/dvt/instruments/graphics.py +0 -0
  146. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/dvt/instruments/location_simulation.py +0 -0
  147. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/dvt/instruments/location_simulation_base.py +0 -0
  148. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/dvt/instruments/network_monitor.py +0 -0
  149. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/dvt/instruments/notifications.py +0 -0
  150. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/dvt/instruments/process_control.py +0 -0
  151. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/dvt/instruments/screenshot.py +0 -0
  152. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/dvt/instruments/sysmontap.py +0 -0
  153. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/file_relay.py +0 -0
  154. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/heartbeat.py +0 -0
  155. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/house_arrest.py +0 -0
  156. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/installation_proxy.py +0 -0
  157. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/lockdown_service.py +0 -0
  158. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/misagent.py +0 -0
  159. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/mobile_activation.py +0 -0
  160. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/mobile_config.py +0 -0
  161. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/mobile_image_mounter.py +0 -0
  162. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/mobilebackup2.py +0 -0
  163. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/notification_proxy.py +0 -0
  164. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/os_trace.py +0 -0
  165. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/pcapd.py +0 -0
  166. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/power_assertion.py +0 -0
  167. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/preboard.py +0 -0
  168. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/remote_fetch_symbols.py +0 -0
  169. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/remote_server.py +0 -0
  170. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/restore_service.py +0 -0
  171. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/screenshot.py +0 -0
  172. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/simulate_location.py +0 -0
  173. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/springboard.py +0 -0
  174. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/syslog.py +0 -0
  175. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/web_protocol/__init__.py +0 -0
  176. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/web_protocol/alert.py +0 -0
  177. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/web_protocol/cdp_screencast.py +0 -0
  178. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/web_protocol/cdp_server.py +0 -0
  179. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/web_protocol/cdp_target.py +0 -0
  180. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/web_protocol/driver.py +0 -0
  181. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/web_protocol/element.py +0 -0
  182. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/web_protocol/inspector_session.py +0 -0
  183. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/web_protocol/session_protocol.py +0 -0
  184. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/services/web_protocol/switch_to.py +0 -0
  185. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/tcp_forwarder.py +0 -0
  186. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/tunneld/__init__.py +0 -0
  187. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/tunneld/api.py +0 -0
  188. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/tunneld/server.py +0 -0
  189. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3/utils.py +0 -0
  190. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3.egg-info/SOURCES.txt +0 -0
  191. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3.egg-info/dependency_links.txt +0 -0
  192. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3.egg-info/entry_points.txt +0 -0
  193. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3.egg-info/requires.txt +0 -0
  194. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pymobiledevice3.egg-info/top_level.txt +0 -0
  195. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/pytest.ini +0 -0
  196. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/requirements.txt +0 -0
  197. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/setup.cfg +0 -0
  198. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/tests/__init__.py +0 -0
  199. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/tests/cli/__init__.py +0 -0
  200. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/tests/cli/test_cli.py +0 -0
  201. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/tests/conftest.py +0 -0
  202. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/tests/services/__init__.py +0 -0
  203. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/tests/services/instruments/__init__.py +0 -0
  204. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/tests/services/instruments/test_core_profile_session.py +0 -0
  205. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/tests/services/instruments/test_dvt_secure_socket_proxy.py +0 -0
  206. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/tests/services/instruments/test_fetch_symbols.py +0 -0
  207. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/tests/services/instruments/test_location.py +0 -0
  208. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/tests/services/instruments/test_screenshot.py +0 -0
  209. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/tests/services/test_accessibility.py +0 -0
  210. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/tests/services/test_afc.py +0 -0
  211. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/tests/services/test_apps.py +0 -0
  212. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/tests/services/test_backup2.py +0 -0
  213. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/tests/services/test_bonjour.py +0 -0
  214. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/tests/services/test_crash_reports.py +0 -0
  215. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/tests/services/test_list_devices.py +0 -0
  216. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/tests/services/test_lockdown.py +0 -0
  217. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/tests/services/test_pcapd.py +0 -0
  218. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/tests/services/test_springboard_services_relay.py +0 -0
  219. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/tests/services/test_start_tunnel.py +0 -0
  220. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/tests/services/test_syslog_relay.py +0 -0
  221. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/tests/services/test_tcp_forwarder.py +0 -0
  222. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/tests/services/test_web_protocol/__init__.py +0 -0
  223. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/tests/services/test_web_protocol/common.py +0 -0
  224. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/tests/services/test_web_protocol/conftest.py +0 -0
  225. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/tests/services/test_web_protocol/test_driver.py +0 -0
  226. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/tests/services/test_web_protocol/test_element.py +0 -0
  227. {pymobiledevice3-5.0.2 → pymobiledevice3-5.0.3}/tests/services/test_webinspector.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pymobiledevice3
3
- Version: 5.0.2
3
+ Version: 5.0.3
4
4
  Summary: Pure python3 implementation for working with iDevices (iPhone, etc...)
5
5
  Author-email: doronz88 <doron88@gmail.com>, matan <matan1008@gmail.com>
6
6
  Maintainer-email: doronz88 <doron88@gmail.com>, matan <matan1008@gmail.com>
@@ -28,7 +28,7 @@ version_tuple: VERSION_TUPLE
28
28
  commit_id: COMMIT_ID
29
29
  __commit_id__: COMMIT_ID
30
30
 
31
- __version__ = version = '5.0.2'
32
- __version_tuple__ = version_tuple = (5, 0, 2)
31
+ __version__ = version = '5.0.3'
32
+ __version_tuple__ = version_tuple = (5, 0, 3)
33
33
 
34
- __commit_id__ = commit_id = 'gc0475dfee'
34
+ __commit_id__ = commit_id = 'gbf14387aa'
@@ -10,7 +10,7 @@ import struct
10
10
  import sys
11
11
  from collections import defaultdict
12
12
  from dataclasses import dataclass, field
13
- from typing import Dict, List, Optional, Set, Tuple
13
+ from typing import Optional
14
14
 
15
15
  import ifaddr # pip install ifaddr
16
16
 
@@ -64,8 +64,8 @@ class ServiceInstance:
64
64
  instance: str # "<Instance Name>._type._proto.local."
65
65
  host: Optional[str] # "host.local" (without trailing dot), or None if unresolved
66
66
  port: Optional[int] # SRV port
67
- addresses: List[Address] = field(default_factory=list) # IPs with interface names
68
- properties: Dict[str, str] = field(default_factory=dict) # TXT key/values
67
+ addresses: list[Address] = field(default_factory=list) # IPs with interface names
68
+ properties: dict[str, str] = field(default_factory=dict) # TXT key/values
69
69
 
70
70
 
71
71
  # ---------------- DNS helpers ----------------
@@ -84,7 +84,7 @@ def encode_name(name: str) -> bytes:
84
84
  return bytes(out)
85
85
 
86
86
 
87
- def decode_name(data: bytes, off: int) -> Tuple[str, int]:
87
+ def decode_name(data: bytes, off: int) -> tuple[str, int]:
88
88
  labels = []
89
89
  jumped = False
90
90
  orig_end = off
@@ -264,7 +264,7 @@ async def _bind_ipv6_all_ifaces(queue: asyncio.Queue):
264
264
 
265
265
  async def _open_mdns_sockets():
266
266
  queue = asyncio.Queue()
267
- transports: List[Tuple[asyncio.BaseTransport, socket.socket]] = []
267
+ transports: list[tuple[asyncio.BaseTransport, socket.socket]] = []
268
268
  t4, s4 = await _bind_ipv4(queue)
269
269
  transports.append((t4, s4))
270
270
  t6, s6 = await _bind_ipv6_all_ifaces(queue)
@@ -287,7 +287,7 @@ async def _send_query_all(transports, pkt: bytes):
287
287
  # ---------------- Public API ----------------
288
288
 
289
289
 
290
- async def browse_service(service_type: str, timeout: float = 4.0) -> List[ServiceInstance]:
290
+ async def browse_service(service_type: str, timeout: float = 4.0) -> list[ServiceInstance]:
291
291
  """
292
292
  Discover a DNS-SD/mDNS service type (e.g. "_remoted._tcp.local.") on the local network.
293
293
 
@@ -299,11 +299,11 @@ async def browse_service(service_type: str, timeout: float = 4.0) -> List[Servic
299
299
  transports, queue = await _open_mdns_sockets()
300
300
  adapters = _Adapters()
301
301
 
302
- ptr_targets: Set[str] = set()
303
- srv_map: Dict[str, Dict] = {}
304
- txt_map: Dict[str, Dict] = {}
302
+ ptr_targets: set[str] = set()
303
+ srv_map: dict[str, dict] = {}
304
+ txt_map: dict[str, dict] = {}
305
305
  # host -> list[(ip, iface)]
306
- host_addrs: Dict[str, List[Address]] = defaultdict(list)
306
+ host_addrs: dict[str, list[Address]] = defaultdict(list)
307
307
 
308
308
  def _record_addr(rr_name: str, ip_str: str, pkt_addr):
309
309
  # Determine family and possible scopeid from the packet that delivered this RR
@@ -344,7 +344,7 @@ async def browse_service(service_type: str, timeout: float = 4.0) -> List[Servic
344
344
  transport.close()
345
345
 
346
346
  # Assemble dataclasses
347
- results: List[ServiceInstance] = []
347
+ results: list[ServiceInstance] = []
348
348
  for inst in sorted(ptr_targets):
349
349
  srv = srv_map.get(inst, {})
350
350
  target = srv.get("target")
@@ -166,7 +166,7 @@ class IRecv:
166
166
  if self.mode.is_recovery:
167
167
  n = self._device.write(0x04, chunk, timeout=USB_TIMEOUT)
168
168
  if n != len(chunk):
169
- raise IOError("failed to upload data")
169
+ raise OSError("failed to upload data")
170
170
  else:
171
171
  if _offset + packet_size >= len(buf):
172
172
  # last packet
@@ -7,12 +7,13 @@ import sys
7
7
  import tempfile
8
8
  import time
9
9
  from abc import ABC, abstractmethod
10
+ from collections.abc import AsyncIterable
10
11
  from contextlib import contextmanager, suppress
11
12
  from enum import Enum
12
13
  from functools import wraps
13
14
  from pathlib import Path
14
15
  from ssl import SSLError, SSLZeroReturnError, TLSVersion
15
- from typing import AsyncIterable, Optional
16
+ from typing import Optional
16
17
 
17
18
  import construct
18
19
  from cryptography import x509
@@ -13,7 +13,7 @@ DEFAULT_MAX_FAILS = 3
13
13
 
14
14
  def is_wsl() -> bool:
15
15
  try:
16
- with open("/proc/version", "r") as f:
16
+ with open("/proc/version") as f:
17
17
  version_info = f.read()
18
18
  return "Microsoft" in version_info or "WSL" in version_info
19
19
  except FileNotFoundError:
@@ -2,7 +2,8 @@ import asyncio
2
2
  import contextlib
3
3
  import sys
4
4
  from asyncio import IncompleteReadError
5
- from typing import AsyncIterable, Optional
5
+ from collections.abc import AsyncIterable
6
+ from typing import Optional
6
7
 
7
8
  import IPython
8
9
  import nest_asyncio
@@ -1,8 +1,8 @@
1
1
  import json
2
2
  import typing
3
+ from collections.abc import Generator
3
4
  from dataclasses import dataclass
4
5
  from enum import Enum, IntEnum
5
- from typing import Generator
6
6
 
7
7
  from packaging.version import Version
8
8
 
@@ -100,7 +100,7 @@ class DeviceLink:
100
100
 
101
101
  buffer = struct.pack(SIZE_FORMAT, struct.calcsize(CODE_FORMAT)) + struct.pack(CODE_FORMAT, CODE_SUCCESS)
102
102
  self.service.sendall(buffer)
103
- except IOError as e:
103
+ except OSError as e:
104
104
  status[file] = {
105
105
  "DLFileErrorString": e.strerror,
106
106
  "DLFileErrorCode": ctypes.c_uint64(ERRNO_TO_DEVICE_ERROR[e.errno]).value,
@@ -195,7 +195,7 @@ class XCUITestService:
195
195
  if isinstance(reply, bool) and reply is True:
196
196
  logger.info("authorizing test session for pid %d successful %r", pid, reply)
197
197
  else:
198
- raise RuntimeError("Failed to authorize test process id: %s" % reply)
198
+ raise RuntimeError(f"Failed to authorize test process id: {reply}")
199
199
 
200
200
  def launch_test_app(
201
201
  self,
@@ -210,7 +210,7 @@ class XCUITestService:
210
210
  exec_name = app_info["CFBundleExecutable"]
211
211
  # # logger.info('CFBundleExecutable: %s', exec_name)
212
212
  # # CFBundleName always endswith -Runner
213
- assert exec_name.endswith("-Runner"), "Invalid CFBundleExecutable: %s" % exec_name
213
+ assert exec_name.endswith("-Runner"), f"Invalid CFBundleExecutable: {exec_name}"
214
214
  target_name = exec_name[: -len("-Runner")]
215
215
 
216
216
  app_env = {
@@ -276,7 +276,7 @@ def generate_xctestconfiguration(
276
276
  tests_to_run: Optional[list] = None,
277
277
  ) -> XCTestConfiguration:
278
278
  exec_name: str = app_info["CFBundleExecutable"]
279
- assert exec_name.endswith("-Runner"), "Invalid CFBundleExecutable: %s" % exec_name
279
+ assert exec_name.endswith("-Runner"), f"Invalid CFBundleExecutable: {exec_name}"
280
280
  config_name = exec_name[: -len("-Runner")]
281
281
 
282
282
  return XCTestConfiguration({
@@ -258,15 +258,15 @@ class AutomationSession:
258
258
  by = by.value if isinstance(by, By) else by
259
259
  if by == By.ID.value:
260
260
  by = By.CSS_SELECTOR.value
261
- value = '[id="%s"]' % value
261
+ value = f'[id="{value}"]'
262
262
  elif by == By.TAG_NAME.value:
263
263
  by = By.CSS_SELECTOR.value
264
264
  elif by == By.CLASS_NAME.value:
265
265
  by = By.CSS_SELECTOR.value
266
- value = ".%s" % value
266
+ value = f".{value}"
267
267
  elif by == By.NAME.value:
268
268
  by = By.CSS_SELECTOR.value
269
- value = '[name="%s"]' % value
269
+ value = f'[name="{value}"]'
270
270
 
271
271
  parameters = {
272
272
  "browsingContextHandle": self.top_level_handle,
@@ -71,7 +71,7 @@ class SeleniumApi(ABC):
71
71
  try:
72
72
  with open(filename, "wb") as f:
73
73
  f.write(png)
74
- except IOError:
74
+ except OSError:
75
75
  return False
76
76
  return True
77
77
 
@@ -3,9 +3,10 @@ import contextlib
3
3
  import json
4
4
  import logging
5
5
  import uuid
6
+ from collections.abc import Coroutine
6
7
  from dataclasses import dataclass, fields
7
8
  from enum import Enum
8
- from typing import Any, Coroutine, Optional, Union
9
+ from typing import Any, Optional, Union
9
10
 
10
11
  import nest_asyncio
11
12
 
@@ -309,7 +309,7 @@ class BinaryMuxConnection(MuxConnection):
309
309
  self._receive_device_state_update()
310
310
  except (BlockingIOError, StreamError):
311
311
  continue
312
- except IOError as e:
312
+ except OSError as e:
313
313
  try:
314
314
  self._sock.setblocking(True)
315
315
  self.close()
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pymobiledevice3
3
- Version: 5.0.2
3
+ Version: 5.0.3
4
4
  Summary: Pure python3 implementation for working with iDevices (iPhone, etc...)
5
5
  Author-email: doronz88 <doron88@gmail.com>, matan <matan1008@gmail.com>
6
6
  Maintainer-email: doronz88 <doron88@gmail.com>, matan <matan1008@gmail.com>
@@ -81,8 +81,8 @@ select = [
81
81
  "F",
82
82
  # pygrep-hooks
83
83
  "PGH",
84
- # # pyupgrade
85
- # "UP",
84
+ # pyupgrade
85
+ "UP",
86
86
  # ruff
87
87
  "RUF",
88
88
  # tryceratops
@@ -91,12 +91,6 @@ select = [
91
91
  ignore = [
92
92
  # LineTooLong
93
93
  "E501",
94
- # DoNotAssignLambda
95
- "E731",
96
- # Asserts
97
- "S101",
98
- # Name for classes
99
- "N801",
100
94
  # Custom error classes
101
95
  "TRY003",
102
96
  # Abstract `raise` to an inner function
File without changes