4

I am still using Mac OS X 10.9.5 (Mavericks) on one of my machines so as to be able to run older versions of Adobe software etc. I prefer to use Safari as a web browser because it is designed for the Mac, but the final version of Safari for Mavericks (v. 9.1.3) no longer supports certain sites.

These are often ones where an incomplete circular device keeps going round and round without loading whatever it is trying to load. This doesn’t look like a Mac ‘busy’ cursor and it is not browser-specific. An example (trying to load a series of references in response to my query) is shown below (from www.flybase.org) within a red outline I added:

enter image description here

The problem seems to be with some JavaScript files because the error page in the Develop menu shows the following:

enter image description here

I can work round this using Firefox, but, as an amateur web designer, I am curious to know what the — presumably more recent — web technology is that Safari 9 does not support.

  • 1
    It's unclear where you're seeing this spinner. If you're talking about some site's UI having a spinner that's spinning forever, there are tons of possibilities. I'd open the browser's javascript error console and see what errors it might be spewing out, and go from there. If you can't actually connect to the site at all (the error page is something the browser puts up, for example), then I'd suspect the site is forcing a TLS version that is too new for Safari 9. Security issues have been discovered in older SSL/TLS versions, and dropping support for them have been a priority. – vykor Jul 19 '19 at 22:01
  • @vykor — I just encountered one and will post a screenshot tomorrow (with others similar if I can find them). It’s a new type that I suspect comes from some JavaScript library or the like. It’s not browser-dependent. – David Jul 19 '19 at 22:05
6

Safari 9.1 was released in 2016, over 3 years ago, and doesn’t support a lot of popular web technologies that have since been developed.

Polyfills exist for some technologies, with Safari 9 barely making the list for some polyfills, but many developers don’t expect to support a browser lacking ES20151 support (you can’t even declare a variable with let in Safari 9).

caniuse.com provides a detailed feature-based comparison of web browsers, including Safari 9 vs Safari 12.1. Given the added screenshot with your error message, the JavaScript being executed cannot find ‘fetch’ which is likely a reference to the Fetch API, a crucial API for obtaining resources from elsewhere. The Fetch API is first supported in Safari 10.1.

If the web developer hasn’t included a polyfill for Safari 9, it may be possible to inject the polyfill yourself for individual web technology features, but this situation will only get worse. I understand the potential need to run older software, but such use should be limited to a virtual machine, ensuring the host OS is secure as well as running a secure web browser capable of understanding the technologies present on your favourite sites.

1 ES2015 (or ECMAScript 2015) is a scripting-language specification created to standardise JavaScript for use by multiple browsers, applications, and devices. This standard is updated each year in June and we're now up to the ECMAScript 2019 standard. For more information, refer to JavaScript Versions. This page provides a summary of ECMAScript editions and scrolling down you can see a breakdown of browser support.

| improve this answer | |
  • Thank you for your reply. I was remiss in not providing better documentation of the problem initially — my apologies. I have now edited my question. Can you tell anything from the error message? – David Jul 20 '19 at 14:56
  • @David Missing ‘fetch’ is likely the fetch() function from the Fetch API; I've edited my answer accordingly. – grg Jul 20 '19 at 15:00

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .