junrushao opened a new pull request, #661:
URL: https://github.com/apache/tvm-ffi/pull/661

   Architecture:
   - Split Python interpreter discovery from development-component discovery so 
the extension ABI is known before CMake resolves link targets.
   - Detect Py_GIL_DISABLED with the selected interpreter, pin its exact 
version, and request only the development components used by that ABI branch.
   - Set CMake 3.26 as the project minimum, matching the first release that 
provides Development.SABIModule and python_add_library(USE_SABI).
   
   Public Interfaces:
   - Standard CPython 3.12 and newer requires Development.Module and 
Development.SABIModule and produces an abi3 extension.
   - Free-threaded CPython and CPython older than 3.12 require only 
Development.Module and produce a version-specific extension with SOABI.
   - Building the root project now requires CMake 3.26 or newer. Runtime APIs 
and the stable TVM FFI C ABI are unchanged.
   
   UI/UX:
   - none
   
   Behavioral Changes:
   - Stop requiring stable-ABI development artifacts for configurations that 
cannot use the Limited API, including free-threaded CPython.
   - Preserve the existing abi3 path for standard CPython 3.12 and newer while 
allowing declared cp314t builds to configure against their native ABI.
   - Fail early with an explicit CMake version requirement instead of reaching 
unsupported FindPython components or USE_SABI options on older CMake.
   
   Docs:
   - Raise the CMake prerequisite to 3.26 in the source-build guide, AGENTS.md, 
and the tracked developer-tool reference.
   
   Tests:
   - Executed: staged pre-commit hooks, isolated CMake configuration for the 
C++ project, and isolated CMake configuration with the Python module enabled.
   - Result: all executed checks passed.
   
   Untested Edge Cases:
   - Free-threaded CPython, Windows, and Python versions older than 3.12 were 
not available locally; their component selection remains covered by the 
explicit CMake branches and should be exercised in CI.
   - Compilation, wheel creation, and the full unit-test suites were not rerun 
because this commit changes configuration and dependency selection only.
   
   BREAKING CHANGE: Building TVM FFI now requires CMake 3.26 or newer. Upgrade 
CMake before configuring either the standalone C++ project or Python package.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to