New on blog: "the story of #distutils build directory in #Gentoo".

"""
The #Python distutils build system, as well as #setuptools (that it was later merged into), used a two-stage build: first, a build command would prepare a built package version (usually just copy the .py files, sometimes compile Python extensions) into a build directory, then an install command would copy them to the live filesystem, or a staging directory. Curious enough, distutils were an early adopter of out-of-source builds — when used right (which often enough wasn’t the case), no writes would occur in the source directory and all modifications would be done directly in the build directory.

Today, in the #PEP517 era, two-stage builds aren't really relevant anymore. Build systems were turned into black boxes that spew wheels. However, setuptools still internally uses the two-stage build and the build directory, and therefore it still remains relevant to Gentoo eclasses. In this post, I'd like to shortly tell how we dealt with it over the years.
"""

https://blogs.gentoo.org/mgorny/2024/03/13/the-story-of-distutils-build-directory-in-gentoo/

The story of distutils build directory in Gentoo

The Python distutils build system, as well as setuptools (that it was later merged into), used a two-stage build: first, a build command would prepare a built package version (usually just copy the…

Michał Górny
distutils.dep_util and newer can be used in Python to check if a target file/directory is newer than a given source file/directory, enabling efficient checking of file dependencies.
#python #distutils #dep_util #3.11.5
🌗 Python Wheels
➤ Python Wheels是Python發行的新標準,用於取代eggs,提供更快的安裝速度和更一致的跨平臺安裝。
https://pythonwheels.com/
Python Wheels是Python發行的新標準,旨在取代eggs。它提供了更快的純Python和本地C擴展
#Python #Wheels #Python distribution #pip #setuptools #C extension #caching #.pyc files #PyPI #package #2to3 #sdist #bdist_wheel #universal wheel #license file #C extensions #platform-specific wheels #binary wheels #continuous integration #problem fixing #distutils-sig #Python Packaging Authority #contributors #javascript #meshy #GitHub
Python Wheels

I've just extracted from the Previz https://previz.co open source code of their #Blender integration plugin a #distutils command to build addon and optionally ship third-party modules not built in Blender's #Python distribution
https://github.com/charlesfleche/blender.distutils
Previz | Create better experiences

With Previz you can plan and preview your content in a real-time 3D environment. Design creatively, plan effectively and communicate confidently. All in your…