You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* WIP (search priority updated in README.md but not in code)
* Completely replace cuda_paths.py to achieve the desired Search Priority (see updated README.md).
* Define `IS_WINDOWS = sys.platform == "win32"` in supported_libs.py
* Use os.path.samefile() to resolve issues with doubled backslashes.
* `load_in_subprocess(): Pass current environment
* Add run_python_code_safely.py as generated by perplexity, plus ruff format, bandit nosec
* Replace subprocess.run with run_python_code_safely
* Factor out `class Worker` to fix pickle issue.
* ChatGPT revisions based on Deep research:
https://chatgpt.com/share/681914ce-f274-8008-9e9f-4538716b4ed7
* Fix race condition in result queue handling by using timeout-based get()
The previous implementation checked result_queue.empty() before calling get(),
which introduces a classic race condition: the queue may become non-empty
immediately after the check, resulting in missed results or misleading errors.
This patch replaces the empty() check with result_queue.get(timeout=1.0),
allowing the parent process to robustly wait for results with a bounded delay.
Also switches from ctx.SimpleQueue() to ctx.Queue() for compatibility with
timeout-based get(), which SimpleQueue does not support on Python ≤3.12.
Note: The race condition was discovered by Gemini 2.5
* Resolve SIM108
* Change to "nppc" as ANCHOR_LIBNAME
* Implement CUDA_PYTHON_CUDA_HOME_PRIORITY first, last, with default first
* Remove retry_with_anchor_abs_path() and make retry_with_cuda_home_priority_last() the default.
* Update README.md to reflect new search priority
* SUPPORTED_LINUX_SONAMES does not need updates for CTK 12.9.0
* The only addition to SUPPORTED_WINDOWS_DLLS for CTK 12.9.0 is nvvm70.dll
* Make OSError in load_dl_windows.py abs_path_for_dynamic_library() more informative.
* run_cuda_bindings_path_finder.py: optionally use args as libnames (to aid debugging)
* Bug fix in load_dl_windows.py: ctypes.windll.kernel32.LoadLibraryW() returns an incompatible `handle`. Use win32api.LoadLibraryEx() instead to ensure self-consistency.
* Remove _find_nvidia_dynamic_library.retry_with_anchor_abs_path() method. Move run_python_code_safely.py to test/ directory.
0 commit comments