From: Tim Orling <ticotimo@gmail.com>
To: openembedded-core@lists.openembedded.org
Subject: [PATCH v2 00/22] deprecation of distutils
Date: Tue, 11 Jan 2022 11:01:09 -0800 [thread overview]
Message-ID: <cover.1641920605.git.tim.orling@konsulko.com> (raw)
distutils is deprecated in Python 3.10 and will be removed in Python
3.12 (~October 2023).
This series inserts a deprecation warning into the distutils*.bbclasses
and drops or replaces distutils usage wherever possible.
Instead of distutils3-base, we introduce setuptools3-base, which also
incorporates distutils-common-base.
Remaining usage is in:
* lib/recipetool/create_buildsys_python.py until we are ready to
factor it out (and add pyproject.toml and setup.cfg handling)
* oeqa selftests which are testing distutils3 functionality
* glib-2.0: upstream is still using distutils.version.LooseVersion
* gpgme: Still checks for distutils in m4/ax_python_devel.m4
* python3-numpy: upstream still has a distutils/ module
* python3-setuptools has a vendored _distutils
I might have missed something else.
No attempt has been made to look at layers outside of oe-core.
The intent is to let this percolate for a few weeks and then drop
distutils*.bbclasses (and move them to meta-python, but with the
warnings).
[YOCTO #14610]
Changes in v2:
- dropped the import of distutils.version into bb. in favor of
bb.utils.vercmp_string_op()
- dropped some patches that have been addressed already
- update email
- fix typos
- drop already merged scripts/buildhistory-diff patch
The following changes since commit 16110cdca7211b0efc59464afbb253527c033cad:
oeqa/sstate: Fix allarch samesigs test (2022-01-11 15:48:11 +0000)
are available in the Git repository at:
git://git.yoctoproject.org/git/poky-contrib timo/deprecate_distutils_14610_v2
http://git.yoctoproject.org/cgit.cgi/git/poky-contrib/log/?h=timo/deprecate_distutils_14610_v2
Tim Orling (22):
classes/distutils-*: add warning of deprecation
setuptools3: refactor for no distutils bbclasses
python3-cython: DISTUTILS_* -> SETUPTOOLS_*
dnf: inherit setuptools3-base instead of distutils
libdnf: inherit setuptools3-base not distutils
python3-dbus: inherit setuptools3-base not distuils
gpgme: inherit setuptools-base not distuils
python3-pip: inherit setuptools3 not distuils3
systemtap: use setuptools-base not distutils
libcomps: inherit setuptools3-base not distutils
createrepo-c: inherit setuptools3-base not distutils
librepo: inherit setuptools3-base not distutils
btrfs-tools: use setuptools3-base not distutils
python3-pygobject: setuptools instead of distuils
bind: inherit setuptools3-base instead of distutils
python3-setuptools: do not depend on distutils
gstreamer1.0-python: inherit setuptools3-base
recipetool/create_buildsys_python.py: less distutils
waf.bbclass: drop usage of distutils
dnf: drop python3-distutils dependency
python3native.bbclass: distutils -> sysconfig
rootfs_rpm.bbclass: distutils -> sysconfig module
meta/classes/distutils-common-base.bbclass | 3 +
meta/classes/distutils3-base.bbclass | 3 +
meta/classes/distutils3.bbclass | 4 ++
meta/classes/python3native.bbclass | 2 +-
meta/classes/rootfs_rpm.bbclass | 2 +-
meta/classes/setuptools3-base.bbclass | 31 +++++++++
meta/classes/setuptools3.bbclass | 66 ++++++++++++++++++-
meta/classes/waf.bbclass | 3 +-
.../recipes-connectivity/bind/bind_9.16.24.bb | 2 +-
.../btrfs-tools/btrfs-tools_5.15.1.bb | 2 +-
.../createrepo-c/createrepo-c_0.18.0.bb | 2 +-
meta/recipes-devtools/dnf/dnf_4.10.0.bb | 3 +-
.../libcomps/libcomps_0.1.18.bb | 2 +-
meta/recipes-devtools/libdnf/libdnf_0.65.0.bb | 2 +-
.../librepo/librepo_1.14.2.bb | 2 +-
.../python/python3-cython_0.29.26.bb | 2 +-
.../python/python3-dbus_1.2.18.bb | 2 +-
.../python/python3-pip_21.3.1.bb | 2 +-
.../python/python3-pygobject_3.42.0.bb | 2 +-
.../python/python3-setuptools_59.5.0.bb | 1 -
.../recipes-kernel/systemtap/systemtap_git.bb | 2 +-
.../gstreamer/gstreamer1.0-python_1.18.5.bb | 2 +-
meta/recipes-support/gpgme/gpgme_1.16.0.bb | 2 +-
.../lib/recipetool/create_buildsys_python.py | 8 ++-
24 files changed, 129 insertions(+), 23 deletions(-)
create mode 100644 meta/classes/setuptools3-base.bbclass
--
2.30.2
next reply other threads:[~2022-01-11 19:01 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-01-11 19:01 Tim Orling [this message]
2022-01-11 19:01 ` [PATCH v2 01/22] classes/distutils-*: add warning of deprecation Tim Orling
2022-01-11 19:01 ` [PATCH v2 02/22] setuptools3: refactor for no distutils bbclasses Tim Orling
2022-01-11 19:01 ` [PATCH v2 03/22] python3-cython: DISTUTILS_* -> SETUPTOOLS_* Tim Orling
2022-01-11 19:01 ` [PATCH v2 04/22] dnf: inherit setuptools3-base instead of distutils Tim Orling
2022-01-11 19:01 ` [PATCH v2 05/22] libdnf: inherit setuptools3-base not distutils Tim Orling
2022-01-11 19:01 ` [PATCH v2 06/22] python3-dbus: inherit setuptools3-base not distuils Tim Orling
2022-01-11 19:01 ` [PATCH v2 07/22] gpgme: inherit setuptools-base " Tim Orling
2022-01-11 19:01 ` [PATCH v2 08/22] python3-pip: inherit setuptools3 not distuils3 Tim Orling
2022-01-11 19:01 ` [PATCH v2 09/22] systemtap: use setuptools-base not distutils Tim Orling
2022-01-11 19:01 ` [PATCH v2 10/22] libcomps: inherit setuptools3-base " Tim Orling
2022-01-11 19:01 ` [PATCH v2 11/22] createrepo-c: " Tim Orling
2022-01-11 19:01 ` [PATCH v2 12/22] librepo: " Tim Orling
2022-01-11 19:01 ` [PATCH v2 13/22] btrfs-tools: use " Tim Orling
2022-01-11 19:01 ` [PATCH v2 14/22] python3-pygobject: setuptools instead of distuils Tim Orling
2022-01-11 19:01 ` [PATCH v2 15/22] bind: inherit setuptools3-base instead of distutils Tim Orling
2022-01-11 19:01 ` [PATCH v2 16/22] python3-setuptools: do not depend on distutils Tim Orling
2022-01-11 19:01 ` [PATCH v2 17/22] gstreamer1.0-python: inherit setuptools3-base Tim Orling
2022-01-11 19:01 ` [PATCH v2 18/22] recipetool/create_buildsys_python.py: less distutils Tim Orling
2022-01-11 19:01 ` [PATCH v2 19/22] waf.bbclass: drop usage of distutils Tim Orling
2022-01-11 19:01 ` [PATCH v2 20/22] dnf: drop python3-distutils dependency Tim Orling
2022-01-11 19:01 ` [PATCH v2 21/22] python3native.bbclass: distutils -> sysconfig Tim Orling
2022-01-11 19:01 ` [PATCH v2 22/22] rootfs_rpm.bbclass: distutils -> sysconfig module Tim Orling
2022-01-11 19:37 ` [OE-core] [PATCH v2 00/22] deprecation of distutils Alexander Kanavin
2022-01-11 20:04 ` Tim Orling
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=cover.1641920605.git.tim.orling@konsulko.com \
--to=ticotimo@gmail.com \
--cc=openembedded-core@lists.openembedded.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox