Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 938246 - dev-python/pythran - "TypeError: metaclass conflict: the metaclass of a derived class must be a (non-strict) subclass of the metaclasses of all" when building dev-python/scipy
Summary: dev-python/pythran - "TypeError: metaclass conflict: the metaclass of a deriv...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Python Gentoo Team
URL:
Whiteboard:
Keywords:
: 938248 (view as bug list)
Depends on:
Blocks:
 
Reported: 2024-08-20 16:04 UTC by Toralf Förster
Modified: 2024-08-20 19:05 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
emerge-info.txt (emerge-info.txt,17.69 KB, text/plain)
2024-08-20 16:04 UTC, Toralf Förster
Details
dev-python:scipy-1.14.0-r1:20240820-084302.log.xz (dev-python:scipy-1.14.0-r1:20240820-084302.log.xz,11.78 KB, application/x-xz)
2024-08-20 16:04 UTC, Toralf Förster
Details
emerge-history.txt (emerge-history.txt,36.43 KB, text/plain)
2024-08-20 16:04 UTC, Toralf Förster
Details
environment (environment,183.22 KB, text/plain)
2024-08-20 16:04 UTC, Toralf Förster
Details
etc.portage.tar.xz (etc.portage.tar.xz,35.06 KB, application/x-xz)
2024-08-20 16:04 UTC, Toralf Förster
Details
qlist-info.txt (qlist-info.txt,91.62 KB, text/plain)
2024-08-20 16:04 UTC, Toralf Förster
Details
temp.tar.xz (temp.tar.xz,49.12 KB, application/x-xz)
2024-08-20 16:04 UTC, Toralf Förster
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Toralf Förster gentoo-dev 2024-08-20 16:04:02 UTC
  File "/usr/lib/python3.12/site-packages/pythran/__init__.py", line 127, in __getattr__
    import pythran.toolchain
  File "/usr/lib/python3.12/site-packages/pythran/toolchain.py", line 11, in <module>
    from pythran.dist import PythranExtension, PythranBuildExt
  File "/usr/lib/python3.12/site-packages/pythran/dist.py", line 142, in <module>
    class PythranBuildExt(PythranBuildExtMixIn, LegacyBuildExt, metaclass=PythranBuildExtMeta):
TypeError: metaclass conflict: the metaclass of a derived class must be a (non-strict) subclass of the metaclasses of all its bases
[558/1383] /usr/bin/cython --cplus -3 --fast-fail --output-file scipy/stats/_biasedurn.cpython-312-x86_64-linux-gnu.so.p/_biasedurn.cpp --include-dir . ../scipy-1.14.0/scipy/stats/_biasedurn.pyx
[559/1383] /usr/bin/cython -3 --fast-fail --output-file scipy/stats/_levy_stable/levyst.cpython-312-x86_64-linux-gnu.so.p/levyst.c --include-dir . ../scipy-1.14.0/scipy/stats/_levy_stable/levyst.pyx

  -------------------------------------------------------------------

  This is an unstable amd64 chroot image at a tinderbox (==build bot)
  name: 23.0_hardened_systemd-20240819-222008

  UNMASKED:
    Please re-assign to toolchain@ if you get a test failure in C, C++, or Fortran code which makes no sense.
  <sys-devel/gcc-15.0.9999:15
    Please re-assign to ztrawhcse@ if you cannot reproduced it with regular meson.
  <dev-build/meson-9999

  The attached etc.portage.tar.xz has all details.
  -------------------------------------------------------------------

gcc-config -l:
 [1] x86_64-pc-linux-gnu-15 *
clang/llvm (if any):
Python 3.12.5
Available Ruby profiles:
  [1]   ruby31 (with Rubygems)
  [2]   ruby32 (with Rubygems)
  [3]   ruby33 (with Rubygems) *
Available Rust versions:
  [1]   rust-bin-1.80.1 *
The following VMs are available for generation-2:
*)	Eclipse Temurin JDK 21.0.4_p7 [openjdk-bin-21]
Available Java Virtual Machines:
  [1]   openjdk-bin-21  system-vm

The Glorious Glasgow Haskell Compilation System, version 9.2.8
php cli (if any):

  HEAD of ::gentoo
commit 2f84984afa59385272b629514c30dbdd9026f611
Author: Repository mirror & CI <repomirrorci@gentoo.org>
Date:   Tue Aug 20 07:34:14 2024 +0000

    2024-08-20 07:34:13 UTC

emerge -qpvO =dev-python/scipy-1.14.0-r1
[ebuild  N    ] dev-python/scipy-1.14.0-r1  USE="fortran (test-rust) -debug -doc -test" PYTHON_TARGETS="python3_12 -pypy3 -python3_10 -python3_11 -python3_13"
Comment 1 Toralf Förster gentoo-dev 2024-08-20 16:04:03 UTC
Created attachment 900792 [details]
emerge-info.txt
Comment 2 Toralf Förster gentoo-dev 2024-08-20 16:04:04 UTC
Created attachment 900793 [details]
dev-python:scipy-1.14.0-r1:20240820-084302.log.xz
Comment 3 Toralf Förster gentoo-dev 2024-08-20 16:04:05 UTC
Created attachment 900794 [details]
emerge-history.txt
Comment 4 Toralf Förster gentoo-dev 2024-08-20 16:04:06 UTC
Created attachment 900795 [details]
environment
Comment 5 Toralf Förster gentoo-dev 2024-08-20 16:04:07 UTC
Created attachment 900796 [details]
etc.portage.tar.xz
Comment 6 Toralf Förster gentoo-dev 2024-08-20 16:04:08 UTC
Created attachment 900797 [details]
qlist-info.txt
Comment 7 Toralf Förster gentoo-dev 2024-08-20 16:04:09 UTC
Created attachment 900798 [details]
temp.tar.xz
Comment 8 Toralf Förster gentoo-dev 2024-08-20 16:21:15 UTC
*** Bug 938248 has been marked as a duplicate of this bug. ***
Comment 9 Eli Schwartz gentoo-dev 2024-08-20 16:25:30 UTC
This is an issue with invoking pythran as a build tool.
Comment 10 Eli Schwartz gentoo-dev 2024-08-20 16:36:27 UTC
Pythran also fails tests with the updated setuptools:



ERROR pythran/tests/test_xdoc.py - TypeError: metaclass conflict: the metaclass of a derived class must be a (non-strict) subclass of the metaclasses of all its bases
============================= 440 errors in 12.15s =============================
 * ERROR: dev-python/pythran-0.16.1::gentoo failed (test phase):
Comment 11 Larry the Git Cow gentoo-dev 2024-08-20 18:14:29 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=94a8c299e95685653848d058c223168970b7f2c0

commit 94a8c299e95685653848d058c223168970b7f2c0
Author:     Eli Schwartz <eschwartz@gentoo.org>
AuthorDate: 2024-08-20 16:45:26 +0000
Commit:     Eli Schwartz <eschwartz@gentoo.org>
CommitDate: 2024-08-20 18:12:04 +0000

    dev-python/pythran: mark as incompatible with setuptools 73
    
    setuptools has a high rate of churn and now tends to frequently break
    consumers that subclass or otherwise use the distutils API in complex
    ways. Today's incompatibility, in particular, happens due to metaclass
    incompatibilities introduced in setuptools.
    
    Pythran fails hard with this (unstable) version of setuptools. Prevent
    the two from being installed together while we wait for a fix to be
    determined.
    
    Bug: https://github.com/pypa/setuptools/pull/4503
    Bug: https://github.com/serge-sans-paille/pythran/issues/2228
    Bug: https://bugs.gentoo.org/938246
    Signed-off-by: Eli Schwartz <eschwartz@gentoo.org>

 dev-python/pythran/{pythran-0.16.1.ebuild => pythran-0.16.1-r1.ebuild} | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
Comment 12 Larry the Git Cow gentoo-dev 2024-08-20 19:05:00 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0a02eddbaf4fc7e9a2063df24577ff51a7e6e49d

commit 0a02eddbaf4fc7e9a2063df24577ff51a7e6e49d
Author:     Eli Schwartz <eschwartz@gentoo.org>
AuthorDate: 2024-08-20 18:49:21 +0000
Commit:     Eli Schwartz <eschwartz@gentoo.org>
CommitDate: 2024-08-20 19:02:49 +0000

    dev-python/setuptools: add 73.0.1
    
    Fixes regression in 73.0.0
    
    Closes: https://bugs.gentoo.org/938246
    Signed-off-by: Eli Schwartz <eschwartz@gentoo.org>

 dev-python/setuptools/Manifest                                          | 2 +-
 .../setuptools/{setuptools-73.0.0.ebuild => setuptools-73.0.1.ebuild}   | 0
 2 files changed, 1 insertion(+), 1 deletion(-)

Additionally, it has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e140aa4afe45496f7c8c62b6c6155f174bc99ffd

commit e140aa4afe45496f7c8c62b6c6155f174bc99ffd
Author:     Eli Schwartz <eschwartz@gentoo.org>
AuthorDate: 2024-08-20 19:01:24 +0000
Commit:     Eli Schwartz <eschwartz@gentoo.org>
CommitDate: 2024-08-20 19:02:49 +0000

    dev-python/pythran: unpin setuptools again and allow the fixed version
    
    Bug: https://bugs.gentoo.org/938246
    Signed-off-by: Eli Schwartz <eschwartz@gentoo.org>

 dev-python/pythran/pythran-0.16.1-r1.ebuild | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)