What's Up Python? Setuptools Breaks, a Better PDB, CPython on CalVer
Setuptools released version 72.0, removing the test command, causing uninstallable packages. Version 72.1 restored functionality. Python Debugger enhancements and calendar versioning proposals were discussed. Polars reached stable 1.0, and SAM updated to version 2.
Read original articleSetuptools recently released version 72.0, which removed the test command from package installations, leading to many packages becoming uninstallable. This change, proposed for deprecation in 2017, faced backlash, prompting a quick release of version 72.1 to restore the functionality. Developers are encouraged to transition to using pyproject.toml and the wheel format for better stability. At the Python Language Summit 2024, core developer Tian Gao proposed enhancements for the Python Debugger (PDB), including improved code visibility, color support, and better handling of various debugging scenarios. The proposal aims to modernize PDB, making it more user-friendly and efficient. Additionally, a proposal for calendar versioning (CalVer) was discussed, suggesting a shift from the current versioning system to a year-based format to clarify release timelines and deprecation warnings. Polars, a Rust-based alternative to pandas, has reached a stable 1.0 release, offering improved performance and a more consistent API. Facebook's Segment Anything Model (SAM) has also been updated to version 2, now supporting video segmentation. Lastly, there is ongoing debate about the challenges of Python development for mobile platforms, particularly regarding compliance with app store requirements, highlighted by a recent rejection of Python 3.12 due to a module issue. Suggestions include adding compliance options to the release process to address these challenges.
Related
Announcing Polars 1.0 (Blog Post)
Polars releases Python version 1.0 after 4 years, gaining popularity with 27.5K GitHub stars and 7M monthly downloads. Plans include improving performance, GPU acceleration, Polars Cloud, and new features.
Python Modern Practices
Python development best practices involve using tools like mise or pyenv for multiple versions, latest Python version, pipx for app running. Project tips include src layout, pyproject.toml, virtual environments, Black, flake8, pytest, wheel, type hinting, f-strings, datetime, enum, Named Tuples, data classes, breakpoint(), logging, TOML config for efficiency and maintainability.
Python Has Too Many Package Managers
Python's package management ecosystem faces fragmentation issues. PEP 621 introduced pyproject.toml for project configurations, leading to new package managers like Poetry. Conda offers robust dependency management, especially for data science workflows.
Python grapples with Apple App Store rejections
Python developers face App Store rejections post Python 3.12 update due to Apple's ban on "itms-services" string. Eric Froemling's bug report triggers discussions on solutions like obfuscation and JSON config. Python community seeks resolution amid Apple's strict policies.
Beyond Hypermodern: Python is easy now
Python development in 2024 focuses on simplicity with tools like Rye aligning with packaging standards. It streamlines setup, dependency management, and project structuring, emphasizing typing with Pyright for efficient code maintenance and pytest for testing.
Related
Announcing Polars 1.0 (Blog Post)
Polars releases Python version 1.0 after 4 years, gaining popularity with 27.5K GitHub stars and 7M monthly downloads. Plans include improving performance, GPU acceleration, Polars Cloud, and new features.
Python Modern Practices
Python development best practices involve using tools like mise or pyenv for multiple versions, latest Python version, pipx for app running. Project tips include src layout, pyproject.toml, virtual environments, Black, flake8, pytest, wheel, type hinting, f-strings, datetime, enum, Named Tuples, data classes, breakpoint(), logging, TOML config for efficiency and maintainability.
Python Has Too Many Package Managers
Python's package management ecosystem faces fragmentation issues. PEP 621 introduced pyproject.toml for project configurations, leading to new package managers like Poetry. Conda offers robust dependency management, especially for data science workflows.
Python grapples with Apple App Store rejections
Python developers face App Store rejections post Python 3.12 update due to Apple's ban on "itms-services" string. Eric Froemling's bug report triggers discussions on solutions like obfuscation and JSON config. Python community seeks resolution amid Apple's strict policies.
Beyond Hypermodern: Python is easy now
Python development in 2024 focuses on simplicity with tools like Rye aligning with packaging standards. It streamlines setup, dependency management, and project structuring, emphasizing typing with Pyright for efficient code maintenance and pytest for testing.