Skip to content

WIP: pathfinder_with_compatibility_checks_v0 - #1936

Closed
rwgk wants to merge 27 commits into
NVIDIA:mainfrom
rwgk:pathfinder_with_compatibility_checks_v0
Closed

WIP: pathfinder_with_compatibility_checks_v0#1936
rwgk wants to merge 27 commits into
NVIDIA:mainfrom
rwgk:pathfinder_with_compatibility_checks_v0

Conversation

@rwgk

@rwgkrwgk commented Apr 17, 2026

Copy link
Copy Markdown
Contributor

Continued under #1977, which started with systematically renaming WithCompatibilityChecksCompatibilityGuardRails.

xref: #1038

WIP — Please don't look yet. I just want to see the CI results.

rwgk added 2 commits April 16, 2026 17:06
Introduce a minimal WithCompatibilityChecks API with CTK version guard rails, including wheel metadata support and wrapper-first tests.
Made-with: Cursor
Allow the real compatibility checks to pass when CTK artifacts come from a system install instead of site-packages, including cases where CUDA_PATH and CUDA_HOME are unset.
Made-with: Cursor
@rwgkrwgk added this to the cuda.pathfinder next milestone Apr 17, 2026
@rwgkrwgk self-assigned this Apr 17, 2026
@rwgkrwgk added P1 Medium priority - Should do feature New feature or request cuda.pathfinder Everything related to the cuda.pathfinder module labels Apr 17, 2026
@copy-pr-bot

Copy link
Copy Markdown
Contributor

Auto-sync is disabled for draft pull requests in this repository. Workflows must be run manually.

Contributors can view more details about this message here.

@rwgk

rwgk commented Apr 17, 2026

Copy link
Copy Markdown
ContributorAuthor

/ok to test

@github-actions

Copy link
Copy Markdown

rwgk added 13 commits April 19, 2026 10:30
Use a more explicit module name for the compatibility-check API and keep imports aligned with the renamed implementation.
Made-with: Cursor
Break out CUDA driver version querying into a standalone internal utility so it can be reused independently from compatibility checks, and cover the ctypes loader paths with focused tests.
Made-with: Cursor
Treat the Windows WinDLL path as the normal runtime case and keep the focused tests aligned with the stricter driver-loader invariants.
Made-with: Cursor
Wrap the encoded cuDriverGetVersion() result in a DriverVersion dataclass so callers can use major and minor fields directly while retaining a low-level integer helper for loader-focused tests.
Made-with: Cursor
Cover query_driver_version() alongside the driver library loading tests and reuse the existing strictness mode so host-specific failures still surface cleanly in all_must_work mode.
Made-with: Cursor
Drop the non-Windows loader mock now that a real driver-version test covers the Linux success path, while keeping the Windows branch and failure-path unit coverage.
Made-with: Cursor
Use DriverCudaVersion for clearer pairing with the planned release-version type while keeping the existing driver info API behavior unchanged.
Made-with: Cursor
Query nvmlSystemGetDriverVersion() through pathfinder's driver library loading path and add a minimal real test so the implementation is preserved as a future reference.
Made-with: Cursor
Step back from the exploratory NVML-based release-version query for now because it adds non-trivial complexity and a new dependency surface without a current pathfinder need, while keeping the reference implementation in history if we need it later.
Made-with: Cursor
Document that DriverCudaVersion matches the CUDA Version shown by nvidia-smi rather than the graphics driver release, so the dataclass name reads clearly in context.
Made-with: Cursor
Expose DriverCudaVersion, QueryDriverCudaVersionError, and query_driver_cuda_version publicly, and align the internal naming, caching, docs, and test coverage around the CUDA-specific driver version query.
Made-with: Cursor
Protect the new top-level driver-info re-exports so internal-only test coverage does not miss a broken `cuda.pathfinder` plumbing layer.
Made-with: Cursor
rwgk added 6 commits April 21, 2026 10:34
…ity_checks_v0.
Bring the shared CUDA driver version query helper, public exports, docs, and tests into the compatibility-check branch before wiring the wrapper to that API.
Made-with: Cursor
Route `WithCompatibilityChecks` through `query_driver_cuda_version()` so the wrapper reuses the public driver-info helper and preserves a compatibility-layer error when the implicit driver query fails.
Made-with: Cursor
Stop exposing the new driver info helper through cuda.pathfinder while keeping the internal implementation and internal test coverage in place.
Made-with: Cursor
rwgk added 6 commits April 21, 2026 16:43
Align the compatibility-checks branch with the internal-only driver info helper by dropping the public re-exports and updating docs and tests to use the internal module directly.
Made-with: Cursor
…ity_checks_v0
Made-with: Cursor
# Conflicts:
#	cuda_pathfinder/docs/source/api.rst
Keep the compatibility wrapper aligned with the shared driver-info API by carrying `DriverCudaVersion` through the checks, constructor, tests, and real-driver logging instead of falling back to encoded ints.
Made-with: Cursor
@rwgk

rwgk commented Apr 25, 2026

Copy link
Copy Markdown
ContributorAuthor

Continued under #1977, which started with systematically renaming WithCompatibilityChecksCompatibilityGuardRails.

@rwgkrwgk closed this Apr 25, 2026
@rwgk
rwgk deleted the pathfinder_with_compatibility_checks_v0 branch April 25, 2026 18:05
github-actionsBot pushed a commit that referenced this pull request Apr 26, 2026
Removed preview folders for the following PRs:
- PR #1936
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

cuda.pathfinderEverything related to the cuda.pathfinder modulefeatureNew feature or requestP1Medium priority - Should do

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@rwgk