[MacPorts] #68618: py37-orjson: error[E0560]: struct `pyo3_ffi::PyTypeObject` has no field named `tp_vectorcall`

MacPorts noreply at macports.org
Thu Nov 2 00:41:15 UTC 2023


#68618: py37-orjson: error[E0560]: struct `pyo3_ffi::PyTypeObject` has no field
named `tp_vectorcall`
-------------------------+-------------------------
 Reporter:  cooljeanius  |      Owner:  (none)
     Type:  defect       |     Status:  new
 Priority:  Normal       |  Milestone:
Component:  ports        |    Version:  2.8.1
 Keywords:               |       Port:  py37-orjson
-------------------------+-------------------------
 attempting to upgrade py37-orjson results in the following error:
 {{{
    Compiling pyo3-ffi v0.20.0
    Compiling orjson v3.9.10
 (/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports
 .org_macports_release_tarballs_ports_python_py-
 orjson/py37-orjson/work/orjson-3.9.10)
    Compiling beef v0.5.2
    Compiling compact_str v0.7.1
    Compiling arrayvec v0.7.4
 error[E0560]: struct `pyo3_ffi::PyTypeObject` has no field named
 `tp_vectorcall`
   --> src/ffi/fragment.rs:98:9
    |
 98 |         tp_vectorcall: None,
    |         ^^^^^^^^^^^^^ `pyo3_ffi::PyTypeObject` does not have this
 field
    |
    = note: available fields are: `ob_base`, `tp_name`, `tp_basicsize`,
 `tp_itemsize`, `tp_dealloc` ... and 43 others

 error[E0560]: struct `pyo3_ffi::PyTypeObject` has no field named
 `tp_vectorcall_offset`
    --> src/ffi/fragment.rs:103:9
     |
 103 |         tp_vectorcall_offset: 0,
     |         ^^^^^^^^^^^^^^^^^^^^ `pyo3_ffi::PyTypeObject` does not have
 this field
     |
     = note: available fields are: `ob_base`, `tp_name`, `tp_basicsize`,
 `tp_itemsize`, `tp_dealloc` ... and 43 others

 error[E0425]: cannot find function, tuple struct or tuple variant
 `PyVectorcall_NARGS` in this scope
    --> src/lib.rs:308:20
     |
 308 |     let num_args = PyVectorcall_NARGS(nargs as usize);
     |                    ^^^^^^^^^^^^^^^^^^ not found in this scope

 Some errors have detailed explanations: E0425, E0560.
 For more information about an error, try `rustc --explain E0425`.
 error: could not compile `orjson` (lib) due to 3 previous errors
 💥 maturin failed
   Caused by: Failed to build a native library through cargo
   Caused by: Cargo build finished with "exit status: 101":
 `CARGO_ENCODED_RUSTFLAGS="--remap-path-
 prefix=/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports
 .org_macports_release_tarballs_ports_python_py-
 orjson/py37-orjson/work/orjson-3.9.10=\u{1f}--remap-path-
 prefix=/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports
 .org_macports_release_tarballs_ports_python_py-
 orjson/py37-orjson/work/.home/.cargo="
 PYO3_ENVIRONMENT_SIGNATURE="cpython-3.7-64bit"
 PYO3_PYTHON="/opt/local/Library/Frameworks/Python.framework/Versions/3.7/bin/python3.7"
 PYTHON_SYS_EXECUTABLE="/opt/local/Library/Frameworks/Python.framework/Versions/3.7/bin/python3.7"
 "cargo" "rustc" "--target" "x86_64-apple-darwin" "--message-format" "json-
 render-diagnostics" "--manifest-path"
 "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports
 .org_macports_release_tarballs_ports_python_py-
 orjson/py37-orjson/work/orjson-3.9.10/Cargo.toml" "--release" "--lib" "--"
 "-C" "link-arg=-undefined" "-C" "link-arg=dynamic_lookup" "-C" "link-
 args=-Wl,-install_name, at rpath/orjson.cpython-37m-darwin.so"`
 Error: command ['maturin-3.7', 'pep517', 'build-wheel', '-i',
 '/opt/local/Library/Frameworks/Python.framework/Versions/3.7/bin/python3.7',
 '--compatibility', 'off'] returned non-zero exit status 1

 ERROR Backend subprocess exited when trying to invoke build_wheel
 Command failed:  cd
 "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports
 .org_macports_release_tarballs_ports_python_py-
 orjson/py37-orjson/work/orjson-3.9.10" &&
 /opt/local/Library/Frameworks/Python.framework/Versions/3.7/bin/python3.7
 -m build --no-isolation --wheel --outdir
 /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports
 .org_macports_release_tarballs_ports_python_py-orjson/py37-orjson/work
 Exit code: 1
 Error: Failed to build py37-orjson: command execution failed
 DEBUG: Error code: CHILDSTATUS 81119 1
 DEBUG: Backtrace: command execution failed
     while executing
 "system {*}$notty {*}$callback {*}$nice $fullcmdstring"
     invoked from within
 "command_exec -callback portprogress::target_progress_callback build"
     (procedure "portbuild::build_main" line 8)
     invoked from within
 "$procedure $targetname"
 }}}
 The 3.9.8 release notes explicitly said that they dropped support for
 Python 3.7, so I guess this was to be expected:
 https://github.com/ijl/orjson/releases/tag/3.9.8
 I still have py37-orjson @3.9.7_0 installed, so maybe just pin it to that
 version?

-- 
Ticket URL: <https://trac.macports.org/ticket/68618>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list