10 ms·
New WebKit Features in Safari 13.1
- xfalcox 7y agoNo Web Push API. No fixes for SameSite Lax cookies under service worker routes. No page lifecycle API so we better handle iOS PWAs.
- justinator 7y agoSo, "lame"?
- om2 7y agoWe’d love your feedback on how you are looking to use these APIs. A lot of our work is driven by developer feedback. Also, for the SameSite Lax thing, can you explain a bit more? That sounds like a bug. If you have a reproducible case, please file at bugs.webkit.org and let me know the Bug ID.
- xfalcox 7y agoRegarding the bugs, please check this repro site: https://samesite-pwa-demo.herokuapp.com/ https://samesite-pwa-demo.herokuapp.com/ Also another bug, which is maybe related: https://rocky-fjord-97287.herokuapp.com https://rocky-fjord-97287.herokuapp.com
- forkLding 7y agoAt least I think WebRTC was mentioned, been dying for more fixes to issues.
- maxwell 7y agoApple has intentionally crippled WebRTC for years to stifle FaceTime competition and drive up dev costs by forcing native app development. The video chat startup I co-founded in 2015 was impacted. https://docs.house.gov/meetings/JU/JU05/20190716/109793/HHRG-116-JU05-20190716-SD036.pdf https://docs.house.gov/meetings/JU/JU05/20190716/109793/HHRG...
- forkLding 7y agoHi maxwell, what would you recommend to another developer who might be entering the same space with a WebRTC-based product?
- maxwell 7y agoWe settled on TokBox. We were one of their first customers making significant use of server-side recording (virtual estimates for home service providers), and worked closely with the TokBox QA/dev team to resolve bugs until things stabilized in 2016 around the time we hit real product-market fit (focusing on relocation moving estimates). I've stepped away but AFAIK they're still using it. It was expensive but worked with our business model ($20 for a successfully completed self-service video call between service provider and end customer, $50 to have the virtual survey performed/recorded by our trained video surveyors around the world, $90 to also have priced). I'd compare TokBox, Twilio Video, and Jitsi.
- forkLding 7y agoThanks maxwell for the answer! Really appreciate it, apologies for asking more but how did you guys handle customer browsers not really up to date or compatible with webrtc back then?
- maxwell 7y agoWe initially handled browser-specific bugs in an ad hoc manner, and kept hitting unexpected issues with slight variations in hardware and software. The most common issue was that things failed in a way we weren't expecting and the solution was better error handling. The usual tools for cross-device/browser testing (e.g. BrowserStack) didn't work for video chat: we could simulate network disruptions but needed actual hardware for testing and debugging video/audio issues. So we bought/pooled a ton of devices and had a QA team in our European office methodically test across devices and browsers. We were also contending with provider (TokBox) issues early on in '15, which were mostly resolved by mid '16. Our business model, and pivots that focused our target market, didn't enable building out that level of infrastructure in-house, and I wouldn't recommend it if making any kind of vertical play, i.e. unless your customers are developers.
- holidaygoose 7y agoWith today's remote work and overuse of the internet, WebRTC is really critical. Same with WebP -- the bandwidth savings there could be immense in a time when we're using more internet than ever. I'm disappointed in Apple's lack of investment in these things, and it feels like they're out of touch.
- om2 7y agoWe’ve worked hard to deliver WebRTC and make it better over time. If you have specific bugs to report, please share!
- sunseb 7y agoOn a side note, I find crazy this obsessive-compulsive behavior to use `const` everywhere in modern JS codebase (even in Webkit now). It solves really no problem (I mean, Python, Ruby and almost all other programming languages are doing fine without preventing against variable reassignment, and we can still reassign function parameters and object properties in JS). So much brain power wasted on this useless thing. Also using `const` everywhere is semantically misleading and ugly. It's not what you would expect in 99% of other programming languages out there.
- lukifer 7y agoImmutability has been pretty hot of late, though still controversial. There are several popular languages which encourage or even force immutability (Elixir, Clojure). What sold me on the idea was Rich Hickey's talk, "The Value of Values": https://www.youtube.com/watch?v=-6BsiVyC1kM https://www.youtube.com/watch?v=-6BsiVyC1kM I look at it as mostly a safety net: I'd rather use const by default, unless I have a good reason to be able to mutate the variable. (To flip it around: what problem does being mutable-by-default solve?) 9 times out of 10, I don't need to change the value for the lifecycle of the function; and often if I do, the code is cleaner anyway if I use an immutable pattern (such as `const foo = bar.map()` rather than `for(x in bar) foo.push()`). Thanks to the magic of Merkle trees, we can generally make fresh pointers without it costing much memory overhead.
- sunseb 7y agoI agree lukifer. Immutability is useful and interesting, but `const` in JS not really about immutability, it's about variable reassignment (which is trivial to handle really, even for a noob programmer). const arr = ['foo']; arr[0] = 'bar'; assert(arr[0] === 'bar'); // !!! Something like that would make sense though IMHO: const PHI = 1.618; I don't get how JS is designed really, they try to solve a bad design (`var`) but they introduce another bad design (`const`) and they make things even messier. Many devs ship JavaScript thought TypeScript these days, so I hope Microsoft can clean this mess one day.
- 7y ago
- floatingatoll 7y agoFor folks who read the release notes for Safari Technology Preview releases, you'll find no surprises here: > Changes in this [13.1] release of Safari were included in the following Safari Technology Preview releases: 90, 91, 92, 93, 94, 95, 96, 97, 98.
- queezey 7y ago> These improvements are available to users running watchOS 6.2 [...] I would like more information about Safari being available on Apple Watch. Normally I'd think it's inclusion was an accident or oversight, but it's mentioned at both the top and the bottom of the article.
- Austin_Conlon 7y agoNot a standalone browser app, but if I tap a link in say the watchOS Mail app, it'll display a web view. Developers can optimize their site for the watch display. It might sound crazy but it's useful for glancing at brief information on the web.
- brandonhorst 7y agoSiri can also show web results on watch. I believe the News app uses WebView as well.
- om2 7y agoExactly this. It’s not full Safari, more of a way to not dead end when someone messages you a link and you look at the message on your watch.
- tmvnty 7y agoI do love browse with Safari from time to time, but it would not take long for me to notice a site's behaviour being "different" because of it. Use hn.algolia.com as an example, on Safari 13.1, the site currently renders differently to Chrome (black background?) and the time range filter (Past Year/Month etc) text are missing...
- lilyball 7y agoThe dropdown buttons appear to have customized the background color but not the text color. This leaves the text color at `color: buttontext`, and this color value changes with macOS Dark Mode. This is probably also why clicking on any of the buttons causes the text to vanish during the click. It's turning white, because the default for an active button is `color: activebuttontext`.
- gumby 7y agoIs this a bug in WebKit or in the algolia site?
- Tagbert 7y agoIt’s usually considered best, when styling a site, that if you set the background color, you have to set the text color. otherwise you run into site bugs like this. Dark Mode is one cause but there are other reason why text might not be the color you expect and your background color will conflict.
- Austin_Conlon 7y agoThe hn.algolia.com bug happens to me too when macOS is in Dark Mode.
- andrekandre 7y ago> Async Clipboard API > The implementation is available through the navigator.clipboard API which must be called within user gesture event handlers like pointerdown or pointerup, and only works for content served in a secure context (e.g. https:// https://). Instead of a permissions-based model for reading from the clipboard, a native UI is displayed when the page calls into the clipboard API; the clipboard can only be accessed if the user then explicitly interacts with the platform UI. that looks pretty cool... do other browsers implementation also work like ↑ that?
- om2 7y agoI’m not sure who else has implemented this API so far, but I believe they mostly use explicit permissions instead.
- Hitton 7y agoStill no webp. Safari is holding web back.
- olliej 7y agoOr you could actually use a standardized video format.
- arkanciscan 7y agoPointer Events, nearly one full decade after Microsoft implented them in IE10! Way to skate to the puck AAPL!
- om2 7y agoWe actually shipped pointer events a while ago. What’s new here is support for an external mouse or trackpad attached to an iPad generating real mouse events (and mouse type pointer events) instead of touch events.
- claytongulick 7y agoStill doing everything they can to hold back PWA's, I see. Their browser monopoly on ios can only last so long. The same strategy backfired horribly for ms in the ie6 days. (And no, you can't install an alternate browser on ios. It's just a crippled "skinned" shell on top of safari)
- om2 7y agoHow is this large set of web platform improvements evidence of holding back PWAs?
- sandstrom 7y agoGreat improvements! It’s comforting that Apple is still prioritizing the browser. Though I’d wish they’d focus even more resources on it. Given all they spend on iOS native it would be sound if a slice of that could be towards Safari. The new hint values for the soft key enter is a small but very useful addition!
- deleted 7y ago[deleted]