From 6abd12e9a96e7111b94d623bd04421ad8b4b9713 Mon Sep 17 00:00:00 2001 From: Arcadiy Ivanov Date: Mon, 24 Aug 2026 21:59:33 -0400 Subject: [PATCH] Refresh the build log for the PEP 829 `.start` file Wheels built by `bdist_axle` 0.0.13 carry a `.start` startup entry point file alongside the `.pth` file, so the captured `python -m build --wheel` output now has an `adding 'test_axle_1-0.0.1.start'` line. Recaptured on Python 3.14. --- README.md | 24 ++++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index e0a406c..491a36c 100644 --- a/README.md +++ b/README.md @@ -50,7 +50,12 @@ Successfully installed build-1.3.0 And run the build! Notice that you need to specify the `--wheel`, since by default `build` generates `sdist` first and -`sdist` doesn't support symlinks and other Wheel Axle features: +`sdist` doesn't support symlinks and other Wheel Axle features. + +Note the `test_axle_1-0.0.1.pth` and `test_axle_1-0.0.1.start` entries added to the wheel: those are the startup +files that trigger the post-install hook. The `.start` file is a +[PEP 829](https://peps.python.org/pep-0829/) startup entry point, honored from Python 3.15 on, and the `.pth` file +covers the Python versions that came before it. ```bash bash-5.2$ python -m build --wheel @@ -60,9 +65,11 @@ bash-5.2$ python -m build --wheel - wheel-axle * Getting build dependencies for wheel... running egg_info +creating src/test_axle_1.egg-info writing src/test_axle_1.egg-info/PKG-INFO writing dependency_links to src/test_axle_1.egg-info/dependency_links.txt writing top-level names to src/test_axle_1.egg-info/top_level.txt +writing manifest file 'src/test_axle_1.egg-info/SOURCES.txt' reading manifest file 'src/test_axle_1.egg-info/SOURCES.txt' adding license file 'LICENSE' writing manifest file 'src/test_axle_1.egg-info/SOURCES.txt' @@ -74,9 +81,9 @@ creating build/lib/bar copying src/bar/__init__.py -> build/lib/bar reproducing link src/bar/foo.so (../../../foo.so) -> build/lib/bar running build_scripts -creating build/scripts-3.13 -copying scripts/script1 -> build/scripts-3.13 -changing mode of build/scripts-3.13/script1 from 644 to 755 +creating build/scripts-3.14 +copying scripts/script1 -> build/scripts-3.14 +changing mode of build/scripts-3.14/script1 from 644 to 755 installing to build/bdist.linux-x86_64/wheel running install Distribution option extra_path is deprecated. See issue27919 for details. @@ -103,16 +110,17 @@ writing top-level names to src/test_axle_1.egg-info/top_level.txt reading manifest file 'src/test_axle_1.egg-info/SOURCES.txt' adding license file 'LICENSE' writing manifest file 'src/test_axle_1.egg-info/SOURCES.txt' -Copying src/test_axle_1.egg-info to build/bdist.linux-x86_64/wheel/./test_axle_1-0.0.1-py3.13.egg-info +Copying src/test_axle_1.egg-info to build/bdist.linux-x86_64/wheel/./test_axle_1-0.0.1-py3.14.egg-info running install_scripts creating build/bdist.linux-x86_64/wheel/test_axle_1-0.0.1.data/scripts -copying build/scripts-3.13/script1 -> build/bdist.linux-x86_64/wheel/test_axle_1-0.0.1.data/scripts -registering link build/scripts-3.13/script2 (script1) -> build/bdist.linux-x86_64/wheel/test_axle_1-0.0.1.data/scripts/script2 +copying build/scripts-3.14/script1 -> build/bdist.linux-x86_64/wheel/test_axle_1-0.0.1.data/scripts +registering link build/scripts-3.14/script2 (script1) -> build/bdist.linux-x86_64/wheel/test_axle_1-0.0.1.data/scripts/script2 changing mode of build/bdist.linux-x86_64/wheel/test_axle_1-0.0.1.data/scripts/script1 to 755 creating build/bdist.linux-x86_64/wheel/./test_axle_1-0.0.1.pth creating build/bdist.linux-x86_64/wheel/test_axle_1-0.0.1.dist-info/WHEEL -creating '/home/arcivanov/Documents/src/karellen/wheel-axle-example/dist/.tmp-qhxiht42/test_axle_1-0.0.1-py3-none-any.whl' and adding 'build/bdist.linux-x86_64/wheel' to it +creating '/home/arcivanov/Documents/src/karellen/wheel-axle-example/dist/.tmp-iilkrsqi/test_axle_1-0.0.1-py3-none-any.whl' and adding 'build/bdist.linux-x86_64/wheel' to it adding 'test_axle_1-0.0.1.pth' +adding 'test_axle_1-0.0.1.start' adding 'bar/__init__.py' adding 'test_axle_1-0.0.1.data/data/lib/foo.1.so' adding 'test_axle_1-0.0.1.data/headers/header1.h'