Closed
Description
glob::glob()
does not have any support right now for matching non-utf8 filenames. Not only are its patterns restricted to strings, but it also explicitly skips any non-utf8 filenames it encounters (which should at least be able to match a *
pattern).
Tasks that need to be done:
-
glob()
needs to accept both strings and byte-vectors. It can do this usingstd::path::BytesContainer
-
glob()
needs to process its pattern as a byte vector instead of a string, which will allow it to process filenames as byte vectors. This includes matching non-utf8 filenames against*
and?
tokens (for the latter, matching a single byte is appropriate; ideally, it would match however many bytes are supposed to be consumed to create aU+FFFD REPLACEMENT CHARACTER
as per the unicode standard)
This is a sub-task of #9639.