Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 909035 - dev-util/maturin-1.1.0 - /.../environment:line <snip>: .../maturin: No such file or directory (dev-python/scikit-build-core breaks other PEP517 backends)
Summary: dev-util/maturin-1.1.0 - /.../environment:line <snip>: .../maturin: No such f...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Ionen Wolkens
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-06-23 15:08 UTC by Toralf Förster
Modified: 2023-07-08 05:23 UTC (History)
4 users (show)

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


Attachments
emerge-info.txt (emerge-info.txt,17.52 KB, text/plain)
2023-06-23 15:08 UTC, Toralf Förster
Details
dev-util:maturin-1.1.0:20230623-123836.log (dev-util:maturin-1.1.0:20230623-123836.log,26.04 KB, text/plain)
2023-06-23 15:08 UTC, Toralf Förster
Details
emerge-history.txt (emerge-history.txt,45.70 KB, text/plain)
2023-06-23 15:08 UTC, Toralf Förster
Details
environment (environment,227.28 KB, text/plain)
2023-06-23 15:08 UTC, Toralf Förster
Details
etc.portage.tar.xz (etc.portage.tar.xz,9.50 KB, application/x-xz)
2023-06-23 15:08 UTC, Toralf Förster
Details
logs.tar.xz (logs.tar.xz,2.67 KB, application/x-xz)
2023-06-23 15:08 UTC, Toralf Förster
Details
temp.tar.xz (temp.tar.xz,43.37 KB, application/x-xz)
2023-06-23 15:08 UTC, Toralf Förster
Details
content-of-portage-dir.txt.xz (content-of-portage-dir.txt.xz,138.93 KB, application/x-bzip)
2023-06-23 18:37 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 2023-06-23 15:08:37 UTC
too long lines were shrinked:

 *   Installing maturin-1.1.0-cp311-cp311-linux_x86_64.whl to /var/tmp/portage/dev-util/maturin-1.1.0/work/maturin-1.1.0-python3_11/install
gpep517 install-wheel --destdir=/var/tmp/portage/dev-util/maturin-1.1.0/work/maturin-1.1.0-python3_11/install --interpreter=/usr/bin/python3.11 --prefix=/usr --optimize=all /var/tmp/portage/dev-util/maturin-1.1.0/work/maturin-1.1.0-python3_11/wheel/maturin-1.1.0-cp311-cp311-linux_x86_64.whl
2023-06-23 12:38:45,514 gpep517 INFO Installing /var/tmp/portage/dev-util/maturin-1.1.0/work/maturin-1.1.0-python3_11/wheel/maturin-1.1.0-cp311-cp311-linux_x86_64.whl into /var/tmp/portage/dev-util/maturin-1.1.0/work/maturin-1.1.0-python3_11/install
2023-06-23 12:38:45,539 gpep517 INFO Installation complete
 * Using python3.11 in global scope
 * python3_11: running distutils-r1_run_phase python_compile_all
/var/tmp/portage/dev-util/maturin-1.1.0/temp/environment: line 3603: target/release/maturin: No such file or directory
 * ERROR: dev-util/maturin-1.1.0::gentoo failed (compile phase):
 *   (no error message)

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

  This is an unstable amd64 chroot image at a tinderbox (==build bot)
  name: 17.1_no_multilib_systemd_merged_usr-20230622-234410

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

gcc-config -l:
 [1] x86_64-pc-linux-gnu-13 *
clang/llvm (if any):
/usr/lib/llvm/16
16.0.6
Python 3.11.4
Available Ruby profiles:
  [1]   ruby31 (with Rubygems) *
Available Rust versions:
  [1]   rust-1.69.0 *
The following VMs are available for generation-2:
*)	Eclipse Temurin JDK 17.0.6_p10 [openjdk-bin-17]
2)	Eclipse Temurin JDK 8.362_p09 [openjdk-bin-8]
Available Java Virtual Machines:
  [1]   openjdk-bin-8 
  [2]   openjdk-bin-17  system-vm

php cli (if any):
go version go1.20.5 linux/amd64

  HEAD of ::gentoo
commit 63c269bb13ac19c97a751b06222cd01220eb0590
Author: Repository mirror & CI <repomirrorci@gentoo.org>
Date:   Fri Jun 23 11:16:50 2023 +0000

    Merge updates from master

emerge -qpvO dev-util/maturin
[ebuild  N    ] dev-util/maturin-1.1.0  USE="ssl -debug -doc -test" PYTHON_TARGETS="python3_11 -pypy3 -python3_10 -python3_12"
Comment 1 Toralf Förster gentoo-dev 2023-06-23 15:08:38 UTC
Created attachment 864459 [details]
emerge-info.txt
Comment 2 Toralf Förster gentoo-dev 2023-06-23 15:08:39 UTC
Created attachment 864460 [details]
dev-util:maturin-1.1.0:20230623-123836.log
Comment 3 Toralf Förster gentoo-dev 2023-06-23 15:08:40 UTC
Created attachment 864461 [details]
emerge-history.txt
Comment 4 Toralf Förster gentoo-dev 2023-06-23 15:08:41 UTC
Created attachment 864462 [details]
environment
Comment 5 Toralf Förster gentoo-dev 2023-06-23 15:08:42 UTC
Created attachment 864463 [details]
etc.portage.tar.xz
Comment 6 Toralf Förster gentoo-dev 2023-06-23 15:08:42 UTC
Created attachment 864464 [details]
logs.tar.xz
Comment 7 Toralf Förster gentoo-dev 2023-06-23 15:08:43 UTC
Created attachment 864465 [details]
temp.tar.xz
Comment 8 Ionen Wolkens gentoo-dev 2023-06-23 17:20:18 UTC
Can't reproduce so far. I have roughly same related packages installed including same setuptools{,-rust} (thought it would be due to 68.0.0 but I have it), except using rust-1.70 and not having tried no-multilib/merged-usr

For me it runs `build_rust` followed by `cargo build` fine but here seems like it skipped that altogether and thus built nothing (aborts when it tries to generate completion files given the built maturin is not there).

Maybe python@ has an idea? As far as I can tell this isn't specific to maturin and I assume something else is going on.
Comment 9 Ionen Wolkens gentoo-dev 2023-06-23 17:34:31 UTC
(In reply to Ionen Wolkens from comment #8)
> Maybe python@ has an idea? As far as I can tell this isn't specific to
> maturin and I assume something else is going on.
Might add that this may potentially be causing semi-empty packages to be installed. In this case it just aborted because it checked if the built files were there.
Comment 10 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2023-06-23 17:49:33 UTC
Are you able to list the contents of image/?
Comment 11 Toralf Förster gentoo-dev 2023-06-23 18:33:13 UTC
(In reply to Michał Górny from comment #10)
> Are you able to list the contents of image/?

no, b/c that dir isn't there.
Comment 12 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2023-06-23 18:34:03 UTC
(In reply to Toralf Förster from comment #11)
> (In reply to Michał Górny from comment #10)
> > Are you able to list the contents of image/?
> 
> no, b/c that dir isn't there.

Ah, sorry, ${BUILD_DIR}/install, i.e. ${WORKDIR}/*-python*/install.
Comment 13 Toralf Förster gentoo-dev 2023-06-23 18:37:21 UTC
Created attachment 864500 [details]
content-of-portage-dir.txt.xz
Comment 14 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2023-06-23 18:59:39 UTC
I'm afraid I have no clue what's wrong either.  It looks to be invoking some Rust-related logic but it seems as if it didn't "see" the executable to build.

@toralf, did you hit problems with maturin before?  Or is it the first time?  I'm slightly worried this might be some heisenbug.
Comment 15 Toralf Förster gentoo-dev 2023-06-23 19:11:14 UTC
(In reply to Michał Górny from comment #14)

> @toralf, did you hit problems with maturin before?  Or is it the first time?
> I'm slightly worried this might be some heisenbug.

It builds fine at most images - hit it the first time IIRC.
At this affected image the issue is reproducible.
Comment 16 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2023-06-23 19:40:58 UTC
Now this is worrying.  Would you be able to give us access to SSH into the container?  Or alternatively copy/download the image?
Comment 17 Toralf Förster gentoo-dev 2023-06-24 06:56:12 UTC
(In reply to Michał Górny from comment #16)
> Now this is worrying.  Would you be able to give us access to SSH into the
> container?  Or alternatively copy/download the image?

The image 17.1_no_multilib_systemd_merged_usr-20230622-234410.tar.xz can be downloaded from [1]. Examples for chroot or bubblewrap are under [2]. The "webserver" is a python script [3] - if that doesn't work, I'll move the archive to another site.


[1] http://tinderbox.zwiebeltoralf.de:31560
[2] https://github.com/toralf/tinderbox/blob/main/bin/bwrap.sh
[3] https://github.com/toralf/fuzz-utils/blob/main/simple-http-server.py
Comment 18 Ionen Wolkens gentoo-dev 2023-06-24 13:29:34 UTC
I can reproduce using the image, but I still have no idea what's up (tried a few things like downgrading setuptools, but it doesn't help).

Just had to chroot into it, tar -xf maturin, and then get the same by running gep517 directly.

I find the:
   2023-06-24 13:23:11,887 root INFO creating build/lib/maturin
kind of curious, considering if I run that command on my own system where it works fine I get:
  2023-06-24 09:27:16,229 root INFO creating build/lib.linux-x86_64-cpython-311/maturin

Anyhow, don't think I know enough about setuptools to know where to look.

/tmp/maturin-1.1.0 # gpep517 build-wheel --output-fd 2 --wheel-dir dist            
2023-06-24 13:23:11,609 gpep517 INFO Building wheel via backend setuptools.build_meta
2023-06-24 13:23:11,837 root INFO running bdist_wheel
2023-06-24 13:23:11,874 root INFO running build
2023-06-24 13:23:11,874 root INFO running build_py
2023-06-24 13:23:11,887 root INFO creating build
2023-06-24 13:23:11,887 root INFO creating build/lib
2023-06-24 13:23:11,887 root INFO creating build/lib/maturin
2023-06-24 13:23:11,887 root INFO copying maturin/import_hook.py -> build/lib/maturin
2023-06-24 13:23:11,887 root INFO copying maturin/__init__.py -> build/lib/maturin
2023-06-24 13:23:11,887 root INFO copying maturin/__main__.py -> build/lib/maturin
2023-06-24 13:23:11,887 root INFO running egg_info
2023-06-24 13:23:11,913 root INFO writing maturin.egg-info/PKG-INFO
2023-06-24 13:23:11,913 root INFO writing dependency_links to maturin.egg-info/dependency_links.txt
2023-06-24 13:23:11,914 root INFO writing requirements to maturin.egg-info/requires.txt
2023-06-24 13:23:11,914 root INFO writing top-level names to maturin.egg-info/top_level.txt
2023-06-24 13:23:11,952 setuptools_scm.file_finder_git ERROR listing git files failed - pretending there aren't any
2023-06-24 13:23:11,953 root INFO reading manifest file 'maturin.egg-info/SOURCES.txt'
2023-06-24 13:23:11,953 root INFO reading manifest template 'MANIFEST.in'
2023-06-24 13:23:11,954 root WARNING warning: no files found matching '*.json' under directory 'src/python_interpreter'
2023-06-24 13:23:11,956 root INFO writing manifest file 'maturin.egg-info/SOURCES.txt'
2023-06-24 13:23:11,956 wheel INFO installing to build/bdist.linux-x86_64/wheel
2023-06-24 13:23:11,956 root INFO running install
2023-06-24 13:23:11,963 root INFO running install_lib
2023-06-24 13:23:11,976 root INFO copying maturin/import_hook.py -> build/bdist.linux-x86_64/wheel/maturin-1.1.0.data/purelib/maturin
2023-06-24 13:23:11,976 root INFO copying maturin/__init__.py -> build/bdist.linux-x86_64/wheel/maturin-1.1.0.data/purelib/maturin
2023-06-24 13:23:11,976 root INFO copying maturin/__main__.py -> build/bdist.linux-x86_64/wheel/maturin-1.1.0.data/purelib/maturin
2023-06-24 13:23:11,976 root INFO running install_egg_info
2023-06-24 13:23:11,989 root INFO Copying maturin.egg-info to build/bdist.linux-x86_64/wheel/maturin-1.1.0.data/purelib/maturin-1.1.0-py3.11.egg-info
2023-06-24 13:23:11,990 root INFO running install_scripts
2023-06-24 13:23:12,003 wheel INFO creating build/bdist.linux-x86_64/wheel/maturin-1.1.0.dist-info/WHEEL
2023-06-24 13:23:12,003 wheel INFO creating '/root/maturin-1.1.0/dist/.tmp-0e112vh1/maturin-1.1.0-cp311-cp311-linux_x86_64.whl' and adding 'build/bdist.linux-x86_64/wheel' to it
2023-06-24 13:23:12,003 wheel INFO adding 'maturin-1.1.0.data/purelib/maturin/__init__.py'
2023-06-24 13:23:12,003 wheel INFO adding 'maturin-1.1.0.data/purelib/maturin/__main__.py'
2023-06-24 13:23:12,004 wheel INFO adding 'maturin-1.1.0.data/purelib/maturin/import_hook.py'
2023-06-24 13:23:12,004 wheel INFO adding 'maturin-1.1.0.dist-info/METADATA'
2023-06-24 13:23:12,004 wheel INFO adding 'maturin-1.1.0.dist-info/WHEEL'
2023-06-24 13:23:12,004 wheel INFO adding 'maturin-1.1.0.dist-info/top_level.txt'
2023-06-24 13:23:12,004 wheel INFO adding 'maturin-1.1.0.dist-info/RECORD'
2023-06-24 13:23:12,004 wheel INFO removing build/bdist.linux-x86_64/wheel
2023-06-24 13:23:12,005 gpep517 INFO The backend produced dist/maturin-1.1.0-cp311-cp311-linux_x86_64.whl
maturin-1.1.0-cp311-cp311-linux_x86_64.whl
Comment 19 Ionen Wolkens gentoo-dev 2023-06-24 13:45:36 UTC
Well, can confirm that it's not limited to maturin.

In the image cryptography had:

/usr/lib/python3.11/site-packages/cryptography/hazmat/bindings/_rust.abi3.so

And I went ahead and re-emerged it, and .. the file is gone, it didn't run build_rust (still emerged fine).
Comment 20 Ionen Wolkens gentoo-dev 2023-06-24 14:06:21 UTC
Well, thanks to a hint by mgorny, figured that it's caused by dev-python/scikit-build-core. Both maturin and cryptography work again for me if unmerged.
Comment 21 Larry the Git Cow gentoo-dev 2023-06-24 14:54:48 UTC
The bug has been closed via the following commit(s):

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

commit d33acdd3cd57b80c13dce975520af078d3d47929
Author:     Michał Górny <mgorny@gentoo.org>
AuthorDate: 2023-06-24 14:45:06 +0000
Commit:     Michał Górny <mgorny@gentoo.org>
CommitDate: 2023-06-24 14:54:44 +0000

    package.mask: Mask <=dev-python/scikit-build-core-0.4.7
    
    Closes: https://bugs.gentoo.org/909035
    Signed-off-by: Michał Górny <mgorny@gentoo.org>

 profiles/package.mask | 5 +++++
 1 file changed, 5 insertions(+)
Comment 22 Larry the Git Cow gentoo-dev 2023-07-02 13:11:08 UTC
The bug has been referenced in the following commit(s):

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

commit 9d347c82d7d8fc2b5fb27f684aed3433220a4e19
Author:     Sam James <sam@gentoo.org>
AuthorDate: 2023-07-02 13:10:24 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2023-07-02 13:10:38 +0000

    dev-python/scikit-build-core: backport setuptools hook breakage fix
    
    Bug: https://bugs.gentoo.org/909035
    Closes: https://bugs.gentoo.org/909335
    Signed-off-by: Sam James <sam@gentoo.org>

 .../scikit-build-core-0.4.7-setuptools-hooks.patch | 28 ++++++++++++
 .../scikit-build-core-0.4.7-r1.ebuild              | 52 ++++++++++++++++++++++
 2 files changed, 80 insertions(+)