◐ Shell
clean mode source ↗

`pathlib.WindowsPath.glob()` preserves case of literal pattern segments

When pathlib.WindowsPath.glob() evaluates a literal (non-wildcard) pattern segment, it returns paths using the case of the pattern segment, rather than the real filesystem case. This problem does not affect segments involving * or ** wildcards.

>>> from pathlib import WindowsPath
>>> next(WindowsPath().glob('LIB/PATHLIB.*'))
WindowsPath('LIB/pathlib.py')  # 'LIB' should be 'Lib'

Linked PRs