Do all the things like ++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatarSign Up
Ntfs has always been a bit of a snowflake. The windows team has been reduced and cost-cut into the ground. This is just a symptom of that.
It's also worth noting that 54% of developer machines are now *nix, and in typescript-heavy workflows, it's closer to 70%.
It's stupid and confusing at best to have two different files whose names only differ in case, even on case sensitive file systems.
On the other hand, a case insensitive file system also sucks because with i18n, it's not always clear what upper / lower case even means, and it makes the file system code messier for no good reason.
@SortOfTested The issue has decades of history.
CP/M had a case sensitive file system underneath, but converted everything to upper case because there were old 8 bit computers with cheap keyboards that only had upper case keys.
Then along came QDOS which built upon CP/M, and MS just bought QDOS when IBM reached out for them because IBM wanted to have shit quickly. So that became MS-DOS.
And then MS went for NTFS with Windows NT, but they needed to stay compatible with existing applications because customers don't accept new systems breaking their shit, so that had to become case insensitive, too.
Means, the current Typescript issue is caused by cheap 8 bit computer keyboards in the 1970s.
Yep, I lived that shit. You could have a bar trivia game based entirely on whether or not some odd, legacy bullshit is caused by Ntfs or the windows file API.
For those wondering what the issue is, NTFS is only case sensitive if you tell it to be, and only on a per-directory basis (double fuck MS for not fixing the api character limit).
By default Derp.js and derp.js are treated as the same file. So if you have stale files or references in a build, it can cause the wrong casing to perpetuate. If you change anything that changes file casing (including imports) you need to do a clean build.