-
Notifications
You must be signed in to change notification settings - Fork 32
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
isValid "\\\\?\\UNC\\" #191
Comments
Related: #92
I'm not sure how much improvement we can drive here with ad-hoc bugfixes. The underlying problem is that we're not parsing windows filepaths, although there are pieces that allow us to put together a proper grammar:
With that we could implement a more meaningful version of |
filepath/System/FilePath/Internal/Parser.hs Lines 26 to 61 in 16e5374
|
I agree. My bigger concern is that while at least in theory |
Ok, so things are a little more complicated on windows wrt These are not statically assigned special names afaiu. Instead those are some form of object symlinks that are maintained inside of windows (and can be viewed in the WinObj browser tool). Also see: https://learn.microsoft.com/en-us/windows/win32/fileio/naming-a-file#nt-namespaces There are many more, e.g. look at:
(all the above are somewhat equal) The fact that Maybe @Mistuke has another opinion. |
AFAIU https://learn.microsoft.com/en-us/dotnet/standard/io/file-path-formats#dos-device-paths,
Now there is a bit of confusion. If you want to format a traditional DOS path as a device path, you can just append |
FWIW I agree, Inside GHC's handling we only really treat |
I think this is wrong:
\\?\UNC\
is incomplete, it is nether file nor folder name.filepath/System/FilePath/Internal.hs
Lines 1065 to 1067 in 98f8bba
If we are in agreement that
isValid
should returnFalse
on this input, there is a harder question ahead. What should be the output ofmakeValid
? Something like\\?\UNC\_\_
?The text was updated successfully, but these errors were encountered: