Skip to content

Fix stubtest (3.9) failure by removing non-existent ConstAgg bindings from API surface#63

Merged
yuleisui merged 2 commits into
mainfrom
copilot/fix-stubtest-3-9-failure
Jul 16, 2026
Merged

Fix stubtest (3.9) failure by removing non-existent ConstAgg bindings from API surface#63
yuleisui merged 2 commits into
mainfrom
copilot/fix-stubtest-3-9-failure

Conversation

Copilot AI commented Jul 16, 2026

Copy link
Copy Markdown
Contributor

The stubtest (3.9) workflow was failing in the wheel build step because the bindings referenced SVF::ConstAggValVar and SVF::ConstAggObjVar, which are not present in the svf-lib headers used in CI. This change aligns the C++ bindings and Python typing surface with the actual exported SVF types.

  • Root-cause alignment (C++ pybind layer)

    • Removed ConstAggValVar / ConstAggObjVar bindings and cast helpers from pybind/SVFIR.cpp.
    • Eliminates compile-time references to unavailable SVF symbols.
  • Public Python API consistency

    • Removed ConstAggValVar and ConstAggObjVar re-exports from pysvf/__init__.py.
    • Keeps runtime-imported names consistent with compiled extension contents.
  • Typing + stubtest consistency

    • Removed corresponding class/type members from pysvf/pysvf.pyi.
    • Removed stale allowlist entries from stubtest_allowlist.txt for the same symbols.
// removed from pybind/SVFIR.cpp
py::class_<SVF::ConstAggValVar, SVF::ValVar>(m, "ConstAggValVar");
py::class_<SVF::ConstAggObjVar, SVF::BaseObjVar>(m, "ConstAggObjVar");

Copilot AI changed the title [WIP] Fix the failing GitHub Actions job stubtest (3.9) Fix stubtest (3.9) failure by removing non-existent ConstAgg bindings from API surface Jul 16, 2026
Copilot AI requested a review from yuleisui July 16, 2026 11:32
@yuleisui
yuleisui marked this pull request as ready for review July 16, 2026 11:35
Copilot AI review requested due to automatic review settings July 16, 2026 11:35
@yuleisui
yuleisui merged commit de1e54d into main Jul 16, 2026
2 checks passed

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR removes bindings and Python typing exports for ConstAggValVar / ConstAggObjVar to match the SVF types actually available in the svf-lib headers used by CI, resolving the stubtest (3.9) wheel-build failure caused by referencing non-existent symbols.

Changes:

  • Removed ConstAggValVar / ConstAggObjVar pybind classes and related downcast helpers from pybind/SVFIR.cpp.
  • Removed the same names from the public Python re-export surface in pysvf/__init__.py.
  • Removed the corresponding types/members from pysvf/pysvf.pyi and deleted the related stubtest_allowlist.txt entries.

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated no comments.

File Description
stubtest_allowlist.txt Drops allowlist entries for the removed, non-existent symbols so stubtest no longer expects them.
pysvf/pysvf.pyi Removes the ConstAgg* classes and their related is*/as* members from the typing surface.
pysvf/init.py Stops re-exporting ConstAggValVar / ConstAggObjVar from the package top-level API.
pybind/SVFIR.cpp Removes pybind registrations and cast helpers that referenced unavailable SVF symbols.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

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.

3 participants