Python community has no plans for python4 whatsoever. Anything but gentle and steady evolution won’t be well received.
https://www.techrepublic.com/article/programming-languages-why-python-4-0-will-probably-never-arrive-according-to-its-creator/ Alex On Mon 21. Nov 2022 at 0.17, Khem Raj <[email protected]> wrote: > > > On Sun, Nov 20, 2022 at 9:52 AM Markus Volk <[email protected]> wrote: > >> Currently /usr/bin/python is provided by the python2 package. If python2 >> is not installed, the built image lacks a provider for it. >> This results in failed scripts when using '/usr/bin/python' shebang. >> >> This patch adds a /usr/bin/python symlink for python3 to fix this issue. >> For images containing python2 and python3, the do_rootfs task will fail >> because now both of them provide the same file. >> To allow this corner case, a DISTRO_FEATURE 'python2' has been introduced >> which, >> if set, will prevent python3 from creating the symlink. >> >> The link is created with relative path because using an absolute path >> would fail >> for native and nativesdk. > > > What happens if and when python4 comes ? > This might get us into same mess we had migrating python2 to 3 > > >> >> Signed-off-by: Markus Volk <[email protected]> >> --- >> meta/recipes-devtools/python/python3/python3-manifest.json | 1 + >> meta/recipes-devtools/python/python3_3.11.0.bb | 4 ++++ >> 2 files changed, 5 insertions(+) >> >> diff --git a/meta/recipes-devtools/python/python3/python3-manifest.json >> b/meta/recipes-devtools/python/python3/python3-manifest.json >> index 64203cf0fc..7b6f509a45 100644 >> --- a/meta/recipes-devtools/python/python3/python3-manifest.json >> +++ b/meta/recipes-devtools/python/python3/python3-manifest.json >> @@ -203,6 +203,7 @@ >> "files": [ >> "${bindir}/python${PYTHON_MAJMIN}", >> "${bindir}/python${PYTHON_MAJMIN}.real", >> + "${bindir}/python", >> "${bindir}/python3", >> "${includedir}/python${PYTHON_MAJMIN}/pyconfig*.h", >> "${libdir}/python${PYTHON_MAJMIN}/UserDict.py", >> diff --git a/meta/recipes-devtools/python/python3_3.11.0.bb >> b/meta/recipes-devtools/python/python3_3.11.0.bb >> index 92a1f69320..18b631f79d 100644 >> --- a/meta/recipes-devtools/python/python3_3.11.0.bb >> +++ b/meta/recipes-devtools/python/python3_3.11.0.bb >> @@ -144,6 +144,7 @@ do_install:prepend() { >> >> do_install:append:class-target() { >> oe_multilib_header python${PYTHON_MAJMIN}/pyconfig.h >> + ${@bb.utils.contains('DISTRO_FEATURES', 'python2', '', 'ln -sf >> ./python3 ${D}${bindir}/python', d)} >> } >> >> do_install:append:class-native() { >> @@ -156,6 +157,7 @@ do_install:append:class-native() { >> # (these often end up too long for the #! parser in the kernel >> as the >> # buffer is 128 bytes long). >> ln -s python3-native/python3 ${D}${bindir}/nativepython3 >> + ${@bb.utils.contains('DISTRO_FEATURES', 'python2', '', 'ln -sf >> ./python3-native/python3 ${D}${bindir}/nativepython', d)} >> >> # Remove the opt-1.pyc and opt-2.pyc files. There are over 3,000 >> of them >> # and the overhead in each recipe-sysroot-native isn't worth it, >> particularly >> @@ -213,6 +215,7 @@ do_install:append() { >> } >> >> do_install:append:class-nativesdk () { >> + ${@bb.utils.contains('DISTRO_FEATURES', 'python2', '', 'ln -sf >> ./python3 ${D}${bindir}/python', d)} >> # Make sure we use /usr/bin/env python >> for PYTHSCRIPT in `grep -rIl ${bindir}/python ${D}${bindir}`; do >> sed -i -e '1s|^#!.*|#!/usr/bin/env python3|' $PYTHSCRIPT >> @@ -376,6 +379,7 @@ RRECOMMENDS:${PN}-crypt:append:class-nativesdk = " >> ${MLPREFIX}openssl ${MLPREFIX >> >> # For historical reasons PN is empty and provided by python3-modules >> FILES:${PN} = "" >> +RPROVIDES:${PN} = "${@bb.utils.contains('DISTRO_FEATURES', 'python2', >> '', '${bindir}/python', d)}" >> RPROVIDES:${PN}-modules = "${PN}" >> >> FILES:${PN}-pydoc += "${bindir}/pydoc${PYTHON_MAJMIN} ${bindir}/pydoc3" >> -- >> 2.34.1 >> >> >> >> >> > > >
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#173643): https://lists.openembedded.org/g/openembedded-core/message/173643 Mute This Topic: https://lists.openembedded.org/mt/95156228/21656 Group Owner: [email protected] Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
