Repository navigation
Conversation
joblib#250 restricted the dllist import to Linux with Python 3.15+, so Windows and macOS on Python 3.14+ fell back to the older listing code. Restore the 3.7.0 behavior there and keep the Linux restriction. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Owner
Author
|
Opened upstream as joblib#288. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
joblib#250 moved the
ctypes.util.dllistimport to module level and changed its condition tosys.platform != "emscripten" and (sys.platform == "linux" and sys.version_info[:2] >= (3, 15)). That is only true on Linux with Python 3.15+, so on Windows and macOS with Python 3.14+dllistbecameNone. Library listing fell back to the Toolhelp enumerator on Windows and_dyld_*on macOS, while 3.7.0 useddllistthere (joblib#219). The comment on the condition and the description of joblib#250 only discuss Linux, so this looks unintended.This PR restores the 3.7.0 behavior on Windows and macOS and keeps the Linux restriction from joblib#250 (no
ctypes.utilimport before 3.15, joblib#225).Tests:
test_dllist_used_on_windows_and_macoschecks that_load_librariescalls_find_libraries_with_python(dllist)on Windows and macOS with Python 3.14+. On macOS arm64 with Python 3.14.4, it fails on master and passes with this PR. It has not been run on Windows yet; CI will do that.stdlib_dllist()test helper. It mirrored the 3.7.0 condition, so it silently diverged after PERF Run faster on Linux joblib/threadpoolctl#250, and as a resulttest_windows_library_path_exceeds_internal_limitwas skipped on Windows 3.14 even though the Toolhelp path was running. The skip now readsthreadpoolctl.dllistdirectly.This regression was never released, so there is no changelog entry.
🤖 Generated with Claude Code