Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PyPy builds of rust-numpy started failing with Maturin 0.12.13 #882

Closed
2 tasks done
adamreichold opened this issue Apr 25, 2022 · 6 comments · Fixed by #883
Closed
2 tasks done

PyPy builds of rust-numpy started failing with Maturin 0.12.13 #882

adamreichold opened this issue Apr 25, 2022 · 6 comments · Fixed by #883
Labels
bug Something isn't working

Comments

@adamreichold
Copy link
Member

adamreichold commented Apr 25, 2022

Bug Description

CI builds of rust-numpy using PyPy started failing using Maturin 0.12.13 with the following panic message

  thread 'main' panicked at 'assertion failed: `(left == right)`
    left: `2`,
   right: `1`', src/main.rs:292:13
  stack backtrace:
     0: rust_begin_unwind
               at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panicking.rs:584:5
     1: core::panicking::panic_fmt
               at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/panicking.rs:143:14
     2: core::panicking::assert_failed_inner
     3: core::panicking::assert_failed
     4: maturin::run
     5: maturin::main

Your Python version (python -V)

PyPy 7.3.9

Your pip version (pip -V)

pip 22.0.4

What bindings you're using

pyo3

Does cargo build work?

  • Yes, it works

If on windows, have you checked that you aren't accidentally using unix path (those with the forward slash /)?

  • Yes

Steps to Reproduce

https://github.com/PyO3/rust-numpy/runs/6155671160?check_suite_focus=true

@messense
Copy link
Member

assert_eq!(wheels.len(), 1);

So somehow it builds multiple wheels instead of just one.

@adamreichold
Copy link
Member Author

The logs contain

🔗 Found pyo3 bindings with abi3 support for Python ≥ 3.7
  🐍 Not using a specific python interpreter
  📦 Built wheel for abi3 Python ≥ 3.7 to /home/runner/work/rust-numpy/rust-numpy/examples/simple/target/wheels/rust_ext-0.1.0-cp37-abi3-linux_x86_64.whl
  ⚠️ Warning: PyPy does not yet support abi3 so the build artifacts will be version-specific. See https://foss.heptapod.net/pypy/pypy/-/issues/3397 for more information.
  📦 Built wheel for PyPy 3.7 to /home/runner/work/rust-numpy/rust-numpy/examples/simple/target/wheels/rust_ext-0.1.0-pp37-pypy37_pp73-linux_x86_64.whl

so as abi3 does not really make sense of PyPy, it seems to build both rust_ext-0.1.0-cp37-abi3-linux_x86_64.whl and rust_ext-0.1.0-pp37-pypy37_pp73-linux_x86_64.whl.

@messense
Copy link
Member

messense commented Apr 25, 2022

It's kinda odd that it seems to work with maturin build: https://github.com/PyO3/maturin/runs/6153657419?check_suite_focus=true , the logs of test build pypy wheel with abi3 step is fine.

I'm trying to reproduce the maturin pep517 build-wheel in #883 .

@messense
Copy link
Member

I'm releasing v0.12.14-beta.1, please give it a try after the build finished. I'll cut a new release once we verified that the problem is resolved.

@adamreichold
Copy link
Member Author

Seems to work: https://github.com/PyO3/rust-numpy/runs/6162637050?check_suite_focus=true

Thank you for investigating and resolving this so quickly!

@messense
Copy link
Member

v0.12.14 should be out soon: https://github.com/PyO3/maturin/actions/runs/2223028291

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants