Re: [gentoo-dev] [PATCH v2] python-utils-r1.eclass: Fix PYTHON_SITEDIR/INCLUDEDIR for cross-prefix

2023-08-16 Thread Michał Górny
IR#${BROOT-${EPREFIX}}}" > export PYTHON_INCLUDEDIR > debug-print "${FUNCNAME}: PYTHON_INCLUDEDIR = > ${PYTHON_INCLUDEDIR}" > > You don't seem to have changed that, actually. -- Best regards, Michał Górny

Re: [gentoo-dev] Massive Github PR Queue

2023-08-11 Thread Michał Górny
rovement over both. I'm sure that having to go through 15 threads where people reposted the same patches with updates to find all the comments will be a great productivity booster. -- Best regards, Michał Górny

Re: [gentoo-dev] ghc support in multilib-build.eclass

2023-08-09 Thread Michał Górny
this workaround with a very small change, replacing > ``` > #elif defined(SWIG) > ``` > with > ``` > #elif defined(SWIG) || defined(__GLASGOW_HASKELL__) > ``` > in the template inside the eclass. > > If everybody's happy with that, I'll be also happy to open a PR with > that change. Yes, please. -- Best regards, Michał Górny

[gentoo-dev] [PATCH v2] python-utils-r1.eclass: Eliminate false positives from occluded check

2023-08-06 Thread Michał Górny
). As a side effect, we no longer compare .py files for equality but that shouldn't be such a big deal. Signed-off-by: Michał Górny --- eclass/python-utils-r1.eclass | 29 + Changes in v2: inlined the find calls into comm args, removed grep and added a

[gentoo-dev] [PATCH] python-utils-r1.eclass: Eliminate false positives from occluded check

2023-08-06 Thread Michał Górny
). As a side effect, we no longer compare .py files for equality but that shouldn't be such a big deal. Signed-off-by: Michał Górny --- eclass/python-utils-r1.eclass | 26 +- 1 file changed, 17 insertions(+), 9 deletions(-) diff --git a/eclass/python-utils-r1.ecl

Re: [gentoo-dev] [PATCH] python-utils-r1.eclass: Check for occluded packages before testing

2023-08-05 Thread Michał Górny
On Sat, 2023-08-05 at 14:39 +0200, Michał Górny wrote: > Add a check for installed packages being occluded by the working > directory when calling epytest and eunittest. This is primarily meant > to detect C extensions being missed. By the way, I've finally figured out which pa

[gentoo-dev] [PATCH] python-utils-r1.eclass: Check for occluded packages before testing

2023-08-05 Thread Michał Górny
Add a check for installed packages being occluded by the working directory when calling epytest and eunittest. This is primarily meant to detect C extensions being missed. Signed-off-by: Michał Górny --- eclass/python-utils-r1.eclass | 51 +++ 1 file changed, 51

Re: [gentoo-dev] [PATCH 1/7] eclass/nuget.eclass: introduce new eclass

2023-07-31 Thread Michał Górny
On Mon, 2023-07-31 at 12:49 +0200, Florian Schmaus wrote: > On 31/07/2023 11.32, Sam James wrote: > > > > Florian Schmaus writes: > > > > > [[PGP Signed Part:Undecided]] > > > On 31/07/2023 07.02, Michał Górny wrote: > > > > On Su

Re: [gentoo-dev] [PATCH] cargo.eclass: use CARGO_CRATE_URIS if already available

2023-07-31 Thread Michał Górny
"${CARGO_CRATE_URIS}" ]]; then > + echo "${CARGO_CRATE_URIS}" > + return > + fi > + > local crates=${*-${CRATES}} > if [[ -z ${crates} ]]; then > eerror "CRATES variable is not defined and nothing passed as > argument" This incorrectly assumes that the value of CRATES did not change which isn't guaranteed anywhere. -- Best regards, Michał Górny

Re: [gentoo-dev] [PATCH 1/7] eclass/nuget.eclass: introduce new eclass

2023-07-30 Thread Michał Górny
|| die > > > + > > > + local nuget_name="${1##*/}" > > > + > > > + if [[ -f "${NUGET_PACKAGES}"/${nuget_name} ]] ; then > > > + ewarn "${FUNCNAME}: ${nuget_name} already exists" > > > > What does that mean? What is the user supposed to do about it? Is it > > normal? If it's normal, then why are you warning about it? If it isn't > > normal, then why isn't this fatal? > > This can happen if NuGets copied from SYSTEM_NUGETS are overwritten by > ones specified in ebuild. > > This might be desired by ebuild author. > > We need to have this logged, I think ewarn is appropriate. ewarn is a warning for the end user. The end user doesn't benefit from being warned for "ebuild is doing something that might be wrong, or might be perfectly fine, ignore this". -- Best regards, Michał Górny

Re: [gentoo-dev] [PATCH 1/7] eclass/nuget.eclass: introduce new eclass

2023-07-30 Thread Michał Górny
y. No fancy loops required, contrary to your great theory. -- Best regards, Michał Górny

Re: [gentoo-dev] [PATCH 1/3] multiprocessing.eclass: search also GNUMAKEFLAGS for --load-average

2023-07-25 Thread Michał Górny
On Tue, 2023-07-25 at 08:26 +0200, Florian Schmaus wrote: > On 25/07/2023 06.50, Michał Górny wrote: > > On Mon, 2023-07-24 at 20:57 +0200, Florian Schmaus wrote: > > > Since --load-average may not be found in other Make implementations > > > besides GNU MAKE,

Re: [gentoo-dev] [PATCH 1/3] multiprocessing.eclass: search also GNUMAKEFLAGS for --load-average

2023-07-24 Thread Michał Górny
y than the second .* > # since POSIX doesn't specify a non-greedy match (i.e. ".*?"). > local lavg=$(echo " $* " | sed -r -n \ I'm pretty sure [GNU]MAKEFLAGS has incompatible format, in particular it makes hyphens optional. -- Best regards, Michał Górny

[gentoo-dev] Last rites: dev-python/tikzplotlib

2023-07-24 Thread Michał Górny
# Michał Górny (2023-07-24) # Incompatible with modern dev-python/matplotlib versions.  No upstream # activity since 2022-02.  No revdeps. # Removal on 2023-08-23.  Bug #904734. dev-python/tikzplotlib -- Best regards, Michał Górny

[gentoo-dev] Last rites: dev-python/vncdotool

2023-07-23 Thread Michał Górny
# Michał Górny (2023-07-23) # Package with no maintainer and tests restricted (also test deps look # suspicious).  It was only needed for tests # in dev-python/pyvirtualdisplay, and that package didn't support # the newest version anyway.  No revdeps left. # Removal on 2023-08-22.  Bug #9

Re: [gentoo-dev] [PATCH 4/6] kernel-install.eclass: kernel-install_get_qemu_arch: port to sparc

2023-07-21 Thread Michał Górny
;; > + sparc64) > + echo sparc64 > + ;; > riscv) > echo riscv > ;; I suppose I originally didn't anticipate this many "matching" arches but perhaps it's time to add something like: arm|ppc|ppc64|riscv|sparc|sparc64) echo ${ARCH} ;; -- Best regards, Michał Górny

[gentoo-dev] Last rites: dev-python/cx_Freeze

2023-07-20 Thread Michał Górny
# Michał Górny (2023-07-21) # Fragile package requiring custom patching.  The maintainer resigned. # No reverse dependencies. # Removal on 2023-08-20.  Bug #910619. dev-python/cx_Freeze -- Best regards, Michał Górny

[gentoo-dev] Last rites: dev-python/ansible-runner

2023-07-20 Thread Michał Górny
# Michał Górny (2023-07-21) # The ebuild has not been bumped for a year now.  It doesn't have # working tests.  No reverse dependencies. # Removal on 2023-08-20.  Bug #907460. dev-python/ansible-runner -- Best regards, Michał Górny

[gentoo-dev] [PATCH 2/2] distutils-r1.eclass: wheel dep moved into setuptools

2023-07-15 Thread Michał Górny
Signed-off-by: Michał Górny --- 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 e4f0589e191b..658d26f2a440 100644 --- a/eclass/distutils-r1.eclass +++ b/eclass/distutils-r1.eclass

[gentoo-dev] [PATCH 1/2] python-utils-r1.eclass: Loosen minimal Python versions

2023-07-15 Thread Michał Górny
ignore minimal versions but that sounds like unnecessary complexity. In the end, minimum versions were primarily enforced to make sure users got the latest bugfixes but that doesn't seem strictly necessary. Closes: https://bugs.gentoo.org/910288 Signed-off-by: Michał Górny --- eclass/python-

Re: [gentoo-dev] [PATCH 4/4] distutils-r1.eclass: Disable LTO when using cargo.eclass

2023-07-12 Thread Michał Górny
On Wed, 2023-07-12 at 19:42 +0200, Ulrich Mueller wrote: > > > > > > On Wed, 12 Jul 2023, Michał Górny wrote: > > > + if [[ ${_CARGO_ECLASS} ]]; then > > + filter-lto > > + fi > > Testing for an internal variable of another eclass

[gentoo-dev] [PATCH 4/4] distutils-r1.eclass: Disable LTO when using cargo.eclass

2023-07-12 Thread Michał Górny
Strip LTO flags when cargo.eclass is inherited. This means that Rust extensions are being built, and linking them with C/C++ style LTO results in broken shared libraries. Closes: https://bugs.gentoo.org/910220 Signed-off-by: Michał Górny --- eclass/distutils-r1.eclass | 7 +++ 1 file

[gentoo-dev] [PATCH 3/4] distutils-r1.eclass: Update addpredict for PyPy3.10

2023-07-12 Thread Michał Górny
Signed-off-by: Michał Górny --- eclass/distutils-r1.eclass | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass index 046277d0371c..924e83b54ad8 100644 --- a/eclass/distutils-r1.eclass +++ b/eclass/distutils-r1.eclass

[gentoo-dev] [PATCH 2/4] python-utils-r1.eclass: pypy3 is now 3.10-only

2023-07-12 Thread Michał Górny
Signed-off-by: Michał Górny --- eclass/python-utils-r1.eclass | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass index 81051699f1d9..a395538be39c 100644 --- a/eclass/python-utils-r1.eclass +++ b/eclass/python

[gentoo-dev] [PATCH 1/4] python-utils-r1.eclass: Require >=dev-python/pypy3-7.3.12

2023-07-12 Thread Michał Górny
Signed-off-by: Michał Górny --- eclass/python-utils-r1.eclass | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass index 40c15b65d7a5..81051699f1d9 100644 --- a/eclass/python-utils-r1.eclass +++ b/eclass/python-utils-r1

[gentoo-dev] [PATCH 0/4] python eclasses: PyPy3.10 update + cargo LTO strip-flags

2023-07-12 Thread Michał Górny
rgo.eclass. The second commit is a bit hacky but I think it's a good enough approach that doesn't require us to strip LTO unconditionally or add yet another control variable to tell the eclass if we're dealing with Rust or not. Michał Górny (4): python-utils-r1.eclass: Require

[gentoo-dev] Last rites: dev-python/typed-ast

2023-07-05 Thread Michał Górny
# Michał Górny (2023-07-05) # Discontinued in favor of built-in `ast` module on all supported # versions of Python.  No revdeps left. # Removal on 2023-08-04. dev-python/typed-ast -- Best regards, Michał Górny

Re: [gentoo-dev] sys-kernel/gentoo-kernel on riscv

2023-07-03 Thread Michał Górny
ree to push it straight into ::gentoo after waiting some time for more comments. -- Best regards, Michał Górny

Re: [gentoo-dev] [PATCH 1/2] gradle.eclass: add new eclass

2023-06-28 Thread Michał Górny
local tmpdir > + tmpdir=$(mktemp -d || die) > + for pseudo_gradle in "${@}"; do > + local pseudo_gradle_path="${tmpdir}/${pseudo_gradle}" > + touch "${pseudo_gradle_path}" > + chmod 755 "${pseudo_gradle_path}" > + done > + > + local saved_PATH="${PATH}" > + PATH="${tmpdir}" > + > + local test_desc=( > + test_set_EGRADLE > + ) > + [[ -v EGRADLE_MIN ]] && test_desc+=( "EGRADLE_MIN=${EGRADLE_MIN}" ) > + [[ -v EGRADLE_MAX_EXCLUSIVE ]] && test_desc+=( > "EGRADLE_MAX_EXCLUSIVE=${EGRADLE_MAX_EXCLUSIVE}" ) > + test_desc+=( $@ ) > + > + tbegin "${test_desc[@]}" > + gradle-set_EGRADLE > + > + local saved_EGRADLE="${EGRADLE}" > + unset EGRADLE > + > + PATH="${saved_PATH}" > + rm -rf "${tmpdir}" > + > + [[ "${saved_EGRADLE}" == "${expected_EGRADLE}" ]] > + tend $? > + > + if (( $? > 0 )); then > + >&2 echo -e "\t expected=${expected_EGRADLE} > actual=${saved_EGRADLE}" > + fi > +} > + > +test_set_EGRADLE gradle-2.0 gradle-1.0 gradle-2.0 > +EGRADLE_MIN=2.0 test_set_EGRADLE gradle-2.2.3 gradle-1.0 gradle-2.0 > gradle-2.2.3 > +EGRADLE_MAX_EXCLUSIVE=2.2 test_set_EGRADLE gradle-2.0 gradle-1.0 gradle-2.0 > gradle-2.2.3 > + > + > +texit -- Best regards, Michał Górny

Re: [gentoo-dev] [PATCH] acct-user.eclass: include exit status in death message

2023-06-25 Thread Michał Górny
I think a better approach would be to always include $? in die messages in Portage. -- Best regards, Michał Górny

[gentoo-dev] Migrating ebuilds to "optimized" cargo.eclass API

2023-06-19 Thread Michał Górny
ectories/with/cargo-lock Note that pycargoebuild won't replace $(cargo_crate_uris) automatically though. -- Best regards, Michał Górny

[gentoo-dev] [PATCH v2 5/5] cargo.eclass: Mark GIT_CRATES as pre-inherit

2023-06-16 Thread Michał Górny
The variable needs to be set before inherit in order for ${CARGO_CRATE_URIS} to be set correctly. Currently all ebuilds using GIT_CRATES except for one define it pre-inherit anyway, and this makes it consistent with CRATES. Signed-off-by: Michał Górny --- eclass/cargo.eclass | 1 + 1 file

[gentoo-dev] [PATCH v2 4/5] cargo.eclass: Support separating crate names/versions via `@`

2023-06-16 Thread Michał Górny
real 952 it/s user 952 it/s * CRATES with '-' separator real 339 it/s user 339 it/s ``` Signed-off-by: Michał Górny --- eclass/cargo.eclass | 24 +--- eclass/tests/cargo-bench.sh | 111 +++- 2 files changed, 75 insertions(+), 60 deleti

[gentoo-dev] [PATCH v2 3/5] cargo.eclass: Optimize GIT_CRATES check

2023-06-16 Thread Michał Górny
65 it/s ``` Signed-off-by: Michał Górny --- eclass/cargo.eclass | 58 ++--- 1 file changed, 29 insertions(+), 29 deletions(-) diff --git a/eclass/cargo.eclass b/eclass/cargo.eclass index 4e0cd1e4de70..d97bb0df9348 100644 --- a/eclass/cargo.eclass +++ b/e

[gentoo-dev] [PATCH v2 2/5] cargo.eclass: Add variable alternative to $(cargo_crate_uris)

2023-06-16 Thread Michał Górny
Add a helper function that sets ${CARGO_CRATE_URIS} variable to make it possible to set SRC_URI without subshells. This gives a slight speedup (~20%): ``` real 300 it/s user 324 it/s ``` Signed-off-by: Michał Górny --- eclass/cargo.eclass | 48

[gentoo-dev] [PATCH v2 1/5] eclass/tests: Add a minimal benchmark for cargo.eclass

2023-06-16 Thread Michał Górny
The initial results on my machine are: ``` real 252 it/s user 289 it/s ``` Signed-off-by: Michał Górny --- eclass/tests/cargo-bench.sh | 107 1 file changed, 107 insertions(+) create mode 100755 eclass/tests/cargo-bench.sh diff --git a/eclass/tests

[gentoo-dev] [PATCH v2 0/5] cargo.eclass: optimizations

2023-06-16 Thread Michał Górny
Hi, Changes from v1: `@` is used to separate crate names and versions rather than `/`. Thanks to Denis Lisov for the suggestion. -- Best regards, Michał Górny Michał Górny (5): eclass/tests: Add a minimal benchmark for cargo.eclass cargo.eclass: Add variable alternative to

Re: [gentoo-dev] [PATCH 4/5] cargo.eclass: Support separating crate names/versions via slash

2023-06-16 Thread Michał Górny
On Fri, 2023-06-16 at 17:48 +0300, Denis Lisov wrote: > Hello Michał, > > On Fri, Jun 16, 2023 at 3:09 PM Michał Górny wrote: > > Support specifying crate names and versions separated by forward slashes > > rather than hyphens. Since slashes are not valid in crate

[gentoo-dev] [PATCH 5/5] cargo.eclass: Mark GIT_CRATES as pre-inherit

2023-06-16 Thread Michał Górny
The variable needs to be set before inherit in order for ${CARGO_CRATE_URIS} to be set correctly. Currently all ebuilds using GIT_CRATES except for one define it pre-inherit anyway, and this makes it consistent with CRATES. Signed-off-by: Michał Górny --- eclass/cargo.eclass | 1 + 1 file

[gentoo-dev] [PATCH 4/5] cargo.eclass: Support separating crate names/versions via slash

2023-06-16 Thread Michał Górny
real 952 it/s user 952 it/s * CRATES with hyphens real 339 it/s user 339 it/s ``` Signed-off-by: Michał Górny --- eclass/cargo.eclass | 24 +--- eclass/tests/cargo-bench.sh | 111 +++- 2 files changed, 75 insertions(+), 60 deletions(-) diff --git a

[gentoo-dev] [PATCH 3/5] cargo.eclass: Optimize GIT_CRATES check

2023-06-16 Thread Michał Górny
65 it/s ``` Signed-off-by: Michał Górny --- eclass/cargo.eclass | 58 ++--- 1 file changed, 29 insertions(+), 29 deletions(-) diff --git a/eclass/cargo.eclass b/eclass/cargo.eclass index 4e0cd1e4de70..d97bb0df9348 100644 --- a/eclass/cargo.eclass +++ b/e

[gentoo-dev] [PATCH 2/5] cargo.eclass: Add variable alternative to $(cargo_crate_uris)

2023-06-16 Thread Michał Górny
Add a helper function that sets ${CARGO_CRATE_URIS} variable to make it possible to set SRC_URI without subshells. This gives a slight speedup (~20%): ``` real 300 it/s user 324 it/s ``` Signed-off-by: Michał Górny --- eclass/cargo.eclass | 48

[gentoo-dev] [PATCH 1/5] eclass/tests: Add a minimal benchmark for cargo.eclass

2023-06-16 Thread Michał Górny
The initial results on my machine are: ``` real 252 it/s user 289 it/s ``` Signed-off-by: Michał Górny --- eclass/tests/cargo-bench.sh | 107 1 file changed, 107 insertions(+) create mode 100755 eclass/tests/cargo-bench.sh diff --git a/eclass/tests

[gentoo-dev] [PATCH 0/5] cargo.eclass: optimizations

2023-06-16 Thread Michał Górny
for fully optimized form (using variable and slashes) give: real 952 it/s user 952 it/s -- Best regards, Michał Górny Michał Górny (5): eclass/tests: Add a minimal benchmark for cargo.eclass cargo.eclass: Add variable alternative to $(cargo_crate_uris) cargo.eclass: Optimize

[gentoo-dev] [PATCH] python-utils-r1.eclass: Use @a instead of declare check for array

2023-06-15 Thread Michał Górny
duces total sourcing time for `dev-python/*` from 57-58 s to 54 s. Signed-off-by: Michał Górny --- eclass/python-utils-r1.eclass | 15 +++ 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass index 52e9e06

[gentoo-dev] [PATCH] pypi.eclass: Do extglob reset unconditionally

2023-06-15 Thread Michał Górny
be set. This makes the code simpler. Signed-off-by: Michał Górny --- eclass/pypi.eclass | 14 ++ 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/eclass/pypi.eclass b/eclass/pypi.eclass index 8a842c450ebc..594216a7fd96 100644 --- a/eclass/pypi.eclass +++ b/eclass

[gentoo-dev] [PATCH v2 7/7] pypi.eclass: Avoid subshell for extglob setting

2023-06-14 Thread Michał Górny
/gentoo/pull/31404 Signed-off-by: Michał Górny --- eclass/pypi.eclass | 11 +++ 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/eclass/pypi.eclass b/eclass/pypi.eclass index 8911628994eb..8a842c450ebc 100644 --- a/eclass/pypi.eclass +++ b/eclass/pypi.eclass @@ -71,10 +71,13

[gentoo-dev] [PATCH v2 6/7] pypi.eclass: Replace pypi_sdist_url in global scope

2023-06-14 Thread Michał Górny
Introduce an internal helper for _pypi_sdist_url that doesn't require subshell, and therefore eliminate all subshells from global scope. We're nearing 952 ops / s, further 39% speedup. Signed-off-by: Michał Górny --- eclass/pypi.eclass | 53 +---

[gentoo-dev] [PATCH v2 4/7] pypi.eclass: Normalize names without subshell

2023-06-14 Thread Michał Górny
Provide an internal helper to normalize names without a subshell. This gives 535 ops / s, so a further 44% speedup. Signed-off-by: Michał Górny --- eclass/pypi.eclass | 39 +++ 1 file changed, 27 insertions(+), 12 deletions(-) diff --git a/eclass/pypi.eclass

[gentoo-dev] [PATCH v2 5/7] pypi.eclass: Translate version without subshell in common case

2023-06-14 Thread Michał Górny
Provide an internal helper to translate versions without a subshell, and use it in the common case. Now the benchmark gives 685 ops / s, which means it's another 28% speedup. Signed-off-by: Michał Górny --- eclass/pypi.eclass | 33 ++--- 1 file change

[gentoo-dev] [PATCH v2 3/7] pypi.eclass: Translate version once in the default scenario

2023-06-14 Thread Michał Górny
Instead of translating version two times, once in pypi_sdist_url and then when setting S, do it once and store the result. This gives roughly 371 ops / s, i.e. a 13% speedup. Signed-off-by: Michał Górny --- eclass/pypi.eclass | 10 ++ 1 file changed, 6 insertions(+), 4 deletions

[gentoo-dev] [PATCH v2 2/7] eclass/tests: Add pypi-bench.sh for global scope logic

2023-06-14 Thread Michał Górny
The benchmark yield roughly 327 ops / s on my machine. Signed-off-by: Michał Górny --- eclass/tests/pypi-bench.sh | 65 ++ 1 file changed, 65 insertions(+) create mode 100755 eclass/tests/pypi-bench.sh diff --git a/eclass/tests/pypi-bench.sh b/eclass/tests

[gentoo-dev] [PATCH v2 1/7] pypi.eclass: Move setting globals to a function

2023-06-14 Thread Michał Górny
Signed-off-by: Michał Górny --- eclass/pypi.eclass | 22 +++--- 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/eclass/pypi.eclass b/eclass/pypi.eclass index 13dd56fa4fec..732b0c6184ef 100644 --- a/eclass/pypi.eclass +++ b/eclass/pypi.eclass @@ -221,12 +221,20

[gentoo-dev] [PATCH v2 0/7] pypi.eclass: optimize, v2

2023-06-14 Thread Michał Górny
Hi, Only small changes: 1) added more test cases to the benchmark and improved the logic to generate readable output 2) switched extglob logic to the more readable version suggested by ulm (decided to do it after all) Michał Górny (7): pypi.eclass: Move setting globals to a function

Re: [gentoo-dev] [PATCH 7/7] pypi.eclass: Avoid subshell for extglob setting

2023-06-13 Thread Michał Górny
On Tue, 2023-06-13 at 11:07 +0200, Ulrich Mueller wrote: > > > > > > On Tue, 13 Jun 2023, Michał Górny wrote: > > >  _pypi_normalize_name() { > >   local name=${1} > > - local shopt_save=$(shopt -p extglob) > > - shopt -s extglob > > +

[gentoo-dev] [PATCH 7/7] pypi.eclass: Avoid subshell for extglob setting

2023-06-12 Thread Michał Górny
/gentoo/pull/31404 Signed-off-by: Michał Górny --- eclass/pypi.eclass | 9 ++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/eclass/pypi.eclass b/eclass/pypi.eclass index eade3d955ab5..618fde5e3de8 100644 --- a/eclass/pypi.eclass +++ b/eclass/pypi.eclass @@ -71,10 +71,13

[gentoo-dev] [PATCH 6/7] pypi.eclass: Replace pypi_sdist_url in global scope

2023-06-12 Thread Michał Górny
Introduce an internal helper for _pypi_sdist_url that doesn't require subshell, and therefore eliminate all subshells from global scope. We're nearing 952 ops / s, further 39% speedup. Signed-off-by: Michał Górny --- eclass/pypi.eclass | 53 +---

[gentoo-dev] [PATCH 5/7] pypi.eclass: Translate version without subshell in common case

2023-06-12 Thread Michał Górny
Provide an internal helper to translate versions without a subshell, and use it in the common case. Now the benchmark gives 685 ops / s, which means it's another 28% speedup. Signed-off-by: Michał Górny --- eclass/pypi.eclass | 31 +-- 1 file changed, 21 inser

[gentoo-dev] [PATCH 4/7] pypi.eclass: Normalize names without subshell

2023-06-12 Thread Michał Górny
Provide an internal helper to normalize names without a subshell. This gives 535 ops / s, so a further 44% speedup. Signed-off-by: Michał Górny --- eclass/pypi.eclass | 39 +++ 1 file changed, 27 insertions(+), 12 deletions(-) diff --git a/eclass/pypi.eclass

[gentoo-dev] [PATCH 3/7] pypi.eclass: Translate version once in the default scenario

2023-06-12 Thread Michał Górny
Instead of translating version two times, once in pypi_sdist_url and then when setting S, do it once and store the result. This gives roughly 371 ops / s, i.e. a 13% speedup. Signed-off-by: Michał Górny --- eclass/pypi.eclass | 10 ++ 1 file changed, 6 insertions(+), 4 deletions

[gentoo-dev] [PATCH 2/7] eclass/tests: Add pypi-bench.sh for global scope logic

2023-06-12 Thread Michał Górny
The benchmark yield roughly 327 ops / s on my machine. Signed-off-by: Michał Górny --- eclass/tests/pypi-bench.sh | 23 +++ 1 file changed, 23 insertions(+) create mode 100755 eclass/tests/pypi-bench.sh diff --git a/eclass/tests/pypi-bench.sh b/eclass/tests/pypi-bench.sh

[gentoo-dev] [PATCH 1/7] pypi.eclass: Move setting globals to a function

2023-06-12 Thread Michał Górny
Signed-off-by: Michał Górny --- eclass/pypi.eclass | 22 +++--- 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/eclass/pypi.eclass b/eclass/pypi.eclass index 13dd56fa4fec..732b0c6184ef 100644 --- a/eclass/pypi.eclass +++ b/eclass/pypi.eclass @@ -221,12 +221,20

[gentoo-dev] [PATCH 0/7] pypi.eclass: performance optimizations

2023-06-12 Thread Michał Górny
z for the shopt idea, that is responsible the final big speedup. -- Best regards, Michał Górny Michał Górny (7): pypi.eclass: Move setting globals to a function eclass/tests: Add pypi-bench.sh for global scope logic pypi.eclass: Translate version once in the default scenario pypi.e

[gentoo-dev] Last rites: dev-python/doctest-ignore-unicode

2023-06-09 Thread Michał Górny
# Michał Górny (2023-06-09) # Requires dev-python/nose.  Last activity in 2013.  No reverse # dependencies left. # Removal on 2023-07-09.  Bug #888245. dev-python/doctest-ignore-unicode -- Best regards, Michał Górny

[gentoo-dev] Last rites: dev-python/ntlm-auth

2023-06-03 Thread Michał Górny
# Michał Górny (2023-06-03) # Obsoleted by dev-python/pyspnego.  No revdeps left. # Removal on 2023-07-03.  Bug #895004. dev-python/ntlm-auth -- Best regards, Michał Górny

[gentoo-dev] [PATCH 7/7] dev-python/atpublic: Bump to 3.1.2

2023-06-02 Thread Michał Górny
Signed-off-by: Michał Górny --- dev-python/atpublic/Manifest | 1 + dev-python/atpublic/atpublic-3.1.2.ebuild | 32 +++ 2 files changed, 33 insertions(+) create mode 100644 dev-python/atpublic/atpublic-3.1.2.ebuild diff --git a/dev-python/atpublic/Manifest b

[gentoo-dev] [PATCH 6/7] distutils-r1.eclass: Add support for pdm-backend

2023-06-02 Thread Michał Górny
Signed-off-by: Michał Górny --- eclass/distutils-r1.eclass | 16 1 file changed, 16 insertions(+) diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass index 2f227fe75910..0c0fd6790f9c 100644 --- a/eclass/distutils-r1.eclass +++ b/eclass/distutils-r1.eclass

[gentoo-dev] [PATCH 5/7] dev-python/pdm-backend: Rename of dev-python/pdm-pep517, 2.0.7

2023-06-02 Thread Michał Górny
Signed-off-by: Michał Górny --- dev-python/pdm-backend/Manifest | 1 + dev-python/pdm-backend/metadata.xml | 13 .../pdm-backend/pdm-backend-2.0.7.ebuild | 65 +++ 3 files changed, 79 insertions(+) create mode 100644 dev-python/pdm-backend

[gentoo-dev] [PATCH 4/7] distutils-r1.eclass: Remove support for old meson-python

2023-06-02 Thread Michał Górny
Signed-off-by: Michał Górny --- eclass/distutils-r1.eclass | 51 +++--- 1 file changed, 15 insertions(+), 36 deletions(-) diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass index 12ed6e77b969..2f227fe75910 100644 --- a/eclass/distutils-r1.eclass

[gentoo-dev] [PATCH 3/7] distutils-r1.eclass: Remove support for old maturin

2023-06-02 Thread Michał Górny
Signed-off-by: Michał Górny --- eclass/distutils-r1.eclass | 44 +- 1 file changed, 15 insertions(+), 29 deletions(-) diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass index f3325d5bd8f4..12ed6e77b969 100644 --- a/eclass/distutils-r1.eclass

[gentoo-dev] [PATCH 2/7] dev-python/pycairo: Enable py3.12

2023-06-02 Thread Michał Górny
Signed-off-by: Michał Górny --- dev-python/pycairo/pycairo-1.23.0.ebuild | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dev-python/pycairo/pycairo-1.23.0.ebuild b/dev-python/pycairo/pycairo-1.23.0.ebuild index 79497ecd3bc0..365a807bab8c 100644 --- a/dev-python/pycairo

[gentoo-dev] [PATCH 1/7] distutils-r1.eclass: Do not force stdlib distutils on py3.12+

2023-06-02 Thread Michał Górny
Do not force SETUPTOOLS_USE_DISTUTILS=stdlib on Python 3.12+ (in non-PEP517 mode), as stdlib no longer supplies distutils there. Thanks to Sam for the report! Signed-off-by: Michał Górny --- eclass/distutils-r1.eclass | 8 +--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a

[gentoo-dev] [PATCH 0/7] distutils-r1.eclass: py3.12+ non-PEP517 fix, pdm-backend support and deprecated logic cleanup

2023-06-02 Thread Michał Górny
Hi, A quick patchset that: 1. fixes py3.12+ in non-PEP517 build mode 2. removes support for old maturin and meson-python versions 3. adds support for pdm-backend (a rename of pdm-pep517, sigh) Michał Górny (7): distutils-r1.eclass: Do not force stdlib distutils on py3.12+ dev-python

Re: [gentoo-dev] Re: EGO_SUM

2023-06-02 Thread Michał Górny
tains dozens to hundreds of different packages from dozens of different authors. You can't seriously expect anyone to be able to reasonably establish trust to all of them. In the end, gentoo.git security model is entirely reliant on the developer verifying the final product and signing on it. Everything else is untrustworthy noise. -- Best regards, Michał Górny

[gentoo-dev] Last rites: dev-python/http-parser

2023-05-31 Thread Michał Górny
# Michał Górny (2023-05-31) # Unmaintained.  Last commit in 2020.  Does not work with Python 3.12. # No revdeps. # Removal on 2023-06-30.  Bug #907495. dev-python/http-parser -- Best regards, Michał Górny

[gentoo-dev] [PATCH 4/4] python-utils-r1.eclass: Bump min dep versions

2023-05-27 Thread Michał Górny
From: Arthur Zamarin Signed-off-by: Arthur Zamarin Signed-off-by: Michał Górny --- eclass/python-utils-r1.eclass | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass index 40792714cc56..52e9e061d6bd 100644

[gentoo-dev] [PATCH 3/4] distutils-r1.eclass: Bump min dep versions

2023-05-27 Thread Michał Górny
From: Arthur Zamarin Signed-off-by: Arthur Zamarin Signed-off-by: Michał Górny --- eclass/distutils-r1.eclass | 18 +- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass index bea3cea56c99..0ccd59fb6c78 100644

[gentoo-dev] [PATCH 2/4] distutils-r1.eclass: Include dev-python/cython version in log

2023-05-27 Thread Michał Górny
Signed-off-by: Michał Górny --- eclass/distutils-r1.eclass | 5 + 1 file changed, 5 insertions(+) diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass index 6835444d3c5f..bea3cea56c99 100644 --- a/eclass/distutils-r1.eclass +++ b/eclass/distutils-r1.eclass @@ -925,6 +925,11

[gentoo-dev] [PATCH 1/4] distutils-r1.eclass: Use CYTHON_FORCE_REGEN=1

2023-05-27 Thread Michał Górny
Signed-off-by: Michał Górny --- eclass/distutils-r1.eclass | 4 1 file changed, 4 insertions(+) diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass index ec1dd08b197c..6835444d3c5f 100644 --- a/eclass/distutils-r1.eclass +++ b/eclass/distutils-r1.eclass @@ -1828,6 +1828,10

Re: [gentoo-dev] EAPI 9 feature proposal

2023-05-20 Thread Michał Górny
On Sat, 2023-05-20 at 13:11 -0500, Oskari Pirhonen wrote: > On Wed, May 17, 2023 at 08:19:48 +0200, Michał Górny wrote: > > On Wed, 2023-05-17 at 00:03 -0500, Oskari Pirhonen wrote: > > > We agreed that it could potentially be useful as something that's > > > avail

[gentoo-dev] Last rites: dev-python/pep517

2023-05-19 Thread Michał Górny
# Michał Górny (2023-05-19) # Replaced by dev-python/pyproject-hooks.  No revdeps left. # Removal on 2023-06-18.  Bug #906789. dev-python/pep517 -- Best regards, Michał Górny

Re: [gentoo-dev] EAPI 9 feature proposal

2023-05-16 Thread Michał Górny
. I don't think this qualifies as either. I don't immediately see any use case for it myself. -- Best regards, Michał Górny

[gentoo-dev] Last rites: dev-python/toml

2023-05-16 Thread Michał Górny
# Michał Górny (2023-05-16) # Unmaintained since 2020.  Does not implement TOML 1.0, buggy. # Alternatives include built-in tomllib module (Python 3.11+), # dev-python/tomli along with dev-python/tomli-w, dev-python/tomlkit. # Removal on 2023-06-15.  Bug #878651. dev-python/toml -- Best regards

[gentoo-dev] Last rites: games-emulation/pcsxr

2023-05-12 Thread Michał Górny
# Michał Górny (2023-05-13) # Unmaintained.  Does not build anymore.  No activity upstream # since 2019, the build system is messy and fixing the issues would take # a lot of effort. # Removal on 2023-06-12.  Bug #791034. games-emulation/pcsxr -- Best regards, Michał Górny

Re: [gentoo-dev] Re: EGO_SUM

2023-05-08 Thread Michał Górny
polate the future. > > My back-of-the-envolope calculation was 256 Go-packages, with each > having 1 MiB. An analysis of the three on 2022-02-16, at the commit > right before Minikube and k3s were cleaned, showed that only five > packages out of 120 had larger package-directory sizes than one MiB. > > 256 Go-packages is roughly the number of Go-packages we have right now. > Assuming they all have a package-directory size of 1.6 MiB, the most > extensive EGO_SUM package the analysis yielded so far, we end up with > 410 MiB. > > The point you criticize was that a system able to handle the current > size of ::gentoo would also be able to manage an additional 256 MiB. The > point still stands if we exchange the 256 MiB with 410 MiB. > > Furthermore, both numbers, 256 MiB and 410 MiB, are based on the > over-approximation that every EGO_SUM package uses 1.6 MiB, which is > almost certainly not the case. The mean package-directory size of a > EGO_SUM using package at 2022-02-16 was 280 KiB. > Please extend this analysis to Manifest changes over time, and how they are going to impact total gentoo.git size. -- Best regards, Michał Górny

[gentoo-dev] Last rites: media-gfx/cura and dependencies

2023-05-05 Thread Michał Górny
# Michał Górny (2023-05-05) # The Gentoo packages are severely out of date, and they haven't been # ported to Python 3.11.  They are hard to keep working, and there # are better alternatives available.  The suggested replacements are: # media-gfx/prusaslicer, media-gfx/superslicer and orcas

[gentoo-dev] Last rites: dev-python/thunarx-python

2023-05-02 Thread Michał Górny
# Michał Górny (2023-05-03) # Unmaintained upstream.  Fails to build without sys-apps/which, fails # with modern autoconf. # Removal on 2023-06-02.  Bug #896896. dev-python/thunarx-python -- Best regards, Michał Górny

Re: [gentoo-dev] Re: EGO_SUM

2023-04-28 Thread Michał Górny
On Fri, 2023-04-28 at 08:59 +0200, Florian Schmaus wrote: > On 27/04/2023 14.54, Michał Górny wrote: > > On Thu, 2023-04-27 at 09:58 +0200, Florian Schmaus wrote: > > > Disk space is cheap. > > > > No, it's not. Gentoo supports more hardware than your average

Re: [gentoo-dev] Re: EGO_SUM

2023-04-27 Thread Michał Górny
this, nor are full > git clones for development. > Err, but full gentoo.git clones are definitely affected! After all, that's where huge ebuilds and their Manifests land first. -- Best regards, Michał Górny

Re: [gentoo-dev] Re: EGO_SUM

2023-04-27 Thread Michał Górny
find a solution that would work for everyone instead of showing arrogance and lack of concern for users outside your "majority" view of Gentoo. -- Best regards, Michał Górny

[gentoo-dev] [PATCH 5/5] distutils-r1.eclass: Detect missing DISTUTILS_EXT

2023-04-20 Thread Michał Górny
Detect when Python packages install extensions and warn about missing DISTUTILS_EXT appropriately. Signed-off-by: Michał Górny --- eclass/distutils-r1.eclass | 10 ++ 1 file changed, 10 insertions(+) diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass index

[gentoo-dev] [PATCH 4/5] distutils-r1.eclass: Issue build_ext only w/ DISTUTILS_EXT

2023-04-20 Thread Michał Górny
Issue the explicit `build_ext` command call only if `DISTUTILS_EXT` is set. This should avoid a few false positives where the command was called due to irrelevant .c files being present in the source tree. Signed-off-by: Michał Górny --- eclass/distutils-r1.eclass | 17 +++-- 1

[gentoo-dev] [PATCH 3/5] distutils-r1.eclass: Support IUSE=debug for DISTUTILS_EXT

2023-04-20 Thread Michał Górny
Add IUSE=debug when DISTUTILS_EXT is set, and use it to control assertions via appending -DNDEBUG or -UNDEBUG to CPPFLAGS. Signed-off-by: Michał Górny --- eclass/distutils-r1.eclass | 7 +++ 1 file changed, 7 insertions(+) diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1

[gentoo-dev] [PATCH 2/5] distutils-r1.eclass: Add PYTHON_DEPS to DEPEND when DISTUTILS_EXT

2023-04-20 Thread Michał Górny
Add `${PYTHON_DEPS}` to `DEPEND` (i.e. `SYSROOT` dependencies) when building extensions. This is necessary to support cross-compilations correctly. Originally proposed by Raul E Rangel . Closes: https://github.com/gentoo/gentoo/pull/30469 Signed-off-by: Michał Górny --- eclass/distutils-r1

[gentoo-dev] [PATCH 1/5] distutils-r1.eclass: Add DISTUTILS_EXT control variable

2023-04-20 Thread Michał Górny
Add a control variable that should be set in ebuilds that build C, Cython, Rust extensions, etc. Signed-off-by: Michał Górny --- eclass/distutils-r1.eclass | 7 +++ 1 file changed, 7 insertions(+) diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass index 09684781de2a

[gentoo-dev] [PATCH 0/5] distutils-r1.eclass: DISTUTILS_EXT to enable features specific to building extensions

2023-04-20 Thread Michał Górny
ditionally (unless you're using DISTUTILS_OPTIONAL) rather than conditionally to the flag responsible for the extension but that's a minor point anyway. -- Best regards, Michał Górny Michał Górny (5): distutils-r1.eclass: Add DISTUTILS_EXT control variable distutils-r1.eclass: Add PYTHON

Re: [gentoo-dev] [PATCH] distutils-r1.eclass: Add PYTHON_DEPS to DEPEND unconditionally

2023-04-19 Thread Michał Górny
On Wed, 2023-04-12 at 17:58 +0200, Michał Górny wrote: > From: Raul E Rangel > > Python distutils packages that build C extensions are currently not > declaring PYTHON_DEPS as part of their DEPEND declaration. This results > in build errors when cross compiling using ROOT=. >

[gentoo-dev] Last rites: dev-python/picklemagic

2023-04-13 Thread Michał Górny
# Michał Górny (2023-04-13) # Lack of support for Python 3.11.  The current version is from 2016. # No revdeps.  Removal on 2023-05-13. dev-python/picklemagic -- Best regards, Michał Górny

[gentoo-dev] Last rites: dev-python/django-tagging, net-analyzer/graphite-web

2023-04-13 Thread Michał Górny
# Michał Górny (2023-04-13) # django-tagging is broken on Python 3.11 and unmaintained upstream # (last commit in 2020).  Graphite-web is its only revdep and it is # replaced by app-metrics/carbonapi-web. # Removal on 2023-05-13.  Bug #897056. dev-python/django-tagging net-analyzer/graphite-web

[gentoo-dev] Last rites: dev-python/Pyro4

2023-04-13 Thread Michał Górny
Górny (2023-04-13) -- Best regards, Michał Górny

<    1   2   3   4   5   6   7   8   9   10   >