The GitHub Actions job "CI" on tvm-ffi.git/junrushao/2026-07-15/generate-layout-compatible-cpp-object-declarations has failed. Run started by GitHub user junrushao (triggered by junrushao).
Head commit for run: 17fe6b2cb6056a728a8ebb0c380984b97cc02c98 / Junru Shao <[email protected]> fix(abi): harden generated object declarations Architecture: - Specialize the existing details::is_object_subclass_v variable template directly for generated incomplete Object types, removing the additional class-trait layer. - Centralize static carrier lookup and treat schema-less custom object type indices as the erased ObjectPtr<Object> carrier. - Sort declaration dependencies structurally by namespace components and object name so namespace grouping is stable instead of depending on punctuation in qualified strings. Public Interfaces: - TVM_FFI_DECLARE_OBJECT_SUBCLASS remains the generated C++17 shortcut, but now specializes the existing variable-template customization point directly. - No C ABI, object layout, Python API, or generated field type changes are introduced. UI/UX: - none Behavioral Changes: - Root subclasses without parent TypeInfo metadata now start after the TVMFFIObject header instead of dereferencing None. - Schema-less fields with custom object type indices now fall back to ObjectPtr<Object> rather than failing carrier inference. - Forward declarations are grouped deterministically by structural namespace order. - Declared recursive ObjectPtr fields remain supported through direct is_object_subclass_v specialization. Docs: - No documentation update is needed because these are review fixes to unmerged implementation details and output determinism; existing generator tests define the emitted declaration contract. Tests: - Executed: editable package rebuild - Result: passed. - Executed: full pre-commit suite - Result: passed all hooks. - Executed: full Python unit suite - Result: 2393 passed, 18 skipped, 3 xfailed. - Executed: C++ build and CTest - Result: build passed; all 451 enabled tests passed and 2 remained disabled. - Executed: pinned clang-tidy 21.1.1 on the changed C++ files - Result: passed. Untested Edge Cases: - Rust tests were not executed because cargo and rustup are unavailable locally; no Rust source or binding changed. - Linux and Windows compiler matrices remain CI-only; local native-code generation, C++ tests, and clang-tidy cover the changed template and layout paths. Refs: https://github.com/apache/tvm-ffi/pull/670 Report URL: https://github.com/apache/tvm-ffi/actions/runs/29457673828 With regards, GitHub Actions via GitBox --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
