Conversely: that two files that differ in name only by non-visible and humanly-impossible-to-detect details is an enormous user-experience fail.
What the hell phoronix, why are you using that cookie vendor that will sell your data to 46396 parties and no worries, you can stop it by deselecting each one of them! You can either accept or spend the day disabling this shit.
If that’s how it’s going to be, phoronix is done for me, sorry. I’d love to support your work even, but not with this
Yeah, I tried disabling my ad blocker to support them, but the page does not show ads even then and complains as if it were still active, and I think it is because I left Privacy Badger on. There is no way I am turning that off, so too bad for them!
Heck, I would even consider subscribing, but it looks like one first needs to create a forum account before one can even see the subscription price‽ What a very weird site…
TIL case insensitive filesystems are still a thing actually in use.
Why lol
I believe macOS’s default partition is case-insensitive but not case-preserving. I remember having to check the HUnit (unit testing library for Haskell) in a special partition because darcs barfed on a file whose case changed.
I remember that the BeFS in BeOS was also case-preserving but not case-sensitive. Scot Hacker, the author of the BeOS Bible, relayed an explanation that resonated with him. (Bear in mind that this was pre-2000 and the computing landscape was much different. This was also the time that macOS was born in.)
The short of it is that it’s for usability. The average person doesn’t really differentiate between upper- and lowercase; at most, it’s just aesthetics. If they want to find their resume, they don’t care if it’s spelled
resume
,Resume
,RESUME
, or evenrEsUmE
. Why should the computer require that they conform to a design decision that was made decades prior?Since then, the world has changed again and the average user of today is even further isolated from the internals of a system. And what was a good idea in 1997 may not longer be relevant now.
Windows. Probably.
Believe it or not, NTFS isn’t, but Windows is to keep ye olde DOS compatibility lol.
Mac’s APFS is like this too, to an extent. I don’t know the details but it’s also in that gray area.
I prefer case sensitivity, the filesystem shouldn’t do any magic like that. If someone types “file.txt”, opening “File.TXT” would be convenient, but also misleading. Ignoring case is what autocompletion/search is for imo.
The best things is when the OS enforces magic onto the filesystem. Ntfs is case sensitive but windoze is not. So expect some real fun times if you use ntfs on other systems.
Trying to rename a file to use the correct capitalization in a git repository on my Windows laptop for work was tricky. Or maybe it was subversion. Actually I think it was subversion. Either way it was a weird little puzzle for the day.
I recall a case-insensitivity bug from the early days of Mac OS X.
There are three command-line utilities that are distributed as part of the Perl HTTP library:
GET
,HEAD
, andPOST
. These are for performing the HTTP operations of those names from the command line.But there’s also a POSIX-standard utility for extracting the first few lines of a text file. It’s called
head
.I think you see where I’m going with this.
HEAD
andhead
are the same name in a case-insensitive filesystem such as the classic Mac filesystem. They are different names on a Unix-style filesystem.Installing
/usr/bin/HEAD
fromlibwww-perl
onto a Mac with the classic filesystem overwrote/usr/bin/head
and broke various things.Damn straight. I thought bcachefs was a modern filesystem? Why is it case insensitive? Huge red flag.
Isn’t bcache the one made by the solo dev who was causing all that drama trying to merge a bunch of crap during a freeze last year?
If so that explains quite a bit lmao
It isn’t normally, but it, like e.g. Ext4, allows case insensitivity mostly for the sake of Wine.
But Wine could handle the case insensitivity though? NTFS is case sensitive.
It does, but having case insensitivity in the file system can get you better performance.
How would that happen?
If you’re running Wine on a case-sensitive file system, and you it tries to open a file, it would first try to open a file whose case matches exactly. But if it doesn’t find one, it would then need to list all the files in the directory, normalize their case, and go through them all to see if there is a file with the given name but in a different case. That can take some time if there is a lot of files in the directory.
But if you’re on a case-insensitive filesystem, the FS can keep case-normalized names of all files on disk, so you can do a case-insensitive open just as fast as you can do a case-sensitive open.
BTW, another application that can benefit from this is Samba, since SMB is case-insensitive.
That –at best– gives you the same performance.
EDIT: Ok, I misunderstood – you meant the performance of “case insensitive in kernel” vs. “case insensitive in userspace”. I get your point now.
No? Either the application implements its own case-insensitive index, or you’ll have strictly worse performance than an implementation in the file system. The application would have to make multiple syscalls (which have a fixed overhead).
Its’ lead dev is also so full of himself, it’s insufferable