Python Updates: JupyterLab 4, Struct Proposals, and More
Python Bytes Episode 340
This episode of Python Bytes covers several significant developments in the Python ecosystem, ranging from major library releases to future language feature proposals.
GUI Development Resources
• A fantastic resource, Python GUIs (python-guis.com), is highlighted as a comprehensive hub for learning about creating graphical interfaces in Python.
• The site offers tutorials for PyQt6, PySide, Tkinter, and Kivy, providing a balanced view for those intimidated by the sheer number of options available.
JupyterLab 4.0 Release
• JupyterLab 4.0 has officially arrived, bringing significant performance improvements, including better notebook rendering through windowing.
• New features introduced:
• Upgraded to CodeMirror 6 for better accessibility and editing performance.
• Integrated real-time collaboration capabilities.
• Enhanced support for advanced extensions and multiple cursors.
Future Language Proposals: Structs
• A proposal for a new data type in Python called a struct is under discussion.
• Key features proposed for structs include:
• Immutability and high performance for large data sets.
• Optimization for memory efficiency, potentially utilizing dunder slots.
• A concise, one-line syntax similar to named tuples.
"We could make it allocate on just the stack and not actually go to the heap... it would be an optimization to have huge data structures full of these things."
Standard Library Cleanup (PEP 594)
• The community continues the work of PEP 594, removing "dead batteries" from the standard library.
• Approximately 20 legacy modules were removed in Python 3.13, including various CGI, telnet, and outdated audio libraries, shifting the focus to packages available via PyPI.