[Bug]: Build failure on MacOS 26.5.1 with Python 3.14.4
Author: boutellCreated Jun 19, 2026Updated Sep 18, 2026
Labelsbugstale
Issue
This project looks great! Unfortunately there seems to be a build issue with two of the wheels with newer python.
I'm running pip install -r requirements.txt in a venv.
Appreciate all you do!
Building wheels for collected packages: pydensecrf, numpy, pydantic-core, editdistance, antlr4-python3-runtime, langdetect, unidic_lite
Building wheel for pydensecrf (pyproject.toml) ... error
error: subprocess-exited-with-error
× Building wheel for pydensecrf (pyproject.toml) did not run successfully.
│ exit code: 1
╰─> [89 lines of output]
/private/var/folders/lg/7k83x5ys71d90nvc40mj1tbr0000gn/T/pip-build-env-yvn1m5of/overlay/lib/python3.14/site-packages/setuptools/dist.py:765: SetuptoolsDeprecationWarning: License classifiers are deprecated.
!!
********************************************************************************
Please consider removing the following classifiers in favor of a SPDX license expression:
License :: OSI Approved :: MIT License
See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details.
********************************************************************************
!!
self._finalize_license_expression()
running bdist_wheel
running build
running build_py
creating build/lib.macosx-26.0-arm64-cpython-314/pydensecrf
copying pydensecrf/__init__.py -> build/lib.macosx-26.0-arm64-cpython-314/pydensecrf
copying pydensecrf/utils.py -> build/lib.macosx-26.0-arm64-cpython-314/pydensecrf
running build_ext
building 'pydensecrf.eigen' extension
creating build/temp.macosx-26.0-arm64-cpython-314/pydensecrf
clang++ -fno-strict-overflow -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -O3 -Wall -Ipydensecrf/densecrf/include -Ipydensecrf -I/Users/boutell/boutell/manga-image-translator/venv/include -I/opt/homebrew/opt/[email protected]/Frameworks/Python.framework/Versions/3.14/include/python3.14 -c pydensecrf/eigen.cpp -o build/temp.macosx-26.0-arm64-cpython-314/pydensecrf/eigen.o
pydensecrf/eigen.cpp:871:59: warning: 'Py_UNICODE' is deprecated [-Wdeprecated-declarations]
871 | static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE *u) {
| ^
/opt/homebrew/opt/[email protected]/Frameworks/Python.framework/Versions/3.14/include/python3.14/cpython/unicodeobject.h:10:1: note: 'Py_UNICODE' has been explicitly marked deprecated here
10 | Py_DEPRECATED(3.13) typedef wchar_t Py_UNICODE;
| ^
/opt/homebrew/opt/[email protected]/Frameworks/Python.framework/Versions/3.14/include/python3.14/pyport.h:281:54: note: expanded from macro 'Py_DEPRECATED'
281 | #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
| ^
pydensecrf/eigen.cpp:872:11: warning: 'Py_UNICODE' is deprecated [-Wdeprecated-declarations]
872 | const Py_UNICODE *u_end = u;
| ^
/opt/homebrew/opt/[email protected]/Frameworks/Python.framework/Versions/3.14/include/python3.14/cpython/unicodeobject.h:10:1: note: 'Py_UNICODE' has been explicitly marked deprecated here
10 | Py_DEPRECATED(3.13) typedef wchar_t Py_UNICODE;
| ^
/opt/homebrew/opt/[email protected]/Frameworks/Python.framework/Versions/3.14/include/python3.14/pyport.h:281:54: note: expanded from macro 'Py_DEPRECATED'
281 | #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
| ^
pydensecrf/eigen.cpp:1758:22: error: use of undeclared identifier '_PyList_Extend'; did you mean 'PyList_Extend'?
1758 | PyObject* none = _PyList_Extend((PyListObject*)L, v);
| ^~~~~~~~~~~~~~
| PyList_Extend
/opt/homebrew/opt/[email protected]/Frameworks/Python.framework/Versions/3.14/include/python3.14/cpython/listobject.h:52:17: note: 'PyList_Extend' declared here
52 | PyAPI_FUNC(int) PyList_Extend(PyObject *self, PyObject *iterable);
| ^
pydensecrf/eigen.cpp:1758:37: error: cannot initialize a parameter of type 'PyObject *' (aka '_object *') with an rvalue of type 'PyListObject *'
1758 | PyObject* none = _PyList_Extend((PyListObject*)L, v);
| ^~~~~~~~~~~~~~~~
/opt/homebrew/opt/[email protected]/Frameworks/Python.framework/Versions/3.14/include/python3.14/cpython/listobject.h:52:41: note: passing argument to parameter 'self' here
52 | PyAPI_FUNC(int) PyList_Extend(PyObject *self, PyObject *iterable);
| ^
pydensecrf/eigen.cpp:1796:39: error: use of undeclared identifier '_PyInterpreterState_GetConfig'
1796 | __pyx_assertions_enabled_flag = ! _PyInterpreterState_GetConfig(__Pyx_PyThreadState_Current->interp)->optimization_level;
| ^
pydensecrf/eigen.cpp:21997:27: error: no matching function for call to '_PyLong_AsByteArray'
21997 | int ret = _PyLong_AsByteArray((PyLongObject *)v,
| ^~~~~~~~~~~~~~~~~~~
/opt/homebrew/opt/[email protected]/Frameworks/Python.framework/Versions/3.14/include/python3.14/cpython/longobject.h:84:17: note: candidate function not viable: requires 6 arguments, but 5 were provided
84 | PyAPI_FUNC(int) _PyLong_AsByteArray(PyLongObject* v,
| ^ ~~~~~~~~~~~~~~~~
85 | unsigned char* bytes, size_t n,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
86 | int little_endian, int is_signed, int with_exceptions);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
pydensecrf/eigen.cpp:22193:27: error: no matching function for call to '_PyLong_AsByteArray'
22193 | int ret = _PyLong_AsByteArray((PyLongObject *)v,
| ^~~~~~~~~~~~~~~~~~~
/opt/homebrew/opt/[email protected]/Frameworks/Python.framework/Versions/3.14/include/python3.14/cpython/longobject.h:84:17: note: candidate function not viable: requires 6 arguments, but 5 were provided
84 | PyAPI_FUNC(int) _PyLong_AsByteArray(PyLongObject* v,
| ^ ~~~~~~~~~~~~~~~~
85 | unsigned char* bytes, size_t n,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
86 | int little_endian, int is_signed, int with_exceptions);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
pydensecrf/eigen.cpp:22465:27: error: no matching function for call to '_PyLong_AsByteArray'
22465 | int ret = _PyLong_AsByteArray((PyLongObject *)v,
| ^~~~~~~~~~~~~~~~~~~
/opt/homebrew/opt/[email protected]/Frameworks/Python.framework/Versions/3.14/include/python3.14/cpython/longobject.h:84:17: note: candidate function not viable: requires 6 arguments, but 5 were provided
84 | PyAPI_FUNC(int) _PyLong_AsByteArray(PyLongObject* v,
| ^ ~~~~~~~~~~~~~~~~
85 | unsigned char* bytes, size_t n,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
86 | int little_endian, int is_signed, int with_exceptions);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2 warnings and 6 errors generated.
error: command '/usr/bin/clang++' failed with exit code 1
[end of output]
note: This error originates from a subprocess, and is likely not a problem with pip.
ERROR: Failed building wheel for pydensecrf
Building wheel for numpy (pyproject.toml) ... done
Created wheel for numpy: filename=numpy-1.26.4-cp314-cp314-macosx_26_0_arm64.whl size=4778974 sha256=c4d0ae0b5a1eff8d2ba8aee02f513e2125dab4974d3e09f8ef9135aa97e25240
Stored in directory: /Users/boutell/Library/Caches/pip/wheels/9f/41/2d/41d9edbbdf1331835527392f3da54c7de611dc6ba3ef296215
Building wheel for pydantic-core (pyproject.toml) ... error
error: subprocess-exited-with-error
× Building wheel for pydantic-core (pyproject.toml) did not run successfully.
│ exit code: 1
╰─> [137 lines of output]
Python reports SOABI: cpython-314-darwin
Computed rustc target triple: aarch64-apple-darwin
Installation directory: /Users/boutell/Library/Caches/puccinialin
Rustup already downloaded
Installing rust to /Users/boutell/Library/Caches/puccinialin/rustup
warn: It looks like you have an existing rustup settings file at:
warn: /Users/boutell/Library/Caches/puccinialin/rustup/settings.toml
warn: Rustup will install the default toolchain as specified in the settings file,
warn: instead of the one inferred from the default host triple.
info: profile set to minimal
info: setting default host triple to aarch64-apple-darwin
warn: Updating existing toolchain, profile choice will be ignored
info: syncing channel updates for stable-aarch64-apple-darwin
info: default toolchain set to stable-aarch64-apple-darwin
Checking if cargo is installed
cargo 1.96.0 (30a34c682 2026-05-25)
Rust not found, installing into a temporary directory
Running `maturin pep517 build-wheel -i /Users/boutell/boutell/manga-image-translator/venv/bin/python3.14 --compatibility off`
Including license file `LICENSE`
Building a mixed python/rust project
Found CPython 3.14 at /Users/boutell/boutell/manga-image-translator/venv/bin/python3.14
Found pyo3 bindings
Using build options features, bindings from pyproject.toml
Using `MACOSX_DEPLOYMENT_TARGET=11.0` for aarch64-apple-darwin by default
Compiling autocfg v1.1.0
Compiling proc-macro2 v1.0.69
Compiling quote v1.0.29
Compiling unicode-ident v1.0.10
Compiling target-lexicon v0.12.9
Compiling python3-dll-a v0.2.9
Compiling once_cell v1.18.0
Compiling libc v0.2.147
Compiling heck v0.4.1
Compiling static_assertions v1.1.0
Compiling cfg-if v1.0.0
Compiling version_check v0.9.4
Compiling lexical-util v0.8.5
Compiling rustversion v1.0.13
Compiling parking_lot_core v0.9.8
Compiling scopeguard v1.1.0
Compiling smallvec v1.11.1
Compiling tinyvec_macros v0.1.1
Compiling tinyvec v1.6.0
Compiling ahash v0.8.6
Compiling serde v1.0.190
Compiling num-traits v0.2.16
Compiling num-integer v0.1.45
Compiling lock_api v0.4.10
Compiling memoffset v0.9.0
Compiling num-bigint v0.4.4
Compiling lexical-parse-integer v0.8.6
Compiling lexical-write-integer v0.8.5
Compiling memchr v2.6.3
Compiling lexical-write-float v0.8.5
Compiling aho-corasick v1.0.2
Compiling lexical-parse-float v0.8.5
Compiling syn v2.0.38
Compiling getrandom v0.2.10
Compiling unicode-normalization v0.1.22
Compiling pyo3-build-config v0.20.0
Compiling percent-encoding v2.3.0
Compiling zerocopy v0.7.20
Compiling hashbrown v0.14.0
Compiling indoc v2.0.4
Compiling unicode-bidi v0.3.13
Compiling unindent v0.2.3
Compiling regex-syntax v0.8.2
Compiling serde_json v1.0.108
Compiling equivalent v1.0.1
Compiling indexmap v2.0.0
Compiling idna v0.4.0
Compiling parking_lot v0.12.1
Compiling form_urlencoded v1.2.0
Compiling lexical-core v0.8.5
Compiling ryu v1.0.14
Compiling pyo3-macros-backend v0.20.0
Compiling itoa v1.0.8
Compiling url v2.4.1
Compiling base64 v0.21.5
Compiling uuid v1.5.0
Compiling serde_derive v1.0.190
Compiling strum_macros v0.25.3
Compiling enum_dispatch v0.3.12
Compiling regex-automata v0.4.3
Compiling pyo3-ffi v0.20.0
Compiling pyo3 v0.20.0
Compiling pydantic-core v2.14.1 (/private/var/folders/lg/7k83x5ys71d90nvc40mj1tbr0000gn/T/pip-install-t0ltydig/pydantic-core_d251837f3efd4ebca9956c8691627bf3)
Compiling pyo3-macros v0.20.0
error: failed to run custom build command for `pydantic-core v2.14.1 (/private/var/folders/lg/7k83x5ys71d90nvc40mj1tbr0000gn/T/pip-install-t0ltydig/pydantic-core_d251837f3efd4ebca9956c8691627bf3)`
Caused by:
process didn't exit successfully: `/private/var/folders/lg/7k83x5ys71d90nvc40mj1tbr0000gn/T/pip-install-t0ltydig/pydantic-core_d251837f3efd4ebca9956c8691627bf3/target/release/build/pydantic-core-973ce42fcc759afe/build-script-build` (exit status: 101)
--- stdout
cargo:rustc-cfg=Py_3_6
cargo:rustc-cfg=Py_3_7
cargo:rustc-cfg=Py_3_8
cargo:rustc-cfg=Py_3_9
cargo:rustc-cfg=Py_3_10
cargo:rustc-cfg=Py_3_11
cargo:rustc-cfg=Py_3_12
cargo:rustc-cfg=Py_3_13
cargo:rustc-cfg=Py_3_14
cargo:rerun-if-changed=python/pydantic_core/core_schema.py
cargo:rerun-if-changed=generate_self_schema.py
--- stderr
Traceback (most recent call last):
File "/private/var/folders/lg/7k83x5ys71d90nvc40mj1tbr0000gn/T/pip-install-t0ltydig/pydantic-core_d251837f3efd4ebca9956c8691627bf3/generate_self_schema.py", line 192, in eval_forward_ref
return type_._evaluate(core_schema.__dict__, None, set())
~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: ForwardRef._evaluate() missing 1 required keyword-only argument: 'recursive_guard'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/private/var/folders/lg/7k83x5ys71d90nvc40mj1tbr0000gn/T/pip-install-t0ltydig/pydantic-core_d251837f3efd4ebca9956c8691627bf3/generate_self_schema.py", line 240, in <module>
main()
~~~~^^
File "/private/var/folders/lg/7k83x5ys71d90nvc40mj1tbr0000gn/T/pip-install-t0ltydig/pydantic-core_d251837f3efd4ebca9956c8691627bf3/generate_self_schema.py", line 210, in main
value = get_schema(s, definitions)
File "/private/var/folders/lg/7k83x5ys71d90nvc40mj1tbr0000gn/T/pip-install-t0ltydig/pydantic-core_d251837f3efd4ebca9956c8691627bf3/generate_self_schema.py", line 54, in get_schema
return type_dict_schema(obj, definitions)
File "/private/var/folders/lg/7k83x5ys71d90nvc40mj1tbr0000gn/T/pip-install-t0ltydig/pydantic-core_d251837f3efd4ebca9956c8691627bf3/generate_self_schema.py", line 152, in type_dict_schema
field_type = eval_forward_ref(field_type)
File "/private/var/folders/lg/7k83x5ys71d90nvc40mj1tbr0000gn/T/pip-install-t0ltydig/pydantic-core_d251837f3efd4ebca9956c8691627bf3/generate_self_schema.py", line 195, in eval_forward_ref
return type_._evaluate(core_schema.__dict__, None)
~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: ForwardRef._evaluate() missing 1 required keyword-only argument: 'recursive_guard'
thread 'main' (13033411) panicked at build.rs:29:9:
generate_self_schema.py failed with exit status: 1
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
warning: build failed, waiting for other jobs to finish...
maturin failed
Caused by: Failed to build a native library through cargo
Caused by: Cargo build finished with "exit status: 101": `env -u CARGO MACOSX_DEPLOYMENT_TARGET="11.0" PYO3_BUILD_EXTENSION_MODULE="1" PYO3_ENVIRONMENT_SIGNATURE="cpython-3.14-64bit" PYO3_PYTHON="/Users/boutell/boutell/manga-image-translator/venv/bin/python3.14" PYTHON_SYS_EXECUTABLE="/Users/boutell/boutell/manga-image-translator/venv/bin/python3.14" "cargo" "rustc" "--profile" "release" "--features" "pyo3/extension-module" "--message-format" "json-render-diagnostics" "--manifest-path" "/private/var/folders/lg/7k83x5ys71d90nvc40mj1tbr0000gn/T/pip-install-t0ltydig/pydantic-core_d251837f3efd4ebca9956c8691627bf3/Cargo.toml" "--lib" "--crate-type" "cdylib" "--" "-C" "link-args=-Wl,-install_name,@rpath/pydantic_core._pydantic_core.cpython-314-darwin.so"`
Error: command ['maturin', 'pep517', 'build-wheel', '-i', '/Users/boutell/boutell/manga-image-translator/venv/bin/python3.14', '--compatibility', 'off'] returned non-zero exit status 1
[end of output]
note: This error originates from a subprocess, and is likely not a problem with pip.
ERROR: Failed building wheel for pydantic-core
Building wheel for editdistance (pyproject.toml) ... done
Created wheel for editdistance: filename=editdistance-0.8.1-cp314-cp314-macosx_26_0_arm64.whl size=97137 sha256=a23d6f2701d576984e374106b7016c7c6c77c1ecd74cf1804641b763ac4ebb4f
Stored in directory: /Users/boutell/Library/Caches/pip/wheels/84/36/d4/b0c9cdd703d0e01177765e4824ae86d2a6f704175d8ea9abb8
Building wheel for antlr4-python3-runtime (pyproject.toml) ... done
Created wheel for antlr4-python3-runtime: filename=antlr4_python3_runtime-4.9.3-py3-none-any.whl size=144590 sha256=7cde03b03517c91985864dde310c44b1383ce77a7a3811a4202305bc379458f9
Stored in directory: /Users/boutell/Library/Caches/pip/wheels/ea/ca/a6/5ad163e6c66e23b25d4e6a81dba06bce77047ef6257d643728
Building wheel for langdetect (pyproject.toml) ... done
Created wheel for langdetect: filename=langdetect-1.0.9-py3-none-any.whl size=993332 sha256=a919b609af1f694ce88ef720d489c4f19108e6467bb3adc1bac941f8240e91b9
Stored in directory: /Users/boutell/Library/Caches/pip/wheels/13/60/5a/f2012969b3f7413b62b7b7063d6c9b45c93004a978cbe8ea2f
Building wheel for unidic_lite (pyproject.toml) ... done
Created wheel for unidic_lite: filename=unidic_lite-1.0.8-py3-none-any.whl size=47658912 sha256=97450776ffc1055896b0da9e677903bede7b088f66decfbbb25ad431d2acf8f7
Stored in directory: /Users/boutell/Library/Caches/pip/wheels/bc/67/c3/d96c26055fce8b3c64f3cedbeb1303f32013460d2c4036d0ce
Successfully built numpy editdistance antlr4-python3-runtime langdetect unidic_lite
Failed to build pydensecrf pydantic-coreCommand Line Arguments
Console logs
Source: zyddnys/manga-image-translator