Skip to content

Bump pybind11 to v2.13.6 to fix builds on modern Python - #582

Open
overlorde wants to merge 1 commit into
tensor-compiler:masterfrom
overlorde:fix-pybind11-modern-python
Open

Bump pybind11 to v2.13.6 to fix builds on modern Python#582
overlorde wants to merge 1 commit into
tensor-compiler:masterfrom
overlorde:fix-pybind11-modern-python

Conversation

@overlorde

Copy link
Copy Markdown

Problem

Building with -DPYTHON=ON fails on modern Python (3.11+): the pinned pybind11 submodule (v2.6.2) accesses PyFrameObject fields directly, but that type became opaque in Python 3.11, so pybind11's cast.h fails with error: invalid use of incomplete type 'PyFrameObject' (#560).

Fix

Bump the python_bindings/pybind11 submodule from v2.6.2 to v2.13.6, which uses the PyFrame_Get* accessor API and supports Python 3.11-3.13.

Validation

Built TACO with -DPYTHON=ON against Python 3.12.13 and ran a pytaco smoke test: the module imports and c[i] = a[i] + b[i] computes correctly ([1,2,3] + [4,5,6] = [5,7,9]). No changes to TACO's own binding code were needed.

Fixes #560.

pybind11 v2.6.2 fails to build against Python 3.11+ because PyFrameObject
became an opaque type. v2.13.6 uses the PyFrame_Get* accessor API. Fixes tensor-compiler#560.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

BLD: building in modern Python environments

1 participant