v10.8.1
Highlights
⚡ Faster library imports: IPython is no longer imported at module scope
pymobiledevice3.utils imported IPython at module scope, but only uses it in one place — start_ipython_shell(). Since pymobiledevice3.lockdown imports utils, every library consumer opening a lockdown connection paid to import a REPL it never starts. The import is now deferred to start_ipython_shell() itself, cutting from pymobiledevice3.lockdown import create_using_usbmux from ~180 ms to ~125 ms (Python 3.13). Unlike the PEP 810 lazy-imports mode (which is CLI-only and requires Python 3.15+), this speedup applies to library consumers on every Python version.
What's Changed
- 2929f11 utils: import IPython inside start_ipython_shell (#1856) (@GreenglassT)
New Contributors
- @GreenglassT made their first contribution in #1856
Full Changelog: v10.8.0...v10.8.1