Skip to content

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

Closed
@barneygale

Description

@barneygale

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    3.12only security fixestopic-pathlibtype-bugAn unexpected behavior, bug, or error

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions