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]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to