Skip to content

Release v0.8.7

Latest

Choose a tag to compare

@KhoiDOO KhoiDOO released this 25 Sep 16:34
· 1 commit to main since this release
0bad83f

Features

  • Graceful CUDA Extension Fallback (conquer3d._extension):

    • Implemented lazy loading and missing extension stand-in module (_MissingExtension) for conquer3d._C.
    • Enables importing conquer3d in environments without a compiled CUDA extension (e.g. CI runners, documentation builders, static analysis tools, and CPU-only hosts).
    • Exposes HAS_EXTENSION: bool, ExtensionUnavailableError, and extension_error() for explicit backend inspection.
    • Dynamically substitutes missing CUDA symbols with helpful placeholder types that raise ExtensionUnavailableError with compilation instructions (TORCH_CUDA_ARCH_LIST) upon invocation.
  • Top-Level Package Geometric Exports (conquer3d):

    • Elevated primary spatial structures directly into conquer3d root namespace: BVH, GSBVH, KDTree, MeshBVH, PGSBVH, and TriangleMesh.

Refactors & Build

  • Build System:
    • Renamed CMake project from GeoCuTool to Conquer3D in CMakeLists.txt.
    • Bumped library version to 0.8.7 in pyproject.toml.
  • Documentation:
    • Added interactive higher-order Laplacian fairing showcases and pinned patch smoothing demonstrations.
    • Archived v0.8.5 API documentation and rebuilt documentation assets.

Examples

  • Non-GPU environments importing and inspecting conquer3d without requiring CUDA compilation.
  • Direct root imports: from conquer3d import TriangleMesh, BVH, KDTree.