Skip to content

chore(deps): bump pymobiledevice3 from 2.46.1 to 9.35.1 - #19

Closed
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/pip/pymobiledevice3-9.35.1
Closed

chore(deps): bump pymobiledevice3 from 2.46.1 to 9.35.1#19
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/pip/pymobiledevice3-9.35.1

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Jul 13, 2026

Copy link
Copy Markdown
Contributor

Bumps pymobiledevice3 from 2.46.1 to 9.35.1.

Release notes

Sourced from pymobiledevice3's releases.

v9.35.1

Highlights

🐛 serve-vnc: no more mosaic/smear and fps collapse when a client is attached during motion

Under on-screen motion with a VNC client connected, serve-vnc would smear (blocky mosaic) and drop to a crawl. The cause was host-side, not the device or decoder: each full-frame RFB Raw update is width*height*4 (~14 MB at 1264×2752), and writing it through the asyncio StreamWriter ran the copy+flush on the event loop, starving the RTP socket's recv. The kernel receive buffer then overflowed and dropped incoming media packets, breaking HEVC references and collapsing the frame rate (measured: RTP ingress fell from ~60 fps to <15 fps the instant a client attached during motion).

The framebuffer is now sent from a thread-pool executor over a dup() of the client socket, so the send releases the GIL and the event loop keeps draining RTP. No flags or protocol changes — existing serve-vnc usage just stops smearing:

pymobiledevice3 developer core-device display serve-vnc

What's Changed

  • cd246920 serve-vnc: send framebuffer off the event loop to stop RTP receive starvation (#1767) (@​doronz88)

Full Changelog: doronz88/pymobiledevice3@v9.35.0...v9.35.1

v9.35.0

Highlights

✨ No-root userspace tunnel migrated to pure-asyncio pmd-pytcp (0.1.0)

The root-free userspace tunnel now runs on pmd-pytcp 0.1.0, whose TCP/IP stack executes entirely on the event loop with an awaited socket API. The tunnel no longer bridges any threads into asyncio: the per-relay rx-pump daemon threads, the fire-and-forget teardown threads, the UserspaceUdp reader thread, every asyncio.to_thread(...) wrapper, and the threading._register_atexit shutdown workaround are all gone — every packet and byte now moves through plain await.

Beyond the readability win, this removes the tunnel-teardown thread pile-up / event-loop hang class of bugs (#1756) structurally: a cancelled relay cancels its pumps at their await points, so no worker survives teardown parked. display serve-web / device-initiated UDP streams and every host-initiated developer service are unaffected in behavior.

No API or CLI change — a host-initiated developer service runs over the no-root tunnel the same way, e.g. listing the on-device developer filesystem:

pymobiledevice3 developer dvt ls / --userspace

The dependency floor moves to pmd-pytcp>=0.1.0 (superseding the temporary <0.1.0 cap from v9.34.1); when pmd-pytcp is absent or fails to import, the tunnel transparently falls back to the kernel path as before.

What's Changed

  • bbc408c9 refactor(userspace-tunnel): consume the pure-asyncio pmd-pytcp 0.1.0 directly (#1766) (@​doronz88)
  • 4985fed3 docs: drop stale _register_clean_exit reference in userspace_tunnel docstring (#1766) (@​doronz88)

Full Changelog: doronz88/pymobiledevice3@v9.34.1...v9.35.0

v9.34.1

What's Changed

  • 9317a43d chore(deps): cap pmd-pytcp below 0.1.0 for API compatibility (#1765) (@​doronz88)

Pins pmd-pytcp to the 0.0.x line (>=0.0.6,<0.1.0) so a future 0.1.0 API revision cannot be pulled in unvetted. No runtime behavior change.

Full Changelog: doronz88/pymobiledevice3@v9.34.0...v9.34.1

... (truncated)

Commits
  • 47b98d1 Merge pull request #1767 from doronz88/fix/serve-vnc-rfb-send-starves-rtp
  • cd24692 serve-vnc: send framebuffer off the event loop to stop RTP receive starvation
  • 4919bf6 Merge pull request #1766 from doronz88/feature/pytcp-asyncio-migration
  • 4985fed docs: drop stale _register_clean_exit reference in userspace_tunnel docstring
  • bbc408c refactor(userspace-tunnel): consume the pure-asyncio pmd-pytcp 0.1.0 directly
  • 9317a43 Merge pull request #1765 from doronz88/worktree-pytcp-cap
  • c72791a chore(deps): cap pmd-pytcp below 0.1.0 for API compatibility
  • ae055e5 Merge pull request #1764 from doronz88/feature/serve-web-recovery-hardening
  • 7c26275 fix(serve-vnc): send periodic video RR so the device doesn't reap the stream
  • 63aae80 fix(serve-web): keep the audio RTCP RR flowing during silence
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [pymobiledevice3](https://github.com/doronz88/pymobiledevice3) from 2.46.1 to 9.35.1.
- [Release notes](https://github.com/doronz88/pymobiledevice3/releases)
- [Commits](doronz88/pymobiledevice3@v2.46.1...v9.35.1)

---
updated-dependencies:
- dependency-name: pymobiledevice3
  dependency-version: 9.35.1
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file python Pull requests that update python code labels Jul 13, 2026
@dependabot @github

dependabot Bot commented on behalf of github Jul 15, 2026

Copy link
Copy Markdown
Contributor Author

Superseded by #20.

@dependabot dependabot Bot closed this Jul 15, 2026
@dependabot
dependabot Bot deleted the dependabot/pip/pymobiledevice3-9.35.1 branch July 15, 2026 14:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file python Pull requests that update python code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants