From: "Michał Górny" <mgorny@gentoo.org>
To: gentoo-dev@lists.gentoo.org
Cc: "Michał Górny" <mgorny@gentoo.org>
Subject: [gentoo-dev] [PATCH] install-qa-check.d: do not request DISTUTILS_USE_SETUPTOOLS=no
Date: Sun, 9 Jan 2022 09:15:48 +0100 [thread overview]
Message-ID: <20220109081548.123208-1-mgorny@gentoo.org> (raw)
The Python distutils deprecation is for real, and nowadays setuptools
installs hacks that override distutils with their own bundled version.
For this reason, the check no longer works reliably and even if it were,
we will eventually be requiring setuptools on all Python packages.
Avoid asking people to set DISTUTILS_USE_SETUPTOOLS=no; allow either
"no" or "bdepend" for the time being.
Signed-off-by: Michał Górny <mgorny@gentoo.org>
---
metadata/install-qa-check.d/60distutils-use-setuptools | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/metadata/install-qa-check.d/60distutils-use-setuptools b/metadata/install-qa-check.d/60distutils-use-setuptools
index a7905c3f0b2f..6b3d063c73cf 100644
--- a/metadata/install-qa-check.d/60distutils-use-setuptools
+++ b/metadata/install-qa-check.d/60distutils-use-setuptools
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 Gentoo Authors
+# Copyright 2020-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# QA check: verify correctness of DISTUTILS_USE_SETUPTOOLS
@@ -63,6 +63,10 @@ distutils_use_setuptools_check() {
eerror "https://dev.gentoo.org/~mgorny/python-guide/distutils.html#conditional-distutils-setuptools-use-in-packages"
eerror "Please report a bug about this and CC python@"
else
+ # now that distutils is deprecated and setuptools hacks its own
+ # version in, the check no longer works reliably. just assume
+ # either "bdepend" or "no" is fine for the time being
+ [[ ${expected} == no ]] && expected+=( bdepend )
# if we did not find anything, also assume 'no' is desired,
# we do not want the setuptools dep
[[ ${#expected[@]} -eq 0 ]] && expected=( no )
@@ -71,8 +75,6 @@ distutils_use_setuptools_check() {
# NB: note that expected is overwritten above, so this implies !rdepend
# if the package is using entry points, modern versions of setuptools
# use built-in importlib.metadata module, so no rdep needed anymore
- # NB2: this is incorrect for pypy3.7 but we ignore this for the time
- # being
has entry-point "${expected[@]}" && expected=( bdepend )
if ! has ${DISTUTILS_USE_SETUPTOOLS} "${expected[@]}"; then
--
2.34.1
next reply other threads:[~2022-01-09 8:16 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-01-09 8:15 Michał Górny [this message]
2022-01-09 8:22 ` [gentoo-dev] [PATCH] install-qa-check.d: do not request DISTUTILS_USE_SETUPTOOLS=no Michał Górny
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=20220109081548.123208-1-mgorny@gentoo.org \
--to=mgorny@gentoo.org \
--cc=gentoo-dev@lists.gentoo.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