3 ms·
I guess that's possible, but then why did Google, Microsoft, and Mozilla all decide it was important enough to implement years ago? It's not like this is some c
by streptomycin 13y ago
I guess that's possible, but then why did Google, Microsoft, and Mozilla all decide it was important enough to implement years ago? It's not like this is some controversial political thing like DRM, or some huge technical challenge that would require a lot of resources - it's just a simple database API. Even if they ignored the multiple existing open source implementations, they could build their own very easily. And they've had years to do it.
Incidentally, I've been trying to make non-dev users care. I wrote a semi-popular HTML5 game that runs everywhere except iOS because it uses IndexedDB. When people complain that it doesn't run on iOS, I implore them to direct their complaints at Apple for not supporting IndexedDB. AFAIK nobody has even gotten a response.
- simonster 13y agoI agree that the absence of IndexedDB is a little weird, but I don't know if it's "crippling," just annoying. Safari has supported Web SQL for a long time. While it was (rightly) abandoned by W3C because it was attempting to standardize SQLite as an implementation, there is a polyfill (https://github.com/axemclion/IndexedDBShim https://github.com/axemclion/IndexedDBShim) that implements IndexedDB semantics on top of Web SQL. It looks like localForage also supports Safari using Web SQL.
- streptomycin 13y agoThe polyfills (there is another by Facebook in addition to the one you linked) are slow and buggy (look at all the open issues, or try using it in a non-trivial project yourself). Web SQL in Safari is also slow (check any performance benchmark) and buggy (see the huge bugs introduced in the most recent version of Safari). So the truth is probably closer to "crippling" than just "annoying". Who is going to go through the trouble of working around all the polyfill and browser bugs, only to be rewarded with horrible performance? Not many people except those with simple needs. Making something complex? Better put it in the App Store. Libraries like localForage are great if you're doing very simple stuff. But if you need to use slightly more advanced DB features (indexes, transactions, etc), they don't work. IndexedDB, while not a panacea, does generally work for that stuff... except for Safari :)