[webkit-dev] User agent woes

Konstantin Tokarev annulen at yandex.ru
Tue May 9 10:34:28 PDT 2017

08.05.2017, 06:12, "Michael Catanzaro" <mcatanzaro at igalia.com>:
> Hi Maciej,
> I agree with basically everything you wrote, except I recommend not
> using OS X as the operating system string in the default user agent
> except when actually running on macOS. We tried this for about a year
> and got tons of complaints. It breaks more than it fixes: many websites
> decide to present only macOS versions of downloads and offer no
> recourse to get the right version of the download (like Hangouts), and
> other times it's just annoying, e.g. the OS field on Bugzilla defaults
> to OS X, which a substantial subset of bug reporters feel the need to
> complain about. So instead, we now add OS X quirks for websites when
> needed.
>>  You mentioned that for some sites, that wouldn't work. I think it's
>>  reasonable to have more specific exceptions just for those, and we
>>  can review them together. Specifically, for Google Hangouts, you
>>  mention that claiming to be Mac Safari will offer a non-working
>>  plugin. However, it looks like WebKitGTK+ pretends to be Linux
>>  Firefox for Google sites instead. It seems very likely that a Linux
>>  Firefox UA string would break Google Hangouts in Mac Safari for
>>  pretty much the same reason.
> Yes, you definitely can't send a Linux+Firefox UA string, as that would
> definitely break Hangouts for Safari users.
> But I bet you could send a macOS+Firefox UA string, until such time
> that Google fixes its websites to stop sending inferior pages to other
> WebKit browsers. That way, next time they decide to make a change based
> on UA that's going to cause other WebKit browsers to break, Safari
> should break as well and Google should notice before deploying the
> change if they test it at all. (Of course, this is only really needed
> if evangelism fails.)
>>  It's not clear to me what the issues are with typekit or slack, or
>>  why you claim to be Chrome instead of Mac Safari on those.
> I don't remember exactly why I came up with the Chrome quirk for these
> sites, but I usually try our macOS quirk first and use the Chrome quirk
> next if that fails. The macOS quirk is much safer as it does not
> encourage websites to try to use Chrome-specific JS.
> The issue with Typekit is that lots of websites use Typekit for web
> fonts, but Typekit disables itself unless it recognizes the user agent.
> Then users complain that fonts are wrong on a bunch of different
> websites. See https://bugs.webkit.org/show_bug.cgi?id=147296.
> Slack just doesn't work at all with our default UA, it displays only an
> unsupported browser page. It works perfectly fine with the UA changed.
>>   Maybe claiming to be Mac Safari would reduce future breakage. Or if
>>  not, it would be interesting to know what the issue is.
>>  We may also be able to reach out to some of the problem websites or
>>  help you get contact info.
> This would be wonderful. I don't think it's worthwhile to reach out to
> websites like Slack and Whatsapp that are clearly intentionally trying
> to block our users: I'd rather them not realize that we are sending UA
> quirks at all, as they might try harder to block our users if so.

Any ideas why are they doing this?

Maybe they just assume this traffic is coming from bots, and this conflict
can be resolved by simply informing them about existence of other WebKit

> But
> in other cases, like with Google, we would really appreciate your help
> with evangelism. Let's continue this line of discussion via private
> mail.
> Thanks,
> Michael
> _______________________________________________
> webkit-dev mailing list
> webkit-dev at lists.webkit.org
> https://lists.webkit.org/mailman/listinfo/webkit-dev


More information about the webkit-dev mailing list