Open davakh opened 6 months ago
Hello, can you provide a problem/example where you got such paths?
It's possible to get this type of paths when you work with module-federation f.e. Of course, it's overhead to give an example with another library, but I can provide an example with current library via codesandbox.
@davakh Sorry for delay, do you want to send a PR?
Yes, I have some thoughts on how to solve it. I'll try to give a PR in near future.
Issue
Right now, based on codebase, library supports only posix relative paths.
Reproduction
This is correct relative path in context of this library:
This is incorrect relative path in context of this library:
To understand how the library understands these paths, you can call
getType
from this file: posix path asRelative
; win32 path - asNormal
So, anything that can be passed as a result by path.relative(...) in Node.js, will not work as expected on Windows machines.
Solutions
Possible solution is to add separation in the enum of types for
RelativePosix
andRelativeWin
, like for theAbsolute..
paths. But it's hard to predict what integrations with this library are going to break, so I think it can be a big deal.Workaround
Add replacing for backward compatibility with Windows (Windows can handle posix separator):
PS. Maybe you want to handle only relative posix paths in this library, and then I think it would be cool to add information about this scenario or to close this issue with a preferable workaround.