* [gentoo-dev] [PATCH 00/28] python-r1 suite EAPI 8 support/cleanup
@ 2021-06-20 9:55 Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 01/28] python-utils-r1.eclass: Ban private API in EAPI 8 Michał Górny
` (28 more replies)
0 siblings, 29 replies; 36+ messages in thread
From: Michał Górny @ 2021-06-20 9:55 UTC (permalink / raw
To: gentoo-dev; +Cc: Michał Górny
Hello, everyone.
Here's the big batch of patches enabling EAPI 8 support in python-r1
eclass suite. This includes some generic fixes and cleanups.
Generally:
- all previously-deprecated stuff is now banned in EAPI 8
- some new stuff becomes deprecated and banned in EAPI 8
- some leftover Python 2 support code has been removed
- some horrid old code has been refactored
The extra deprecations/bans are:
1. `python_moduleroot` and `python_scriptroot` vars are no longer used
(they were removed from ::gentoo in 2016).
2. `python_is_python3` is now obsolete since we don't support python2.
Just always assume python3 ;-).
3. `python_gen*` functions no longer accept -2, -3, 'python2*'
and 'pypy' arguments that made sense only in Python 2 world,
in EAPI 8. This will force some obsolete dep cleanup.
4. `PYTHON_MULTI_USEDEP` is now banned in EAPI 8, just use
`PYTHON_USEDEP`.
5. `mydistutilsargs` has been replaced with `DISTUTILS_ARGS`. Old EAPIs
still allow the old variable, EAPI 8 bans it.
6. `distutils_install_for_testing --via-home` is now banned.
Please review.
---
Michał Górny (28):
python-utils-r1.eclass: Ban private API in EAPI 8
python-utils-r1.eclass: Use 'dosym -r' in EAPI 8
python-utils-r1.eclass: Remove python_optimize support for py<3.5
python-utils-r1.eclass: Rename *into vars to use underscores
python-utils-r1.eclass: Eliminate local python_is_python3 uses
python-utils-r1.eclass: Ban py2 deps in python_gen* in EAPI 8
python-utils-r1.eclass: Deprecated and EAPI8-ban python_is_python3
python-utils-r1.eclass: Fix python_fix_shebang for py3.10+
python-utils-r1.eclass: Enable EAPI 8
python-any-r1.eclass: Remove obsolete eselect-python use
python-any-r1.eclass: Remove obsolete PYTHON_USEDEP single-r1 hack
python-any-r1.eclass: Enable EAPI 8
python-single-r1.eclass: Update doc for -2/-3 arg removal
python-single-r1.eclass: Ban PYTHON_MULTI_USEDEP in EAPI 8
python-single-r1.eclass: Enable EAPI 8
python-r1.eclass: Update doc for -2/-3 arg removal
multibuild.eclass: Enable EAPI 8
python-r1.eclass: Remove obsolete QA hack for PYTHON_USEDEP
python-r1.eclass: Ban python_gen_usedep in EAPI 8
python-r1.eclass: Use 'dosym -r' in EAPI 8
python-r1.eclass: Enable EAPI 8
distutils-r1.eclass: Refactor --install-scripts rewriting logic
distutils-r1.eclass: Replace mydistutilsargs with DISTUTILS_ARGS
distutils-r1.eclass: Require >=pyproject2setuppy-15
distutils-r1.eclass: Ban dift --via-home in EAPI 8
distutils-r1.eclass: Remove old FreeBSD compat hack
distutils-r1.eclass: Use 'dosym -r' in EAPI 8
distutils-r1.eclass: Enable EAPI 8
eclass/distutils-r1.eclass | 88 ++++++++++++++++------------
eclass/multibuild.eclass | 8 +--
eclass/python-any-r1.eclass | 34 +++--------
eclass/python-r1.eclass | 94 +++++++++++++----------------
eclass/python-single-r1.eclass | 46 ++++++++-------
eclass/python-utils-r1.eclass | 101 +++++++++++++++++++-------------
eclass/tests/python-utils-r1.sh | 4 ++
7 files changed, 195 insertions(+), 180 deletions(-)
--
2.32.0
^ permalink raw reply [flat|nested] 36+ messages in thread
* [gentoo-dev] [PATCH 01/28] python-utils-r1.eclass: Ban private API in EAPI 8
2021-06-20 9:55 [gentoo-dev] [PATCH 00/28] python-r1 suite EAPI 8 support/cleanup Michał Górny
@ 2021-06-20 9:55 ` Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 02/28] python-utils-r1.eclass: Use 'dosym -r' " Michał Górny
` (27 subsequent siblings)
28 siblings, 0 replies; 36+ messages in thread
From: Michał Górny @ 2021-06-20 9:55 UTC (permalink / raw
To: gentoo-dev; +Cc: Michał Górny
Signed-off-by: Michał Górny <mgorny@gentoo.org>
---
eclass/python-utils-r1.eclass | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass
index 3dbf221eac5d..bab4be0f521d 100644
--- a/eclass/python-utils-r1.eclass
+++ b/eclass/python-utils-r1.eclass
@@ -265,6 +265,8 @@ python_export() {
eqawarn "python_export() is part of private eclass API."
eqawarn "Please call python_get*() instead."
+ [[ ${EAPI} == [67] ]] || die "${FUNCNAME} banned in EAPI ${EAPI}"
+
_python_export "${@}"
}
@@ -878,6 +880,8 @@ python_wrapper_setup() {
eqawarn "python_wrapper_setup() is part of private eclass API."
eqawarn "Please call python_setup() instead."
+ [[ ${EAPI} == [67] ]] || die "${FUNCNAME} banned in EAPI ${EAPI}"
+
_python_wrapper_setup "${@}"
}
--
2.32.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [gentoo-dev] [PATCH 02/28] python-utils-r1.eclass: Use 'dosym -r' in EAPI 8
2021-06-20 9:55 [gentoo-dev] [PATCH 00/28] python-r1 suite EAPI 8 support/cleanup Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 01/28] python-utils-r1.eclass: Ban private API in EAPI 8 Michał Górny
@ 2021-06-20 9:55 ` Michał Górny
2021-06-20 12:48 ` Ulrich Mueller
2021-06-20 13:21 ` [gentoo-dev] [PATCH v2] " Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 03/28] python-utils-r1.eclass: Remove python_optimize support for py<3.5 Michał Górny
` (26 subsequent siblings)
28 siblings, 2 replies; 36+ messages in thread
From: Michał Górny @ 2021-06-20 9:55 UTC (permalink / raw
To: gentoo-dev; +Cc: Michał Górny
Signed-off-by: Michał Górny <mgorny@gentoo.org>
---
eclass/python-utils-r1.eclass | 11 +++++++++--
1 file changed, 9 insertions(+), 2 deletions(-)
diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass
index bab4be0f521d..e164b9c20eb9 100644
--- a/eclass/python-utils-r1.eclass
+++ b/eclass/python-utils-r1.eclass
@@ -544,6 +544,8 @@ python_get_scriptdir() {
_python_ln_rel() {
debug-print-function ${FUNCNAME} "${@}"
+ [[ ${EAPI} == [67] ]] || die "${FUNCNAME} banned in EAPI ${EAPI}"
+
local target=${1}
local symname=${2}
@@ -712,8 +714,13 @@ python_newexe() {
)
# install the wrapper
- _python_ln_rel "${ED%/}"/usr/lib/python-exec/python-exec2 \
- "${ED%/}/${wrapd}/${newfn}" || die
+ if [[ ${EAPI} != [67] ]]; then
+ dosym -r /usr/lib/python-exec/python-exec2 \
+ "${wrapd}/${newfn}"
+ else
+ _python_ln_rel "${ED%/}"/usr/lib/python-exec/python-exec2 \
+ "${ED%/}/${wrapd}/${newfn}" || die
+ fi
# don't use this at home, just call python_doscript() instead
if [[ ${_PYTHON_REWRITE_SHEBANG} ]]; then
--
2.32.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [gentoo-dev] [PATCH 03/28] python-utils-r1.eclass: Remove python_optimize support for py<3.5
2021-06-20 9:55 [gentoo-dev] [PATCH 00/28] python-r1 suite EAPI 8 support/cleanup Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 01/28] python-utils-r1.eclass: Ban private API in EAPI 8 Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 02/28] python-utils-r1.eclass: Use 'dosym -r' " Michał Górny
@ 2021-06-20 9:55 ` Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 04/28] python-utils-r1.eclass: Rename *into vars to use underscores Michał Górny
` (25 subsequent siblings)
28 siblings, 0 replies; 36+ messages in thread
From: Michał Górny @ 2021-06-20 9:55 UTC (permalink / raw
To: gentoo-dev; +Cc: Michał Górny
Remove the support code for Python 2.7, <3.5, as well as PyPy2.7. These
are no longer supported at runtime, so byte-compiling should not be used
for these impls.
Signed-off-by: Michał Górny <mgorny@gentoo.org>
---
eclass/python-utils-r1.eclass | 8 ++------
1 file changed, 2 insertions(+), 6 deletions(-)
diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass
index e164b9c20eb9..ad8d368e27c7 100644
--- a/eclass/python-utils-r1.eclass
+++ b/eclass/python-utils-r1.eclass
@@ -626,18 +626,14 @@ python_optimize() {
instpath=/${instpath##/}
case "${EPYTHON}" in
- python2.7|python3.[34])
- "${PYTHON}" -m compileall -q -f -d "${instpath}" "${d}"
- "${PYTHON}" -OO -m compileall -q -f -d "${instpath}" "${d}"
- ;;
python*|pypy3)
- # both levels of optimization are separate since 3.5
+ # both levels of optimization are separate since py3.5
"${PYTHON}" -m compileall -q -f -d "${instpath}" "${d}"
"${PYTHON}" -O -m compileall -q -f -d "${instpath}" "${d}"
"${PYTHON}" -OO -m compileall -q -f -d "${instpath}" "${d}"
;;
*)
- "${PYTHON}" -m compileall -q -f -d "${instpath}" "${d}"
+ die "Unknown impl for python_optimize: ${EPYTHON}"
;;
esac
done
--
2.32.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [gentoo-dev] [PATCH 04/28] python-utils-r1.eclass: Rename *into vars to use underscores
2021-06-20 9:55 [gentoo-dev] [PATCH 00/28] python-r1 suite EAPI 8 support/cleanup Michał Górny
` (2 preceding siblings ...)
2021-06-20 9:55 ` [gentoo-dev] [PATCH 03/28] python-utils-r1.eclass: Remove python_optimize support for py<3.5 Michał Górny
@ 2021-06-20 9:55 ` Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 05/28] python-utils-r1.eclass: Eliminate local python_is_python3 uses Michał Górny
` (24 subsequent siblings)
28 siblings, 0 replies; 36+ messages in thread
From: Michał Górny @ 2021-06-20 9:55 UTC (permalink / raw
To: gentoo-dev; +Cc: Michał Górny
Rename helper variables used by *into to mark them private with
underscores. The old names are leftovers from deprecated API that
permitted setting them directly. It was last used in ::gentoo in 2016.
Signed-off-by: Michał Górny <mgorny@gentoo.org>
---
eclass/python-utils-r1.eclass | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass
index ad8d368e27c7..464e8c19b8ac 100644
--- a/eclass/python-utils-r1.eclass
+++ b/eclass/python-utils-r1.eclass
@@ -659,7 +659,7 @@ python_optimize() {
python_scriptinto() {
debug-print-function ${FUNCNAME} "${@}"
- python_scriptroot=${1}
+ _PYTHON_SCRIPTROOT=${1}
}
# @FUNCTION: python_doexe
@@ -694,7 +694,7 @@ python_newexe() {
[[ ${EPYTHON} ]] || die 'No Python implementation set (EPYTHON is null).'
[[ ${#} -eq 2 ]] || die "Usage: ${FUNCNAME} <path> <new-name>"
- local wrapd=${python_scriptroot:-/usr/bin}
+ local wrapd=${_PYTHON_SCRIPTROOT:-/usr/bin}
local f=${1}
local newfn=${2}
@@ -802,7 +802,7 @@ python_newscript() {
python_moduleinto() {
debug-print-function ${FUNCNAME} "${@}"
- python_moduleroot=${1}
+ _PYTHON_MODULEROOT=${1}
}
# @FUNCTION: python_domodule
@@ -826,13 +826,13 @@ python_domodule() {
[[ ${EPYTHON} ]] || die 'No Python implementation set (EPYTHON is null).'
local d
- if [[ ${python_moduleroot} == /* ]]; then
+ if [[ ${_PYTHON_MODULEROOT} == /* ]]; then
# absolute path
- d=${python_moduleroot}
+ d=${_PYTHON_MODULEROOT}
else
# relative to site-packages
local sitedir=$(python_get_sitedir)
- d=${sitedir#${EPREFIX}}/${python_moduleroot//.//}
+ d=${sitedir#${EPREFIX}}/${_PYTHON_MODULEROOT//.//}
fi
(
--
2.32.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [gentoo-dev] [PATCH 05/28] python-utils-r1.eclass: Eliminate local python_is_python3 uses
2021-06-20 9:55 [gentoo-dev] [PATCH 00/28] python-r1 suite EAPI 8 support/cleanup Michał Górny
` (3 preceding siblings ...)
2021-06-20 9:55 ` [gentoo-dev] [PATCH 04/28] python-utils-r1.eclass: Rename *into vars to use underscores Michał Górny
@ 2021-06-20 9:55 ` Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 06/28] python-utils-r1.eclass: Ban py2 deps in python_gen* in EAPI 8 Michał Górny
` (23 subsequent siblings)
28 siblings, 0 replies; 36+ messages in thread
From: Michał Górny @ 2021-06-20 9:55 UTC (permalink / raw
To: gentoo-dev; +Cc: Michał Górny
Do not use python_is_python3 in eclass functions to ease banning it.
Except for wrapper setup that is still used in py2 any-r1 context,
we can unconditionally assume Python 3 everywhere.
Signed-off-by: Michał Górny <mgorny@gentoo.org>
---
eclass/python-utils-r1.eclass | 16 ++++++----------
1 file changed, 6 insertions(+), 10 deletions(-)
diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass
index 464e8c19b8ac..509b1b4288ac 100644
--- a/eclass/python-utils-r1.eclass
+++ b/eclass/python-utils-r1.eclass
@@ -191,8 +191,8 @@ _python_set_impls() {
# <impl> can be in PYTHON_COMPAT or EPYTHON form. The patterns can be
# either:
# a) fnmatch-style patterns, e.g. 'python2*', 'pypy'...
-# b) '-2' to indicate all Python 2 variants (= !python_is_python3)
-# c) '-3' to indicate all Python 3 variants (= python_is_python3)
+# b) '-2' to indicate all Python 2 variants
+# c) '-3' to indicate all Python 3 variants
_python_impl_matches() {
[[ ${#} -ge 1 ]] || die "${FUNCNAME}: takes at least 1 parameter"
[[ ${#} -eq 1 ]] && return 0
@@ -202,10 +202,9 @@ _python_impl_matches() {
for pattern; do
if [[ ${pattern} == -2 ]]; then
- python_is_python3 "${impl}" || return 0
+ :
elif [[ ${pattern} == -3 ]]; then
- python_is_python3 "${impl}" && return 0
- return
+ return 0
# unify value style to allow lax matching
elif [[ ${impl/./_} == ${pattern/./_} ]]; then
return 0
@@ -924,7 +923,7 @@ _python_wrapper_setup() {
_python_export "${impl}" EPYTHON PYTHON
local pyver pyother
- if python_is_python3; then
+ if [[ ${EPYTHON} != python2* ]]; then
pyver=3
pyother=2
else
@@ -1101,13 +1100,10 @@ python_fix_shebang() {
if [[ ${i} == *python2 ]]; then
from=python2
if [[ ! ${force} ]]; then
- python_is_python3 "${EPYTHON}" && error=1
+ error=1
fi
elif [[ ${i} == *python3 ]]; then
from=python3
- if [[ ! ${force} ]]; then
- python_is_python3 "${EPYTHON}" || error=1
- fi
else
from=python
fi
--
2.32.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [gentoo-dev] [PATCH 06/28] python-utils-r1.eclass: Ban py2 deps in python_gen* in EAPI 8
2021-06-20 9:55 [gentoo-dev] [PATCH 00/28] python-r1 suite EAPI 8 support/cleanup Michał Górny
` (4 preceding siblings ...)
2021-06-20 9:55 ` [gentoo-dev] [PATCH 05/28] python-utils-r1.eclass: Eliminate local python_is_python3 uses Michał Górny
@ 2021-06-20 9:55 ` Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 07/28] python-utils-r1.eclass: Deprecated and EAPI8-ban python_is_python3 Michał Górny
` (22 subsequent siblings)
28 siblings, 0 replies; 36+ messages in thread
From: Michał Górny @ 2021-06-20 9:55 UTC (permalink / raw
To: gentoo-dev; +Cc: Michał Górny
Ban using -2 or python2* as an argument to python_gen_cond_dep and other
functions using _python_impl_matches, in order to force cleaning up old
entries, in EAPI 8.
Signed-off-by: Michał Górny <mgorny@gentoo.org>
---
eclass/python-utils-r1.eclass | 39 +++++++++++++++++++++++------------
1 file changed, 26 insertions(+), 13 deletions(-)
diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass
index 509b1b4288ac..1ff794ede1de 100644
--- a/eclass/python-utils-r1.eclass
+++ b/eclass/python-utils-r1.eclass
@@ -188,11 +188,8 @@ _python_set_impls() {
# of the patterns following it. Return 0 if it does, 1 otherwise.
# Matches if no patterns are provided.
#
-# <impl> can be in PYTHON_COMPAT or EPYTHON form. The patterns can be
-# either:
-# a) fnmatch-style patterns, e.g. 'python2*', 'pypy'...
-# b) '-2' to indicate all Python 2 variants
-# c) '-3' to indicate all Python 3 variants
+# <impl> can be in PYTHON_COMPAT or EPYTHON form. The patterns
+# are fnmatch-style.
_python_impl_matches() {
[[ ${#} -ge 1 ]] || die "${FUNCNAME}: takes at least 1 parameter"
[[ ${#} -eq 1 ]] && return 0
@@ -201,14 +198,30 @@ _python_impl_matches() {
shift
for pattern; do
- if [[ ${pattern} == -2 ]]; then
- :
- elif [[ ${pattern} == -3 ]]; then
- return 0
- # unify value style to allow lax matching
- elif [[ ${impl/./_} == ${pattern/./_} ]]; then
- return 0
- fi
+ case ${pattern} in
+ -2|python2*|pypy)
+ if [[ ${EAPI} != [67] ]]; then
+ eerror
+ eerror "Python 2 is no longer supported in Gentoo, please remove Python 2"
+ eerror "${FUNCNAME[1]} calls."
+ die "Passing ${pattern} to ${FUNCNAME[1]} is banned in EAPI ${EAPI}"
+ fi
+ ;;
+ -3)
+ # NB: "python3*" is fine, as "not pypy3"
+ if [[ ${EAPI} != [67] ]]; then
+ eerror
+ eerror "Python 2 is no longer supported in Gentoo, please remove Python 2"
+ eerror "${FUNCNAME[1]} calls."
+ die "Passing ${pattern} to ${FUNCNAME[1]} is banned in EAPI ${EAPI}"
+ fi
+ return 0
+ ;;
+ *)
+ # unify value style to allow lax matching
+ [[ ${impl/./_} == ${pattern/./_} ]] && return 0
+ ;;
+ esac
done
return 1
--
2.32.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [gentoo-dev] [PATCH 07/28] python-utils-r1.eclass: Deprecated and EAPI8-ban python_is_python3
2021-06-20 9:55 [gentoo-dev] [PATCH 00/28] python-r1 suite EAPI 8 support/cleanup Michał Górny
` (5 preceding siblings ...)
2021-06-20 9:55 ` [gentoo-dev] [PATCH 06/28] python-utils-r1.eclass: Ban py2 deps in python_gen* in EAPI 8 Michał Górny
@ 2021-06-20 9:55 ` Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 08/28] python-utils-r1.eclass: Fix python_fix_shebang for py3.10+ Michał Górny
` (21 subsequent siblings)
28 siblings, 0 replies; 36+ messages in thread
From: Michał Górny @ 2021-06-20 9:55 UTC (permalink / raw
To: gentoo-dev; +Cc: Michał Górny
There is no use for python_is_python3 anymore, as Python 2 is no longer
supported at runtime and the remaining any-r1 uses are pure-2.
Signed-off-by: Michał Górny <mgorny@gentoo.org>
---
eclass/python-utils-r1.eclass | 3 +++
eclass/tests/python-utils-r1.sh | 4 ++++
2 files changed, 7 insertions(+)
diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass
index 1ff794ede1de..a3d5770b7c08 100644
--- a/eclass/python-utils-r1.eclass
+++ b/eclass/python-utils-r1.eclass
@@ -1015,6 +1015,9 @@ _python_wrapper_setup() {
#
# Returns 0 (true) if it is, 1 (false) otherwise.
python_is_python3() {
+ eqawarn "${FUNCNAME} is deprecated, as Python 2 is not supported anymore"
+ [[ ${EAPI} == [67] ]] || die "${FUNCNAME} banned in EAPI ${EAPI}"
+
local impl=${1:-${EPYTHON}}
[[ ${impl} ]] || die "python_is_python3: no impl nor EPYTHON"
diff --git a/eclass/tests/python-utils-r1.sh b/eclass/tests/python-utils-r1.sh
index 85a6a53654d3..63a94c90b715 100755
--- a/eclass/tests/python-utils-r1.sh
+++ b/eclass/tests/python-utils-r1.sh
@@ -5,6 +5,10 @@
EAPI=7
source tests-common.sh
+eqawarn() {
+ : # stub
+}
+
test_var() {
local var=${1}
local impl=${2}
--
2.32.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [gentoo-dev] [PATCH 08/28] python-utils-r1.eclass: Fix python_fix_shebang for py3.10+
2021-06-20 9:55 [gentoo-dev] [PATCH 00/28] python-r1 suite EAPI 8 support/cleanup Michał Górny
` (6 preceding siblings ...)
2021-06-20 9:55 ` [gentoo-dev] [PATCH 07/28] python-utils-r1.eclass: Deprecated and EAPI8-ban python_is_python3 Michał Górny
@ 2021-06-20 9:55 ` Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 09/28] python-utils-r1.eclass: Enable EAPI 8 Michał Górny
` (20 subsequent siblings)
28 siblings, 0 replies; 36+ messages in thread
From: Michał Górny @ 2021-06-20 9:55 UTC (permalink / raw
To: gentoo-dev; +Cc: Michał Górny
We should be safe until Python 3.99 now ;-).
Signed-off-by: Michał Górny <mgorny@gentoo.org>
---
eclass/python-utils-r1.eclass | 12 +++++++-----
1 file changed, 7 insertions(+), 5 deletions(-)
diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass
index a3d5770b7c08..7f3a0f2566ca 100644
--- a/eclass/python-utils-r1.eclass
+++ b/eclass/python-utils-r1.eclass
@@ -1125,20 +1125,22 @@ python_fix_shebang() {
fi
break
;;
- *python[23].[0123456789]|*pypy|*pypy3|*jython[23].[0123456789])
+ *python[23].[0-9]|*python3.[1-9][0-9]|*pypy|*pypy3|*jython[23].[0-9])
# Explicit mismatch.
if [[ ! ${force} ]]; then
error=1
else
case "${i}" in
- *python[23].[0123456789])
- from="python[23].[0123456789]";;
+ *python[23].[0-9])
+ from="python[23].[0-9]";;
+ *python3.[1-9][0-9])
+ from="python3.[1-9][0-9]";;
*pypy)
from="pypy";;
*pypy3)
from="pypy3";;
- *jython[23].[0123456789])
- from="jython[23].[0123456789]";;
+ *jython[23].[0-9])
+ from="jython[23].[0-9]";;
*)
die "${FUNCNAME}: internal error in 2nd pattern match";;
esac
--
2.32.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [gentoo-dev] [PATCH 09/28] python-utils-r1.eclass: Enable EAPI 8
2021-06-20 9:55 [gentoo-dev] [PATCH 00/28] python-r1 suite EAPI 8 support/cleanup Michał Górny
` (7 preceding siblings ...)
2021-06-20 9:55 ` [gentoo-dev] [PATCH 08/28] python-utils-r1.eclass: Fix python_fix_shebang for py3.10+ Michał Górny
@ 2021-06-20 9:55 ` Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 10/28] python-any-r1.eclass: Remove obsolete eselect-python use Michał Górny
` (19 subsequent siblings)
28 siblings, 0 replies; 36+ messages in thread
From: Michał Górny @ 2021-06-20 9:55 UTC (permalink / raw
To: gentoo-dev; +Cc: Michał Górny
Signed-off-by: Michał Górny <mgorny@gentoo.org>
---
eclass/python-utils-r1.eclass | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass
index 7f3a0f2566ca..8be37cf544ff 100644
--- a/eclass/python-utils-r1.eclass
+++ b/eclass/python-utils-r1.eclass
@@ -7,7 +7,7 @@
# @AUTHOR:
# Author: Michał Górny <mgorny@gentoo.org>
# Based on work of: Krzysztof Pawlik <nelchael@gentoo.org>
-# @SUPPORTED_EAPIS: 6 7
+# @SUPPORTED_EAPIS: 6 7 8
# @BLURB: Utility functions for packages with Python parts.
# @DESCRIPTION:
# A utility eclass providing functions to query Python implementations,
@@ -24,7 +24,7 @@
# See bug #704286, bug #781878
case "${EAPI:-0}" in
[0-5]) die "Unsupported EAPI=${EAPI:-0} (too old) for ${ECLASS}" ;;
- [6-7]) ;;
+ [6-8]) ;;
*) die "Unsupported EAPI=${EAPI} (unknown) for ${ECLASS}" ;;
esac
--
2.32.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [gentoo-dev] [PATCH 10/28] python-any-r1.eclass: Remove obsolete eselect-python use
2021-06-20 9:55 [gentoo-dev] [PATCH 00/28] python-r1 suite EAPI 8 support/cleanup Michał Górny
` (8 preceding siblings ...)
2021-06-20 9:55 ` [gentoo-dev] [PATCH 09/28] python-utils-r1.eclass: Enable EAPI 8 Michał Górny
@ 2021-06-20 9:55 ` Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 11/28] python-any-r1.eclass: Remove obsolete PYTHON_USEDEP single-r1 hack Michał Górny
` (18 subsequent siblings)
28 siblings, 0 replies; 36+ messages in thread
From: Michał Górny @ 2021-06-20 9:55 UTC (permalink / raw
To: gentoo-dev; +Cc: Michał Górny
Signed-off-by: Michał Górny <mgorny@gentoo.org>
---
eclass/python-any-r1.eclass | 16 ----------------
1 file changed, 16 deletions(-)
diff --git a/eclass/python-any-r1.eclass b/eclass/python-any-r1.eclass
index 49f639d5fac6..cb343b320f0c 100644
--- a/eclass/python-any-r1.eclass
+++ b/eclass/python-any-r1.eclass
@@ -345,22 +345,6 @@ python_setup() {
fi
fi
- # then, try eselect-python
- local variant i
- for variant in '' '--python2' '--python3'; do
- i=$(eselect python --show ${variant} 2>/dev/null)
-
- if [[ ! ${i} ]]; then
- # no eselect-python?
- break
- elif _python_EPYTHON_supported "${i}"; then
- _python_export "${i}" EPYTHON PYTHON
- _python_wrapper_setup
- einfo "Using ${EPYTHON} to build"
- return
- fi
- done
-
# fallback to best installed impl.
# (reverse iteration over _PYTHON_SUPPORTED_IMPLS)
for (( i = ${#_PYTHON_SUPPORTED_IMPLS[@]} - 1; i >= 0; i-- )); do
--
2.32.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [gentoo-dev] [PATCH 11/28] python-any-r1.eclass: Remove obsolete PYTHON_USEDEP single-r1 hack
2021-06-20 9:55 [gentoo-dev] [PATCH 00/28] python-r1 suite EAPI 8 support/cleanup Michał Górny
` (9 preceding siblings ...)
2021-06-20 9:55 ` [gentoo-dev] [PATCH 10/28] python-any-r1.eclass: Remove obsolete eselect-python use Michał Górny
@ 2021-06-20 9:55 ` Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 12/28] python-any-r1.eclass: Enable EAPI 8 Michał Górny
` (17 subsequent siblings)
28 siblings, 0 replies; 36+ messages in thread
From: Michał Górny @ 2021-06-20 9:55 UTC (permalink / raw
To: gentoo-dev; +Cc: Michał Górny
Remove the QA hack for PYTHON_USEDEP that originally prevented python-r1
ebuilds from wrongly depending on python-single-r1 packages. Since
the latter no longer define python_targets*, these dependencies are now
caught without any hacks.
Signed-off-by: Michał Górny <mgorny@gentoo.org>
---
eclass/python-any-r1.eclass | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
diff --git a/eclass/python-any-r1.eclass b/eclass/python-any-r1.eclass
index cb343b320f0c..2f38155c39fd 100644
--- a/eclass/python-any-r1.eclass
+++ b/eclass/python-any-r1.eclass
@@ -144,7 +144,7 @@ EXPORT_FUNCTIONS pkg_setup
#
# Example value:
# @CODE
-# python_targets_python3_7(-),-python_single_target_python3_7(-)
+# python_targets_python3_7(-)
# @CODE
# @ECLASS-VARIABLE: PYTHON_SINGLE_USEDEP
@@ -239,14 +239,14 @@ if [[ ! ${_PYTHON_ANY_R1} ]]; then
# (
# dev-lang/python:3.7
# dev-python/foo[python_single_target_python3_7(-)]
-# || ( dev-python/bar[python_targets_python3_7(-),-python_single_target_python3_7(-)]
-# dev-python/baz[python_targets_python3_7(-),-python_single_target_python3_7(-)] )
+# || ( dev-python/bar[python_targets_python3_7(-)
+# dev-python/baz[python_targets_python3_7(-) )
# )
# (
# dev-lang/python:3.8
# dev-python/foo[python_single_target_python3_8(-)]
-# || ( dev-python/bar[python_targets_python3_8(-),-python_single_target_python3_8(-)]
-# dev-python/baz[python_targets_python3_8(-),-python_single_target_python3_8(-)] )
+# || ( dev-python/bar[python_targets_python3_8(-)]
+# dev-python/baz[python_targets_python3_8(-)] )
# )
# )
# @CODE
@@ -258,7 +258,7 @@ python_gen_any_dep() {
local i PYTHON_PKG_DEP out=
for i in "${_PYTHON_SUPPORTED_IMPLS[@]}"; do
- local PYTHON_USEDEP="python_targets_${i}(-),-python_single_target_${i}(-)"
+ local PYTHON_USEDEP="python_targets_${i}(-)"
local PYTHON_SINGLE_USEDEP="python_single_target_${i}(-)"
_python_export "${i}" PYTHON_PKG_DEP
@@ -294,7 +294,7 @@ _python_EPYTHON_supported() {
if has "${i}" "${_PYTHON_SUPPORTED_IMPLS[@]}"; then
if python_is_installed "${i}"; then
if declare -f python_check_deps >/dev/null; then
- local PYTHON_USEDEP="python_targets_${i}(-),-python_single_target_${i}(-)"
+ local PYTHON_USEDEP="python_targets_${i}(-)"
local PYTHON_SINGLE_USEDEP="python_single_target_${i}(-)"
python_check_deps
return ${?}
--
2.32.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [gentoo-dev] [PATCH 12/28] python-any-r1.eclass: Enable EAPI 8
2021-06-20 9:55 [gentoo-dev] [PATCH 00/28] python-r1 suite EAPI 8 support/cleanup Michał Górny
` (10 preceding siblings ...)
2021-06-20 9:55 ` [gentoo-dev] [PATCH 11/28] python-any-r1.eclass: Remove obsolete PYTHON_USEDEP single-r1 hack Michał Górny
@ 2021-06-20 9:55 ` Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 13/28] python-single-r1.eclass: Update doc for -2/-3 arg removal Michał Górny
` (16 subsequent siblings)
28 siblings, 0 replies; 36+ messages in thread
From: Michał Górny @ 2021-06-20 9:55 UTC (permalink / raw
To: gentoo-dev; +Cc: Michał Górny
Signed-off-by: Michał Górny <mgorny@gentoo.org>
---
eclass/python-any-r1.eclass | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/eclass/python-any-r1.eclass b/eclass/python-any-r1.eclass
index 2f38155c39fd..eaae5379b732 100644
--- a/eclass/python-any-r1.eclass
+++ b/eclass/python-any-r1.eclass
@@ -7,7 +7,7 @@
# @AUTHOR:
# Author: Michał Górny <mgorny@gentoo.org>
# Based on work of: Krzysztof Pawlik <nelchael@gentoo.org>
-# @SUPPORTED_EAPIS: 6 7
+# @SUPPORTED_EAPIS: 6 7 8
# @BLURB: An eclass for packages having build-time dependency on Python.
# @DESCRIPTION:
# A minimal eclass for packages which need any Python interpreter
@@ -39,7 +39,7 @@
case "${EAPI:-0}" in
[0-5]) die "Unsupported EAPI=${EAPI:-0} (too old) for ${ECLASS}" ;;
- [6-7]) ;;
+ [6-8]) ;;
*) die "Unsupported EAPI=${EAPI} (unknown) for ${ECLASS}" ;;
esac
--
2.32.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [gentoo-dev] [PATCH 13/28] python-single-r1.eclass: Update doc for -2/-3 arg removal
2021-06-20 9:55 [gentoo-dev] [PATCH 00/28] python-r1 suite EAPI 8 support/cleanup Michał Górny
` (11 preceding siblings ...)
2021-06-20 9:55 ` [gentoo-dev] [PATCH 12/28] python-any-r1.eclass: Enable EAPI 8 Michał Górny
@ 2021-06-20 9:55 ` Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 14/28] python-single-r1.eclass: Ban PYTHON_MULTI_USEDEP in EAPI 8 Michał Górny
` (15 subsequent siblings)
28 siblings, 0 replies; 36+ messages in thread
From: Michał Górny @ 2021-06-20 9:55 UTC (permalink / raw
To: gentoo-dev; +Cc: Michał Górny
Signed-off-by: Michał Górny <mgorny@gentoo.org>
---
eclass/python-single-r1.eclass | 36 +++++++++++++++-------------------
1 file changed, 16 insertions(+), 20 deletions(-)
diff --git a/eclass/python-single-r1.eclass b/eclass/python-single-r1.eclass
index 07db2d762ded..50ec69fa2ddb 100644
--- a/eclass/python-single-r1.eclass
+++ b/eclass/python-single-r1.eclass
@@ -278,11 +278,10 @@ if [[ ! ${_PYTHON_SINGLE_R1} ]]; then
# are both in PYTHON_COMPAT and match any of the patterns passed
# as parameters to the function.
#
-# The patterns can be either fnmatch-style patterns (matched via bash
-# == operator against PYTHON_COMPAT values) or '-2' / '-3' to indicate
-# appropriately all enabled Python 2/3 implementations (alike
-# python_is_python3). Remember to escape or quote the fnmatch patterns
-# to prevent accidental shell filename expansion.
+# The patterns are fnmatch-style patterns (matched via bash
+# == operator against PYTHON_COMPAT values). Remember to escape
+# or quote the fnmatch patterns to prevent accidental shell filename
+# expansion.
#
# This is an internal function used to implement python_gen_cond_dep.
_python_gen_usedep() {
@@ -312,11 +311,10 @@ _python_gen_usedep() {
# are both in PYTHON_COMPAT and match any of the patterns passed
# as parameters to the function.
#
-# The patterns can be either fnmatch-style patterns (matched via bash
-# == operator against PYTHON_COMPAT values) or '-2' / '-3' to indicate
-# appropriately all enabled Python 2/3 implementations (alike
-# python_is_python3). Remember to escape or quote the fnmatch patterns
-# to prevent accidental shell filename expansion.
+# The patterns are fnmatch-style patterns (matched via bash
+# == operator against PYTHON_COMPAT values). Remember to escape
+# or quote the fnmatch patterns to prevent accidental shell filename
+# expansion.
#
# Example:
# @CODE
@@ -350,11 +348,10 @@ python_gen_useflags() {
# of Python implementations which are both in PYTHON_COMPAT and match
# any of the patterns passed as the remaining parameters.
#
-# The patterns can be either fnmatch-style patterns (matched via bash
-# == operator against PYTHON_COMPAT values) or '-2' / '-3' to indicate
-# appropriately all enabled Python 2/3 implementations (alike
-# python_is_python3). Remember to escape or quote the fnmatch patterns
-# to prevent accidental shell filename expansion.
+# The patterns are fnmatch-style patterns (matched via bash
+# == operator against PYTHON_COMPAT values). Remember to escape
+# or quote the fnmatch patterns to prevent accidental shell filename
+# expansion.
#
# In order to enforce USE constraints on the packages, verbatim
# '${PYTHON_SINGLE_USEDEP}' and '${PYTHON_USEDEP}' (quoted!) may
@@ -413,11 +410,10 @@ python_gen_cond_dep() {
# patterns are passed, the output dependencies will be generated only
# for the implementations matching them.
#
-# The patterns can be either fnmatch-style patterns (matched via bash
-# == operator against PYTHON_COMPAT values) or '-2' / '-3' to indicate
-# appropriately all enabled Python 2/3 implementations (alike
-# python_is_python3). Remember to escape or quote the fnmatch patterns
-# to prevent accidental shell filename expansion.
+# The patterns are fnmatch-style patterns (matched via bash
+# == operator against PYTHON_COMPAT values). Remember to escape
+# or quote the fnmatch patterns to prevent accidental shell filename
+# expansion.
#
# Use this function when you need to request different USE flags
# on the Python interpreter depending on package's USE flags. If you
--
2.32.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [gentoo-dev] [PATCH 14/28] python-single-r1.eclass: Ban PYTHON_MULTI_USEDEP in EAPI 8
2021-06-20 9:55 [gentoo-dev] [PATCH 00/28] python-r1 suite EAPI 8 support/cleanup Michał Górny
` (12 preceding siblings ...)
2021-06-20 9:55 ` [gentoo-dev] [PATCH 13/28] python-single-r1.eclass: Update doc for -2/-3 arg removal Michał Górny
@ 2021-06-20 9:55 ` Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 15/28] python-single-r1.eclass: Enable " Michał Górny
` (14 subsequent siblings)
28 siblings, 0 replies; 36+ messages in thread
From: Michał Górny @ 2021-06-20 9:55 UTC (permalink / raw
To: gentoo-dev; +Cc: Michał Górny
PYTHON_MULTI_USEDEP was a temporary transition measure, and is now
equivalent to PYTHON_USEDEP. Ban it in EAPI 8 to clean up ebuilds.
Signed-off-by: Michał Górny <mgorny@gentoo.org>
---
eclass/python-single-r1.eclass | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/eclass/python-single-r1.eclass b/eclass/python-single-r1.eclass
index 50ec69fa2ddb..6dd0616aa219 100644
--- a/eclass/python-single-r1.eclass
+++ b/eclass/python-single-r1.eclass
@@ -392,6 +392,12 @@ python_gen_cond_dep() {
fi
local multi_usedep="python_targets_${impl}(-)"
+ if [[ ${EAPI} != [67] ]]; then
+ if [[ ${dep} == *\$\{PYTHON_MULTI_USEDEP\}* ]]; then
+ die "Replace PYTHON_MULTI_USEDEP with PYTHON_USEDEP in EAPI ${EAPI}"
+ fi
+ fi
+
local subdep=${dep//\$\{PYTHON_MULTI_USEDEP\}/${multi_usedep}}
matches+=( "python_single_target_${impl}? (
${subdep//\$\{PYTHON_USEDEP\}/${multi_usedep}} )" )
--
2.32.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [gentoo-dev] [PATCH 15/28] python-single-r1.eclass: Enable EAPI 8
2021-06-20 9:55 [gentoo-dev] [PATCH 00/28] python-r1 suite EAPI 8 support/cleanup Michał Górny
` (13 preceding siblings ...)
2021-06-20 9:55 ` [gentoo-dev] [PATCH 14/28] python-single-r1.eclass: Ban PYTHON_MULTI_USEDEP in EAPI 8 Michał Górny
@ 2021-06-20 9:55 ` Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 16/28] python-r1.eclass: Update doc for -2/-3 arg removal Michał Górny
` (13 subsequent siblings)
28 siblings, 0 replies; 36+ messages in thread
From: Michał Górny @ 2021-06-20 9:55 UTC (permalink / raw
To: gentoo-dev; +Cc: Michał Górny
Signed-off-by: Michał Górny <mgorny@gentoo.org>
---
eclass/python-single-r1.eclass | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/eclass/python-single-r1.eclass b/eclass/python-single-r1.eclass
index 6dd0616aa219..dfe15e196764 100644
--- a/eclass/python-single-r1.eclass
+++ b/eclass/python-single-r1.eclass
@@ -7,7 +7,7 @@
# @AUTHOR:
# Author: Michał Górny <mgorny@gentoo.org>
# Based on work of: Krzysztof Pawlik <nelchael@gentoo.org>
-# @SUPPORTED_EAPIS: 6 7
+# @SUPPORTED_EAPIS: 6 7 8
# @BLURB: An eclass for Python packages not installed for multiple implementations.
# @DESCRIPTION:
# An extension of the python-r1 eclass suite for packages which
@@ -40,7 +40,7 @@ case "${EAPI:-0}" in
[0-5])
die "Unsupported EAPI=${EAPI:-0} (too old) for ${ECLASS}"
;;
- [6-7])
+ [6-8])
;;
*)
die "Unsupported EAPI=${EAPI} (unknown) for ${ECLASS}"
--
2.32.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [gentoo-dev] [PATCH 16/28] python-r1.eclass: Update doc for -2/-3 arg removal
2021-06-20 9:55 [gentoo-dev] [PATCH 00/28] python-r1 suite EAPI 8 support/cleanup Michał Górny
` (14 preceding siblings ...)
2021-06-20 9:55 ` [gentoo-dev] [PATCH 15/28] python-single-r1.eclass: Enable " Michał Górny
@ 2021-06-20 9:55 ` Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 17/28] multibuild.eclass: Enable EAPI 8 Michał Górny
` (12 subsequent siblings)
28 siblings, 0 replies; 36+ messages in thread
From: Michał Górny @ 2021-06-20 9:55 UTC (permalink / raw
To: gentoo-dev; +Cc: Michał Górny
Signed-off-by: Michał Górny <mgorny@gentoo.org>
---
eclass/python-r1.eclass | 63 ++++++++++++++++++-----------------------
1 file changed, 28 insertions(+), 35 deletions(-)
diff --git a/eclass/python-r1.eclass b/eclass/python-r1.eclass
index 1eb68270a0b3..00555e19d605 100644
--- a/eclass/python-r1.eclass
+++ b/eclass/python-r1.eclass
@@ -304,11 +304,10 @@ _python_validate_useflags() {
# are both in PYTHON_COMPAT and match any of the patterns passed
# as parameters to the function.
#
-# The patterns can be either fnmatch-style patterns (matched via bash
-# == operator against PYTHON_COMPAT values) or '-2' / '-3' to indicate
-# appropriately all enabled Python 2/3 implementations (alike
-# python_is_python3). Remember to escape or quote the fnmatch patterns
-# to prevent accidental shell filename expansion.
+# The patterns are fnmatch-style patterns (matched via bash
+# == operator against PYTHON_COMPAT values). Remember to escape
+# or quote the fnmatch patterns to prevent accidental shell filename
+# expansion.
#
# This is an internal function used to implement python_gen_cond_dep
# and deprecated python_gen_usedep.
@@ -342,11 +341,10 @@ _python_gen_usedep() {
# are both in PYTHON_COMPAT and match any of the patterns passed
# as parameters to the function.
#
-# The patterns can be either fnmatch-style patterns (matched via bash
-# == operator against PYTHON_COMPAT values) or '-2' / '-3' to indicate
-# appropriately all enabled Python 2/3 implementations (alike
-# python_is_python3). Remember to escape or quote the fnmatch patterns
-# to prevent accidental shell filename expansion.
+# The patterns are fnmatch-style patterns (matched via bash
+# == operator against PYTHON_COMPAT values). Remember to escape
+# or quote the fnmatch patterns to prevent accidental shell filename
+# expansion.
#
# When all implementations are requested, please use ${PYTHON_USEDEP}
# instead. Please also remember to set an appropriate REQUIRED_USE
@@ -380,11 +378,10 @@ python_gen_usedep() {
# are both in PYTHON_COMPAT and match any of the patterns passed
# as parameters to the function.
#
-# The patterns can be either fnmatch-style patterns (matched via bash
-# == operator against PYTHON_COMPAT values) or '-2' / '-3' to indicate
-# appropriately all enabled Python 2/3 implementations (alike
-# python_is_python3). Remember to escape or quote the fnmatch patterns
-# to prevent accidental shell filename expansion.
+# The patterns are fnmatch-style patterns (matched via bash
+# == operator against PYTHON_COMPAT values). Remember to escape
+# or quote the fnmatch patterns to prevent accidental shell filename
+# expansion.
#
# Example:
# @CODE
@@ -418,11 +415,10 @@ python_gen_useflags() {
# of Python implementations which are both in PYTHON_COMPAT and match
# any of the patterns passed as the remaining parameters.
#
-# The patterns can be either fnmatch-style patterns (matched via bash
-# == operator against PYTHON_COMPAT values) or '-2' / '-3' to indicate
-# appropriately all enabled Python 2/3 implementations (alike
-# python_is_python3). Remember to escape or quote the fnmatch patterns
-# to prevent accidental shell filename expansion.
+# The patterns are fnmatch-style patterns (matched via bash
+# == operator against PYTHON_COMPAT values). Remember to escape
+# or quote the fnmatch patterns to prevent accidental shell filename
+# expansion.
#
# In order to enforce USE constraints on the packages, verbatim
# '${PYTHON_USEDEP}' (quoted!) may be placed in the dependency
@@ -477,11 +473,10 @@ python_gen_cond_dep() {
# patterns are passed, the output dependencies will be generated only
# for the implementations matching them.
#
-# The patterns can be either fnmatch-style patterns (matched via bash
-# == operator against PYTHON_COMPAT values) or '-2' / '-3' to indicate
-# appropriately all enabled Python 2/3 implementations (alike
-# python_is_python3). Remember to escape or quote the fnmatch patterns
-# to prevent accidental shell filename expansion.
+# The patterns are fnmatch-style patterns (matched via bash
+# == operator against PYTHON_COMPAT values). Remember to escape
+# or quote the fnmatch patterns to prevent accidental shell filename
+# expansion.
#
# Use this function when you need to request different USE flags
# on the Python interpreter depending on package's USE flags. If you
@@ -534,11 +529,10 @@ python_gen_impl_dep() {
#
# Optionally, patterns may be specified to restrict the dependency to
# a subset of Python implementations supported by the ebuild.
-# The patterns can be either fnmatch-style patterns (matched via bash
-# == operator against PYTHON_COMPAT values) or '-2' / '-3' to indicate
-# appropriately all enabled Python 2/3 implementations (alike
-# python_is_python3). Remember to escape or quote the fnmatch patterns
-# to prevent accidental shell filename expansion.
+# The patterns are fnmatch-style patterns (matched via bash
+# == operator against PYTHON_COMPAT values). Remember to escape
+# or quote the fnmatch patterns to prevent accidental shell filename
+# expansion.
#
# This should be used along with an appropriate python_check_deps()
# that checks which of the any-of blocks were matched, and python_setup
@@ -725,11 +719,10 @@ python_foreach_impl() {
# The python_check_deps() function in the any-of mode needs to be
# accompanied by appropriate any-of dependencies.
#
-# The patterns can be either fnmatch-style patterns (matched via bash
-# == operator against PYTHON_COMPAT values) or '-2' / '-3' to indicate
-# appropriately all enabled Python 2/3 implementations (alike
-# python_is_python3). Remember to escape or quote the fnmatch patterns
-# to prevent accidental shell filename expansion.
+# The patterns are fnmatch-style patterns (matched via bash
+# == operator against PYTHON_COMPAT values). Remember to escape
+# or quote the fnmatch patterns to prevent accidental shell filename
+# expansion.
#
# This function needs to be used when Python is being called outside
# of python_foreach_impl calls (e.g. for shared processes like doc
--
2.32.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [gentoo-dev] [PATCH 17/28] multibuild.eclass: Enable EAPI 8
2021-06-20 9:55 [gentoo-dev] [PATCH 00/28] python-r1 suite EAPI 8 support/cleanup Michał Górny
` (15 preceding siblings ...)
2021-06-20 9:55 ` [gentoo-dev] [PATCH 16/28] python-r1.eclass: Update doc for -2/-3 arg removal Michał Górny
@ 2021-06-20 9:55 ` Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 18/28] python-r1.eclass: Remove obsolete QA hack for PYTHON_USEDEP Michał Górny
` (11 subsequent siblings)
28 siblings, 0 replies; 36+ messages in thread
From: Michał Górny @ 2021-06-20 9:55 UTC (permalink / raw
To: gentoo-dev; +Cc: Michał Górny
Signed-off-by: Michał Górny <mgorny@gentoo.org>
---
eclass/multibuild.eclass | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/eclass/multibuild.eclass b/eclass/multibuild.eclass
index 8f9612bc747e..37568ebf87cc 100644
--- a/eclass/multibuild.eclass
+++ b/eclass/multibuild.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: multibuild.eclass
@@ -6,7 +6,7 @@
# Michał Górny <mgorny@gentoo.org>
# @AUTHOR:
# Author: Michał Górny <mgorny@gentoo.org>
-# @SUPPORTED_EAPIS: 4 5 6 7
+# @SUPPORTED_EAPIS: 4 5 6 7 8
# @BLURB: A generic eclass for building multiple variants of packages.
# @DESCRIPTION:
# The multibuild eclass aims to provide a generic framework for building
@@ -14,10 +14,10 @@
# implementations).
case "${EAPI:-0}" in
- 0|1|2|3)
+ [0-3])
die "Unsupported EAPI=${EAPI:-0} (too old) for ${ECLASS}"
;;
- 4|5|6|7)
+ [4-8])
;;
*)
die "Unsupported EAPI=${EAPI} (unknown) for ${ECLASS}"
--
2.32.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [gentoo-dev] [PATCH 18/28] python-r1.eclass: Remove obsolete QA hack for PYTHON_USEDEP
2021-06-20 9:55 [gentoo-dev] [PATCH 00/28] python-r1 suite EAPI 8 support/cleanup Michał Górny
` (16 preceding siblings ...)
2021-06-20 9:55 ` [gentoo-dev] [PATCH 17/28] multibuild.eclass: Enable EAPI 8 Michał Górny
@ 2021-06-20 9:55 ` Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 19/28] python-r1.eclass: Ban python_gen_usedep in EAPI 8 Michał Górny
` (10 subsequent siblings)
28 siblings, 0 replies; 36+ messages in thread
From: Michał Górny @ 2021-06-20 9:55 UTC (permalink / raw
To: gentoo-dev; +Cc: Michał Górny
Remove the QA hack for PYTHON_USEDEP that originally prevented python-r1
ebuilds from wrongly depending on python-single-r1 packages. Since
the latter no longer define python_targets*, these dependencies are now
caught without any hacks.
Signed-off-by: Michał Górny <mgorny@gentoo.org>
---
eclass/python-r1.eclass | 18 ++++--------------
1 file changed, 4 insertions(+), 14 deletions(-)
diff --git a/eclass/python-r1.eclass b/eclass/python-r1.eclass
index 00555e19d605..539076b5f748 100644
--- a/eclass/python-r1.eclass
+++ b/eclass/python-r1.eclass
@@ -203,15 +203,6 @@ _python_set_globals() {
local flags=( "${_PYTHON_SUPPORTED_IMPLS[@]/#/python_targets_}" )
local optflags=${flags[@]/%/(-)?}
-
- # A nice QA trick here. Since a python-single-r1 package has to have
- # at least one PYTHON_SINGLE_TARGET enabled (REQUIRED_USE),
- # the following check will always fail on those packages. Therefore,
- # it should prevent developers from mistakenly depending on packages
- # not supporting multiple Python implementations.
-
- local flags_st=( "${_PYTHON_SUPPORTED_IMPLS[@]/#/-python_single_target_}" )
- optflags+=,${flags_st[@]/%/(-)}
local requse="|| ( ${flags[*]} )"
local usedep=${optflags// /,}
@@ -321,7 +312,6 @@ _python_gen_usedep() {
if _python_impl_matches "${impl}" "${@}"; then
matches+=(
"python_targets_${impl}(-)?"
- "-python_single_target_${impl}(-)"
)
fi
done
@@ -572,8 +562,8 @@ python_gen_impl_dep() {
# (
# dev-lang/python:3.8
# dev-python/foo[python_single_target_python3_8(-)]
-# || ( dev-python/bar[python_targets_python3_8(-),-python_single_target_python3_8(-)]
-# dev-python/baz[python_targets_python3_8(-),-python_single_target_python3_8(-)] )
+# || ( dev-python/bar[python_targets_python3_8(-)]
+# dev-python/baz[python_targets_python3_8(-)] )
# )
# )
# @CODE
@@ -587,7 +577,7 @@ python_gen_any_dep() {
_python_verify_patterns "${@}"
for i in "${_PYTHON_SUPPORTED_IMPLS[@]}"; do
if _python_impl_matches "${i}" "${@}"; then
- local PYTHON_USEDEP="python_targets_${i}(-),-python_single_target_${i}(-)"
+ local PYTHON_USEDEP="python_targets_${i}(-)"
local PYTHON_SINGLE_USEDEP="python_single_target_${i}(-)"
_python_export "${i}" PYTHON_PKG_DEP
@@ -799,7 +789,7 @@ python_setup() {
# first check if the interpreter is installed
python_is_installed "${impl}" || continue
# then run python_check_deps
- local PYTHON_USEDEP="python_targets_${impl}(-),-python_single_target_${impl}(-)"
+ local PYTHON_USEDEP="python_targets_${impl}(-)"
local PYTHON_SINGLE_USEDEP="python_single_target_${impl}(-)"
python_check_deps || continue
fi
--
2.32.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [gentoo-dev] [PATCH 19/28] python-r1.eclass: Ban python_gen_usedep in EAPI 8
2021-06-20 9:55 [gentoo-dev] [PATCH 00/28] python-r1 suite EAPI 8 support/cleanup Michał Górny
` (17 preceding siblings ...)
2021-06-20 9:55 ` [gentoo-dev] [PATCH 18/28] python-r1.eclass: Remove obsolete QA hack for PYTHON_USEDEP Michał Górny
@ 2021-06-20 9:55 ` Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 20/28] python-r1.eclass: Use 'dosym -r' " Michał Górny
` (9 subsequent siblings)
28 siblings, 0 replies; 36+ messages in thread
From: Michał Górny @ 2021-06-20 9:55 UTC (permalink / raw
To: gentoo-dev; +Cc: Michał Górny
Signed-off-by: Michał Górny <mgorny@gentoo.org>
---
eclass/python-r1.eclass | 1 +
1 file changed, 1 insertion(+)
diff --git a/eclass/python-r1.eclass b/eclass/python-r1.eclass
index 539076b5f748..d464d3ef8f8a 100644
--- a/eclass/python-r1.eclass
+++ b/eclass/python-r1.eclass
@@ -358,6 +358,7 @@ python_gen_usedep() {
if [[ ${EBUILD_PHASE} == setup ]]; then
eqawarn "python_gen_usedep() is deprecated. Please use python_gen_cond_dep instead."
fi
+ [[ ${EAPI} == [67] ]] || die "${FUNCNAME} banned in EAPI ${EAPI}"
_python_gen_usedep "${@}"
}
--
2.32.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [gentoo-dev] [PATCH 20/28] python-r1.eclass: Use 'dosym -r' in EAPI 8
2021-06-20 9:55 [gentoo-dev] [PATCH 00/28] python-r1 suite EAPI 8 support/cleanup Michał Górny
` (18 preceding siblings ...)
2021-06-20 9:55 ` [gentoo-dev] [PATCH 19/28] python-r1.eclass: Ban python_gen_usedep in EAPI 8 Michał Górny
@ 2021-06-20 9:55 ` Michał Górny
2021-06-20 13:22 ` [gentoo-dev] [PATCH v2] " Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 21/28] python-r1.eclass: Enable " Michał Górny
` (8 subsequent siblings)
28 siblings, 1 reply; 36+ messages in thread
From: Michał Górny @ 2021-06-20 9:55 UTC (permalink / raw
To: gentoo-dev; +Cc: Michał Górny
Signed-off-by: Michał Górny <mgorny@gentoo.org>
---
eclass/python-r1.eclass | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/eclass/python-r1.eclass b/eclass/python-r1.eclass
index d464d3ef8f8a..77709bfe7591 100644
--- a/eclass/python-r1.eclass
+++ b/eclass/python-r1.eclass
@@ -846,7 +846,13 @@ python_replicate_script() {
# install the wrappers
local f
for f; do
- _python_ln_rel "${ED%/}/usr/lib/python-exec/python-exec2" "${f}" || die
+ if [[ ${EAPI} != [67] ]]; then
+ dosym -r /usr/lib/python-exec/python-exec2 \
+ "${f#${ED}}"
+ else
+ _python_ln_rel "${ED%/}/usr/lib/python-exec/python-exec2" \
+ "${f}" || die
+ fi
done
}
--
2.32.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [gentoo-dev] [PATCH 21/28] python-r1.eclass: Enable EAPI 8
2021-06-20 9:55 [gentoo-dev] [PATCH 00/28] python-r1 suite EAPI 8 support/cleanup Michał Górny
` (19 preceding siblings ...)
2021-06-20 9:55 ` [gentoo-dev] [PATCH 20/28] python-r1.eclass: Use 'dosym -r' " Michał Górny
@ 2021-06-20 9:55 ` Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 22/28] distutils-r1.eclass: Refactor --install-scripts rewriting logic Michał Górny
` (7 subsequent siblings)
28 siblings, 0 replies; 36+ messages in thread
From: Michał Górny @ 2021-06-20 9:55 UTC (permalink / raw
To: gentoo-dev; +Cc: Michał Górny
Signed-off-by: Michał Górny <mgorny@gentoo.org>
---
eclass/python-r1.eclass | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/eclass/python-r1.eclass b/eclass/python-r1.eclass
index 77709bfe7591..372b4d671fc9 100644
--- a/eclass/python-r1.eclass
+++ b/eclass/python-r1.eclass
@@ -7,7 +7,7 @@
# @AUTHOR:
# Author: Michał Górny <mgorny@gentoo.org>
# Based on work of: Krzysztof Pawlik <nelchael@gentoo.org>
-# @SUPPORTED_EAPIS: 6 7
+# @SUPPORTED_EAPIS: 6 7 8
# @BLURB: A common, simple eclass for Python packages.
# @DESCRIPTION:
# A common eclass providing helper functions to build and install
@@ -33,7 +33,7 @@ case "${EAPI:-0}" in
[0-5])
die "Unsupported EAPI=${EAPI:-0} (too old) for ${ECLASS}"
;;
- [6-7])
+ [6-8])
;;
*)
die "Unsupported EAPI=${EAPI} (unknown) for ${ECLASS}"
--
2.32.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [gentoo-dev] [PATCH 22/28] distutils-r1.eclass: Refactor --install-scripts rewriting logic
2021-06-20 9:55 [gentoo-dev] [PATCH 00/28] python-r1 suite EAPI 8 support/cleanup Michał Górny
` (20 preceding siblings ...)
2021-06-20 9:55 ` [gentoo-dev] [PATCH 21/28] python-r1.eclass: Enable " Michał Górny
@ 2021-06-20 9:55 ` Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 23/28] distutils-r1.eclass: Replace mydistutilsargs with DISTUTILS_ARGS Michał Górny
` (6 subsequent siblings)
28 siblings, 0 replies; 36+ messages in thread
From: Michał Górny @ 2021-06-20 9:55 UTC (permalink / raw
To: gentoo-dev; +Cc: Michał Górny
Refactor the --install-scripts rewriting logic
in distutils-r1_python_install to be less horrid. Instead of using
variable indirection, just inline the mydistutilsargs logic
from esetup.py and rewrite the combined argument array.
Signed-off-by: Michał Górny <mgorny@gentoo.org>
---
eclass/distutils-r1.eclass | 43 +++++++++++++++++++-------------------
1 file changed, 21 insertions(+), 22 deletions(-)
diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass
index 53eee173a262..217f457d6bf3 100644
--- a/eclass/distutils-r1.eclass
+++ b/eclass/distutils-r1.eclass
@@ -836,7 +836,17 @@ distutils-r1_python_test() {
distutils-r1_python_install() {
debug-print-function ${FUNCNAME} "${@}"
- local args=( "${@}" )
+ local root=${D%/}/_${EPYTHON}
+ [[ ${DISTUTILS_SINGLE_IMPL} ]] && root=${D%/}
+
+ # inline mydistutilsargs logic from esetup.py in order to make
+ # argv overwriting easier
+ local args=(
+ "${mydistutilsargs[@]}"
+ install --skip-build --root="${root}" "${args[@]}"
+ "${@}"
+ )
+ local mydistutilsargs=()
# enable compilation for the install phase.
local -x PYTHONDONTWRITEBYTECODE=
@@ -852,42 +862,31 @@ distutils-r1_python_install() {
if [[ ! ${DISTUTILS_SINGLE_IMPL} ]]; then
# user may override --install-scripts
# note: this is poor but distutils argv parsing is dumb
- local mydistutilsargs=( "${mydistutilsargs[@]}" )
local scriptdir=${EPREFIX}/usr/bin
- # construct a list of mydistutilsargs[0] args[0] args[1]...
- local arg arg_vars
- [[ ${mydistutilsargs[@]} ]] && eval arg_vars+=(
- 'mydistutilsargs['{0..$(( ${#mydistutilsargs[@]} - 1 ))}']'
- )
- [[ ${args[@]} ]] && eval arg_vars+=(
- 'args['{0..$(( ${#args[@]} - 1 ))}']'
- )
-
- set -- "${arg_vars[@]}"
+ # rewrite all the arguments
+ set -- "${args[@]}"
+ args=()
while [[ ${@} ]]; do
- local arg_var=${1}
+ local a=${1}
shift
- local a=${!arg_var}
- case "${a}" in
+ case ${a} in
--install-scripts=*)
scriptdir=${a#--install-scripts=}
- unset "${arg_var}"
;;
--install-scripts)
- scriptdir=${!1}
- unset "${arg_var}" "${1}"
+ scriptdir=${1}
shift
;;
+ *)
+ args+=( "${a}" )
+ ;;
esac
done
fi
- local root=${D%/}/_${EPYTHON}
- [[ ${DISTUTILS_SINGLE_IMPL} ]] && root=${D%/}
-
- esetup.py install --skip-build --root="${root}" "${args[@]}"
+ esetup.py "${args[@]}"
local forbidden_package_names=(
examples test tests
--
2.32.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [gentoo-dev] [PATCH 23/28] distutils-r1.eclass: Replace mydistutilsargs with DISTUTILS_ARGS
2021-06-20 9:55 [gentoo-dev] [PATCH 00/28] python-r1 suite EAPI 8 support/cleanup Michał Górny
` (21 preceding siblings ...)
2021-06-20 9:55 ` [gentoo-dev] [PATCH 22/28] distutils-r1.eclass: Refactor --install-scripts rewriting logic Michał Górny
@ 2021-06-20 9:55 ` Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 24/28] distutils-r1.eclass: Require >=pyproject2setuppy-15 Michał Górny
` (5 subsequent siblings)
28 siblings, 0 replies; 36+ messages in thread
From: Michał Górny @ 2021-06-20 9:55 UTC (permalink / raw
To: gentoo-dev; +Cc: Michał Górny
Add a new correctly-cased DISTUTILS_ARGS variable that replaces
mydistutilsargs. Ban the latter in EAPI 8.
Signed-off-by: Michał Górny <mgorny@gentoo.org>
---
eclass/distutils-r1.eclass | 23 ++++++++++++++++-------
1 file changed, 16 insertions(+), 7 deletions(-)
diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass
index 217f457d6bf3..d7a476f48586 100644
--- a/eclass/distutils-r1.eclass
+++ b/eclass/distutils-r1.eclass
@@ -248,15 +248,16 @@ unset -f _distutils_set_globals
# }
# @CODE
-# @ECLASS-VARIABLE: mydistutilsargs
+# @ECLASS-VARIABLE: DISTUTILS_ARGS
# @DEFAULT_UNSET
# @DESCRIPTION:
-# An array containing options to be passed to setup.py.
+# An array containing options to be passed to setup.py. They are passed
+# before the default arguments, i.e. before the first command.
#
# Example:
# @CODE
# python_configure_all() {
-# mydistutilsargs=( --enable-my-hidden-option )
+# DISTUTILS_ARGS=( --enable-my-hidden-option )
# }
# @CODE
@@ -446,8 +447,9 @@ distutils_enable_tests() {
# (if ${EPYTHON} is set; fallback 'python' otherwise).
#
# setup.py will be passed the following, in order:
-# 1. ${mydistutilsargs[@]}
-# 2. additional arguments passed to the esetup.py function.
+# 1. ${DISTUTILS_ARGS[@]}
+# 2. ${mydistutilsargs[@]} (deprecated)
+# 3. additional arguments passed to the esetup.py function.
#
# Please note that setup.py will respect defaults (unless overridden
# via command-line options) from setup.cfg that is created
@@ -467,7 +469,12 @@ esetup.py() {
setup_py=( -m pyproject2setuppy.main )
fi
- set -- "${EPYTHON}" "${setup_py[@]}" "${mydistutilsargs[@]}" "${@}"
+ if [[ ${EAPI} != [67] && ${mydistutilsargs[@]} ]]; then
+ die "mydistutilsargs is banned in EAPI ${EAPI} (use DISTUTILS_ARGS)"
+ fi
+
+ set -- "${EPYTHON}" "${setup_py[@]}" "${DISTUTILS_ARGS[@]}" \
+ "${mydistutilsargs[@]}" "${@}"
echo "${@}" >&2
"${@}" || die -n
@@ -839,13 +846,15 @@ distutils-r1_python_install() {
local root=${D%/}/_${EPYTHON}
[[ ${DISTUTILS_SINGLE_IMPL} ]] && root=${D%/}
- # inline mydistutilsargs logic from esetup.py in order to make
+ # inline DISTUTILS_ARGS logic from esetup.py in order to make
# argv overwriting easier
local args=(
+ "${DISTUTILS_ARGS[@]}"
"${mydistutilsargs[@]}"
install --skip-build --root="${root}" "${args[@]}"
"${@}"
)
+ local DISTUTILS_ARGS=()
local mydistutilsargs=()
# enable compilation for the install phase.
--
2.32.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [gentoo-dev] [PATCH 24/28] distutils-r1.eclass: Require >=pyproject2setuppy-15
2021-06-20 9:55 [gentoo-dev] [PATCH 00/28] python-r1 suite EAPI 8 support/cleanup Michał Górny
` (22 preceding siblings ...)
2021-06-20 9:55 ` [gentoo-dev] [PATCH 23/28] distutils-r1.eclass: Replace mydistutilsargs with DISTUTILS_ARGS Michał Górny
@ 2021-06-20 9:55 ` Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 25/28] distutils-r1.eclass: Ban dift --via-home in EAPI 8 Michał Górny
` (4 subsequent siblings)
28 siblings, 0 replies; 36+ messages in thread
From: Michał Górny @ 2021-06-20 9:55 UTC (permalink / raw
To: gentoo-dev; +Cc: Michał Górny
Signed-off-by: Michał Górny <mgorny@gentoo.org>
---
eclass/distutils-r1.eclass | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass
index d7a476f48586..1446d2cda749 100644
--- a/eclass/distutils-r1.eclass
+++ b/eclass/distutils-r1.eclass
@@ -129,7 +129,7 @@ _distutils_set_globals() {
rdep+=" ${setuptools_dep}"
;;
pyproject.toml)
- bdep+=' dev-python/pyproject2setuppy[${PYTHON_USEDEP}]'
+ bdep+=' >=dev-python/pyproject2setuppy-15[${PYTHON_USEDEP}]'
;;
*)
die "Invalid DISTUTILS_USE_SETUPTOOLS=${DISTUTILS_USE_SETUPTOOLS}"
@@ -465,8 +465,7 @@ esetup.py() {
local setup_py=( setup.py )
if [[ ${DISTUTILS_USE_SETUPTOOLS} == pyproject.toml ]]; then
- # TODO: remove '.main' when we require v10
- setup_py=( -m pyproject2setuppy.main )
+ setup_py=( -m pyproject2setuppy )
fi
if [[ ${EAPI} != [67] && ${mydistutilsargs[@]} ]]; then
--
2.32.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [gentoo-dev] [PATCH 25/28] distutils-r1.eclass: Ban dift --via-home in EAPI 8
2021-06-20 9:55 [gentoo-dev] [PATCH 00/28] python-r1 suite EAPI 8 support/cleanup Michał Górny
` (23 preceding siblings ...)
2021-06-20 9:55 ` [gentoo-dev] [PATCH 24/28] distutils-r1.eclass: Require >=pyproject2setuppy-15 Michał Górny
@ 2021-06-20 9:55 ` Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 26/28] distutils-r1.eclass: Remove old FreeBSD compat hack Michał Górny
` (3 subsequent siblings)
28 siblings, 0 replies; 36+ messages in thread
From: Michał Górny @ 2021-06-20 9:55 UTC (permalink / raw
To: gentoo-dev; +Cc: Michał Górny
Signed-off-by: Michał Górny <mgorny@gentoo.org>
---
eclass/distutils-r1.eclass | 1 +
1 file changed, 1 insertion(+)
diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass
index 1446d2cda749..e74a68007179 100644
--- a/eclass/distutils-r1.eclass
+++ b/eclass/distutils-r1.eclass
@@ -532,6 +532,7 @@ distutils_install_for_testing() {
local install_method=root
case ${1} in
--via-home)
+ [[ ${EAPI} == [67] ]] || die "${*} is banned in EAPI ${EAPI}"
install_method=home
shift
;;
--
2.32.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [gentoo-dev] [PATCH 26/28] distutils-r1.eclass: Remove old FreeBSD compat hack
2021-06-20 9:55 [gentoo-dev] [PATCH 00/28] python-r1 suite EAPI 8 support/cleanup Michał Górny
` (24 preceding siblings ...)
2021-06-20 9:55 ` [gentoo-dev] [PATCH 25/28] distutils-r1.eclass: Ban dift --via-home in EAPI 8 Michał Górny
@ 2021-06-20 9:55 ` Michał Górny
2021-06-20 13:15 ` Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 27/28] distutils-r1.eclass: Use 'dosym -r' in EAPI 8 Michał Górny
` (2 subsequent siblings)
28 siblings, 1 reply; 36+ messages in thread
From: Michał Górny @ 2021-06-20 9:55 UTC (permalink / raw
To: gentoo-dev; +Cc: Michał Górny
Signed-off-by: Michał Górny <mgorny@gentoo.org>
---
eclass/distutils-r1.eclass | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass
index e74a68007179..a46b71431e48 100644
--- a/eclass/distutils-r1.eclass
+++ b/eclass/distutils-r1.eclass
@@ -711,8 +711,8 @@ _distutils-r1_create_setup_cfg() {
# egg-info.
_distutils-r1_copy_egg_info() {
mkdir -p "${BUILD_DIR}" || die
- # stupid freebsd can't do 'cp -t ${BUILD_DIR} {} +'
- find -name '*.egg-info' -type d -exec cp -R -p {} "${BUILD_DIR}"/ ';' || die
+ find -name '*.egg-info' -type d \
+ -exec cp -R -p -t "${BUILD_DIR}"/ {} + || die
}
# @FUNCTION: distutils-r1_python_compile
--
2.32.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [gentoo-dev] [PATCH 27/28] distutils-r1.eclass: Use 'dosym -r' in EAPI 8
2021-06-20 9:55 [gentoo-dev] [PATCH 00/28] python-r1 suite EAPI 8 support/cleanup Michał Górny
` (25 preceding siblings ...)
2021-06-20 9:55 ` [gentoo-dev] [PATCH 26/28] distutils-r1.eclass: Remove old FreeBSD compat hack Michał Górny
@ 2021-06-20 9:55 ` Michał Górny
2021-06-20 13:23 ` [gentoo-dev] [PATCH v2] " Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 28/28] distutils-r1.eclass: Enable " Michał Górny
2021-06-20 13:24 ` [gentoo-dev] [PATCH v2 28/29] python-utils-r1.eclass: Remove _python_ln_rel Michał Górny
28 siblings, 1 reply; 36+ messages in thread
From: Michał Górny @ 2021-06-20 9:55 UTC (permalink / raw
To: gentoo-dev; +Cc: Michał Górny
Signed-off-by: Michał Górny <mgorny@gentoo.org>
---
eclass/distutils-r1.eclass | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)
diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass
index a46b71431e48..314604e62660 100644
--- a/eclass/distutils-r1.eclass
+++ b/eclass/distutils-r1.eclass
@@ -776,8 +776,14 @@ _distutils-r1_wrap_scripts() {
local basename=${f##*/}
debug-print "${FUNCNAME}: installing wrapper at ${bindir}/${basename}"
- _python_ln_rel "${path}${EPREFIX}"/usr/lib/python-exec/python-exec2 \
- "${path}${bindir}/${basename}" || die
+ if [[ ${EAPI} != [67] ]]; then
+ dosym -r "${path#${D}}"/usr/lib/python-exec/python-exec2 \
+ "${path#${D}}${bindir#${EPREFIX}}/${basename}"
+ else
+ _python_ln_rel \
+ "${path}${EPREFIX}"/usr/lib/python-exec/python-exec2 \
+ "${path}${bindir}/${basename}" || die
+ fi
done
for f in "${non_python_files[@]}"; do
--
2.32.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [gentoo-dev] [PATCH 28/28] distutils-r1.eclass: Enable EAPI 8
2021-06-20 9:55 [gentoo-dev] [PATCH 00/28] python-r1 suite EAPI 8 support/cleanup Michał Górny
` (26 preceding siblings ...)
2021-06-20 9:55 ` [gentoo-dev] [PATCH 27/28] distutils-r1.eclass: Use 'dosym -r' in EAPI 8 Michał Górny
@ 2021-06-20 9:55 ` Michał Górny
2021-06-20 13:24 ` [gentoo-dev] [PATCH v2 28/29] python-utils-r1.eclass: Remove _python_ln_rel Michał Górny
28 siblings, 0 replies; 36+ messages in thread
From: Michał Górny @ 2021-06-20 9:55 UTC (permalink / raw
To: gentoo-dev; +Cc: Michał Górny
Signed-off-by: Michał Górny <mgorny@gentoo.org>
---
eclass/distutils-r1.eclass | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass
index 314604e62660..0af1c85149f2 100644
--- a/eclass/distutils-r1.eclass
+++ b/eclass/distutils-r1.eclass
@@ -7,7 +7,7 @@
# @AUTHOR:
# Author: Michał Górny <mgorny@gentoo.org>
# Based on the work of: Krzysztof Pawlik <nelchael@gentoo.org>
-# @SUPPORTED_EAPIS: 6 7
+# @SUPPORTED_EAPIS: 6 7 8
# @BLURB: A simple eclass to build Python packages using distutils.
# @DESCRIPTION:
# A simple eclass providing functions to build Python packages using
@@ -47,7 +47,7 @@ case "${EAPI:-0}" in
[0-5])
die "Unsupported EAPI=${EAPI:-0} (too old) for ${ECLASS}"
;;
- [6-7])
+ [6-8])
;;
*)
die "Unsupported EAPI=${EAPI} (unknown) for ${ECLASS}"
--
2.32.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* Re: [gentoo-dev] [PATCH 02/28] python-utils-r1.eclass: Use 'dosym -r' in EAPI 8
2021-06-20 9:55 ` [gentoo-dev] [PATCH 02/28] python-utils-r1.eclass: Use 'dosym -r' " Michał Górny
@ 2021-06-20 12:48 ` Ulrich Mueller
2021-06-20 13:01 ` Michał Górny
2021-06-20 13:21 ` [gentoo-dev] [PATCH v2] " Michał Górny
1 sibling, 1 reply; 36+ messages in thread
From: Ulrich Mueller @ 2021-06-20 12:48 UTC (permalink / raw
To: Michał Górny; +Cc: gentoo-dev
[-- Attachment #1: Type: text/plain, Size: 758 bytes --]
>>>>> On Sun, 20 Jun 2021, Michał Górny wrote:
> @@ -712,8 +714,13 @@ python_newexe() {
> )
>
> # install the wrapper
> - _python_ln_rel "${ED%/}"/usr/lib/python-exec/python-exec2 \
> - "${ED%/}/${wrapd}/${newfn}" || die
> + if [[ ${EAPI} != [67] ]]; then
> + dosym -r /usr/lib/python-exec/python-exec2 \
> + "${wrapd}/${newfn}"
> + else
> + _python_ln_rel "${ED%/}"/usr/lib/python-exec/python-exec2 \
> + "${ED%/}/${wrapd}/${newfn}" || die
> + fi
Wouldn't it be cleaner to inherit eapi8-dosym.eclass in EAPIs 6 and 7
instead? Then dosym -r could be used unconditionally, and function
_python_ln_rel could be dropped altogether?
Same for python-r1.eclass (patch 20/28) and distutils-r1.eclass
(patch 27/28).
Ulrich
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 507 bytes --]
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [gentoo-dev] [PATCH 02/28] python-utils-r1.eclass: Use 'dosym -r' in EAPI 8
2021-06-20 12:48 ` Ulrich Mueller
@ 2021-06-20 13:01 ` Michał Górny
0 siblings, 0 replies; 36+ messages in thread
From: Michał Górny @ 2021-06-20 13:01 UTC (permalink / raw
To: gentoo-dev
On Sun, 2021-06-20 at 14:48 +0200, Ulrich Mueller wrote:
> > > > > > On Sun, 20 Jun 2021, Michał Górny wrote:
>
> > @@ -712,8 +714,13 @@ python_newexe() {
> > )
> >
> > # install the wrapper
> > - _python_ln_rel "${ED%/}"/usr/lib/python-exec/python-exec2 \
> > - "${ED%/}/${wrapd}/${newfn}" || die
> > + if [[ ${EAPI} != [67] ]]; then
> > + dosym -r /usr/lib/python-exec/python-exec2 \
> > + "${wrapd}/${newfn}"
> > + else
> > + _python_ln_rel "${ED%/}"/usr/lib/python-
> > exec/python-exec2 \
> > + "${ED%/}/${wrapd}/${newfn}" || die
> > + fi
>
> Wouldn't it be cleaner to inherit eapi8-dosym.eclass in EAPIs 6 and 7
> instead? Then dosym -r could be used unconditionally, and function
> _python_ln_rel could be dropped altogether?
>
> Same for python-r1.eclass (patch 20/28) and distutils-r1.eclass
> (patch 27/28).
Hmm, I suppose that makes sense. Thanks!
--
Best regards,
Michał Górny
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [gentoo-dev] [PATCH 26/28] distutils-r1.eclass: Remove old FreeBSD compat hack
2021-06-20 9:55 ` [gentoo-dev] [PATCH 26/28] distutils-r1.eclass: Remove old FreeBSD compat hack Michał Górny
@ 2021-06-20 13:15 ` Michał Górny
0 siblings, 0 replies; 36+ messages in thread
From: Michał Górny @ 2021-06-20 13:15 UTC (permalink / raw
To: gentoo-dev
On Sun, 2021-06-20 at 11:55 +0200, Michał Górny wrote:
> Signed-off-by: Michał Górny <mgorny@gentoo.org>
> ---
> eclass/distutils-r1.eclass | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass
> index e74a68007179..a46b71431e48 100644
> --- a/eclass/distutils-r1.eclass
> +++ b/eclass/distutils-r1.eclass
> @@ -711,8 +711,8 @@ _distutils-r1_create_setup_cfg() {
> # egg-info.
> _distutils-r1_copy_egg_info() {
> mkdir -p "${BUILD_DIR}" || die
> - # stupid freebsd can't do 'cp -t ${BUILD_DIR} {} +'
> - find -name '*.egg-info' -type d -exec cp -R -p {} "${BUILD_DIR}"/ ';' || die
> + find -name '*.egg-info' -type d \
> + -exec cp -R -p -t "${BUILD_DIR}"/ {} + || die
> }
>
> # @FUNCTION: distutils-r1_python_compile
Retracting this one for now, as it causes failures due to 'is the same
file' copy errors with in-source builds. Need to revisit it later
and fix the underlying issue properly.
--
Best regards,
Michał Górny
^ permalink raw reply [flat|nested] 36+ messages in thread
* [gentoo-dev] [PATCH v2] python-utils-r1.eclass: Use 'dosym -r' in EAPI 8
2021-06-20 9:55 ` [gentoo-dev] [PATCH 02/28] python-utils-r1.eclass: Use 'dosym -r' " Michał Górny
2021-06-20 12:48 ` Ulrich Mueller
@ 2021-06-20 13:21 ` Michał Górny
1 sibling, 0 replies; 36+ messages in thread
From: Michał Górny @ 2021-06-20 13:21 UTC (permalink / raw
To: gentoo-dev; +Cc: Michał Górny
Signed-off-by: Michał Górny <mgorny@gentoo.org>
---
eclass/python-utils-r1.eclass | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass
index bab4be0f521d..4de550aa6a63 100644
--- a/eclass/python-utils-r1.eclass
+++ b/eclass/python-utils-r1.eclass
@@ -34,6 +34,7 @@ fi
if [[ ! ${_PYTHON_UTILS_R1} ]]; then
+[[ ${EAPI} == [67] ]] && inherit eapi8-dosym
inherit toolchain-funcs
# @ECLASS-VARIABLE: _PYTHON_ALL_IMPLS
@@ -712,8 +713,9 @@ python_newexe() {
)
# install the wrapper
- _python_ln_rel "${ED%/}"/usr/lib/python-exec/python-exec2 \
- "${ED%/}/${wrapd}/${newfn}" || die
+ local dosym=dosym
+ [[ ${EAPI} == [67] ]] && dosym=dosym8
+ "${dosym}" -r /usr/lib/python-exec/python-exec2 "${wrapd}/${newfn}"
# don't use this at home, just call python_doscript() instead
if [[ ${_PYTHON_REWRITE_SHEBANG} ]]; then
--
2.32.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [gentoo-dev] [PATCH v2] python-r1.eclass: Use 'dosym -r' in EAPI 8
2021-06-20 9:55 ` [gentoo-dev] [PATCH 20/28] python-r1.eclass: Use 'dosym -r' " Michał Górny
@ 2021-06-20 13:22 ` Michał Górny
0 siblings, 0 replies; 36+ messages in thread
From: Michał Górny @ 2021-06-20 13:22 UTC (permalink / raw
To: gentoo-dev; +Cc: Michał Górny
Signed-off-by: Michał Górny <mgorny@gentoo.org>
---
eclass/python-r1.eclass | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/eclass/python-r1.eclass b/eclass/python-r1.eclass
index d464d3ef8f8a..08d3b744af81 100644
--- a/eclass/python-r1.eclass
+++ b/eclass/python-r1.eclass
@@ -846,7 +846,9 @@ python_replicate_script() {
# install the wrappers
local f
for f; do
- _python_ln_rel "${ED%/}/usr/lib/python-exec/python-exec2" "${f}" || die
+ local dosym=dosym
+ [[ ${EAPI} == [67] ]] && dosym=dosym8
+ "${dosym}" -r /usr/lib/python-exec/python-exec2 "${f#${ED}}"
done
}
--
2.32.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [gentoo-dev] [PATCH v2] distutils-r1.eclass: Use 'dosym -r' in EAPI 8
2021-06-20 9:55 ` [gentoo-dev] [PATCH 27/28] distutils-r1.eclass: Use 'dosym -r' in EAPI 8 Michał Górny
@ 2021-06-20 13:23 ` Michał Górny
0 siblings, 0 replies; 36+ messages in thread
From: Michał Górny @ 2021-06-20 13:23 UTC (permalink / raw
To: gentoo-dev; +Cc: Michał Górny
Signed-off-by: Michał Górny <mgorny@gentoo.org>
---
eclass/distutils-r1.eclass | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass
index e74a68007179..7501f6540bb6 100644
--- a/eclass/distutils-r1.eclass
+++ b/eclass/distutils-r1.eclass
@@ -776,8 +776,10 @@ _distutils-r1_wrap_scripts() {
local basename=${f##*/}
debug-print "${FUNCNAME}: installing wrapper at ${bindir}/${basename}"
- _python_ln_rel "${path}${EPREFIX}"/usr/lib/python-exec/python-exec2 \
- "${path}${bindir}/${basename}" || die
+ local dosym=dosym
+ [[ ${EAPI} == [67] ]] && dosym=dosym8
+ "${dosym}" -r "${path#${D}}"/usr/lib/python-exec/python-exec2 \
+ "${path#${D}}${bindir#${EPREFIX}}/${basename}"
done
for f in "${non_python_files[@]}"; do
--
2.32.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [gentoo-dev] [PATCH v2 28/29] python-utils-r1.eclass: Remove _python_ln_rel
2021-06-20 9:55 [gentoo-dev] [PATCH 00/28] python-r1 suite EAPI 8 support/cleanup Michał Górny
` (27 preceding siblings ...)
2021-06-20 9:55 ` [gentoo-dev] [PATCH 28/28] distutils-r1.eclass: Enable " Michał Górny
@ 2021-06-20 13:24 ` Michał Górny
28 siblings, 0 replies; 36+ messages in thread
From: Michał Górny @ 2021-06-20 13:24 UTC (permalink / raw
To: gentoo-dev; +Cc: Michał Górny
Signed-off-by: Michał Górny <mgorny@gentoo.org>
---
eclass/python-utils-r1.eclass | 40 -----------------------------------
1 file changed, 40 deletions(-)
diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass
index 9c8b683a337f..d43311762f9f 100644
--- a/eclass/python-utils-r1.eclass
+++ b/eclass/python-utils-r1.eclass
@@ -549,46 +549,6 @@ python_get_scriptdir() {
echo "${PYTHON_SCRIPTDIR}"
}
-# @FUNCTION: _python_ln_rel
-# @USAGE: <from> <to>
-# @INTERNAL
-# @DESCRIPTION:
-# Create a relative symlink.
-_python_ln_rel() {
- debug-print-function ${FUNCNAME} "${@}"
-
- local target=${1}
- local symname=${2}
-
- local tgpath=${target%/*}/
- local sympath=${symname%/*}/
- local rel_target=
-
- while [[ ${sympath} ]]; do
- local tgseg= symseg=
-
- while [[ ! ${tgseg} && ${tgpath} ]]; do
- tgseg=${tgpath%%/*}
- tgpath=${tgpath#${tgseg}/}
- done
-
- while [[ ! ${symseg} && ${sympath} ]]; do
- symseg=${sympath%%/*}
- sympath=${sympath#${symseg}/}
- done
-
- if [[ ${tgseg} != ${symseg} ]]; then
- rel_target=../${rel_target}${tgseg:+${tgseg}/}
- fi
- done
- rel_target+=${tgpath}${target##*/}
-
- debug-print "${FUNCNAME}: ${symname} -> ${target}"
- debug-print "${FUNCNAME}: rel_target = ${rel_target}"
-
- ln -fs "${rel_target}" "${symname}"
-}
-
# @FUNCTION: python_optimize
# @USAGE: [<directory>...]
# @DESCRIPTION:
--
2.32.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
end of thread, other threads:[~2021-06-20 13:24 UTC | newest]
Thread overview: 36+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-06-20 9:55 [gentoo-dev] [PATCH 00/28] python-r1 suite EAPI 8 support/cleanup Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 01/28] python-utils-r1.eclass: Ban private API in EAPI 8 Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 02/28] python-utils-r1.eclass: Use 'dosym -r' " Michał Górny
2021-06-20 12:48 ` Ulrich Mueller
2021-06-20 13:01 ` Michał Górny
2021-06-20 13:21 ` [gentoo-dev] [PATCH v2] " Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 03/28] python-utils-r1.eclass: Remove python_optimize support for py<3.5 Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 04/28] python-utils-r1.eclass: Rename *into vars to use underscores Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 05/28] python-utils-r1.eclass: Eliminate local python_is_python3 uses Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 06/28] python-utils-r1.eclass: Ban py2 deps in python_gen* in EAPI 8 Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 07/28] python-utils-r1.eclass: Deprecated and EAPI8-ban python_is_python3 Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 08/28] python-utils-r1.eclass: Fix python_fix_shebang for py3.10+ Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 09/28] python-utils-r1.eclass: Enable EAPI 8 Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 10/28] python-any-r1.eclass: Remove obsolete eselect-python use Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 11/28] python-any-r1.eclass: Remove obsolete PYTHON_USEDEP single-r1 hack Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 12/28] python-any-r1.eclass: Enable EAPI 8 Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 13/28] python-single-r1.eclass: Update doc for -2/-3 arg removal Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 14/28] python-single-r1.eclass: Ban PYTHON_MULTI_USEDEP in EAPI 8 Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 15/28] python-single-r1.eclass: Enable " Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 16/28] python-r1.eclass: Update doc for -2/-3 arg removal Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 17/28] multibuild.eclass: Enable EAPI 8 Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 18/28] python-r1.eclass: Remove obsolete QA hack for PYTHON_USEDEP Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 19/28] python-r1.eclass: Ban python_gen_usedep in EAPI 8 Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 20/28] python-r1.eclass: Use 'dosym -r' " Michał Górny
2021-06-20 13:22 ` [gentoo-dev] [PATCH v2] " Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 21/28] python-r1.eclass: Enable " Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 22/28] distutils-r1.eclass: Refactor --install-scripts rewriting logic Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 23/28] distutils-r1.eclass: Replace mydistutilsargs with DISTUTILS_ARGS Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 24/28] distutils-r1.eclass: Require >=pyproject2setuppy-15 Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 25/28] distutils-r1.eclass: Ban dift --via-home in EAPI 8 Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 26/28] distutils-r1.eclass: Remove old FreeBSD compat hack Michał Górny
2021-06-20 13:15 ` Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 27/28] distutils-r1.eclass: Use 'dosym -r' in EAPI 8 Michał Górny
2021-06-20 13:23 ` [gentoo-dev] [PATCH v2] " Michał Górny
2021-06-20 9:55 ` [gentoo-dev] [PATCH 28/28] distutils-r1.eclass: Enable " Michał Górny
2021-06-20 13:24 ` [gentoo-dev] [PATCH v2 28/29] python-utils-r1.eclass: Remove _python_ln_rel Michał Górny
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox