Since our support table for browsers [1] is wildly out of date, we should come up with something better. Oliver generated some statistics for us from the last 30 days from logs for text/html requests (see attachment).
I think we could divide browsers into Grade A and Grade B categories, similarly to desktop. Grade A would be full support, Grade B would be basic support for reading (non-JS version). Two additional suggestions:
* Don't care about anything below < 0.1% * Drop support for JS for any problematic browser with < 0.5% (mark them as Grade B)
I think coming up with a generic metric like "support last N versions of X and last M versions of Y" for all browsers would be hard because the browser landscape changes pretty fast. I'd rather reevaluate our support table every few months. For now, I propose the following:
Grade A: * Mobile Safari 5-7 (that includes Chrome for iOS since it uses Safari's engine) * Android Browser 2.3+ (drop 2.3 to grade B as soon as it's < 0.5%) * Chrome for Android 18+ * Firefox for Android, latest version (since it's not very popular, but still a good browser) * IE Mobile 9+ (drop 9 to grade B as soon as it's < 0.5%) * Blackberry Webkit 7+
Grade B: * lower versions of browsers in Grade A * Opera Mini 4+ * NetFront 3+ * Ovi Browser 2+ * Nokia Browser 7+
When it comes to Grade B browsers, I don't think we should test on them very regularly, but accept bugs that come from their users.
Comments?
[1] https://www.mediawiki.org/wiki/Browser_support#Mobile_browsers