From mhroncok at redhat.com Tue Oct 11 09:47:41 2022 Content-Type: multipart/mixed; boundary="===============4079056644286784207==" MIME-Version: 1.0 From: =?utf-8?q?Miro_Hron=C4=8Dok_=3Cmhroncok_at_redhat=2Ecom=3E?= To: python-devel at lists.fedoraproject.org Subject: Python 3.12 pathfix.py removal Date: Tue, 11 Oct 2022 11:47:32 +0200 Message-ID: <3cd864df-49f3-d0c3-7122-7a7c6281a672@redhat.com> --===============4079056644286784207== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Hello Pythonistas, The pathfix.py script has been removed from future Python 3.12: https://discuss.python.org/t/remove-outdated-tools-scripts-scripts/19571 https://github.com/python/cpython/pull/98167 In Fedora, we package it to python3-devel as /usr/bin/pathfix.py and we use= it in: %py3_shebang_fix %pyproject_install We also use it in python3.X %install section (directly from upstream source= ). ------------------------- We have to decide what to do when we package python3.12 later this month. How to ship the script: 1) We can take the script (and its tests) and add them as additional source= s to = python3.12, carry on as we did before. The script was effectively only chan= ged = upstream by us, so this does not really make a big difference. Later on, when we have N identical scripts in python3.12, 3.13 ... and we n= eed = to change things, we will need to do it in multiple places, but that has be= en = the case until now as well. It also allows us to gradually add improvements= for = newer Pythons only. This is the easiest solution in the short term. 2) We can add the script to the python-rpm-macros component instead and use= one = script across all Python 3 versions. It seems easier to maintain that way, = but = we would need to relocate the script outside of /usr/bin/ and invoke it fro= m = the macros by `%{pytohn3}