I have issues with Docker a lot. Example: Rename a file from "File.js" to "file.js" in a dependency and it's like something caches the old name so even when I redownload or install that dep it tries the old name and fails to find the file. Might just be me and my tomfoolery
if you're renaming from File.js to file.ts, which is also changing suffixes instead of just capitalization, then that couldn't be explained by case sensitivity, unless it was a typo and you meant File.js to file.js
This is likely because docker runs Linux in a VM on MacOS right?
We've had similar problems with stuff that works on the developers Mac but not the server which is case sensitive. It can be quite insidious if it does not cause an immediate "file not found"-error but say falls back to a default config because the provided one has the wrong casing.
Yeah exactly. And I mount the volume to the local directory so they try to sync both ways. It's a real mess. The solution is currently to: not fuck up the file name casing in the first place. lol
The same issue happens with git (on windows). The file system says they're the same file and they haven't changed, so you have to manually tell the program the file changed. With git, you'd run git rm --cached && git add . On docker, you could just do a non-cached build via docker build . --no-cache
Which part? I'd love to switch if there's no reformatting, and if your exception is with the first part, I'd ask for some evidence. All of my mac machines arrived brand new, case insensitive. Granted that's only 3 so far, but it's a smattering from 2019 onward. All the literature online points to this being the default too
I don't know about dangerous, but case-insensitive Unicode comparison is annoying, expensive and probably prone to footguns compared to a simple byte-for-byte equality check.
Obviously, it can be done, but I guess Linux devs don't consider it worthwhile.
(And yes, all modern filesystems support Unicode. Linux stores them as arbitrary bytes, Apple's HFS uses... some special bullshit, and Windows uses UTF-16.)
If you did it would likely break something as it's one of only two characters not allowed in a file name (the other being null).
You can do a lot of funky stuff within the rules though, think about control characters, non-printing characters, newlines, homographs, emojis etc. and go forth and make your file system chaos!