Skip to content

Commit a9dc58c

Browse files
committed
All paths will be case sensititve
Signed-off-by: Darshan Sen <raisinten@gmail.com>
1 parent 9ade7e5 commit a9dc58c

File tree

1 file changed

+8
-10
lines changed

1 file changed

+8
-10
lines changed

docs/virtual-file-system-requirements.md

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,14 @@ be available on all the [platforms supported by Node.js][].
7676
Should not limit the size or the character contents of the file paths to stay as
7777
close as possible to what a real file system provides.
7878

79+
## Case Sensitive
80+
81+
From Yarn's experience with zip, forcing case sensitivity within the archives
82+
didn't break anything, improved consistency. By contrast, making the code case
83+
insensitive would have increased the complexity, worsened the runtime
84+
performance, increased the attack surface, for a use case that virtually no-one
85+
cares about. Hence, the paths in the VFS will be case sensitive.
86+
7987
# Not supported
8088

8189
## No need for supporting write operations
@@ -87,15 +95,6 @@ operation needs to be supported.
8795

8896
# Optionally support
8997

90-
## Case Sensitivity and Case Preservation
91-
92-
It should be the same as what users of the OS the executable has been packaged
93-
for expects. This list is based on [case sensitivity in files systems][].
94-
95-
* Unix - case-sensitive
96-
* MacOS - case-insensitive and case-preserving
97-
* Windows - case-insensitive and case-preserving
98-
9998
## Increase locality of related files
10099

101100
For performance reasons.
@@ -117,4 +116,3 @@ have been a much harder sell if Yarn had used a custom-made format).
117116
[Git executables]: https://github.com/desktop/dugite-native/releases/
118117
[dugite]: https://www.npmjs.com/package/dugite
119118
[platforms supported by Node.js]: https://github.com/nodejs/node/blob/main/BUILDING.md#supported-platforms
120-
[case sensitivity in file systems]: https://en.wikipedia.org/wiki/Case_sensitivity#In_filesystems

0 commit comments

Comments
 (0)