Service workers is one of the most egregious failures on their part. And I believe it's been done on purpose. With service workers you get full control over building your JS based app, something Apple does not want, they want everyone to got through their store.
Considering that the only way (moving forward) to create an offline JS app now is through service workers, and Apple is just starting to get it working, _maybe_ for the next version of Safari.
https://caniuse.com/#search=service%20workers
What does this mean? It means that it may take one or two more _years_ of _hardware_ updates to get iOS users able to use a javascript feature in their browser.
As far as I know, iOS and Safari are knitted together like MS did to Windows and IE. Try and get a new version of Safari that doesn't match with the version of iOS you are running.
I could go on about the state of local storage and other HTML5 debacles on Safari, but it's total loser and I am only going to make myself upset.
And you know what it's like trying to use a feature even when 70% of users can take advantage of it, it's still a no-go. So Apple totally blew it on this one.
MS Edge appears to be further along than Apple...
I’m pretty sure I’ll be running PWAs on my iPhone 5s the first half of 2018.