public inbox for gentoo-dev@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-dev] [PATCH 0/7] distutils-r1.eclass: mesonpy option passing support + periodic cleanup
@ 2022-11-25 17:05 Michał Górny
  2022-11-25 17:05 ` [gentoo-dev] [PATCH 1/7] ninja-utils.eclass: Split get_NINJAOPTS out Michał Górny
                   ` (6 more replies)
  0 siblings, 7 replies; 8+ messages in thread
From: Michał Górny @ 2022-11-25 17:05 UTC (permalink / raw
  To: gentoo-dev; +Cc: Michał Górny

Hi,

The highlight of this patchset is support for passing options that was
introduced in >=dev-python/meson-python-0.11.0.

For transition, the eclass only uses option passing if 0.11.0 or newer
is installed.  Ebuilds that need to pass DISTUTILS_ARGS (i.e. scipy)
need to explicitly BDEPEND on it.  Once this version goes stable, we'll
update the minimal version in eclass' BDEPEND and make it unconditional.

We're also adding a new get_NINJAOPTS function that returns appropriate
options to pass to ninja, separately from eninja helper.

Finally, the usual cleanup: bumping minimal versions.  I've also noticed
that we didn't clean up <dev-python/gpep517-9 support when bumping
the dep.

The new ebuild for dev-python/scipy is included.  See the *9999 part
of the patches for the changes.

-- 
Best regards,
Michał Górny


Michał Górny (7):
  ninja-utils.eclass: Split get_NINJAOPTS out
  distutils-r1.eclass: Pass options to meson-python backend
  dev-python/scipy: Pass -Dblas, -Dlapack via DISTUTILS_ARGS
  distutils-r1.eclass: Bump min dep versions to newest stable
  distutils-r1.eclass: Print versions of common hatch plugins
  distutils-r1.eclass: Remove support for gpep517 < 9
  python-utils-r1.eclass: Bump min Python versions

 dev-python/scipy/scipy-1.9.3-r1.ebuild | 109 ++++++++++++++++++++++
 dev-python/scipy/scipy-1.9.9999.ebuild |  11 ++-
 eclass/distutils-r1.eclass             | 119 +++++++++++++------------
 eclass/ninja-utils.eclass              |  15 +++-
 eclass/python-utils-r1.eclass          |  14 +--
 5 files changed, 196 insertions(+), 72 deletions(-)
 create mode 100644 dev-python/scipy/scipy-1.9.3-r1.ebuild

-- 
2.38.1



^ permalink raw reply	[flat|nested] 8+ messages in thread

* [gentoo-dev] [PATCH 1/7] ninja-utils.eclass: Split get_NINJAOPTS out
  2022-11-25 17:05 [gentoo-dev] [PATCH 0/7] distutils-r1.eclass: mesonpy option passing support + periodic cleanup Michał Górny
@ 2022-11-25 17:05 ` Michał Górny
  2022-11-25 17:05 ` [gentoo-dev] [PATCH 2/7] distutils-r1.eclass: Pass options to meson-python backend Michał Górny
                   ` (5 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: Michał Górny @ 2022-11-25 17:05 UTC (permalink / raw
  To: gentoo-dev; +Cc: Michał Górny

Signed-off-by: Michał Górny <mgorny@gentoo.org>
---
 eclass/ninja-utils.eclass | 15 +++++++++++----
 1 file changed, 11 insertions(+), 4 deletions(-)

diff --git a/eclass/ninja-utils.eclass b/eclass/ninja-utils.eclass
index 0dffd2eb86ff..9be502fa8ad9 100644
--- a/eclass/ninja-utils.eclass
+++ b/eclass/ninja-utils.eclass
@@ -62,6 +62,16 @@ case "${NINJA}" in
 	;;
 esac
 
+# @FUNCTION: get_NINJAOPTS
+# @DESCRIPTION:
+# Get the value of NINJAOPTS, inferring them from MAKEOPTS if unset.
+get_NINJAOPTS() {
+	if [[ -z ${NINJAOPTS+set} ]]; then
+		NINJAOPTS="-j$(makeopts_jobs "${MAKEOPTS}" 999) -l$(makeopts_loadavg "${MAKEOPTS}" 0)"
+	fi
+	echo "${NINJAOPTS}"
+}
+
 # @FUNCTION: eninja
 # @USAGE: [<args>...]
 # @DESCRIPTION:
@@ -72,11 +82,8 @@ eninja() {
 	local nonfatal_args=()
 	[[ ${EAPI} != 5 ]] && nonfatal_args+=( -n )
 
-	if [[ -z ${NINJAOPTS+set} ]]; then
-		NINJAOPTS="-j$(makeopts_jobs "${MAKEOPTS}" 999) -l$(makeopts_loadavg "${MAKEOPTS}" 0)"
-	fi
 	[[ -n "${NINJA_DEPEND}" ]] || ewarn "Unknown value '${NINJA}' for \${NINJA}"
-	set -- "${NINJA}" -v ${NINJAOPTS} "$@"
+	set -- "${NINJA}" -v $(get_NINJAOPTS) "$@"
 	echo "$@" >&2
 	"$@" || die "${nonfatal_args[@]}" "${*} failed"
 }
-- 
2.38.1



^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [gentoo-dev] [PATCH 2/7] distutils-r1.eclass: Pass options to meson-python backend
  2022-11-25 17:05 [gentoo-dev] [PATCH 0/7] distutils-r1.eclass: mesonpy option passing support + periodic cleanup Michał Górny
  2022-11-25 17:05 ` [gentoo-dev] [PATCH 1/7] ninja-utils.eclass: Split get_NINJAOPTS out Michał Górny
@ 2022-11-25 17:05 ` Michał Górny
  2022-11-25 17:05 ` [gentoo-dev] [PATCH 3/7] dev-python/scipy: Pass -Dblas, -Dlapack via DISTUTILS_ARGS Michał Górny
                   ` (4 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: Michał Górny @ 2022-11-25 17:05 UTC (permalink / raw
  To: gentoo-dev; +Cc: Michał Górny

Signed-off-by: Michał Górny <mgorny@gentoo.org>
---
 eclass/distutils-r1.eclass | 50 +++++++++++++++++++++++++++++---------
 1 file changed, 39 insertions(+), 11 deletions(-)

diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass
index 4cc117dfbd54..3ac06a458483 100644
--- a/eclass/distutils-r1.eclass
+++ b/eclass/distutils-r1.eclass
@@ -178,7 +178,7 @@ esac
 if [[ ! ${_DISTUTILS_R1} ]]; then
 
 [[ ${EAPI} == 6 ]] && inherit eutils xdg-utils
-inherit multibuild multiprocessing toolchain-funcs
+inherit multibuild multiprocessing ninja-utils toolchain-funcs
 
 if [[ ! ${DISTUTILS_SINGLE_IMPL} ]]; then
 	inherit python-r1
@@ -1319,9 +1319,34 @@ distutils_pep517_install() {
 	fi
 
 	local config_settings=
-	if [[ -n ${DISTUTILS_ARGS[@]} ]]; then
-		case ${DISTUTILS_USE_PEP517} in
-			setuptools)
+	case ${DISTUTILS_USE_PEP517} in
+		meson-python)
+			# TODO: remove the condition once we BDEP on >=0.11
+			if has_version -b ">=dev-python/meson-python-0.11"; then
+				local -x NINJAOPTS=$(get_NINJAOPTS)
+				config_settings=$(
+					"${EPYTHON}" - "${DISTUTILS_ARGS[@]}" <<-EOF || die
+						import json
+						import os
+						import shlex
+						import sys
+
+						ninjaopts = shlex.split(os.environ["NINJAOPTS"])
+						print(json.dumps({
+							"setup-args": sys.argv[1:],
+							"compile-args": [
+								"-v",
+								f"--ninja-args={ninjaopts!r}",
+							],
+						}))
+					EOF
+				)
+			elif [[ -n ${DISTUTILS_ARGS[@]} ]]; then
+				die "DISTUTILS_ARGS requires >=dev-python/meson-python-0.11 (missing BDEP?)"
+			fi
+			;;
+		setuptools)
+			if [[ -n ${DISTUTILS_ARGS[@]} ]]; then
 				config_settings=$(
 					"${EPYTHON}" - "${DISTUTILS_ARGS[@]}" <<-EOF || die
 						import json
@@ -1329,8 +1354,10 @@ distutils_pep517_install() {
 						print(json.dumps({"--global-option": sys.argv[1:]}))
 					EOF
 				)
-				;;
-			sip)
+			fi
+			;;
+		sip)
+			if [[ -n ${DISTUTILS_ARGS[@]} ]]; then
 				# NB: for practical reasons, we support only --foo=bar,
 				# not --foo bar
 				local arg
@@ -1353,12 +1380,13 @@ distutils_pep517_install() {
 						print(json.dumps(args))
 					EOF
 				)
-				;;
-			*)
+			fi
+			;;
+		*)
+			[[ -n ${DISTUTILS_ARGS[@]} ]] &&
 				die "DISTUTILS_ARGS are not supported by ${DISTUTILS_USE_PEP517}"
-				;;
-		esac
-	fi
+			;;
+	esac
 
 	local build_backend=$(_distutils-r1_get_backend)
 	einfo "  Building the wheel for ${PWD#${WORKDIR}/} via ${build_backend}"
-- 
2.38.1



^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [gentoo-dev] [PATCH 3/7] dev-python/scipy: Pass -Dblas, -Dlapack via DISTUTILS_ARGS
  2022-11-25 17:05 [gentoo-dev] [PATCH 0/7] distutils-r1.eclass: mesonpy option passing support + periodic cleanup Michał Górny
  2022-11-25 17:05 ` [gentoo-dev] [PATCH 1/7] ninja-utils.eclass: Split get_NINJAOPTS out Michał Górny
  2022-11-25 17:05 ` [gentoo-dev] [PATCH 2/7] distutils-r1.eclass: Pass options to meson-python backend Michał Górny
@ 2022-11-25 17:05 ` Michał Górny
  2022-11-25 17:05 ` [gentoo-dev] [PATCH 4/7] distutils-r1.eclass: Bump min dep versions to newest stable Michał Górny
                   ` (3 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: Michał Górny @ 2022-11-25 17:05 UTC (permalink / raw
  To: gentoo-dev; +Cc: Michał Górny

Signed-off-by: Michał Górny <mgorny@gentoo.org>
---
 dev-python/scipy/scipy-1.9.3-r1.ebuild | 109 +++++++++++++++++++++++++
 dev-python/scipy/scipy-1.9.9999.ebuild |  11 ++-
 2 files changed, 114 insertions(+), 6 deletions(-)
 create mode 100644 dev-python/scipy/scipy-1.9.3-r1.ebuild

diff --git a/dev-python/scipy/scipy-1.9.3-r1.ebuild b/dev-python/scipy/scipy-1.9.3-r1.ebuild
new file mode 100644
index 000000000000..7c62ef8bb35f
--- /dev/null
+++ b/dev-python/scipy/scipy-1.9.3-r1.ebuild
@@ -0,0 +1,109 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+FORTRAN_NEEDED=fortran
+DISTUTILS_USE_PEP517=meson-python
+PYTHON_COMPAT=( python3_{8..11} )
+PYTHON_REQ_USE="threads(+)"
+
+inherit fortran-2 distutils-r1 multiprocessing
+
+DESCRIPTION="Scientific algorithms library for Python"
+HOMEPAGE="
+	https://scipy.org/
+	https://github.com/scipy/scipy/
+	https://pypi.org/project/scipy/
+"
+
+if [[ ${PV} == *9999* ]] ; then
+	inherit git-r3
+
+	# Need submodules, so git for now.
+	EGIT_REPO_URI="https://github.com/scipy/scipy"
+	EGIT_BRANCH="maintenance/$(ver_cut 1-2).x"
+	EGIT_SUBMODULES=( '*' )
+else
+	# Upstream is often behind with doc updates
+	DOC_PV=1.8.1
+	MY_PV=${PV/_rc/rc}
+	MY_P=${PN}-${MY_PV}
+
+	SRC_URI="
+		mirror://pypi/${PN:0:1}/${PN}/${MY_P}.tar.gz
+		doc? (
+			https://docs.scipy.org/doc/${PN}-${DOC_PV}/${PN}-html-${DOC_PV}.zip
+			https://docs.scipy.org/doc/${PN}-${DOC_PV}/${PN}-ref-${DOC_PV}.pdf
+		)"
+	S="${WORKDIR}"/${MY_P}
+
+	if [[ ${PV} != *rc* ]] ; then
+		KEYWORDS="~amd64 ~arm ~arm64 -hppa ~ia64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+	fi
+fi
+
+LICENSE="BSD LGPL-2"
+SLOT="0"
+IUSE="doc +fortran"
+
+# umfpack is technically optional but it's preferred to have it available.
+DEPEND="
+	>=dev-python/numpy-1.18.5[lapack,${PYTHON_USEDEP}]
+	sci-libs/arpack:=
+	sci-libs/umfpack
+	virtual/cblas
+	>=virtual/lapack-3.8
+"
+RDEPEND="
+	${DEPEND}
+	dev-python/pillow[${PYTHON_USEDEP}]
+"
+BDEPEND="
+	dev-lang/swig
+	>=dev-python/cython-0.29.18[${PYTHON_USEDEP}]
+	>=dev-python/meson-python-0.11[${PYTHON_USEDEP}]
+	dev-python/pybind11[${PYTHON_USEDEP}]
+	>=dev-util/meson-0.62.2
+	dev-util/patchelf
+	virtual/pkgconfig
+	doc? ( app-arch/unzip )
+	fortran? ( dev-python/pythran[${PYTHON_USEDEP}] )
+	test? ( dev-python/pytest-xdist[${PYTHON_USEDEP}] )"
+
+EPYTEST_DESELECT=(
+	linalg/tests/test_decomp.py::TestSchur::test_sort
+	linalg/tests/test_solvers.py::test_solve_discrete_are
+)
+
+distutils_enable_tests pytest
+
+src_unpack() {
+	default
+
+	if use doc; then
+		unzip -qo "${DISTDIR}"/${PN}-html-${DOC_PV}.zip -d html || die
+	fi
+}
+
+python_configure_all() {
+	export SCIPY_USE_PYTHRAN=$(usex fortran 1 0)
+	DISTUTILS_ARGS=(
+		-Dblas=blas
+		-Dlapack=lapack
+	)
+}
+
+python_test() {
+	cd "${T}" || die
+
+	epytest -n "$(makeopts_jobs)" --pyargs scipy
+}
+
+python_install_all() {
+	use doc && \
+		local DOCS=( "${DISTDIR}"/${PN}-ref-${DOC_PV}.pdf ) \
+		local HTML_DOCS=( "${WORKDIR}"/html/. )
+
+	distutils-r1_python_install_all
+}
diff --git a/dev-python/scipy/scipy-1.9.9999.ebuild b/dev-python/scipy/scipy-1.9.9999.ebuild
index 6396c461e4e3..b85e9495ebc9 100644
--- a/dev-python/scipy/scipy-1.9.9999.ebuild
+++ b/dev-python/scipy/scipy-1.9.9999.ebuild
@@ -62,6 +62,7 @@ RDEPEND="
 BDEPEND="
 	dev-lang/swig
 	>=dev-python/cython-0.29.18[${PYTHON_USEDEP}]
+	>=dev-python/meson-python-0.11[${PYTHON_USEDEP}]
 	dev-python/pybind11[${PYTHON_USEDEP}]
 	>=dev-util/meson-0.62.2
 	dev-util/patchelf
@@ -70,10 +71,6 @@ BDEPEND="
 	fortran? ( dev-python/pythran[${PYTHON_USEDEP}] )
 	test? ( dev-python/pytest-xdist[${PYTHON_USEDEP}] )"
 
-PATCHES=(
-	"${FILESDIR}"/${PN}-1.9.9999-meson-options-lapack.patch
-)
-
 EPYTEST_DESELECT=(
 	linalg/tests/test_decomp.py::TestSchur::test_sort
 	linalg/tests/test_solvers.py::test_solve_discrete_are
@@ -90,9 +87,11 @@ src_unpack() {
 }
 
 python_configure_all() {
-	# workaround stupid numpy distutils overrides, indirectly via pythran
-	export SETUPTOOLS_USE_DISTUTILS=stdlib
 	export SCIPY_USE_PYTHRAN=$(usex fortran 1 0)
+	DISTUTILS_ARGS=(
+		-Dblas=blas
+		-Dlapack=lapack
+	)
 }
 
 python_test() {
-- 
2.38.1



^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [gentoo-dev] [PATCH 4/7] distutils-r1.eclass: Bump min dep versions to newest stable
  2022-11-25 17:05 [gentoo-dev] [PATCH 0/7] distutils-r1.eclass: mesonpy option passing support + periodic cleanup Michał Górny
                   ` (2 preceding siblings ...)
  2022-11-25 17:05 ` [gentoo-dev] [PATCH 3/7] dev-python/scipy: Pass -Dblas, -Dlapack via DISTUTILS_ARGS Michał Górny
@ 2022-11-25 17:05 ` Michał Górny
  2022-11-25 17:05 ` [gentoo-dev] [PATCH 5/7] distutils-r1.eclass: Print versions of common hatch plugins Michał Górny
                   ` (2 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: Michał Górny @ 2022-11-25 17:05 UTC (permalink / raw
  To: gentoo-dev; +Cc: Michał Górny

Signed-off-by: Michał Górny <mgorny@gentoo.org>
---
 eclass/distutils-r1.eclass | 30 +++++++++++++++---------------
 1 file changed, 15 insertions(+), 15 deletions(-)

diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass
index 3ac06a458483..551e8f68ef99 100644
--- a/eclass/distutils-r1.eclass
+++ b/eclass/distutils-r1.eclass
@@ -207,7 +207,7 @@ _distutils_set_globals() {
 		case ${DISTUTILS_USE_PEP517} in
 			flit)
 				bdep+='
-					>=dev-python/flit_core-3.7.1[${PYTHON_USEDEP}]
+					>=dev-python/flit_core-3.8.0[${PYTHON_USEDEP}]
 				'
 				;;
 			flit_scm)
@@ -217,7 +217,7 @@ _distutils_set_globals() {
 				;;
 			hatchling)
 				bdep+='
-					>=dev-python/hatchling-1.8.1[${PYTHON_USEDEP}]
+					>=dev-python/hatchling-1.11.1[${PYTHON_USEDEP}]
 				'
 				;;
 			jupyter)
@@ -227,7 +227,7 @@ _distutils_set_globals() {
 				;;
 			maturin)
 				bdep+='
-					>=dev-util/maturin-0.13.2[${PYTHON_USEDEP}]
+					>=dev-util/maturin-0.13.7[${PYTHON_USEDEP}]
 				'
 				;;
 			no)
@@ -236,33 +236,33 @@ _distutils_set_globals() {
 				;;
 			meson-python)
 				bdep+='
-					>=dev-python/meson-python-0.9.0[${PYTHON_USEDEP}]
+					>=dev-python/meson-python-0.10.0-r1[${PYTHON_USEDEP}]
 				'
 				;;
 			pbr)
 				bdep+='
-					>=dev-python/pbr-5.10.0[${PYTHON_USEDEP}]
+					>=dev-python/pbr-5.11.0[${PYTHON_USEDEP}]
 				'
 				;;
 			pdm)
 				bdep+='
-					>=dev-python/pdm-pep517-1.0.4[${PYTHON_USEDEP}]
+					>=dev-python/pdm-pep517-1.0.5[${PYTHON_USEDEP}]
 				'
 				;;
 			poetry)
 				bdep+='
-					>=dev-python/poetry-core-1.2.0[${PYTHON_USEDEP}]
+					>=dev-python/poetry-core-1.3.2[${PYTHON_USEDEP}]
 				'
 				;;
 			setuptools)
 				bdep+='
-					>=dev-python/setuptools-65.3.0[${PYTHON_USEDEP}]
-					dev-python/wheel[${PYTHON_USEDEP}]
+					>=dev-python/setuptools-65.5.1[${PYTHON_USEDEP}]
+					>=dev-python/wheel-0.38.4[${PYTHON_USEDEP}]
 				'
 				;;
 			sip)
 				bdep+='
-					>=dev-python/sip-6.6.2[${PYTHON_USEDEP}]
+					>=dev-python/sip-6.7.5[${PYTHON_USEDEP}]
 				'
 				;;
 			standalone)
@@ -277,7 +277,7 @@ _distutils_set_globals() {
 			eqawarn "is enabled."
 		fi
 	else
-		local setuptools_dep='>=dev-python/setuptools-65.3.0[${PYTHON_USEDEP}]'
+		local setuptools_dep='>=dev-python/setuptools-65.5.1[${PYTHON_USEDEP}]'
 
 		case ${DISTUTILS_USE_SETUPTOOLS:-bdepend} in
 			no|manual)
@@ -482,7 +482,7 @@ distutils_enable_sphinx() {
 	_DISTUTILS_SPHINX_PLUGINS=( "${@}" )
 
 	local deps autodoc=1 d
-	deps=">=dev-python/sphinx-4.5.0-r1[\${PYTHON_USEDEP}]"
+	deps=">=dev-python/sphinx-5.3.0[\${PYTHON_USEDEP}]"
 	for d; do
 		if [[ ${d} == --no-autodoc ]]; then
 			autodoc=
@@ -506,7 +506,7 @@ distutils_enable_sphinx() {
 			use doc || return 0
 
 			local p
-			for p in ">=dev-python/sphinx-4.5.0-r1" \
+			for p in ">=dev-python/sphinx-5.3.0" \
 				"${_DISTUTILS_SPHINX_PLUGINS[@]}"
 			do
 				python_has_version "${p}[${PYTHON_USEDEP}]" ||
@@ -514,7 +514,7 @@ distutils_enable_sphinx() {
 			done
 		}
 	else
-		deps=">=dev-python/sphinx-4.5.0-r1"
+		deps=">=dev-python/sphinx-5.3.0"
 	fi
 
 	sphinx_compile_all() {
@@ -594,7 +594,7 @@ distutils_enable_tests() {
 	local test_pkg
 	case ${1} in
 		nose)
-			test_pkg=">=dev-python/nose-1.3.7_p20211111_p1-r1"
+			test_pkg=">=dev-python/nose-1.3.7_p20221026"
 			;;
 		pytest)
 			test_pkg=">=dev-python/pytest-7.1.3"
-- 
2.38.1



^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [gentoo-dev] [PATCH 5/7] distutils-r1.eclass: Print versions of common hatch plugins
  2022-11-25 17:05 [gentoo-dev] [PATCH 0/7] distutils-r1.eclass: mesonpy option passing support + periodic cleanup Michał Górny
                   ` (3 preceding siblings ...)
  2022-11-25 17:05 ` [gentoo-dev] [PATCH 4/7] distutils-r1.eclass: Bump min dep versions to newest stable Michał Górny
@ 2022-11-25 17:05 ` Michał Górny
  2022-11-25 17:05 ` [gentoo-dev] [PATCH 6/7] distutils-r1.eclass: Remove support for gpep517 < 9 Michał Górny
  2022-11-25 17:05 ` [gentoo-dev] [PATCH 7/7] python-utils-r1.eclass: Bump min Python versions Michał Górny
  6 siblings, 0 replies; 8+ messages in thread
From: Michał Górny @ 2022-11-25 17:05 UTC (permalink / raw
  To: gentoo-dev; +Cc: Michał Górny

Signed-off-by: Michał Górny <mgorny@gentoo.org>
---
 eclass/distutils-r1.eclass | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass
index 551e8f68ef99..1cc4626f3a12 100644
--- a/eclass/distutils-r1.eclass
+++ b/eclass/distutils-r1.eclass
@@ -929,6 +929,8 @@ _distutils-r1_print_package_versions() {
 			hatchling)
 				packages+=(
 					dev-python/hatchling
+					dev-python/hatch-fancy-pypi-readme
+					dev-python/hatch-vcs
 				)
 				;;
 			jupyter)
-- 
2.38.1



^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [gentoo-dev] [PATCH 6/7] distutils-r1.eclass: Remove support for gpep517 < 9
  2022-11-25 17:05 [gentoo-dev] [PATCH 0/7] distutils-r1.eclass: mesonpy option passing support + periodic cleanup Michał Górny
                   ` (4 preceding siblings ...)
  2022-11-25 17:05 ` [gentoo-dev] [PATCH 5/7] distutils-r1.eclass: Print versions of common hatch plugins Michał Górny
@ 2022-11-25 17:05 ` Michał Górny
  2022-11-25 17:05 ` [gentoo-dev] [PATCH 7/7] python-utils-r1.eclass: Bump min Python versions Michał Górny
  6 siblings, 0 replies; 8+ messages in thread
From: Michał Górny @ 2022-11-25 17:05 UTC (permalink / raw
  To: gentoo-dev; +Cc: Michał Górny

Signed-off-by: Michał Górny <mgorny@gentoo.org>
---
 eclass/distutils-r1.eclass | 37 ++++++++-----------------------------
 1 file changed, 8 insertions(+), 29 deletions(-)

diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass
index 1cc4626f3a12..97c5e562bc0f 100644
--- a/eclass/distutils-r1.eclass
+++ b/eclass/distutils-r1.eclass
@@ -1265,25 +1265,14 @@ distutils_wheel_install() {
 	local wheel=${2}
 
 	einfo "  Installing ${wheel##*/} to ${root}"
-	if has_version -b ">=dev-python/gpep517-9"; then
-		# TODO: inline when we dep on >=9
-		local cmd=(
-			gpep517 install-wheel
-				--destdir="${root}"
-				--interpreter="${PYTHON}"
-				--prefix="${EPREFIX}/usr"
-				--optimize=all
-				"${wheel}"
-		)
-	else
-		local cmd=(
-			gpep517 install-wheel
-				--destdir="${root}"
-				--interpreter="${PYTHON}"
-				--prefix="${EPREFIX}/usr"
-				"${wheel}"
-		)
-	fi
+	local cmd=(
+		gpep517 install-wheel
+			--destdir="${root}"
+			--interpreter="${PYTHON}"
+			--prefix="${EPREFIX}/usr"
+			--optimize=all
+			"${wheel}"
+	)
 	printf '%s\n' "${cmd[*]}"
 	"${cmd[@]}" || die "Wheel install failed"
 
@@ -2018,16 +2007,6 @@ _distutils-r1_post_python_install() {
 				die "Package installs '${p}' package which is forbidden and likely a bug in the build system."
 			fi
 		done
-
-		if [[ ${DISTUTILS_USE_PEP517} ]]; then
-			if ! has_version -b ">=dev-python/gpep517-9"
-			then
-				# TODO: remove when we dep on >=9
-				# we need to recompile everything here in order to embed
-				# the correct paths
-				python_optimize "${sitedir}"
-			fi
-		fi
 	fi
 }
 
-- 
2.38.1



^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [gentoo-dev] [PATCH 7/7] python-utils-r1.eclass: Bump min Python versions
  2022-11-25 17:05 [gentoo-dev] [PATCH 0/7] distutils-r1.eclass: mesonpy option passing support + periodic cleanup Michał Górny
                   ` (5 preceding siblings ...)
  2022-11-25 17:05 ` [gentoo-dev] [PATCH 6/7] distutils-r1.eclass: Remove support for gpep517 < 9 Michał Górny
@ 2022-11-25 17:05 ` Michał Górny
  6 siblings, 0 replies; 8+ messages in thread
From: Michał Górny @ 2022-11-25 17:05 UTC (permalink / raw
  To: gentoo-dev; +Cc: Michał Górny

Signed-off-by: Michał Górny <mgorny@gentoo.org>
---
 eclass/python-utils-r1.eclass | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass
index 7a5f84bd561e..09b9861b8fd4 100644
--- a/eclass/python-utils-r1.eclass
+++ b/eclass/python-utils-r1.eclass
@@ -455,21 +455,21 @@ _python_export() {
 				local d
 				case ${impl} in
 					python2.7)
-						PYTHON_PKG_DEP='>=dev-lang/python-2.7.10_p15:2.7';;
+						PYTHON_PKG_DEP='>=dev-lang/python-2.7.10_p16:2.7';;
 					python3.8)
-						PYTHON_PKG_DEP=">=dev-lang/python-3.8.13:3.8";;
+						PYTHON_PKG_DEP=">=dev-lang/python-3.8.15_p3:3.8";;
 					python3.9)
-						PYTHON_PKG_DEP=">=dev-lang/python-3.9.12:3.9";;
+						PYTHON_PKG_DEP=">=dev-lang/python-3.9.15_p3:3.9";;
 					python3.10)
-						PYTHON_PKG_DEP=">=dev-lang/python-3.10.4:3.10";;
+						PYTHON_PKG_DEP=">=dev-lang/python-3.10.8_p3:3.10";;
 					python3.11)
-						PYTHON_PKG_DEP=">=dev-lang/python-3.11.0_beta4:3.11";;
+						PYTHON_PKG_DEP=">=dev-lang/python-3.11.0_p2:3.11";;
 					python*)
 						PYTHON_PKG_DEP="dev-lang/python:${impl#python}";;
 					pypy)
-						PYTHON_PKG_DEP='>=dev-python/pypy-7.3.9:0=';;
+						PYTHON_PKG_DEP='>=dev-python/pypy-7.3.9-r2:0=';;
 					pypy3)
-						PYTHON_PKG_DEP='>=dev-python/pypy3-7.3.9_p1:0=';;
+						PYTHON_PKG_DEP='>=dev-python/pypy3-7.3.9_p9:0=';;
 					*)
 						die "Invalid implementation: ${impl}"
 				esac
-- 
2.38.1



^ permalink raw reply related	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2022-11-25 17:07 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-11-25 17:05 [gentoo-dev] [PATCH 0/7] distutils-r1.eclass: mesonpy option passing support + periodic cleanup Michał Górny
2022-11-25 17:05 ` [gentoo-dev] [PATCH 1/7] ninja-utils.eclass: Split get_NINJAOPTS out Michał Górny
2022-11-25 17:05 ` [gentoo-dev] [PATCH 2/7] distutils-r1.eclass: Pass options to meson-python backend Michał Górny
2022-11-25 17:05 ` [gentoo-dev] [PATCH 3/7] dev-python/scipy: Pass -Dblas, -Dlapack via DISTUTILS_ARGS Michał Górny
2022-11-25 17:05 ` [gentoo-dev] [PATCH 4/7] distutils-r1.eclass: Bump min dep versions to newest stable Michał Górny
2022-11-25 17:05 ` [gentoo-dev] [PATCH 5/7] distutils-r1.eclass: Print versions of common hatch plugins Michał Górny
2022-11-25 17:05 ` [gentoo-dev] [PATCH 6/7] distutils-r1.eclass: Remove support for gpep517 < 9 Michał Górny
2022-11-25 17:05 ` [gentoo-dev] [PATCH 7/7] python-utils-r1.eclass: Bump min Python versions 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