Our site: https://hightide.earth fails to load on initial load. If you refresh it will load as expected. If you close Safari 11 and hit the URL again it will crash again.
The LOC that appears to be affected relates to Google Analytics. The app initializer is attempting to instantiate the GA library with our user key. The code is minified and using AMDs from an Ember.js application.
Because Safari does not allow me to open the JS console prior to visiting any site I cannot debug this. If I visit another site, open JS console, then visit https://hightide.earth the app works as expected. So this is only happening when Hightide is the first app visited in a fresh instance of Safari.
The console error in question: `(0,a.default) is not a function. (In '(0,a.default)("create","UA-24185112-11","auto")', '(0,a.default)' is an instance of Object)`
Again, this is only a problem in a fresh instance of Safari. If I reload the app works as expected. If I visit from another URL the app works as expected. And I have no observed this error in any other browser.
One common cause for such symptom is differences in subresource load order when some resources are cached. The webpage may be depending on unspecified implementation details, or WebKit may be loading certain resources in the wrong order. Either way, a reduced test case is needed to investigate.
Is this issue new in Safari 11, or does it reproduce in Safari 10 too?
> Because Safari does not allow me to open the JS console prior to visiting any site I cannot debug this.
I just double-checked that console can be opened in a new blank tab, but the problem doesn't reproduce with the console open.
@alex thank you for the quick feedback. This does seem to be the case. I cannot determine if it is < Safari 11 as I cannot find how to install older versions of Safari. I have noticed it since Safari 11 however, but did not specifically try to surface this issue prior to that.
FWIW, I have changed over to the newer "gtag" Google Analytics and everything seems to be working OK. I'll close this out.