With a freshly python built from main (on MacOS in this repro, but also tested on Linux), trying to generating the PEP-739 build-details with the --relative-paths option fails.
Traceback (most recent call last):
File "/Users/itamaro/work/cpython/Tools/build/generate-build-details.py", line 194, in <module>
main()
~~~~^^
File "/Users/itamaro/work/cpython/Tools/build/generate-build-details.py", line 186, in main
make_paths_relative(data, args.config_file_path)
~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/itamaro/work/cpython/Tools/build/generate-build-details.py", line 157, in make_paths_relative
new_path = os.path.relpath(current_path, data['base_prefix'])
File "/Users/itamaro/work/cpython/Lib/posixpath.py", line 519, in relpath
path = os.fspath(path)
TypeError: expected str, bytes or os.PathLike object, not dict
Bug report
Bug description:
With a freshly python built from main (on MacOS in this repro, but also tested on Linux), trying to generating the PEP-739 build-details with the
--relative-pathsoption fails.Traceback:
CPython versions tested on:
CPython main branch, 3.15, 3.14
Operating systems tested on:
macOS, Linux
Linked PRs
--relative-pathsfor PEP 739's build-details.json #138510--relative-pathsfor PEP 739's build-details.json (GH-138510) #138638