@@ -76,6 +76,14 @@ be available on all the [platforms supported by Node.js][].
7676Should not limit the size or the character contents of the file paths to stay as
7777close 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
101100For 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